blob: 04e1994453aa7ce5cc4df27033179bbff74f0d4d [file] [log] [blame]
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001AC_INIT(version.h)
Theodore Ts'o37cdbee2012-12-22 22:24:45 -05002AC_PREREQ(2.54)
Theodore Ts'ob0cacab2004-11-30 19:00:19 -05003AC_CONFIG_AUX_DIR(config)
Theodore Ts'od1154eb2011-09-18 17:34:37 -04004AC_CONFIG_HEADERS([lib/config.h])
Theodore Ts'oc714d022014-01-30 18:48:23 -05005AH_BOTTOM([#include <dirpaths.h>])
Theodore Ts'o50e1e101997-04-26 13:58:21 +00006MCONFIG=./MCONFIG
7AC_SUBST_FILE(MCONFIG)
Theodore Ts'o74becf31997-04-26 14:37:06 +00008BINARY_TYPE=bin
9dnl
10dnl This is to figure out the version number and the date....
11dnl
12E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \
13 | awk '{print $3}' | tr \" " " | awk '{print $1}'`
14DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
15 | tr \" " "`
Theodore Ts'o2ab53822016-03-15 01:10:29 -040016E2FSPROGS_DAY=$(echo $DATE | awk -F- '{print $1}' | sed -e '/^[[1-9]]$/s/^/0/')
Theodore Ts'o74becf31997-04-26 14:37:06 +000017MONTH=`echo $DATE | awk -F- '{print $2}'`
18YEAR=`echo $DATE | awk -F- '{print $3}'`
19
Theodore Ts'o40fa8cc1999-01-09 05:06:02 +000020if expr $YEAR ">" 1900 > /dev/null ; then
21 E2FSPROGS_YEAR=$YEAR
22elif expr $YEAR ">" 90 >/dev/null ; then
Theodore Ts'o74becf31997-04-26 14:37:06 +000023 E2FSPROGS_YEAR=19$YEAR
24else
25 E2FSPROGS_YEAR=20$YEAR
26fi
27
28case $MONTH in
Andreas Dilger927566a2006-11-12 19:41:25 -050029Jan) MONTH_NUM=01; E2FSPROGS_MONTH="January" ;;
30Feb) MONTH_NUM=02; E2FSPROGS_MONTH="February" ;;
31Mar) MONTH_NUM=03; E2FSPROGS_MONTH="March" ;;
32Apr) MONTH_NUM=04; E2FSPROGS_MONTH="April" ;;
33May) MONTH_NUM=05; E2FSPROGS_MONTH="May" ;;
34Jun) MONTH_NUM=06; E2FSPROGS_MONTH="June" ;;
35Jul) MONTH_NUM=07; E2FSPROGS_MONTH="July" ;;
36Aug) MONTH_NUM=08; E2FSPROGS_MONTH="August" ;;
37Sep) MONTH_NUM=09; E2FSPROGS_MONTH="September" ;;
38Oct) MONTH_NUM=10; E2FSPROGS_MONTH="October" ;;
39Nov) MONTH_NUM=11; E2FSPROGS_MONTH="November" ;;
40Dec) MONTH_NUM=12; E2FSPROGS_MONTH="December" ;;
Theodore Ts'o02d04db2008-08-22 10:52:42 -040041*) AC_MSG_WARN([Unknown month $MONTH??]) ;;
Theodore Ts'o74becf31997-04-26 14:37:06 +000042esac
43
Andreas Dilger927566a2006-11-12 19:41:25 -050044base_ver=`echo $E2FSPROGS_VERSION | \
45 sed -e 's/-WIP//' -e 's/pre-//' -e 's/-PLUS//'`
Andreas Dilger927566a2006-11-12 19:41:25 -050046
47date_spec=${E2FSPROGS_YEAR}.${MONTH_NUM}.${E2FSPROGS_DAY}
48
49case $E2FSPROGS_VERSION in
50*-WIP|pre-*)
Theodore Ts'o2ab53822016-03-15 01:10:29 -040051 E2FSPROGS_PKGVER="$base_ver~WIP.$date_spec"
Andreas Dilger927566a2006-11-12 19:41:25 -050052 ;;
53*)
54 E2FSPROGS_PKGVER="$base_ver"
55 ;;
56esac
57
58unset DATE MONTH YEAR base_ver pre_vers date_spec
Theodore Ts'o02d04db2008-08-22 10:52:42 -040059AC_MSG_RESULT([Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION])
60AC_MSG_RESULT([Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}])
Theodore Ts'o74becf31997-04-26 14:37:06 +000061AC_SUBST(E2FSPROGS_YEAR)
62AC_SUBST(E2FSPROGS_MONTH)
Theodore Ts'obff0cc92003-03-23 01:37:53 -050063AC_SUBST(E2FSPROGS_DAY)
Theodore Ts'o74becf31997-04-26 14:37:06 +000064AC_SUBST(E2FSPROGS_VERSION)
Andreas Dilger927566a2006-11-12 19:41:25 -050065AC_SUBST(E2FSPROGS_PKGVER)
Theodore Ts'o57aa50d2009-11-26 10:38:04 -050066dnl
Theodore Ts'od21ae6c2003-05-05 09:00:24 -040067dnl Use diet libc
68dnl
Theodore Ts'oeafba6c2008-07-10 10:21:42 -040069WITH_DIET_LIBC=
Theodore Ts'od21ae6c2003-05-05 09:00:24 -040070AC_ARG_WITH([diet-libc],
Theodore Ts'o32493942007-12-31 10:45:01 -050071[ --with-diet-libc use diet libc],
Theodore Ts'od21ae6c2003-05-05 09:00:24 -040072CC="diet cc -nostdinc"
Theodore Ts'oeafba6c2008-07-10 10:21:42 -040073WITH_DIET_LIBC=yes
Theodore Ts'o6c59a662014-01-04 20:44:29 -050074if test -z "$LIBS"
75then
76 LIBS="-lcompat"
77else
78 LIBS="$LIBS -lcompat"
79fi
Theodore Ts'od21ae6c2003-05-05 09:00:24 -040080AC_MSG_RESULT(CC=$CC))dnl
81dnl
Theodore Ts'o6c59a662014-01-04 20:44:29 -050082AC_CANONICAL_HOST
83dnl
84dnl Check to see if libdl exists for the sake of dlopen
85dnl
86DLOPEN_LIB=''
Theodore Ts'o32179ce2016-06-07 00:14:35 -040087AC_CHECK_LIB(dl, dlopen,DLOPEN_LIB=-ldl)
Theodore Ts'o6c59a662014-01-04 20:44:29 -050088AC_SUBST(DLOPEN_LIB)
89dnl
Theodore Ts'o74becf31997-04-26 14:37:06 +000090AC_ARG_WITH([cc],
Theodore Ts'o0b5b9f92009-09-06 21:28:47 -040091AC_HELP_STRING([--with-cc],[no longer supported, use CC= instead]),
92AC_MSG_ERROR([--with-cc no longer supported; use CC= instead]))
Theodore Ts'o74becf31997-04-26 14:37:06 +000093dnl
94AC_ARG_WITH([ccopts],
Theodore Ts'o0b5b9f92009-09-06 21:28:47 -040095AC_HELP_STRING([--with-ccopts],[no longer supported, use CFLAGS= instead]),
96AC_MSG_ERROR([--with-ccopts no longer supported; use CFLAGS= instead]))
97dnl
98AC_ARG_WITH([ldopts],
99AC_HELP_STRING([--with-ldopts],[no longer supported, use LDFLAGS= instead]),
100AC_MSG_ERROR([--with-ldopts no longer supported; use LDFLAGS= instead]))
101dnl
102AC_PROG_CC
Theodore Ts'o9b3018a2011-08-11 14:56:49 -0400103if test "$GCC" = yes; then
104 RDYNAMIC="-rdynamic"
105 AC_SUBST(RDYNAMIC)
106fi
Theodore Ts'o0b5b9f92009-09-06 21:28:47 -0400107AC_PROG_CPP
Theodore Ts'o74becf31997-04-26 14:37:06 +0000108dnl
Matthias Andreeb1c92f92004-02-23 21:30:11 +0100109dnl Alpha computers use fast and imprecise floating point code that may
110dnl miss exceptions by default. Force sane options if we're using GCC.
111AC_MSG_CHECKING(for additional special compiler flags)
112if test "$GCC" = yes
113then
114 case "$host_cpu" in
115 alpha) addcflags="-mieee" ;;
116 esac
117fi
118if test "x$addcflags" != x
119then
120 AC_MSG_RESULT($addcflags)
121 CFLAGS="$addcflags $CFLAGS"
122else
123 AC_MSG_RESULT([[(none)]])
124fi
Theodore Ts'o93613952014-07-03 23:44:13 -0400125AC_USE_SYSTEM_EXTENSIONS
Matthias Andreeb1c92f92004-02-23 21:30:11 +0100126dnl
Sebastian Rasmussen055866d2017-10-08 13:30:08 +0200127dnl Set default values for library extensions. Will be dealt with after
128dnl parsing configuration options, which may modify these
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000129dnl
130LIB_EXT=.a
131STATIC_LIB_EXT=.a
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400132PROFILED_LIB_EXT=.a
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000133dnl
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +0000134dnl Allow separate `root_prefix' to be specified
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000135dnl
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +0000136AC_ARG_WITH([root-prefix],
137[ --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
138root_prefix=$withval,
139root_prefix=NONE)dnl
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000140dnl
Theodore Ts'o98919bd2005-02-04 10:43:58 -0500141dnl handle --enable-maintainer-mode
142dnl
143AC_ARG_ENABLE([maintainer-mode],
144[ --enable-maintainer-mode enable makefile rules useful for maintainers],
145if test "$enableval" = "no"
146then
147 MAINTAINER_CMT=#
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400148 AC_MSG_RESULT([Disabling maintainer mode])
Theodore Ts'o98919bd2005-02-04 10:43:58 -0500149else
150 MAINTAINER_CMT=
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400151 AC_MSG_RESULT([Enabling maintainer mode])
Theodore Ts'o98919bd2005-02-04 10:43:58 -0500152fi
153,
154MAINTAINER_CMT=#
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400155AC_MSG_RESULT([Disabling maintainer mode by default])
Theodore Ts'o98919bd2005-02-04 10:43:58 -0500156)
157AC_SUBST(MAINTAINER_CMT)
158dnl
Theodore Ts'o5aa6c3f2010-05-17 19:21:42 -0400159dnl handle --enable-symlink-install
160dnl
161AC_ARG_ENABLE([symlink-install],
162[ --enable-symlink-install use symlinks when installing instead of hard links],
163if test "$enableval" = "no"
164then
165 LINK_INSTALL_FLAGS=-f
166 AC_MSG_RESULT([Disabling symlinks for install])
167else
168 LINK_INSTALL_FLAGS=-sf
169 AC_MSG_RESULT([Enabling symlinks for install])
170fi
171,
172LINK_INSTALL_FLAGS=-f
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400173AC_MSG_RESULT([Disabling symlinks for install by default])
Theodore Ts'o5aa6c3f2010-05-17 19:21:42 -0400174)
175AC_SUBST(LINK_INSTALL_FLAGS)
176dnl
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400177dnl handle --enable-relative-symlinks
178dnl
Theodore Ts'o91d11da2012-09-06 23:01:14 -0400179relative_symlink_defined=
180AC_ARG_ENABLE([relative-symlinks],
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400181[ --enable-relative-symlinks use relative symlinks when installing],
182if test "$enableval" = "no"
183then
184 SYMLINK_RELATIVE=
Theodore Ts'o91d11da2012-09-06 23:01:14 -0400185 relative_symlink_defined=yes
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400186 AC_MSG_RESULT([Disabling relative symlinks for install])
187else
188 SYMLINK_RELATIVE=--relative
Theodore Ts'o91d11da2012-09-06 23:01:14 -0400189 relative_symlink_defined=yes
190 AC_MSG_RESULT([Enabling relative symlinks for install])
191fi)
192AC_ARG_ENABLE([symlink-relative-symlinks],,
193if test "$enableval" = "no"
194then
195 SYMLINK_RELATIVE=yes
196 AC_MSG_RESULT([Disabling relative symlinks for install])
197else
198 SYMLINK_RELATIVE=--relative
199 AC_MSG_RESULT([Enabling relative symlinks for install])
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400200fi
201,
Theodore Ts'o91d11da2012-09-06 23:01:14 -0400202if test -z "$relative_symlink_defined"
203then
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400204 SYMLINK_RELATIVE=
205AC_MSG_RESULT([Disabling relative symlinks for install by default])
Theodore Ts'o91d11da2012-09-06 23:01:14 -0400206fi
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400207)
208AC_SUBST(SYMLINK_RELATIVE)
209dnl
Theodore Ts'o5aa6c3f2010-05-17 19:21:42 -0400210dnl handle --enable-symlink-build
211dnl
212AC_ARG_ENABLE([symlink-build],
213[ --enable-symlink-build use symlinks while building instead of hard links],
214if test "$enableval" = "no"
215then
216 LINK_BUILD_FLAGS=
217 AC_MSG_RESULT([Disabling symlinks for build])
218else
219 LINK_BUILD_FLAGS=-s
220 AC_MSG_RESULT([Enabling symlinks for build])
221fi
222,
223LINK_BUILD_FLAGS=
Theodore Ts'o183c73b2012-05-12 23:13:24 -0400224AC_MSG_RESULT([Disabling symlinks for build by default])
Theodore Ts'o5aa6c3f2010-05-17 19:21:42 -0400225)
226AC_SUBST(LINK_BUILD_FLAGS)
227dnl
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400228dnl handle --enable-verbose-makecmds
229dnl
230AC_ARG_ENABLE([verbose-makecmds],
Theodore Ts'o5aa6c3f2010-05-17 19:21:42 -0400231[ --enable-verbose-makecmds enable verbose make command output],
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400232if test "$enableval" = "no"
233then
234 AC_MSG_RESULT([Disabling verbose make commands])
235 E=@echo
Theodore Ts'oc1986ec2012-06-13 15:29:13 -0400236 ES=echo
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400237 Q=@
238else
239 AC_MSG_RESULT([Enabling verbose make commands])
240 E=@\\#
Theodore Ts'oc1986ec2012-06-13 15:29:13 -0400241 ES=\\#
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400242 Q=
243fi
244,
245AC_MSG_RESULT([Disabling verbose make commands])
246E=@echo
Theodore Ts'oc1986ec2012-06-13 15:29:13 -0400247ES=echo
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400248Q=@
249)
250AC_SUBST(E)
Theodore Ts'oc1986ec2012-06-13 15:29:13 -0400251AC_SUBST(ES)
Theodore Ts'oc13351f2009-07-02 00:11:17 -0400252AC_SUBST(Q)
253dnl
Theodore Ts'oa4ece352008-01-01 20:05:04 -0500254dnl This needs to be before all of the --enable-*-shlibs options
255dnl
256E2_PKG_CONFIG_STATIC=--static
Theodore Ts'o55da9872008-09-02 23:12:38 -0400257LDFLAG_DYNAMIC=
258PRIVATE_LIBS_CMT=
Theodore Ts'oa4ece352008-01-01 20:05:04 -0500259dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000260dnl handle --enable-elf-shlibs
261dnl
262AC_ARG_ENABLE([elf-shlibs],
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000263[ --enable-elf-shlibs select ELF shared libraries],
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000264if test "$enableval" = "no"
265then
266 ELF_CMT=#
267 MAKEFILE_ELF=/dev/null
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400268 AC_MSG_RESULT([Disabling ELF shared libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000269else
Theodore Ts'oa4ece352008-01-01 20:05:04 -0500270 E2_PKG_CONFIG_STATIC=
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000271 ELF_CMT=
272 MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
Theodore Ts'of5955dd2000-10-25 02:38:39 +0000273 [case "$host_os" in
274 solaris2.*)
275 MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
276 ;;
277 esac]
Theodore Ts'o74becf31997-04-26 14:37:06 +0000278 BINARY_TYPE=elfbin
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000279 LIB_EXT=.so
Theodore Ts'o55da9872008-09-02 23:12:38 -0400280 PRIVATE_LIBS_CMT=#
281 LDFLAG_DYNAMIC=['-Wl,-rpath-link,$(top_builddir)/lib']
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400282 AC_MSG_RESULT([Enabling ELF shared libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000283fi
284,
285MAKEFILE_ELF=/dev/null
286ELF_CMT=#
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400287AC_MSG_RESULT([Disabling ELF shared libraries by default])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000288)
289AC_SUBST(ELF_CMT)
290AC_SUBST_FILE(MAKEFILE_ELF)
291dnl
292dnl handle --enable-bsd-shlibs
293dnl
294AC_ARG_ENABLE([bsd-shlibs],
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000295[ --enable-bsd-shlibs select BSD shared libraries],
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000296if test "$enableval" = "no"
297then
298 BSDLIB_CMT=#
299 MAKEFILE_BSDLIB=/dev/null
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400300 AC_MSG_RESULT([Disabling BSD shared libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000301else
Theodore Ts'oa4ece352008-01-01 20:05:04 -0500302 E2_PKG_CONFIG_STATIC=
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000303 BSDLIB_CMT=
304 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000305 LIB_EXT=.so
Theodore Ts'oe71d8732003-03-14 02:13:48 -0500306 [case "$host_os" in
Theodore Ts'oaa75ecc2003-03-17 10:01:22 -0500307 darwin*)
Theodore Ts'oe71d8732003-03-14 02:13:48 -0500308 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib
309 LIB_EXT=.dylib
310 ;;
311 esac]
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400312 AC_MSG_RESULT([Enabling BSD shared libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000313fi
314,
315MAKEFILE_BSDLIB=/dev/null
316BSDLIB_CMT=#
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400317AC_MSG_RESULT([Disabling BSD shared libraries by default])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000318)
319AC_SUBST(BSDLIB_CMT)
320AC_SUBST_FILE(MAKEFILE_BSDLIB)
321dnl
322dnl handle --enable-profile
323dnl
324AC_ARG_ENABLE([profile],
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000325[ --enable-profile build profiling libraries],
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000326if test "$enableval" = "no"
327then
328 PROFILE_CMT=#
329 MAKEFILE_PROFILE=/dev/null
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400330 AC_MSG_RESULT([Disabling profiling libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000331else
332 PROFILE_CMT=
333 MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000334 PROFILED_LIB_EXT=_p.a
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400335 AC_MSG_RESULT([Building profiling libraries])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000336fi
337,
338PROFILE_CMT=#
339MAKEFILE_PROFILE=/dev/null
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400340AC_MSG_RESULT([Disabling profiling libraries by default])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000341)
342AC_SUBST(PROFILE_CMT)
343AC_SUBST_FILE(MAKEFILE_PROFILE)
344dnl
Theodore Ts'ofedfb272014-02-23 00:17:09 -0500345dnl handle --enable-gcov
346dnl
347AC_ARG_ENABLE([gcov],
348[ --enable-gcov build for coverage testing using gcov],
349if test "$enableval" = "yes"
350then
351 CFLAGS="-g -fprofile-arcs -ftest-coverage"
352 LDFLAGS="-fprofile-arcs -ftest-coverage"
353 AC_MSG_RESULT([Enabling gcov support])
354fi
355)
Theodore Ts'ofd1677e2016-05-21 23:51:19 -0400356dnl
357dnl handle --enable-hardening
358dnl
359CFLAGS_SHLIB="${CFLAGS_SHLIB:-$CFLAGS}"
360CFLAGS_STLIB="${CFLAGS_STLIB:-$CFLAGS}"
361LDFLAGS_SHLIB=${LDFLAGS_SHLIB:-$LDFLAGS}
362LDFLAGS_STATIC=${LDFLAGS_STATIC:-$LDFLAGS}
363AC_ARG_ENABLE([hardening],
364[ --enable-hardening build for coverage testing using gcov],
365if test "$enableval" = "yes"
366then
367 HARDEN_CFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector-strong"
368 HARDEN_LDFLAGS=["-Wl,-z,relro -Wl,-z,now"]
369 CFLAGS="$CFLAGS $HARDEN_CFLAGS -fPIE"
370 CFLAGS_SHLIB="$CFLAGS_SHLIB $HARDEN_CFLAGS"
371 CFLAGS_STLIB="$CFLAGS_STLIB $HARDEN_CFLAGS -fPIE"
372 LDFLAGS="$LDFLAGS $HARDEN_LDFLAGS -fPIE -pie"
373 LDFLAGS_STATIC="$LDFLAGS_STATIC $HARDEN_LDFLAGS"
374 LDFLAGS_SHLIB="$LDFLAGS_SHLIB $HARDEN_LDFLAGS"
375 AC_MSG_RESULT([Enabling hardening support])
376fi
377)
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000378dnl
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000379dnl Substitute library extensions
380dnl
381AC_SUBST(LIB_EXT)
382AC_SUBST(STATIC_LIB_EXT)
383AC_SUBST(PROFILED_LIB_EXT)
Theodore Ts'o55da9872008-09-02 23:12:38 -0400384AC_SUBST(LDFLAG_DYNAMIC)
385AC_SUBST(PRIVATE_LIBS_CMT)
Theodore Ts'oa4d09611997-04-29 14:28:00 +0000386dnl
Theodore Ts'o782bebf2002-11-08 18:46:45 -0500387dnl handle --enable-jbd-debug
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000388dnl
Theodore Ts'o782bebf2002-11-08 18:46:45 -0500389AC_ARG_ENABLE([jbd-debug],
390[ --enable-jbd-debug enable journal debugging],
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000391if test "$enableval" = "no"
392then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400393 AC_MSG_RESULT([Disabling journal debugging])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000394else
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400395 AC_DEFINE(CONFIG_JBD_DEBUG, 1,
396 [Define to 1 if debugging ext3/4 journal code])
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400397 AC_MSG_RESULT([Enabling journal debugging])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000398fi
399,
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400400AC_MSG_RESULT([Disabling journal debugging by default])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000401)
402dnl
Theodore Ts'of0a22d02003-02-22 13:19:53 -0500403dnl handle --enable-blkid-debug
404dnl
405AC_ARG_ENABLE([blkid-debug],
Theodore Ts'od21ae6c2003-05-05 09:00:24 -0400406[ --enable-blkid-debug enable blkid debugging],
Theodore Ts'of0a22d02003-02-22 13:19:53 -0500407if test "$enableval" = "no"
408then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400409 AC_MSG_RESULT([Disabling blkid debugging])
Theodore Ts'of0a22d02003-02-22 13:19:53 -0500410else
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400411 AC_DEFINE(CONFIG_BLKID_DEBUG, 1,
412 [Define to 1 if debugging the blkid library])
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400413 AC_MSG_RESULT([Enabling blkid debugging])
Theodore Ts'of0a22d02003-02-22 13:19:53 -0500414fi
415,
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400416AC_MSG_RESULT([Disabling blkid debugging by default])
Theodore Ts'of0a22d02003-02-22 13:19:53 -0500417)
418dnl
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400419dnl handle --enable-testio-debug
420dnl
421AC_ARG_ENABLE([testio-debug],
Theodore Ts'oaf773652008-09-01 11:27:27 -0400422[ --disable-testio-debug disable the use of the test I/O manager for debugging],
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400423AH_TEMPLATE([CONFIG_TESTIO_DEBUG],
424 [Define to 1 if the testio I/O manager should be enabled])
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400425if test "$enableval" = "no"
426then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400427 AC_MSG_RESULT([Disabling testio debugging])
Theodore Ts'oaf773652008-09-01 11:27:27 -0400428 TEST_IO_CMT="#"
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400429else
Theodore Ts'oaf773652008-09-01 11:27:27 -0400430 TEST_IO_CMT=
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400431 AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400432 AC_MSG_RESULT([Enabling testio debugging])
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400433fi
434,
Theodore Ts'oaf773652008-09-01 11:27:27 -0400435AC_MSG_RESULT([Enabling testio debugging by default])
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400436AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
Theodore Ts'oaf773652008-09-01 11:27:27 -0400437TEST_IO_CMT=
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400438)
Theodore Ts'oaf773652008-09-01 11:27:27 -0400439AC_SUBST(TEST_IO_CMT)
Theodore Ts'o2a29f132003-05-05 12:08:47 -0400440dnl
Scott James Remnant39fd3d42009-05-14 13:03:25 +0100441dnl handle --disable-libuuid
442dnl
443PKG_PROG_PKG_CONFIG
444LIBUUID=
445DEPLIBUUID=
446STATIC_LIBUUID=
447DEPSTATIC_LIBUUID=
448PROFILED_LIBUUID=
449DEPPROFILED_LIBUUID=
450UUID_CMT=
451AC_ARG_ENABLE([libuuid],
Theodore Ts'of5dffb82015-06-20 14:20:14 -0400452[ --enable-libuuid build and use private uuid library],
Scott James Remnant39fd3d42009-05-14 13:03:25 +0100453if test "$enableval" = "no"
454then
455 if test -z "$PKG_CONFIG"; then
456 AC_MSG_ERROR([pkg-config not installed; please install it.])
457 fi
458
459 AC_CHECK_LIB(uuid, uuid_generate,
460 [LIBUUID=`$PKG_CONFIG --libs uuid`;
461 STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`],
Theodore Ts'o2d7583b2014-07-05 00:27:02 -0400462 [AC_MSG_ERROR([external uuid library not found])])
Theodore Ts'o5afdf372014-09-18 21:11:33 -0400463 PROFILED_LIBUUID=$LIBUUID
Scott James Remnant39fd3d42009-05-14 13:03:25 +0100464 UUID_CMT=#
465 AC_MSG_RESULT([Disabling private uuid library])
466else
467 LIBUUID='$(LIB)/libuuid'$LIB_EXT
468 DEPLIBUUID=$LIBUUID
469 STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
470 DEPSTATIC_LIBUUID=$STATIC_LIBUUID
471 PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
472 DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
473 AC_MSG_RESULT([Enabling private uuid library])
474fi
475,
Theodore Ts'of5dffb82015-06-20 14:20:14 -0400476if test -n "$PKG_CONFIG"; then
477 AC_CHECK_LIB(uuid, uuid_generate,
478 [LIBUUID=`$PKG_CONFIG --libs uuid`;
479 STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`])
480fi
481if test -n "$LIBUUID"; then
482 PROFILED_LIBUUID=$LIBUUID
483 UUID_CMT=#
484 AC_MSG_RESULT([Using system uuid by default])
485else
486 LIBUUID='$(LIB)/libuuid'$LIB_EXT
487 DEPLIBUUID=$LIBUUID
488 STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
489 DEPSTATIC_LIBUUID=$STATIC_LIBUUID
490 PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
491 DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
492 AC_MSG_RESULT([Enabling private uuid library by default])
493fi
Scott James Remnant39fd3d42009-05-14 13:03:25 +0100494)
495AC_SUBST(LIBUUID)
496AC_SUBST(DEPLIBUUID)
497AC_SUBST(STATIC_LIBUUID)
498AC_SUBST(DEPSTATIC_LIBUUID)
499AC_SUBST(PROFILED_LIBUUID)
500AC_SUBST(DEPPROFILED_LIBUUID)
501AC_SUBST(UUID_CMT)
502dnl
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400503dnl handle --disable-libblkid
504dnl
505PKG_PROG_PKG_CONFIG
506LIBBLKID=
507DEPLIBBLKID=
508STATIC_LIBBLKID=
509DEPSTATIC_LIBBLKID=
510PROFILED_LIBBLKID=
511DEPPROFILED_LIBBLKID=
512BLKID_CMT=
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400513AH_TEMPLATE([CONFIG_BUILD_FINDFS], [Define to 1 to compile findfs])
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400514AC_ARG_ENABLE([libblkid],
Theodore Ts'of5dffb82015-06-20 14:20:14 -0400515[ --enable-libblkid build and use private blkid library],
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400516if test "$enableval" = "no"
517then
518 if test -z "$PKG_CONFIG"; then
519 AC_MSG_ERROR([pkg-config not installed; please install it.])
520 fi
521
522 AC_CHECK_LIB(blkid, blkid_get_cache,
523 [LIBBLKID=`$PKG_CONFIG --libs blkid`;
524 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
Theodore Ts'o2d7583b2014-07-05 00:27:02 -0400525 [AC_MSG_ERROR([external blkid library not found])], -luuid)
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400526 BLKID_CMT=#
Theodore Ts'o5afdf372014-09-18 21:11:33 -0400527 PROFILED_LIBBLKID=$LIBBLKID
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400528 AC_MSG_RESULT([Disabling private blkid library])
529else
530 LIBBLKID='$(LIB)/libblkid'$LIB_EXT
531 DEPLIBBLKID=$LIBBLKID
532 STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
533 DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
534 PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
535 DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400536 AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400537 AC_MSG_RESULT([Enabling private blkid library])
538fi
539,
Theodore Ts'of5dffb82015-06-20 14:20:14 -0400540if test -n "$PKG_CONFIG"; then
541 AC_CHECK_LIB(blkid, blkid_get_cache,
542 [LIBBLKID=`$PKG_CONFIG --libs blkid`;
543 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`])
544fi
545if test -n "$LIBBLKID"; then
546 BLKID_CMT=#
547 PROFILED_LIBBLKID=$LIBBLKID
548 AC_MSG_RESULT([Using system blkid library by default])
549else
550 LIBBLKID='$(LIB)/libblkid'$LIB_EXT
551 DEPLIBBLKID=$LIBBLKID
552 STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
553 DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
554 PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
555 DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
556 AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
557 AC_MSG_RESULT([Enabling private blkid library by default])
558fi
Theodore Ts'o14b596d2009-04-22 09:18:30 -0400559)
560AC_SUBST(LIBBLKID)
561AC_SUBST(DEPLIBBLKID)
562AC_SUBST(STATIC_LIBBLKID)
563AC_SUBST(DEPSTATIC_LIBBLKID)
564AC_SUBST(PROFILED_LIBBLKID)
565AC_SUBST(DEPPROFILED_LIBBLKID)
566AC_SUBST(BLKID_CMT)
567dnl
Theodore Ts'o0afb9be2018-08-18 11:19:25 -0400568dnl handle --enable-subset
569dnl
570ALL_CMT=
Theodore Ts'ofeb235e2018-08-24 17:12:20 -0400571SUBSET_CMT=
Theodore Ts'o0afb9be2018-08-18 11:19:25 -0400572AC_ARG_ENABLE([subset],
573[ --enable-subset enable subset-only build],
574if test "$enableval" = "no"
575then
Theodore Ts'ofeb235e2018-08-24 17:12:20 -0400576 SUBSET_CMT=#
Theodore Ts'o0afb9be2018-08-18 11:19:25 -0400577 AC_MSG_RESULT([Disabling subset-only build])
578else
579 ALL_CMT=#
580 AC_MSG_RESULT([Enabling subset-only-build])
581fi
582,)
583AC_SUBST(ALL_CMT)
Theodore Ts'ofeb235e2018-08-24 17:12:20 -0400584AC_SUBST(SUBSET_CMT)
Theodore Ts'o0afb9be2018-08-18 11:19:25 -0400585dnl
Theodore Ts'o3df60142013-06-16 16:14:40 -0400586dnl handle --disable-backtrace
587dnl
588AH_TEMPLATE([DISABLE_BACKTRACE], [Define to 1 to disable use of backtrace])
589AC_ARG_ENABLE([backtrace],
590[ --disable-backtrace disable use backtrace],
591if test "$enableval" = "no"
592then
593 AC_MSG_RESULT([Disabling use of backtrace])
594 AC_DEFINE(DISABLE_BACKTRACE, 1)
595else
596 AC_MSG_RESULT([Enabling use of backtrace])
597fi
598,
599AC_MSG_RESULT([Enabling use of backtrace by default])
600)
601dnl
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000602dnl handle --enable-debugfs
603dnl
604AC_ARG_ENABLE([debugfs],
605[ --disable-debugfs disable support of debugfs program],
606if test "$enableval" = "no"
607then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400608 AC_MSG_RESULT([Disabling debugfs support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000609 DEBUGFS_CMT="#"
610else
611 DEBUGFS_CMT=
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400612 AC_MSG_RESULT([Enabling debugfs support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000613fi
614,
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400615AC_MSG_RESULT([Enabling debugfs support by default])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000616DEBUGFS_CMT=
617)
618AC_SUBST(DEBUGFS_CMT)
619dnl
620dnl handle --enable-imager
621dnl
622AC_ARG_ENABLE([imager],
623[ --disable-imager disable support of e2image program],
624if test "$enableval" = "no"
625then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400626 AC_MSG_RESULT([Disabling e2image support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000627 IMAGER_CMT="#"
628else
629 IMAGER_CMT=
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400630 AC_MSG_RESULT([Enabling e2image support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000631fi
632,
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400633AC_MSG_RESULT([Enabling e2image support by default])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000634IMAGER_CMT=
635)
636AC_SUBST(IMAGER_CMT)
637dnl
638dnl handle --enable-resizer
639dnl
640AC_ARG_ENABLE([resizer],
641[ --disable-resizer disable support of e2resize program],
642if test "$enableval" = "no"
643then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400644 AC_MSG_RESULT([Disabling e2resize support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000645 RESIZER_CMT="#"
646else
647 RESIZER_CMT=
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400648 AC_MSG_RESULT([Enabling e2resize support])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000649fi
650,
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400651AC_MSG_RESULT([Enabling e2resize support by default])
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000652RESIZER_CMT=
653)
654AC_SUBST(RESIZER_CMT)
655dnl
Theodore Ts'o8d9c50c2010-12-24 15:19:44 -0500656dnl handle --enable-defrag
657dnl
658AC_ARG_ENABLE([defrag],
659[ --disable-defrag disable support of e4defrag program],
660if test "$enableval" = "no"
661then
662 AC_MSG_RESULT([Disabling e4defrag support])
663 DEFRAG_CMT="#"
664else
665 DEFRAG_CMT=
666 AC_MSG_RESULT([Enabling e4defrag support])
667fi
668,
Theodore Ts'o6c59a662014-01-04 20:44:29 -0500669if test -z "$WITH_DIET_LIBC"
670then
671 AC_MSG_RESULT([Enabling e4defrag support by default])
672 DEFRAG_CMT=
673else
674 AC_MSG_RESULT([Disabling e4defrag support by default])
675 DEFRAG_CMT="#"
676fi
Theodore Ts'o8d9c50c2010-12-24 15:19:44 -0500677)
678AC_SUBST(DEFRAG_CMT)
679dnl
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000680dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
681dnl
682AC_ARG_ENABLE([fsck],
683[ --enable-fsck build fsck wrapper program],
684[if test "$enableval" = "no"
685then
686 FSCK_PROG='' FSCK_MAN=''
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400687 AC_MSG_RESULT([Not building fsck wrapper])
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000688else
689 FSCK_PROG=fsck FSCK_MAN=fsck.8
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400690 AC_MSG_RESULT([Building fsck wrapper])
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000691fi]
692,
693[case "$host_os" in
Theodore Ts'oe3632402004-05-04 19:39:54 -0400694 gnu*)
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000695 FSCK_PROG='' FSCK_MAN=''
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400696 AC_MSG_RESULT([Not building fsck wrapper by default])
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000697 ;;
698 *)
699 FSCK_PROG=fsck FSCK_MAN=fsck.8
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400700 AC_MSG_RESULT([Building fsck wrapper by default])
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000701esac]
702)
703AC_SUBST(FSCK_PROG)
704AC_SUBST(FSCK_MAN)
705dnl
Theodore Ts'o5d407732004-09-18 14:53:14 -0400706dnl See whether to install the `e2initrd-helper' program
707dnl
708AC_ARG_ENABLE([e2initrd-helper],
709[ --enable-e2initrd-helper build e2initrd-helper program],
710[if test "$enableval" = "no"
711then
712 E2INITRD_PROG='' E2INITRD_MAN=''
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400713 AC_MSG_RESULT([Not building e2initrd helper])
Theodore Ts'o5d407732004-09-18 14:53:14 -0400714else
715 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400716 AC_MSG_RESULT([Building e2initrd helper])
Theodore Ts'o5d407732004-09-18 14:53:14 -0400717fi]
718,
719E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400720AC_MSG_RESULT([Building e2initrd helper by default])
Theodore Ts'o5d407732004-09-18 14:53:14 -0400721)
722AC_SUBST(E2INITRD_PROG)
723AC_SUBST(E2INITRD_MAN)
Karel Zak4db2f592006-03-08 14:17:28 -0500724dnl
Theodore Ts'o5d407732004-09-18 14:53:14 -0400725dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000726dnl
Theodore Ts'o32493942007-12-31 10:45:01 -0500727AC_ARG_ENABLE([tls],
728[ --disable-tls disable use of thread local support],
729[if test "$enableval" = "no"
730then
731 try_tls=""
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400732 AC_MSG_RESULT([Disabling thread local support])
Theodore Ts'o32493942007-12-31 10:45:01 -0500733else
734 try_tls="yes"
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400735 AC_MSG_RESULT([Enabling thread local support])
Theodore Ts'o32493942007-12-31 10:45:01 -0500736fi]
737,
Theodore Ts'oeafba6c2008-07-10 10:21:42 -0400738if test -n "$WITH_DIET_LIBC"
739then
740 try_tls=""
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400741 AC_MSG_RESULT([Diet libc does not support thread local support])
Theodore Ts'oeafba6c2008-07-10 10:21:42 -0400742else
743 try_tls="yes"
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400744 AC_MSG_RESULT([Try using thread local support by default])
Theodore Ts'oeafba6c2008-07-10 10:21:42 -0400745fi
Theodore Ts'o32493942007-12-31 10:45:01 -0500746)
747if test "$try_tls" = "yes"
748then
749AX_TLS
750fi
751dnl
752dnl
753dnl
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400754AH_TEMPLATE([USE_UUIDD], [Define to 1 to build uuidd])
Theodore Ts'o5610f992007-12-31 11:16:56 -0500755AC_ARG_ENABLE([uuidd],
756[ --disable-uuidd disable building the uuid daemon],
757[if test "$enableval" = "no"
758then
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400759 AC_MSG_RESULT([Not building uuidd])
Theodore Ts'o5610f992007-12-31 11:16:56 -0500760 UUIDD_CMT="#"
761else
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400762 AC_DEFINE(USE_UUIDD, 1)
Theodore Ts'o5610f992007-12-31 11:16:56 -0500763 UUIDD_CMT=""
Theodore Ts'o02d04db2008-08-22 10:52:42 -0400764 AC_MSG_RESULT([Building uuidd])
Theodore Ts'o5610f992007-12-31 11:16:56 -0500765fi]
766,
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400767AC_DEFINE(USE_UUIDD, 1)
Theodore Ts'oe3d10152014-09-19 00:26:26 -0400768if test -z "$UUID_CMT"
769then
770 UUIDD_CMT=""
771 AC_MSG_RESULT([Building uuidd by default])
772else
773 UUIDD_CMT="#"
774 AC_MSG_RESULT([Disabling uuidd by default])
775fi
Theodore Ts'o5610f992007-12-31 11:16:56 -0500776)
777AC_SUBST(UUIDD_CMT)
778dnl
Tony Breedsd6a4bcb2012-06-26 11:42:15 +1000779dnl handle --disable-mmp
780dnl
781AH_TEMPLATE([CONFIG_MMP], [Define to 1 to enable mmp support])
782AC_ARG_ENABLE([mmp],
783[ --disable-mmp disable support mmp, Multi Mount Protection],
784if test "$enableval" = "no"
785then
786 AC_MSG_RESULT([Disabling mmp support])
787else
788 AC_MSG_RESULT([Enabling mmp support])
789 AC_DEFINE(CONFIG_MMP, 1)
790fi
791,
792AC_MSG_RESULT([Enabling mmp support by default])
793AC_DEFINE(CONFIG_MMP, 1)
794)
795dnl
Theodore Ts'o749f0712016-05-29 20:48:54 -0400796dnl handle --disable-tdb
797dnl
798AH_TEMPLATE([CONFIG_TDB], [Define to 1 to enable tdb support])
799AC_ARG_ENABLE([tdb],
800[ --disable-tdb disable tdb support],
801if test "$enableval" = "no"
802then
803 AC_MSG_RESULT([Disabling tdb support])
804 TDB_CMT="#"
805 TDB_MAN_COMMENT='.\"'
806else
807 AC_MSG_RESULT([Enabling tdb support])
808 AC_DEFINE(CONFIG_TDB, 1)
809 TDB_CMT=""
810 TDB_MAN_COMMENT=""
811fi
812,
813AC_MSG_RESULT([Enabling mmp support by default])
814AC_DEFINE(CONFIG_TDB, 1)
815TDB_CMT=""
816TDB_MAN_COMMENT=""
817)
818AC_SUBST(TDB_CMT)
819AC_SUBST(TDB_MAN_COMMENT)
820dnl
Tony Breeds1625bf42012-07-30 14:44:12 -0400821dnl handle --disable-bmap-stats
822dnl
823AH_TEMPLATE([ENABLE_BMAP_STATS], [Define to 1 to enable bitmap stats.])
824AC_ARG_ENABLE([bmap-stats],
825[ --disable-bmap-stats disable collection of bitmap stats.],
826if test "$enableval" = "no"
827then
828 AC_MSG_RESULT([Disabling bitmap statistics support])
829else
830 AC_MSG_RESULT([Enabling bitmap statistics support])
831 AC_DEFINE(ENABLE_BMAP_STATS, 1)
832fi
833,
834AC_MSG_RESULT([Enabling bitmap statistics support by default])
835AC_DEFINE(ENABLE_BMAP_STATS, 1)
836)
837dnl
838dnl handle --enable-bmap-stats-ops
839dnl
840AH_TEMPLATE([ENABLE_BMAP_STATS_OPS], [Define to 1 to enable bitmap stats.])
841AC_ARG_ENABLE([bmap-stats-ops],
842[ --enable-bmap-stats-ops enable collection of additional bitmap stats],
843if test "$enableval" = "no"
844then
845 AC_MSG_RESULT([Disabling additional bitmap statistics])
846else
847 dnl There has to be a better way!
848 AS_IF([test "x${enable_bmap_stats}" = "xno"],
849 AC_MSG_FAILURE([Error --enable-bmap-stats-ops requires bmap-stats]))
850
851 AC_MSG_RESULT([Enabling additional bitmap statistics])
852 AC_DEFINE(ENABLE_BMAP_STATS_OPS, 1)
853fi
854,
855AC_MSG_RESULT([Disabling additional bitmap statistics by default])
856)
857dnl
Theodore Ts'o5610f992007-12-31 11:16:56 -0500858dnl
859dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000860MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
861AC_SUBST_FILE(MAKEFILE_LIBRARY)
862dnl
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000863dnl Add internationalization support, using gettext.
864dnl
Theodore Ts'ob0cacab2004-11-30 19:00:19 -0500865GETTEXT_PACKAGE=e2fsprogs
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000866PACKAGE=e2fsprogs
867VERSION="$E2FSPROGS_VERSION"
Theodore Ts'ob0cacab2004-11-30 19:00:19 -0500868VERSION=0.14.1
Theodore Ts'od1154eb2011-09-18 17:34:37 -0400869AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [package name for gettext])
870AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [version for gettext])
Theodore Ts'ob0cacab2004-11-30 19:00:19 -0500871AC_SUBST(GETTEXT_PACKAGE)
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000872AC_SUBST(PACKAGE)
873AC_SUBST(VERSION)
874
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000875AM_GNU_GETTEXT
876dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000877dnl End of configuration options
878dnl
Theodore Ts'o74becf31997-04-26 14:37:06 +0000879AC_SUBST(BINARY_TYPE)
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000880AC_PROG_MAKE_SET
Theodore Ts'obcb915b2009-07-02 18:19:10 -0400881CHECK_GNU_MAKE
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000882AC_PATH_PROG(LN, ln, ln)
Ross Burton5abc0412014-07-10 15:39:05 +0100883AC_PROG_MKDIR_P
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +0000884AC_PROG_LN_S
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000885AC_PATH_PROG(MV, mv, mv)
886AC_PATH_PROG(CP, cp, cp)
887AC_PATH_PROG(RM, rm, rm)
888AC_PATH_PROG(CHMOD, chmod, :)
Theodore Ts'o32237012005-01-17 19:13:39 -0500889AC_PROG_AWK
890AC_PROG_EGREP
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000891AC_PATH_PROG(SED, sed, sed)
Theodore Ts'o9d564f71999-07-03 20:25:58 +0000892AC_PATH_PROG(PERL, perl, perl)
Theodore Ts'o250f79f2001-05-19 22:02:22 +0000893AC_PATH_PROG(LDCONFIG, ldconfig, :)
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000894AC_CHECK_TOOL(AR, ar, ar)
895AC_CHECK_TOOL(RANLIB, ranlib, :)
896AC_CHECK_TOOL(STRIP, strip, :)
Manish Katiyar7321d942008-04-14 17:20:03 +0530897AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, )
898if test "_$MAKEINFO" = "_"; then
Theodore Ts'oca1de982016-09-11 23:30:25 -0400899 MAKEINFO="echo Makeinfo is missing. Info documentation will not be built."
Manish Katiyar7321d942008-04-14 17:20:03 +0530900else
901 case "$MAKEINFO" in
902 */missing.*)
903 AC_MSG_WARN([
904*** Makeinfo is missing. Info documentation will not be built.])
905 ;;
906 *)
907 ;;
908 esac
909fi
910AC_SUBST(MAKEINFO)
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000911AC_PROG_INSTALL
Theodore Ts'o6c133521999-07-03 20:37:03 +0000912# See if we need a separate native compiler.
913if test $cross_compiling = no; then
914 BUILD_CC="$CC"
915 AC_SUBST(BUILD_CC)
916else
917 AC_CHECK_PROGS(BUILD_CC, gcc cc)
918fi
Mike Frysinger677fc912012-03-06 20:13:54 -0500919AC_CHECK_HEADERS(m4_flatten([
920 dirent.h
921 errno.h
922 execinfo.h
923 getopt.h
924 malloc.h
925 mntent.h
926 paths.h
927 semaphore.h
928 setjmp.h
929 signal.h
930 stdarg.h
931 stdint.h
932 stdlib.h
933 termios.h
934 termio.h
935 unistd.h
936 utime.h
Ross Burtonc84da2e2014-07-10 17:44:38 +0100937 attr/xattr.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500938 linux/falloc.h
939 linux/fd.h
Darrick J. Wong82424fc2017-05-15 11:37:11 -0700940 linux/fsmap.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500941 linux/major.h
Kazuya Miofbabd5c2013-12-16 00:48:12 -0500942 linux/loop.h
Adrien Schildknechtf47f3192016-11-23 10:21:42 -0800943 linux/types.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500944 net/if_dl.h
945 netinet/in.h
Darrick J. Wong81cbf1e2015-05-13 17:22:40 -0700946 sys/acl.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500947 sys/disklabel.h
Andreas Dilger51050542014-06-11 12:59:05 -0600948 sys/disk.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500949 sys/file.h
950 sys/ioctl.h
Theodore Ts'o74f2c4a2015-06-19 19:28:25 -0400951 sys/key.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500952 sys/mkdev.h
953 sys/mman.h
Andreas Dilger51050542014-06-11 12:59:05 -0600954 sys/mount.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500955 sys/prctl.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500956 sys/resource.h
957 sys/select.h
958 sys/socket.h
959 sys/sockio.h
960 sys/stat.h
961 sys/syscall.h
Darrick J. Wong79614b22015-04-20 22:27:19 -0400962 sys/sysctl.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500963 sys/sysmacros.h
964 sys/time.h
965 sys/types.h
966 sys/un.h
967 sys/wait.h
Dmitry V. Levind7de3f32017-05-18 17:46:49 +0000968 sys/xattr.h
Mike Frysinger677fc912012-03-06 20:13:54 -0500969]))
Matthias Andreeec3a69b2017-08-29 01:02:36 -0400970dnl Check where to find a dd(1) that supports iflag=fullblock
971dnl and oflag=append
972AC_MSG_CHECKING([for a dd(1) program that supports iflag=fullblock])
973DD=
974for i in dd gdd ; do
975 if "$i" if=/dev/null of=/dev/null count=1 bs=10k 2>/dev/null iflag=fullblock oflag=append ; then
976 DD=$i
977 break
978 fi
979done
980if test -n "$DD" ; then
981 AC_MSG_RESULT([$DD])
982else
983 AC_MSG_RESULT([not found, using dd])
984 DD=dd
985 AC_MSG_WARN([No GNU-compatible dd(1) program found, expect some self-test failures.])
986fi
987AC_SUBST([DD])
988
Theodore Ts'oda76d6b2005-01-18 23:29:01 -0500989AC_CHECK_HEADERS(net/if.h,,,
990[[
991#if HAVE_SYS_TYPES_H
992#include <sys/types.h>
993#endif
994#if HAVE_SYS_SOCKET
995#include <sys/socket.h>
996#endif
997]])
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000998AC_FUNC_VPRINTF
Theodore Ts'offf45482003-04-13 00:44:19 -0400999dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
Sebastian Rasmussen055866d2017-10-08 13:30:08 +02001000dnl is not declared.
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001001AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT, 1,
1002 [Define to 1 if dirent has d_reclen])],,
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001003 [#include <dirent.h>])
Theodore Ts'o28739272014-01-03 00:26:43 -05001004AC_CHECK_MEMBERS([struct stat.st_atim])
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001005dnl Check to see if ssize_t was declared
1006AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T, 1,
1007 [Define to 1 if ssize_t declared])],,
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001008 [#include <sys/types.h>])
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001009dnl
Theodore Ts'ob0b9c4d1997-10-20 23:36:30 +00001010dnl Check to see if llseek() is declared in unistd.h. On some libc's
1011dnl it is, and on others it isn't..... Thank you glibc developers....
1012dnl
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001013AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
1014 [Define to 1 if llseek declared in unistd.h])],,
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001015 [#include <unistd.h>])
Theodore Ts'ob0b9c4d1997-10-20 23:36:30 +00001016dnl
Theodore Ts'o6928adc2000-05-25 23:28:50 +00001017dnl Check to see if lseek64() is declared in unistd.h. Glibc's header files
1018dnl are so convoluted that I can't tell whether it will always be defined,
1019dnl and if it isn't defined while lseek64 is defined in the library,
1020dnl disaster will strike.
1021dnl
1022dnl Warning! Use of --enable-gcc-wall may throw off this test.
1023dnl
1024dnl
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001025AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
1026 [Define to 1 if lseek64 declared in unistd.h])],,
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001027 [#define _LARGEFILE_SOURCE
1028 #define _LARGEFILE64_SOURCE
1029 #include <unistd.h>])
Theodore Ts'o6928adc2000-05-25 23:28:50 +00001030dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001031dnl Word sizes...
1032dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001033AC_CHECK_SIZEOF(short)
1034AC_CHECK_SIZEOF(int)
1035AC_CHECK_SIZEOF(long)
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001036AC_CHECK_SIZEOF(long long)
Phillip Susi274d46e2013-01-24 11:21:56 -05001037AC_CHECK_SIZEOF(off_t)
Theodore Ts'o2dd680f2016-05-29 01:07:40 -04001038AC_CHECK_SIZEOF(time_t)
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001039SIZEOF_SHORT=$ac_cv_sizeof_short
1040SIZEOF_INT=$ac_cv_sizeof_int
1041SIZEOF_LONG=$ac_cv_sizeof_long
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001042SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
Phillip Susi274d46e2013-01-24 11:21:56 -05001043SIZEOF_OFF_T=$ac_cv_sizeof_off_t
Theodore Ts'o2dd680f2016-05-29 01:07:40 -04001044SIZEOF_TIME_T=$ac_cv_sizeof_time_t
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001045AC_SUBST(SIZEOF_SHORT)
1046AC_SUBST(SIZEOF_INT)
1047AC_SUBST(SIZEOF_LONG)
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001048AC_SUBST(SIZEOF_LONG_LONG)
Phillip Susi274d46e2013-01-24 11:21:56 -05001049AC_SUBST(SIZEOF_OFF_T)
Theodore Ts'o2dd680f2016-05-29 01:07:40 -04001050AC_SUBST(SIZEOF_TIME_T)
Theodore Ts'o877eb6d2001-06-11 06:54:13 +00001051AC_C_BIGENDIAN
Chen Qi91f04682014-05-05 21:08:42 -04001052if test $cross_compiling = no; then
1053 BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
1054else
1055 CROSS_COMPILE="1" BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
1056fi
Theodore Ts'o4ea7ea02006-04-09 08:41:55 -04001057ASM_TYPES_HEADER=./asm_types.h
1058AC_SUBST_FILE(ASM_TYPES_HEADER)
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001059dnl
Theodore Ts'o488c75a2008-06-07 08:55:21 -04001060dnl Save the configuration #defines needed for the public ext2fs.h
1061dnl header file
1062dnl
1063echo "/* These defines are needed for the public ext2fs.h header file */" \
1064 > public_config.h
1065if grep HAVE_SYS_TYPES_H confdefs.h > tmp_config.$$; then
1066 uniq tmp_config.$$ >> public_config.h
1067else
1068 echo "#undef HAVE_SYS_TYPES_H" >> public_config.h
1069fi
1070if grep WORDS_BIGENDIAN confdefs.h > tmp_config.$$; then
1071 uniq tmp_config.$$ >> public_config.h
1072else
1073 echo "#undef WORDS_BIGENDIAN" >> public_config.h
1074fi
1075rm -f tmp_config.$$
1076PUBLIC_CONFIG_HEADER=./public_config.h
1077AC_SUBST_FILE(PUBLIC_CONFIG_HEADER)
1078dnl
Theodore Ts'o0c193f82003-08-01 14:26:23 -04001079dnl See if we have inttypes.h and if intptr_t is defined
1080dnl
1081AC_CHECK_HEADERS([inttypes.h])
Theodore Ts'od2ee56d2005-01-09 00:57:45 -05001082AC_CHECK_TYPES(intptr_t)
Theodore Ts'o0c193f82003-08-01 14:26:23 -04001083dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001084dnl See if struct stat has a st_flags field, in which case we can get file
1085dnl flags somewhat portably. Also check for the analogous setter, chflags().
1086dnl
1087AC_MSG_CHECKING(whether struct stat has a st_flags field)
1088AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
1089 AC_TRY_COMPILE([#include <sys/stat.h>],
1090 [struct stat stat; stat.st_flags = 0;],
1091 [e2fsprogs_cv_struct_st_flags=yes],
1092 [e2fsprogs_cv_struct_st_flags=no]))
1093AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
1094if test "$e2fsprogs_cv_struct_st_flags" = yes; then
Theodore Ts'oc03bc4e1999-10-20 18:20:36 +00001095 AC_MSG_CHECKING(whether st_flags field is useful)
1096 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
1097 AC_TRY_COMPILE([#include <sys/stat.h>],
1098 [struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
1099 [e2fsprogs_cv_struct_st_flags_immut=yes],
1100 [e2fsprogs_cv_struct_st_flags_immut=no]))
1101 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
1102 if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001103 AC_DEFINE(HAVE_STAT_FLAGS, 1,
1104 [Define to 1 if struct stat has st_flags])
Theodore Ts'oc03bc4e1999-10-20 18:20:36 +00001105 fi
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001106fi
Theodore Ts'o84ea6e72004-03-19 19:29:17 -05001107dnl
1108dnl Check for the presence of SA_LEN
1109dnl
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001110AC_CHECK_MEMBER(struct sockaddr.sa_len,
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001111 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,
1112 [Define to 1 if if struct sockaddr contains sa_len]),,
Theodore Ts'o6c65d252005-01-19 12:59:48 -05001113 [#include <sys/types.h>
1114 #include <sys/socket.h>])
Theodore Ts'o84ea6e72004-03-19 19:29:17 -05001115dnl
Theodore Ts'o7154d972019-02-10 21:44:05 -05001116dnl If we are using the system-provided blkid library, check for
1117dnl the functions added after migrating that library to util-linux
Eric Sandeen9ed8e5f2009-10-02 11:32:42 -05001118dnl
1119if test -n "$BLKID_CMT"; then
Theodore Ts'o7154d972019-02-10 21:44:05 -05001120 AC_CHECK_LIB(blkid, blkid_probe_get_topology,
Dongyang Lif72ea2d2019-03-06 22:59:55 +00001121 AC_DEFINE(HAVE_BLKID_PROBE_GET_TOPOLOGY, 1,
1122 [Define to 1 if blkid has blkid_probe_get_topology]))
Theodore Ts'o7154d972019-02-10 21:44:05 -05001123 AC_CHECK_LIB(blkid, blkid_probe_enable_partitions,
Dongyang Lif72ea2d2019-03-06 22:59:55 +00001124 AC_DEFINE(HAVE_BLKID_PROBE_ENABLE_PARTITIONS, 1,
1125 [Define to 1 if blkid has blkid_probe_enable_partitions]))
Eric Sandeen9ed8e5f2009-10-02 11:32:42 -05001126fi
1127dnl
Theodore Ts'o32179ce2016-06-07 00:14:35 -04001128if test -n "$DLOPEN_LIB" ; then
1129 ac_cv_func_dlopen=yes
1130fi
Mike Frysinger677fc912012-03-06 20:13:54 -05001131AC_CHECK_FUNCS(m4_flatten([
1132 __secure_getenv
Theodore Ts'o74f2c4a2015-06-19 19:28:25 -04001133 add_key
Mike Frysinger677fc912012-03-06 20:13:54 -05001134 backtrace
Mike Frysinger677fc912012-03-06 20:13:54 -05001135 chflags
Theodore Ts'o32179ce2016-06-07 00:14:35 -04001136 dlopen
Baruch Siach9a393892014-01-02 13:05:37 -05001137 fadvise64
Mike Frysinger677fc912012-03-06 20:13:54 -05001138 fallocate
1139 fallocate64
1140 fchown
Adrien Schildknechtf47f3192016-11-23 10:21:42 -08001141 fcntl
Mike Frysinger677fc912012-03-06 20:13:54 -05001142 fdatasync
1143 fstat64
Adrien Schildknechtf47f3192016-11-23 10:21:42 -08001144 fsync
Mike Frysinger677fc912012-03-06 20:13:54 -05001145 ftruncate64
Theodore Ts'o28739272014-01-03 00:26:43 -05001146 futimes
Theodore Ts'o6c59a662014-01-04 20:44:29 -05001147 getcwd
Mike Frysinger677fc912012-03-06 20:13:54 -05001148 getdtablesize
Shuichi Ihara32b88022018-05-01 22:26:06 -06001149 gethostname
Mike Frysinger677fc912012-03-06 20:13:54 -05001150 getmntinfo
Theodore Ts'o25ff7722012-04-05 15:16:50 -07001151 getpwuid_r
Mike Frysinger677fc912012-03-06 20:13:54 -05001152 getrlimit
1153 getrusage
1154 jrand48
Theodore Ts'o74f2c4a2015-06-19 19:28:25 -04001155 keyctl
Ross Burtonc84da2e2014-07-10 17:44:38 +01001156 llistxattr
Mike Frysinger677fc912012-03-06 20:13:54 -05001157 llseek
1158 lseek64
1159 mallinfo
1160 mbstowcs
1161 memalign
Theodore Ts'o6c59a662014-01-04 20:44:29 -05001162 mempcpy
Mike Frysinger677fc912012-03-06 20:13:54 -05001163 mmap
1164 msync
1165 nanosleep
1166 open64
1167 pathconf
1168 posix_fadvise
Baruch Siach9a393892014-01-02 13:05:37 -05001169 posix_fadvise64
Mike Frysinger677fc912012-03-06 20:13:54 -05001170 posix_memalign
1171 prctl
Darrick J. Wongbaa35442014-08-02 19:18:03 -04001172 pread
1173 pwrite
Theodore Ts'of00948a2014-08-08 16:42:05 -04001174 pread64
1175 pwrite64
Theodore Ts'o1ad31742013-06-16 14:34:59 -04001176 secure_getenv
Theodore Ts'ob24efa22012-04-05 15:31:09 -07001177 setmntent
Mike Frysinger677fc912012-03-06 20:13:54 -05001178 setresgid
1179 setresuid
Theodore Ts'oc42de752014-07-08 20:02:48 -04001180 snprintf
Mike Frysinger677fc912012-03-06 20:13:54 -05001181 srandom
Theodore Ts'o6c59a662014-01-04 20:44:29 -05001182 stpcpy
Mike Frysinger677fc912012-03-06 20:13:54 -05001183 strcasecmp
1184 strdup
1185 strnlen
1186 strptime
1187 strtoull
1188 sync_file_range
1189 sysconf
1190 usleep
1191 utime
Theodore Ts'o441eb332014-10-19 22:02:48 -04001192 utimes
Mike Frysinger677fc912012-03-06 20:13:54 -05001193 valloc
1194]))
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001195dnl
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001196dnl Check to see if -lsocket is required (solaris) to make something
1197dnl that uses socket() to compile; this is needed for the UUID library
1198dnl
1199SOCKET_LIB=''
1200AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
1201AC_SUBST(SOCKET_LIB)
1202dnl
Darrick J. Wongb291c112014-09-13 15:12:46 -07001203dnl See if libmagic exists
1204dnl
1205AC_CHECK_LIB(magic, magic_file, [MAGIC_LIB=-lmagic
1206AC_CHECK_HEADERS([magic.h])])
Theodore Ts'o32179ce2016-06-07 00:14:35 -04001207if test "$ac_cv_func_dlopen" = yes ; then
Theodore Ts'od2e3c0d2014-09-21 01:25:58 -04001208 MAGIC_LIB=$DLOPEN_LIB
1209fi
Darrick J. Wongb291c112014-09-13 15:12:46 -07001210AC_SUBST(MAGIC_LIB)
1211dnl
Gustavo Zacarias62bc2432016-06-09 16:56:15 -04001212dnl Check to see if librt is required for clock_gettime() (glibc < 2.17)
1213dnl
1214AC_CHECK_LIB(rt, clock_gettime, [CLOCK_GETTIME_LIB=-lrt])
1215AC_SUBST(CLOCK_GETTIME_LIB)
1216dnl
Darrick J. Wong81cbf1e2015-05-13 17:22:40 -07001217dnl Check to see if the FUSE library is -lfuse or -losxfuse
1218dnl
1219FUSE_CMT=
1220FUSE_LIB=
1221dnl osxfuse.dylib supersedes fuselib.dylib
1222AC_ARG_ENABLE([fuse2fs],
Theodore Ts'of5dffb82015-06-20 14:20:14 -04001223[ --disable-fuse2fs do not build fuse2fs],
Darrick J. Wong81cbf1e2015-05-13 17:22:40 -07001224if test "$enableval" = "no"
1225then
1226 FUSE_CMT="#"
1227 AC_MSG_RESULT([Disabling fuse2fs])
1228else
1229 AC_CHECK_HEADERS([pthread.h fuse.h], [],
1230[AC_MSG_FAILURE([Cannot find fuse2fs headers.])],
1231[#define _FILE_OFFSET_BITS 64
1232#define FUSE_USE_VERSION 29])
1233
1234 AC_PREPROC_IFELSE(
1235[AC_LANG_PROGRAM([[#define FUSE_USE_VERSION 29
1236#ifdef __linux__
1237#include <linux/fs.h>
1238#include <linux/falloc.h>
1239#include <linux/xattr.h>
1240#endif
1241]], [])], [], [AC_MSG_FAILURE([Cannot find fuse2fs Linux headers.])])
1242
1243 AC_CHECK_LIB(osxfuse, fuse_main, [FUSE_LIB=-losxfuse],
1244 [AC_CHECK_LIB(fuse, fuse_main, [FUSE_LIB=-lfuse],
1245 [AC_MSG_FAILURE([Cannot find fuse library.])])])
1246 AC_MSG_RESULT([Enabling fuse2fs])
1247fi
1248,
1249AC_CHECK_HEADERS([pthread.h fuse.h], [], [FUSE_CMT="#"],
1250[#define _FILE_OFFSET_BITS 64
1251#define FUSE_USE_VERSION 29
1252#ifdef __linux__
1253# include <linux/fs.h>
1254# include <linux/falloc.h>
1255# include <linux/xattr.h>
1256#endif])
1257if test -z "$FUSE_CMT"
1258then
1259 AC_CHECK_LIB(osxfuse, fuse_main, [FUSE_LIB=-losxfuse],
1260[AC_CHECK_LIB(fuse, fuse_main, [FUSE_LIB=-lfuse], [FUSE_CMT="#"])])
1261fi
1262if test -z "$FUSE_CMT"
1263then
1264 AC_MSG_RESULT([Enabling fuse2fs by default.])
1265fi
1266)
1267AC_SUBST(FUSE_LIB)
1268AC_SUBST(FUSE_CMT)
1269dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001270dnl See if optreset exists
1271dnl
1272AC_MSG_CHECKING(for optreset)
1273AC_CACHE_VAL(ac_cv_have_optreset,
1274[AC_EGREP_HEADER(optreset, unistd.h,
1275 ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
1276AC_MSG_RESULT($ac_cv_have_optreset)
1277if test $ac_cv_have_optreset = yes; then
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001278 AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if optreset for getopt is present])
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001279fi
1280dnl
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001281dnl Test for sem_init, and which library it might require:
1282dnl
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001283AH_TEMPLATE([HAVE_SEM_INIT], [Define to 1 if sem_init() exists])
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001284SEM_INIT_LIB=''
Theodore Ts'ocfb8e0b2017-07-27 19:43:00 -04001285echo GL_THREADS_API: ${gl_threads_api}
1286if test "${gl_threads_api}" != none
1287then
1288 AC_CHECK_FUNC(sem_init, ,
1289 AC_CHECK_LIB(pthread, sem_init,
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001290 AC_DEFINE(HAVE_SEM_INIT, 1)
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001291 SEM_INIT_LIB=-lpthread,
Theodore Ts'ocfb8e0b2017-07-27 19:43:00 -04001292 AC_CHECK_LIB(rt, sem_init,
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001293 AC_DEFINE(HAVE_SEM_INIT, 1)
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001294 SEM_INIT_LIB=-lrt,
Theodore Ts'ocfb8e0b2017-07-27 19:43:00 -04001295 AC_CHECK_LIB(posix4, sem_init,
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001296 AC_DEFINE(HAVE_SEM_INIT, 1)
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001297 SEM_INIT_LIB=-lposix4))))dnl
Theodore Ts'ocfb8e0b2017-07-27 19:43:00 -04001298fi
Theodore Ts'od7f45af2008-09-12 10:15:26 -04001299AC_SUBST(SEM_INIT_LIB)
1300dnl
Theodore Ts'oe54635d2006-08-06 14:33:13 -04001301dnl Check for unified diff
1302dnl
1303AC_MSG_CHECKING(for unified diff option)
Theodore Ts'o27f991b2008-04-01 20:32:55 -04001304if diff -u $0 $0 > /dev/null 2>&1 ; then
Theodore Ts'oe54635d2006-08-06 14:33:13 -04001305 UNI_DIFF_OPTS=-u
1306else
1307 UNI_DIFF_OPTS=-c
1308fi
1309AC_MSG_RESULT($UNI_DIFF_OPTS)
1310AC_SUBST(UNI_DIFF_OPTS)
1311dnl
Theodore Ts'o8f3f29d2000-02-11 05:04:44 +00001312dnl We use the EXT2 ioctls only under Linux
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001313dnl
Theodore Ts'o8f3f29d2000-02-11 05:04:44 +00001314case "$host_os" in
1315linux*)
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001316 AC_DEFINE(HAVE_EXT2_IOCTLS, 1, [Define to 1 if Ext2 ioctls present])
Theodore Ts'o8f3f29d2000-02-11 05:04:44 +00001317 ;;
1318esac
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001319dnl
Theodore Ts'offf45482003-04-13 00:44:19 -04001320dnl OS-specific uncomment control
Theodore Ts'oe6f2bda2002-08-18 03:37:10 -04001321dnl
1322LINUX_CMT="#"
Theodore Ts'offf45482003-04-13 00:44:19 -04001323CYGWIN_CMT="#"
1324UNIX_CMT=
Theodore Ts'oe6f2bda2002-08-18 03:37:10 -04001325case "$host_os" in
1326linux*)
1327 LINUX_CMT=
1328 ;;
Theodore Ts'offf45482003-04-13 00:44:19 -04001329cygwin)
1330 CYGWIN_CMT=
1331 UNIX_CMT="#"
Theodore Ts'offf45482003-04-13 00:44:19 -04001332 ;;
Theodore Ts'oe6f2bda2002-08-18 03:37:10 -04001333esac
1334AC_SUBST(LINUX_CMT)
Theodore Ts'offf45482003-04-13 00:44:19 -04001335AC_SUBST(CYGWIN_CMT)
1336AC_SUBST(UNIX_CMT)
Theodore Ts'oe6f2bda2002-08-18 03:37:10 -04001337dnl
Theodore Ts'o6c133521999-07-03 20:37:03 +00001338dnl Linux and Hurd places root files in the / by default
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001339dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001340case "$host_os" in
Theodore Ts'o93636bd2003-07-12 02:45:05 -04001341linux* | gnu* | k*bsd*-gnu)
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001342 if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
1343 root_prefix="";
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001344 AC_MSG_RESULT([On $host_os systems, root_prefix defaults to ''])
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001345 fi
1346 ;;
1347esac
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001348dnl
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001349dnl On Linux/hurd, force the prefix to be /usr
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001350dnl
1351case "$host_os" in
Theodore Ts'o93636bd2003-07-12 02:45:05 -04001352linux* | gnu* | k*bsd*-gnu)
Theodore Ts'ofc6d9d51997-04-29 14:51:31 +00001353 if test "$prefix" = NONE ; then
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001354 prefix="/usr";
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001355 AC_MSG_RESULT([On $host_os systems, prefix defaults to /usr])
Theodore Ts'obff61a72002-05-21 22:21:38 -04001356 if test "$mandir" = '${prefix}/man' ; then
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001357 AC_MSG_RESULT([...and mandir defaults to /usr/share/man])
Theodore Ts'obff61a72002-05-21 22:21:38 -04001358 mandir=/usr/share/man
1359 fi
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001360 fi
1361;;
1362esac
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001363if test "$root_prefix" = NONE ; then
Theodore Ts'offe19911998-04-08 06:05:49 +00001364 if test "$prefix" = NONE ; then
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001365 root_prefix="$ac_default_prefix"
1366 else
1367 root_prefix="$prefix"
1368 fi
Theodore Ts'ob5ffead2002-05-11 19:17:00 -04001369 root_bindir=$bindir
1370 root_sbindir=$sbindir
1371 root_libdir=$libdir
1372 root_sysconfdir=$sysconfdir
1373else
1374 root_bindir='${root_prefix}/bin'
1375 root_sbindir='${root_prefix}/sbin'
1376 root_libdir='${root_prefix}/lib'
1377 root_sysconfdir='${root_prefix}/etc'
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001378fi
Theodore Ts'oc4ef11c2008-01-04 16:55:37 -05001379if test "$bindir" != '${exec_prefix}/bin'; then
1380 root_bindir=$bindir
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001381 AC_MSG_RESULT([Setting root_bindir to $root_bindir])
Theodore Ts'oc4ef11c2008-01-04 16:55:37 -05001382fi
1383if test "$sbindir" != '${exec_prefix}/sbin'; then
1384 root_sbindir=$sbindir
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001385 AC_MSG_RESULT([Setting root_sbindir to $root_sbindir])
Theodore Ts'oc4ef11c2008-01-04 16:55:37 -05001386fi
1387if test "$libdir" != '${exec_prefix}/lib'; then
1388 root_libdir=$libdir
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001389 AC_MSG_RESULT([Setting root_libdir to $root_libdir])
Theodore Ts'oc4ef11c2008-01-04 16:55:37 -05001390fi
1391if test "$sysconfdir" != '${prefix}/etc'; then
1392 root_sysconfdir=$sysconfdir
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001393 AC_MSG_RESULT([Setting root_sysconfdir to $root_sysconfdir])
Theodore Ts'oc4ef11c2008-01-04 16:55:37 -05001394fi
Theodore Ts'oa4b2d3c1998-04-03 16:12:25 +00001395AC_SUBST(root_prefix)
Theodore Ts'ob5ffead2002-05-11 19:17:00 -04001396AC_SUBST(root_bindir)
1397AC_SUBST(root_sbindir)
1398AC_SUBST(root_libdir)
1399AC_SUBST(root_sysconfdir)
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001400dnl
Theodore Ts'o55e00a22011-09-18 23:53:23 -04001401dnl Allow specification of the multiarch arch
1402dnl
1403AC_ARG_WITH([multiarch],
1404[ --with-multiarch=ARCH specify the multiarch triplet],
Theodore Ts'od7fa4102014-02-05 15:45:36 -05001405if test "$withval" = "lib64"; then
1406 libdir=/usr/lib64
1407 root_libdir=/lib64
1408else
1409 libdir=$libdir/$withval
1410 root_libdir=$root_libdir/$withval
1411fi
Theodore Ts'o55e00a22011-09-18 23:53:23 -04001412)dnl
1413dnl
Theodore Ts'od3de1a72012-12-15 22:10:27 -05001414dnl See if -static works. This could fail if the linker does not
1415dnl support -static, or if required external libraries are not available
1416dnl in static form.
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001417dnl
Theodore Ts'od3de1a72012-12-15 22:10:27 -05001418AC_MSG_CHECKING([whether we can link with -static])
Theodore Ts'oae851481997-04-29 18:13:24 +00001419AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
Theodore Ts'ofd1677e2016-05-21 23:51:19 -04001420[SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS_STATIC -static"
Theodore Ts'oae851481997-04-29 18:13:24 +00001421AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
1422 ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
1423LDFLAGS=$SAVE_LDFLAGS])
Theodore Ts'odefde781999-01-04 07:39:19 +00001424dnl
1425dnl Regardless of how the test turns out, Solaris doesn't handle -static
1426dnl This is caused by the socket library requiring the nsl library, which
1427dnl requires the -dl library, which only works for dynamically linked
1428dnl programs. It basically means you can't have statically linked programs
1429dnl which use the network under Solaris.
1430dnl
1431case "$host_os" in
1432solaris2.*)
1433 ac_cv_e2fsprogs_use_static=no
1434;;
1435esac
Theodore Ts'oae851481997-04-29 18:13:24 +00001436AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
Theodore Ts'oae851481997-04-29 18:13:24 +00001437if test $ac_cv_e2fsprogs_use_static = yes; then
Theodore Ts'ofd1677e2016-05-21 23:51:19 -04001438 LDFLAGS_STATIC="$LDFLAGS_STATIC -static"
Theodore Ts'oae851481997-04-29 18:13:24 +00001439fi
Theodore Ts'ofd1677e2016-05-21 23:51:19 -04001440AC_SUBST(LDFLAGS_STATIC)
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001441dnl
Theodore Ts'o07a0db12003-07-05 14:50:24 -04001442dnl Work around mysterious Darwin / GNU libintl problem
1443dnl (__asm__ redirection doesn't work for some mysterious reason. Looks like
1444dnl Apple hacked gcc somehow?)
1445dnl
1446case "$host_os" in
1447darwin*)
Theodore Ts'o02d04db2008-08-22 10:52:42 -04001448 AC_MSG_RESULT([Using Apple Darwin / GNU libintl workaround])
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001449 AC_DEFINE(_INTL_REDIRECT_MACROS, 1,
1450 [Define to 1 if Apple Darwin libintl workaround is needed])
Theodore Ts'o07a0db12003-07-05 14:50:24 -04001451 ;;
1452esac
1453dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001454dnl Only try to run the test suite if we're not cross compiling.
1455dnl
1456if test "$cross_compiling" = yes ; then
1457 DO_TEST_SUITE=
1458else
1459 DO_TEST_SUITE=check
1460fi
1461AC_SUBST(DO_TEST_SUITE)
1462dnl
Theodore Ts'oc6f35b82003-05-17 16:29:27 -04001463dnl Only include the intl include files if we're building with them
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001464dnl
1465INCLUDES='-I. -I$(top_builddir)/lib -I$(top_srcdir)/lib'
1466if test -n "$CPPFLAGS" ; then
1467 INCLUDES="$INCLUDES $CPPFLAGS"
Theodore Ts'oc6f35b82003-05-17 16:29:27 -04001468fi
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001469if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
1470 INCLUDES=$INCLUDES' -I$(top_builddir)/intl -I$(top_srcdir)/intl'
1471fi
Theodore Ts'o6c59a662014-01-04 20:44:29 -05001472if test -n "$WITH_DIET_LIBC" ; then
1473 INCLUDES="$INCLUDES -D_REENTRANT"
1474fi
Theodore Ts'od1154eb2011-09-18 17:34:37 -04001475AC_SUBST(INCLUDES)
Theodore Ts'oc6f35b82003-05-17 16:29:27 -04001476dnl
Theodore Ts'odd947da2005-11-09 18:37:07 -04001477dnl Build CFLAGS
1478dnl
1479if test $cross_compiling = no; then
Theodore Ts'o28739272014-01-03 00:26:43 -05001480 BUILD_CFLAGS="$CFLAGS $CPPFLAGS $INCLUDES -DHAVE_CONFIG_H"
Theodore Ts'odd947da2005-11-09 18:37:07 -04001481 BUILD_LDFLAGS="$LDFLAGS"
Theodore Ts'odd947da2005-11-09 18:37:07 -04001482fi
1483AC_SUBST(BUILD_CFLAGS)
1484AC_SUBST(BUILD_LDFLAGS)
1485dnl
Theodore Ts'ofd1677e2016-05-21 23:51:19 -04001486dnl Define CFLAGS and LDFLAGS for shared libraries
1487dnl
1488CFLAGS_SHLIB=${CFLAGS_SHLIB:-$CFLAGS}
1489CFLAGS_STLIB=${CFLAGS_STLIB:-$CFLAGS}
1490LDFLAGS_SHLIB=${LDFLAGS_SHLIB:-$LDFLAGS}
1491AC_SUBST(CFLAGS_SHLIB)
1492AC_SUBST(CFLAGS_STLIB)
1493AC_SUBST(LDFLAGS_SHLIB)
1494dnl
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001495dnl Make our output files, being sure that we create the some miscellaneous
1496dnl directories
1497dnl
1498test -d lib || mkdir lib
1499test -d include || mkdir include
1500test -d include/linux || mkdir include/linux
Theodore Ts'odefde781999-01-04 07:39:19 +00001501test -d include/asm || mkdir include/asm
Theodore Ts'o44dfb372015-07-01 19:42:05 -04001502if test -z "$UUID_CMT" ; then
1503 uuid_out_list="lib/uuid/Makefile lib/uuid/uuid.pc \
1504 lib/uuid/uuid_types.h"
1505fi
1506if test -z "$BLKID_CMT" ; then
1507 blkid_out_list="lib/blkid/Makefile lib/blkid/blkid.pc \
1508 lib/blkid/blkid_types.h"
1509fi
Theodore Ts'oe5f0f3e2018-08-18 10:42:44 -04001510for i in MCONFIG Makefile \
Theodore Ts'o183c73b2012-05-12 23:13:24 -04001511 util/Makefile util/subst.conf util/gen-tarball util/install-symlink \
Theodore Ts'o4ea7ea02006-04-09 08:41:55 -04001512 lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
1513 lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
Theodore Ts'of34af412015-07-11 23:05:57 -04001514 $uuid_out_list $blkid_out_list lib/support/Makefile \
Theodore Ts'o44dfb372015-07-01 19:42:05 -04001515 lib/ss/ss.pc lib/et/com_err.pc lib/e2p/e2p.pc lib/ext2fs/ext2fs.pc \
Theodore Ts'o921f4ad2004-11-19 17:25:27 -05001516 misc/Makefile ext2ed/Makefile e2fsck/Makefile \
Theodore Ts'o94ba8c72003-03-02 02:07:14 -05001517 debugfs/Makefile tests/Makefile tests/progs/Makefile \
Matthias Andree98a5ad62009-07-15 17:37:52 +02001518 resize/Makefile doc/Makefile intl/Makefile \
1519 intl/libgnuintl.h po/Makefile.in ; do
Theodore Ts'o94ba8c72003-03-02 02:07:14 -05001520 if test -d `dirname ${srcdir}/$i` ; then
1521 outlist="$outlist $i"
1522 fi
1523done
1524AC_OUTPUT($outlist)
Theodore Ts'oee683a12005-02-05 15:53:56 -05001525if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi