fstests: update autoconf rules to define _GNU_SOURCE where needed
[xfstests-dev.git] / m4 / package_xfslibs.m4
1 AC_DEFUN([AC_PACKAGE_NEED_XFS_XFS_H],
2   [ AC_CHECK_HEADERS([xfs/xfs.h],,,[#define _GNU_SOURCE])
3     if test "$ac_cv_header_xfs_xfs_h" != "yes"; then
4         echo
5         echo 'FATAL ERROR: cannot find a valid <xfs/xfs.h> header file.'
6         echo 'Run "make install-dev" from the xfsprogs source.'
7         exit 1
8     fi
9   ])
10
11 AC_DEFUN([AC_PACKAGE_WANT_LIBXFS_H],
12   [ AC_CHECK_HEADERS([xfs/libxfs.h], [ have_libxfs=true ],
13     [ have_libxfs=false ], [#define _GNU_SOURCE])
14     AC_SUBST(have_libxfs)
15   ])
16
17 AC_DEFUN([AC_PACKAGE_WANT_XLOG_ASSIGN_LSN],
18   [ AC_CHECK_DECL(xlog_assign_lsn,
19       [ have_xlog_assign_lsn=true ], [ have_xlog_assign_lsn=false ], [[
20 #define _GNU_SOURCE
21 #include <xfs/libxfs.h>]])
22     AC_SUBST(have_xlog_assign_lsn)
23   ])
24
25 AC_DEFUN([AC_PACKAGE_NEED_XFS_XQM_H],
26   [ AC_CHECK_HEADERS([xfs/xqm.h],,,[#define _GNU_SOURCE])
27     if test "$ac_cv_header_xfs_xqm_h" != "yes"; then
28         echo
29         echo 'FATAL ERROR: cannot find a valid <xfs/xqm.h> header file.'
30         echo 'Install or upgrade the XFS development package.'
31         echo 'Alternatively, run "make install-dev" from the xfsprogs source.'
32         exit 1
33     fi
34   ])
35
36 AC_DEFUN([AC_PACKAGE_NEED_XFS_HANDLE_H],
37   [ AC_CHECK_HEADERS([xfs/handle.h])
38     if test "$ac_cv_header_xfs_handle_h" != "yes"; then
39         echo
40         echo 'FATAL ERROR: cannot find a valid <xfs/handle.h> header file.'
41         echo 'Install or upgrade the XFS development package.'
42         echo 'Alternatively, run "make install-dev" from the xfsprogs source.'
43         exit 1
44     fi
45   ])
46
47 AC_DEFUN([AC_PACKAGE_NEED_LIBXFSINIT_LIBXFS],
48   [ AC_CHECK_LIB(xfs, libxfs_init,, [
49         echo
50         echo 'FATAL ERROR: could not find a valid XFS base library.'
51         echo 'Install or upgrade the XFS library package.'
52         echo 'Alternatively, run "make install-dev" from the xfsprogs source.'
53         exit 1
54     ])
55     libxfs="-lxfs"
56     test -f ${libexecdir}${libdirsuffix}/libxfs.la && \
57         libxfs="${libexecdir}${libdirsuffix}/libxfs.la"
58     AC_SUBST(libxfs)
59   ])
60
61 AC_DEFUN([AC_PACKAGE_NEED_OPEN_BY_FSHANDLE],
62   [ AC_CHECK_LIB(handle, open_by_fshandle,, [
63         echo
64         echo 'FATAL ERROR: could not find a current XFS handle library.'
65         echo 'Install or upgrade the XFS library package.'
66         echo 'Alternatively, run "make install-dev" from the xfsprogs source.'
67         exit 1
68     ])
69     libhdl="-lhandle"
70     test -f ${libexecdir}${libdirsuffix}/libhandle.la && \
71         libhdl="${libexecdir}${libdirsuffix}/libhandle.la"
72     AC_SUBST(libhdl)
73   ])
74
75 AC_DEFUN([AC_PACKAGE_NEED_ATTRLIST_LIBHANDLE],
76   [ AC_CHECK_LIB(handle, attr_list_by_handle,, [
77         echo
78         echo 'FATAL ERROR: could not find a current XFS handle library.'
79         echo 'Install or upgrade the XFS library package.'
80         echo 'Alternatively, run "make install-lib" from the xfsprogs source.'
81         exit 1
82     ])
83     libhdl="-lhandle"
84     test -f ${libexecdir}${libdirsuffix}/libhandle.la && \
85         libhdl="${libexecdir}${libdirsuffix}/libhandle.la"
86     AC_SUBST(libhdl)
87   ])
88
89 AC_DEFUN([AC_PACKAGE_NEED_IRIX_LIBHANDLE],
90   [ 
91     AC_MSG_CHECKING([libhandle.a for IRIX])
92     libhdl="`pwd`/../irix/libhandle/libhandle.a"
93     if ! test -f $libhdl; then
94         echo 'no'
95         echo 'FATAL ERROR: could not find IRIX XFS handle library.'
96         exit 1
97     fi
98     echo 'yes'
99     AC_SUBST(libhdl)
100   ])
101
102 AC_DEFUN([AC_PACKAGE_NEED_XFSCTL_MACRO],
103   [ AC_MSG_CHECKING([xfsctl from xfs/xfs.h])
104     AC_TRY_LINK([
105 #define _GNU_SOURCE
106 #include <xfs/xfs.h> ],
107       [ int x = xfsctl(0, 0, 0, 0); ],
108       [ echo ok ],
109       [ echo
110         echo 'FATAL ERROR: cannot find required macros in the XFS headers.'
111         echo 'Upgrade your XFS programs (xfsprogs) development package.'
112         echo 'Alternatively, run "make install-dev" from the xfsprogs source.'
113         exit 1
114       ])
115   ])