Update for extra output from src/acl_test.
[xfstests-dev.git] / configure.in
1 dnl unpacking check - this file must exist
2 AC_INIT(src/fsstress.c)
3 pkg_name="xfstests"
4 AC_SUBST(pkg_name)
5
6 #
7 # Note: the following environment variables may be set to override the
8 # defaults (to change paths and/or executables, build parameters, etc):
9 #
10 #   DEBUG  OPTIMIZER  MAKE  CC  LD  TAR  ZIP  RPM  AWK  SED  ECHO
11 #   MALLOCLIB  DISTRIBUTION  PACKAGE_BUILDER  PREFIX  ROOT_PREFIX
12 #
13
14 DEBUG=${DEBUG:-'-DDEBUG'}               # -DNDEBUG
15 OPTIMIZER=${OPTIMIZER:-'-g'}            # (-O1 enforced default)
16 MALLOCLIB=${MALLOCLIB:-''}              # /usr/lib/libefence.a
17
18 dnl Debug build?
19 debug_build="$DEBUG"
20 AC_SUBST(debug_build)
21
22 dnl Optimization options?
23 opt_build="$OPTIMIZER"
24 AC_SUBST(opt_build)
25
26 dnl Alternate malloc library?
27 malloc_lib="$MALLOCLIB"
28 AC_SUBST(malloc_lib)
29
30 dnl Set version
31 . VERSION
32
33 pkg_version=${PKG_MAJOR}.${PKG_MINOR}.${PKG_REVISION}
34 pkg_release=$PKG_BUILD
35 AC_SUBST(pkg_version)
36 AC_SUBST(pkg_release)
37
38 pkg_distribution="SGI ProPack"
39 test -z "$DISTRIBUTION" || pkg_distribution="$DISTRIBUTION"
40 AC_SUBST(pkg_distribution)
41
42 pkg_builder=`id -u -n`@`hostname -f`
43 test -z "$PACKAGE_BUILDER" || pkg_builder="$PACKAGE_BUILDER"
44 AC_SUBST(pkg_builder)
45
46 dnl check if user wants their own C compiler
47 test -z "$CC" && AC_PROG_CC
48 cc=$CC
49 AC_SUBST(cc)
50
51 dnl check if users wants their own make
52 test -z "$MAKE" && AC_PATH_PROG(MAKE, make, /usr/bin/make)
53 make=$MAKE
54 AC_SUBST(make)
55
56 dnl check if users wants their own linker
57 test -z "$LD" && AC_PATH_PROG(LD, ld, /usr/bin/ld)
58 ld=$LD
59 AC_SUBST(ld)
60
61 dnl check if the tar program is available
62 test -z "$TAR" && AC_PATH_PROG(TAR, tar)
63 tar=$TAR
64 AC_SUBST(tar)
65
66 dnl check if the gzip program is available
67 test -z "$ZIP" && AC_PATH_PROG(ZIP, gzip, /bin/gzip)
68 zip=$ZIP
69 AC_SUBST(zip)
70
71 dnl check if the rpm program is available
72 test -z "$RPM" && AC_PATH_PROG(RPM, rpm, /bin/rpm)
73 rpm=$RPM
74 AC_SUBST(rpm)
75
76 dnl .. and what version is rpm
77 rpm_version=0
78 test -x $RPM && \
79         rpm_version=`$RPM --version | awk '{print $NF}' | awk -F. '{print $1}'`
80 AC_SUBST(rpm_version)
81
82 dnl check if the makedepend program is available
83 test -z "$MAKEDEPEND" && AC_PATH_PROG(MAKEDEPEND, makedepend, /bin/true)
84 makedepend=$MAKEDEPEND
85 AC_SUBST(makedepend)
86
87 dnl check if symbolic links are supported
88 AC_PROG_LN_S
89
90 dnl check if user wants their own awk, sed and echo
91 test -z "$AWK" && AC_PATH_PROG(AWK, awk, /bin/awk)
92 awk=$AWK
93 AC_SUBST(awk)
94 test -z "$SED" && AC_PATH_PROG(SED, sed, /bin/sed)
95 sed=$SED
96 AC_SUBST(sed)
97 test -z "$ECHO" && AC_PATH_PROG(ECHO, echo, /bin/echo)
98 echo=$ECHO
99 AC_SUBST(echo)
100
101 CPPFLAGS="-I/usr/include/xfs"
102 AC_SUBST(CPPFLAGS)
103
104 dnl Checks for UUID header and library.
105 AC_CHECK_HEADER(uuid/uuid.h,, [
106         echo
107         echo 'FATAL ERROR: could not find a valid UUID header.'
108         echo 'Install either the e2fsprogs-devel (rpm) or the uuid-dev (deb) package.'
109         exit 1
110 ])
111 AC_CHECK_LIB(uuid, uuid_generate,, [
112         echo
113         echo 'FATAL ERROR: could not find a valid UUID library.'
114         echo 'Install either the e2fsprogs-devel (rpm) or the uuid-dev (deb) package.'
115         exit 1
116 ])
117 libuuid="/usr/lib/libuuid.a"
118 AC_SUBST(libuuid)
119
120 dnl Checks for base XFS headers and libraries.
121 AC_CHECK_HEADER(xfs/libxfs.h,, [
122         echo
123         echo 'FATAL ERROR: could not find a valid XFS library header.'
124         echo 'Install either the xfsprogs-devel (rpm) or the xfslibs-dev (deb) package.'
125         exit 1
126 ])
127 AC_CHECK_LIB(xfs, libxfs_init,, [
128         echo
129         echo 'FATAL ERROR: could not find a valid XFS base library.'
130         echo 'Install either the xfsprogs-devel (rpm) or the xfslibs-dev (deb) package.'
131         exit 1
132 ])
133 AC_CHECK_HEADER(xfs/handle.h,, [
134         echo
135         echo 'FATAL ERROR: could not find a valid XFS handle header.'
136         echo 'Install either the xfsprogs-devel (rpm) or the xfslibs-dev (deb) package.'
137         exit 1
138 ])
139 AC_CHECK_LIB(handle, path_to_handle,, [
140         echo
141         echo 'FATAL ERROR: could not find a valid XFS handle library.'
142         echo 'Install either the xfsprogs-devel (rpm) or the xfslibs-dev (deb) package.'
143         exit 1
144 ])
145 libxfs="-lxfs"
146 libhdl="-lhandle"
147 AC_SUBST(libxfs)
148 AC_SUBST(libhdl)
149
150 dnl Checks for Extended Attributes header and library.
151 AC_CHECK_HEADER(attr/attributes.h,, [
152         echo
153         echo 'FATAL ERROR: could not find a valid Extended Attributes header.'
154         echo 'Install either the attr-devel (rpm) or the attr-dev (deb) package.'
155         exit 1
156 ])
157 AC_CHECK_LIB(attr, attr_get,, [
158         echo
159         echo 'FATAL ERROR: could not find a valid Extended Attributes library.'
160         echo 'Install either the attr-devel (rpm) or the attr-dev (deb) package.'
161         exit 1
162 ])
163 libattr="/usr/lib/libattr.a"
164 AC_SUBST(libattr)
165
166 dnl Checks for Access Control List header and library.
167 AC_CHECK_HEADER(acl/acl.h,, [
168         echo
169         echo 'FATAL ERROR: could not find a valid Access Control List header.'
170         echo 'Install either the acl-devel (rpm) or the acl-dev (deb) package.'
171         exit 1
172 ])
173 AC_CHECK_LIB(acl, acl_get,, [
174         echo
175         echo 'FATAL ERROR: could not find a valid Access Control List library.'
176         echo 'Install either the acl-devel (rpm) or the acl-dev (deb) package.'
177         exit 1
178 ])
179 libacl="/usr/lib/libacl.a"
180 AC_SUBST(libacl)
181
182 dnl Checks for GNU database manager header and library.
183 libgdbm=""
184 have_db=true
185 AC_CHECK_HEADER(gdbm/ndbm.h,, [ have_db=false ])
186 if test $have_db = "true" -a -f /usr/lib/libgdbm.a; then
187         libgdbm="/usr/lib/libgdbm.a"
188 fi
189 AC_SUBST(libgdbm)
190 AC_SUBST(have_db)
191
192 dnl alternate root and usr prefixes
193 test -z "$ROOT_PREFIX" && ROOT_PREFIX=""
194 root_prefix="$ROOT_PREFIX"
195 test -z "$PREFIX" && PREFIX="/usr"
196 prefix="$PREFIX"
197
198 dnl man pages (source)
199 dnl also check if man page source is gzipped
200 dnl (usually on Debian, but not Redhat pre-7.0)
201 pkg_man_dir=${prefix}/share/man
202 have_zipped_manpages=false
203 for d in ${prefix}/share/man ${prefix}/man ; do
204     if test -f $d/man1/man.1.gz
205     then
206         pkg_man_dir=$d
207         have_zipped_manpages=true
208         break
209     fi
210 done
211 AC_SUBST(pkg_man_dir)
212 AC_SUBST(have_zipped_manpages)
213
214 dnl binaries
215 pkg_bin_dir=${prefix}/sbin
216 AC_SUBST(pkg_bin_dir)
217
218 dnl static libraries
219 pkg_lib_dir=${prefix}/lib
220 AC_SUBST(pkg_lib_dir)
221
222 dnl runtime shared system libraries
223 pkg_slib_dir=${root_prefix}/lib
224 AC_SUBST(pkg_slib_dir)
225
226 dnl system binaries
227 pkg_sbin_dir=${root_prefix}/sbin
228 AC_SUBST(pkg_sbin_dir)
229
230 dnl include files
231 pkg_inc_dir=${prefix}/include
232 AC_SUBST(pkg_inc_dir)
233
234 dnl doc directory
235 pkg_doc_dir=${prefix}/share/doc/${pkg_name}
236 AC_SUBST(pkg_doc_dir)
237
238
239 dnl
240 dnl output files
241 dnl
242
243 AC_OUTPUT( \
244 dnl  Build definitions for use in Makefiles
245     include/builddefs \
246 )