]> git.ipfire.org Git - thirdparty/e2fsprogs.git/blame_incremental - configure.ac
contrib: add ext4-ioc.c
[thirdparty/e2fsprogs.git] / configure.ac
... / ...
CommitLineData
1AC_INIT(version.h)
2AC_PREREQ(2.54)
3AC_CONFIG_AUX_DIR(config)
4AC_CONFIG_HEADERS([lib/config.h])
5AH_BOTTOM([#include <dirpaths.h>])
6MCONFIG=./MCONFIG
7AC_SUBST_FILE(MCONFIG)
8BINARY_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}'`
14E2FSPROGS_DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
15 | tr \" " " | awk '{print $1}'`
16E2FSPROGS_DAY=$(echo $E2FSPROGS_DATE | awk -F- '{print $1}' | sed -e '/^[[1-9]]$/s/^/0/')
17MONTH=`echo $E2FSPROGS_DATE | awk -F- '{print $2}'`
18YEAR=`echo $E2FSPROGS_DATE | awk -F- '{print $3}'`
19
20if expr $YEAR ">" 1900 > /dev/null ; then
21 E2FSPROGS_YEAR=$YEAR
22elif expr $YEAR ">" 90 >/dev/null ; then
23 E2FSPROGS_YEAR=19$YEAR
24else
25 E2FSPROGS_YEAR=20$YEAR
26fi
27
28case $MONTH in
29Jan) 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" ;;
41*) AC_MSG_WARN([Unknown month $MONTH??]) ;;
42esac
43
44base_ver=`echo $E2FSPROGS_VERSION | \
45 sed -e 's/-WIP//' -e 's/pre-//' -e 's/-PLUS//'`
46
47date_spec=${E2FSPROGS_YEAR}.${MONTH_NUM}.${E2FSPROGS_DAY}
48
49case $E2FSPROGS_VERSION in
50*-WIP|pre-*)
51 E2FSPROGS_PKGVER="$base_ver~WIP.$date_spec"
52 ;;
53*)
54 E2FSPROGS_PKGVER="$base_ver"
55 ;;
56esac
57
58unset DATE MONTH YEAR base_ver pre_vers date_spec
59AC_MSG_RESULT([Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION])
60AC_MSG_RESULT([Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}])
61AC_SUBST(E2FSPROGS_YEAR)
62AC_SUBST(E2FSPROGS_MONTH)
63AC_SUBST(E2FSPROGS_DAY)
64AC_SUBST(E2FSPROGS_VERSION)
65AC_SUBST(E2FSPROGS_PKGVER)
66AC_SUBST(E2FSPROGS_DATE)
67dnl
68dnl Use diet libc
69dnl
70WITH_DIET_LIBC=
71AC_ARG_WITH([diet-libc],
72[ --with-diet-libc use diet libc],
73CC="diet cc -nostdinc"
74WITH_DIET_LIBC=yes
75if test -z "$LIBS"
76then
77 LIBS="-lcompat"
78else
79 LIBS="$LIBS -lcompat"
80fi
81AC_MSG_RESULT(CC=$CC))dnl
82dnl
83AC_CANONICAL_HOST
84dnl
85dnl Check to see if libdl exists for the sake of dlopen
86dnl
87DLOPEN_LIB=''
88AC_CHECK_LIB(dl, dlopen,DLOPEN_LIB=-ldl)
89AC_SUBST(DLOPEN_LIB)
90dnl
91AC_ARG_WITH([cc],
92AC_HELP_STRING([--with-cc],[no longer supported, use CC= instead]),
93AC_MSG_ERROR([--with-cc no longer supported; use CC= instead]))
94dnl
95AC_ARG_WITH([ccopts],
96AC_HELP_STRING([--with-ccopts],[no longer supported, use CFLAGS= instead]),
97AC_MSG_ERROR([--with-ccopts no longer supported; use CFLAGS= instead]))
98dnl
99AC_ARG_WITH([ldopts],
100AC_HELP_STRING([--with-ldopts],[no longer supported, use LDFLAGS= instead]),
101AC_MSG_ERROR([--with-ldopts no longer supported; use LDFLAGS= instead]))
102dnl
103AC_PROG_CC
104if test "$GCC" = yes; then
105 RDYNAMIC="-rdynamic"
106 AC_SUBST(RDYNAMIC)
107fi
108AC_PROG_CPP
109dnl
110dnl Alpha computers use fast and imprecise floating point code that may
111dnl miss exceptions by default. Force sane options if we're using GCC.
112AC_MSG_CHECKING(for additional special compiler flags)
113if test "$GCC" = yes
114then
115 case "$host_cpu" in
116 alpha) addcflags="-mieee" ;;
117 esac
118fi
119if test "x$addcflags" != x
120then
121 AC_MSG_RESULT($addcflags)
122 CFLAGS="$addcflags $CFLAGS"
123else
124 AC_MSG_RESULT([[(none)]])
125fi
126AC_USE_SYSTEM_EXTENSIONS
127dnl
128dnl Set default values for library extensions. Will be dealt with after
129dnl parsing configuration options, which may modify these
130dnl
131LIB_EXT=.a
132STATIC_LIB_EXT=.a
133PROFILED_LIB_EXT=.a
134dnl
135dnl Allow separate `root_prefix' to be specified
136dnl
137AC_ARG_WITH([root-prefix],
138[ --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
139root_prefix=$withval,
140root_prefix=NONE)dnl
141dnl
142dnl handle --enable-maintainer-mode
143dnl
144AC_ARG_ENABLE([maintainer-mode],
145[ --enable-maintainer-mode enable makefile rules useful for maintainers],
146if test "$enableval" = "no"
147then
148 MAINTAINER_CMT=#
149 AC_MSG_RESULT([Disabling maintainer mode])
150else
151 MAINTAINER_CMT=
152 AC_MSG_RESULT([Enabling maintainer mode])
153fi
154,
155MAINTAINER_CMT=#
156AC_MSG_RESULT([Disabling maintainer mode by default])
157)
158AC_SUBST(MAINTAINER_CMT)
159dnl
160dnl handle --enable-symlink-install
161dnl
162AC_ARG_ENABLE([symlink-install],
163[ --enable-symlink-install use symlinks when installing instead of hard links],
164if test "$enableval" = "no"
165then
166 LINK_INSTALL_FLAGS=-f
167 AC_MSG_RESULT([Disabling symlinks for install])
168else
169 LINK_INSTALL_FLAGS=-sf
170 AC_MSG_RESULT([Enabling symlinks for install])
171fi
172,
173LINK_INSTALL_FLAGS=-f
174AC_MSG_RESULT([Disabling symlinks for install by default])
175)
176AC_SUBST(LINK_INSTALL_FLAGS)
177dnl
178dnl handle --enable-relative-symlinks
179dnl
180relative_symlink_defined=
181AC_ARG_ENABLE([relative-symlinks],
182[ --enable-relative-symlinks use relative symlinks when installing],
183if test "$enableval" = "no"
184then
185 SYMLINK_RELATIVE=
186 relative_symlink_defined=yes
187 AC_MSG_RESULT([Disabling relative symlinks for install])
188else
189 SYMLINK_RELATIVE=--relative
190 relative_symlink_defined=yes
191 AC_MSG_RESULT([Enabling relative symlinks for install])
192fi)
193AC_ARG_ENABLE([symlink-relative-symlinks],,
194if test "$enableval" = "no"
195then
196 SYMLINK_RELATIVE=yes
197 AC_MSG_RESULT([Disabling relative symlinks for install])
198else
199 SYMLINK_RELATIVE=--relative
200 AC_MSG_RESULT([Enabling relative symlinks for install])
201fi
202,
203if test -z "$relative_symlink_defined"
204then
205 SYMLINK_RELATIVE=
206AC_MSG_RESULT([Disabling relative symlinks for install by default])
207fi
208)
209AC_SUBST(SYMLINK_RELATIVE)
210dnl
211dnl handle --enable-symlink-build
212dnl
213AC_ARG_ENABLE([symlink-build],
214[ --enable-symlink-build use symlinks while building instead of hard links],
215if test "$enableval" = "no"
216then
217 LINK_BUILD_FLAGS=
218 AC_MSG_RESULT([Disabling symlinks for build])
219else
220 LINK_BUILD_FLAGS=-s
221 AC_MSG_RESULT([Enabling symlinks for build])
222fi
223,
224LINK_BUILD_FLAGS=
225AC_MSG_RESULT([Disabling symlinks for build by default])
226)
227AC_SUBST(LINK_BUILD_FLAGS)
228dnl
229dnl handle --enable-verbose-makecmds
230dnl
231AC_ARG_ENABLE([verbose-makecmds],
232[ --enable-verbose-makecmds enable verbose make command output],
233if test "$enableval" = "no"
234then
235 AC_MSG_RESULT([Disabling verbose make commands])
236 E=@echo
237 ES=echo
238 Q=@
239else
240 AC_MSG_RESULT([Enabling verbose make commands])
241 E=@\\#
242 ES=\\#
243 Q=
244fi
245,
246AC_MSG_RESULT([Disabling verbose make commands])
247E=@echo
248ES=echo
249Q=@
250)
251AC_SUBST(E)
252AC_SUBST(ES)
253AC_SUBST(Q)
254dnl
255dnl This needs to be before all of the --enable-*-shlibs options
256dnl
257E2_PKG_CONFIG_STATIC=--static
258LDFLAG_DYNAMIC=
259PRIVATE_LIBS_CMT=
260dnl
261dnl handle --enable-elf-shlibs
262dnl
263AC_ARG_ENABLE([elf-shlibs],
264[ --enable-elf-shlibs select ELF shared libraries],
265if test "$enableval" = "no"
266then
267 ELF_CMT=#
268 MAKEFILE_ELF=/dev/null
269 AC_MSG_RESULT([Disabling ELF shared libraries])
270else
271 E2_PKG_CONFIG_STATIC=
272 ELF_CMT=
273 MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
274 [case "$host_os" in
275 solaris2.*)
276 MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
277 ;;
278 esac]
279 BINARY_TYPE=elfbin
280 LIB_EXT=.so
281 PRIVATE_LIBS_CMT=#
282 LDFLAG_DYNAMIC=['-Wl,-rpath-link,$(top_builddir)/lib']
283 AC_MSG_RESULT([Enabling ELF shared libraries])
284fi
285,
286MAKEFILE_ELF=/dev/null
287ELF_CMT=#
288AC_MSG_RESULT([Disabling ELF shared libraries by default])
289)
290AC_SUBST(ELF_CMT)
291AC_SUBST_FILE(MAKEFILE_ELF)
292dnl
293dnl handle --enable-bsd-shlibs
294dnl
295AC_ARG_ENABLE([bsd-shlibs],
296[ --enable-bsd-shlibs select BSD shared libraries],
297if test "$enableval" = "no"
298then
299 BSDLIB_CMT=#
300 MAKEFILE_BSDLIB=/dev/null
301 AC_MSG_RESULT([Disabling BSD shared libraries])
302else
303 E2_PKG_CONFIG_STATIC=
304 BSDLIB_CMT=
305 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
306 LIB_EXT=.so
307 [case "$host_os" in
308 darwin*)
309 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib
310 LIB_EXT=.dylib
311 ;;
312 esac]
313 AC_MSG_RESULT([Enabling BSD shared libraries])
314fi
315,
316MAKEFILE_BSDLIB=/dev/null
317BSDLIB_CMT=#
318AC_MSG_RESULT([Disabling BSD shared libraries by default])
319)
320AC_SUBST(BSDLIB_CMT)
321AC_SUBST_FILE(MAKEFILE_BSDLIB)
322dnl
323dnl handle --enable-profile
324dnl
325AC_ARG_ENABLE([profile],
326[ --enable-profile build profiling libraries],
327if test "$enableval" = "no"
328then
329 PROFILE_CMT=#
330 MAKEFILE_PROFILE=/dev/null
331 AC_MSG_RESULT([Disabling profiling libraries])
332else
333 PROFILE_CMT=
334 MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
335 PROFILED_LIB_EXT=_p.a
336 AC_MSG_RESULT([Building profiling libraries])
337fi
338,
339PROFILE_CMT=#
340MAKEFILE_PROFILE=/dev/null
341AC_MSG_RESULT([Disabling profiling libraries by default])
342)
343AC_SUBST(PROFILE_CMT)
344AC_SUBST_FILE(MAKEFILE_PROFILE)
345dnl
346dnl handle --enable-gcov
347dnl
348AC_ARG_ENABLE([gcov],
349[ --enable-gcov build for coverage testing using gcov],
350if test "$enableval" = "yes"
351then
352 CFLAGS="-g -fprofile-arcs -ftest-coverage"
353 LDFLAGS="-fprofile-arcs -ftest-coverage"
354 AC_MSG_RESULT([Enabling gcov support])
355fi
356)
357dnl
358dnl handle --enable-hardening
359dnl
360CFLAGS_SHLIB="${CFLAGS_SHLIB:-$CFLAGS}"
361CFLAGS_STLIB="${CFLAGS_STLIB:-$CFLAGS}"
362LDFLAGS_SHLIB=${LDFLAGS_SHLIB:-$LDFLAGS}
363LDFLAGS_STATIC=${LDFLAGS_STATIC:-$LDFLAGS}
364AC_ARG_ENABLE([hardening],
365[ --enable-hardening build for coverage testing using gcov],
366if test "$enableval" = "yes"
367then
368 HARDEN_CFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector-strong"
369 HARDEN_LDFLAGS=["-Wl,-z,relro -Wl,-z,now"]
370 CFLAGS="$CFLAGS $HARDEN_CFLAGS -fPIE"
371 CFLAGS_SHLIB="$CFLAGS_SHLIB $HARDEN_CFLAGS"
372 CFLAGS_STLIB="$CFLAGS_STLIB $HARDEN_CFLAGS -fPIE"
373 LDFLAGS="$LDFLAGS $HARDEN_LDFLAGS -fPIE -pie"
374 LDFLAGS_STATIC="$LDFLAGS_STATIC $HARDEN_LDFLAGS"
375 LDFLAGS_SHLIB="$LDFLAGS_SHLIB $HARDEN_LDFLAGS"
376 AC_MSG_RESULT([Enabling hardening support])
377fi
378)
379dnl
380dnl Substitute library extensions
381dnl
382AC_SUBST(LIB_EXT)
383AC_SUBST(STATIC_LIB_EXT)
384AC_SUBST(PROFILED_LIB_EXT)
385AC_SUBST(LDFLAG_DYNAMIC)
386AC_SUBST(PRIVATE_LIBS_CMT)
387dnl
388dnl handle --enable-jbd-debug
389dnl
390AC_ARG_ENABLE([jbd-debug],
391[ --enable-jbd-debug enable journal debugging],
392if test "$enableval" = "no"
393then
394 AC_MSG_RESULT([Disabling journal debugging])
395else
396 AC_DEFINE(CONFIG_JBD_DEBUG, 1,
397 [Define to 1 if debugging ext3/4 journal code])
398 AC_MSG_RESULT([Enabling journal debugging])
399fi
400,
401AC_MSG_RESULT([Disabling journal debugging by default])
402)
403dnl
404dnl handle --enable-blkid-debug
405dnl
406AC_ARG_ENABLE([blkid-debug],
407[ --enable-blkid-debug enable blkid debugging],
408if test "$enableval" = "no"
409then
410 AC_MSG_RESULT([Disabling blkid debugging])
411else
412 AC_DEFINE(CONFIG_BLKID_DEBUG, 1,
413 [Define to 1 if debugging the blkid library])
414 AC_MSG_RESULT([Enabling blkid debugging])
415fi
416,
417AC_MSG_RESULT([Disabling blkid debugging by default])
418)
419dnl
420dnl handle --enable-testio-debug
421dnl
422AC_ARG_ENABLE([testio-debug],
423[ --disable-testio-debug disable the use of the test I/O manager for debugging],
424AH_TEMPLATE([CONFIG_TESTIO_DEBUG],
425 [Define to 1 if the testio I/O manager should be enabled])
426if test "$enableval" = "no"
427then
428 AC_MSG_RESULT([Disabling testio debugging])
429 TEST_IO_CMT="#"
430else
431 TEST_IO_CMT=
432 AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
433 AC_MSG_RESULT([Enabling testio debugging])
434fi
435,
436AC_MSG_RESULT([Enabling testio debugging by default])
437AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
438TEST_IO_CMT=
439)
440AC_SUBST(TEST_IO_CMT)
441dnl
442dnl handle --enable-developer-features
443dnl
444AC_ARG_ENABLE([developer-features],
445[ --enable-developer-features enable features for use by ext4 developers],
446AH_TEMPLATE([CONFIG_DEVELOPER_FEATURES],
447 [Define to 1 for features for use by ext4 developers])
448if test "$enableval" = "yes"
449then
450 DEV_FEATURES_CMT=
451 AC_DEFINE(CONFIG_DEVELOPER_FEATURES, 1)
452 AC_MSG_RESULT([Enabling ext4 developer features])
453else
454 AC_MSG_RESULT([Disabling ext4 developer features])
455 DEV_FEATURES_CMT="#"
456fi
457,
458AC_MSG_RESULT([Disabling ext4 developer features by default])
459DEV_FEATURES_CMT=
460)
461AC_SUBST(DEV_FEATURES_CMT)
462dnl
463dnl handle --disable-libuuid
464dnl
465PKG_PROG_PKG_CONFIG
466LIBUUID=
467DEPLIBUUID=
468STATIC_LIBUUID=
469DEPSTATIC_LIBUUID=
470PROFILED_LIBUUID=
471DEPPROFILED_LIBUUID=
472UUID_CMT=
473AC_ARG_ENABLE([libuuid],
474[ --enable-libuuid build and use private uuid library],
475if test "$enableval" = "no"
476then
477 if test -z "$PKG_CONFIG"; then
478 AC_MSG_ERROR([pkg-config not installed; please install it.])
479 fi
480
481 AC_CHECK_LIB(uuid, uuid_generate,
482 [LIBUUID=`$PKG_CONFIG --libs uuid`;
483 STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`],
484 [AC_MSG_ERROR([external uuid library not found])])
485 PROFILED_LIBUUID=$LIBUUID
486 UUID_CMT=#
487 AC_MSG_RESULT([Disabling private uuid library])
488else
489 LIBUUID='$(LIB)/libuuid'$LIB_EXT
490 DEPLIBUUID=$LIBUUID
491 STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
492 DEPSTATIC_LIBUUID=$STATIC_LIBUUID
493 PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
494 DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
495 AC_MSG_RESULT([Enabling private uuid library])
496fi
497,
498if test -n "$PKG_CONFIG"; then
499 AC_CHECK_LIB(uuid, uuid_generate,
500 [LIBUUID=`$PKG_CONFIG --libs uuid`;
501 STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`])
502fi
503if test -n "$LIBUUID"; then
504 PROFILED_LIBUUID=$LIBUUID
505 UUID_CMT=#
506 AC_MSG_RESULT([Using system uuid by default])
507else
508 LIBUUID='$(LIB)/libuuid'$LIB_EXT
509 DEPLIBUUID=$LIBUUID
510 STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
511 DEPSTATIC_LIBUUID=$STATIC_LIBUUID
512 PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
513 DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
514 AC_MSG_RESULT([Enabling private uuid library by default])
515fi
516)
517AC_SUBST(LIBUUID)
518AC_SUBST(DEPLIBUUID)
519AC_SUBST(STATIC_LIBUUID)
520AC_SUBST(DEPSTATIC_LIBUUID)
521AC_SUBST(PROFILED_LIBUUID)
522AC_SUBST(DEPPROFILED_LIBUUID)
523AC_SUBST(UUID_CMT)
524dnl
525dnl handle --disable-libblkid
526dnl
527PKG_PROG_PKG_CONFIG
528LIBBLKID=
529DEPLIBBLKID=
530STATIC_LIBBLKID=
531DEPSTATIC_LIBBLKID=
532PROFILED_LIBBLKID=
533DEPPROFILED_LIBBLKID=
534BLKID_CMT=
535AH_TEMPLATE([CONFIG_BUILD_FINDFS], [Define to 1 to compile findfs])
536AC_ARG_ENABLE([libblkid],
537[ --enable-libblkid build and use private blkid library],
538if test "$enableval" = "no"
539then
540 if test -z "$PKG_CONFIG"; then
541 AC_MSG_ERROR([pkg-config not installed; please install it.])
542 fi
543
544 AC_CHECK_LIB(blkid, blkid_get_cache,
545 [LIBBLKID=`$PKG_CONFIG --libs blkid`;
546 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
547 [AC_MSG_ERROR([external blkid library not found])], -luuid)
548 BLKID_CMT=#
549 PROFILED_LIBBLKID=$LIBBLKID
550 AC_MSG_RESULT([Disabling private blkid library])
551else
552 LIBBLKID='$(LIB)/libblkid'$LIB_EXT
553 DEPLIBBLKID=$LIBBLKID
554 STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
555 DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
556 PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
557 DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
558 AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
559 AC_MSG_RESULT([Enabling private blkid library])
560fi
561,
562if test -n "$PKG_CONFIG"; then
563 AC_CHECK_LIB(blkid, blkid_get_cache,
564 [LIBBLKID=`$PKG_CONFIG --libs blkid`;
565 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`])
566fi
567if test -n "$LIBBLKID"; then
568 BLKID_CMT=#
569 PROFILED_LIBBLKID=$LIBBLKID
570 AC_MSG_RESULT([Using system blkid library by default])
571else
572 LIBBLKID='$(LIB)/libblkid'$LIB_EXT
573 DEPLIBBLKID=$LIBBLKID
574 STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
575 DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
576 PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
577 DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
578 AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
579 AC_MSG_RESULT([Enabling private blkid library by default])
580fi
581)
582AC_SUBST(LIBBLKID)
583AC_SUBST(DEPLIBBLKID)
584AC_SUBST(STATIC_LIBBLKID)
585AC_SUBST(DEPSTATIC_LIBBLKID)
586AC_SUBST(PROFILED_LIBBLKID)
587AC_SUBST(DEPPROFILED_LIBBLKID)
588AC_SUBST(BLKID_CMT)
589dnl
590dnl handle --enable-subset
591dnl
592ALL_CMT=
593SUBSET_CMT=
594AC_ARG_ENABLE([subset],
595[ --enable-subset enable subset-only build],
596if test "$enableval" = "no"
597then
598 SUBSET_CMT=#
599 AC_MSG_RESULT([Disabling subset-only build])
600else
601 ALL_CMT=#
602 AC_MSG_RESULT([Enabling subset-only-build])
603fi
604,)
605AC_SUBST(ALL_CMT)
606AC_SUBST(SUBSET_CMT)
607dnl
608dnl handle --disable-backtrace
609dnl
610AH_TEMPLATE([DISABLE_BACKTRACE], [Define to 1 to disable use of backtrace])
611AC_ARG_ENABLE([backtrace],
612[ --disable-backtrace disable use backtrace],
613if test "$enableval" = "no"
614then
615 AC_MSG_RESULT([Disabling use of backtrace])
616 AC_DEFINE(DISABLE_BACKTRACE, 1)
617else
618 AC_MSG_RESULT([Enabling use of backtrace])
619fi
620,
621AC_MSG_RESULT([Enabling use of backtrace by default])
622)
623dnl
624dnl handle --enable-debugfs
625dnl
626AC_ARG_ENABLE([debugfs],
627[ --disable-debugfs disable support of debugfs program],
628if test "$enableval" = "no"
629then
630 AC_MSG_RESULT([Disabling debugfs support])
631 DEBUGFS_CMT="#"
632else
633 DEBUGFS_CMT=
634 AC_MSG_RESULT([Enabling debugfs support])
635fi
636,
637AC_MSG_RESULT([Enabling debugfs support by default])
638DEBUGFS_CMT=
639)
640AC_SUBST(DEBUGFS_CMT)
641dnl
642dnl handle --enable-imager
643dnl
644AC_ARG_ENABLE([imager],
645[ --disable-imager disable support of e2image program],
646if test "$enableval" = "no"
647then
648 AC_MSG_RESULT([Disabling e2image support])
649 IMAGER_CMT="#"
650else
651 IMAGER_CMT=
652 AC_MSG_RESULT([Enabling e2image support])
653fi
654,
655AC_MSG_RESULT([Enabling e2image support by default])
656IMAGER_CMT=
657)
658AC_SUBST(IMAGER_CMT)
659dnl
660dnl handle --enable-resizer
661dnl
662AC_ARG_ENABLE([resizer],
663[ --disable-resizer disable support of e2resize program],
664if test "$enableval" = "no"
665then
666 AC_MSG_RESULT([Disabling e2resize support])
667 RESIZER_CMT="#"
668else
669 RESIZER_CMT=
670 AC_MSG_RESULT([Enabling e2resize support])
671fi
672,
673AC_MSG_RESULT([Enabling e2resize support by default])
674RESIZER_CMT=
675)
676AC_SUBST(RESIZER_CMT)
677dnl
678dnl handle --enable-defrag
679dnl
680AC_ARG_ENABLE([defrag],
681[ --disable-defrag disable support of e4defrag program],
682if test "$enableval" = "no"
683then
684 AC_MSG_RESULT([Disabling e4defrag support])
685 DEFRAG_CMT="#"
686else
687 DEFRAG_CMT=
688 AC_MSG_RESULT([Enabling e4defrag support])
689fi
690,
691if test -z "$WITH_DIET_LIBC"
692then
693 AC_MSG_RESULT([Enabling e4defrag support by default])
694 DEFRAG_CMT=
695else
696 AC_MSG_RESULT([Disabling e4defrag support by default])
697 DEFRAG_CMT="#"
698fi
699)
700AC_SUBST(DEFRAG_CMT)
701dnl
702dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
703dnl
704AC_ARG_ENABLE([fsck],
705[ --enable-fsck build fsck wrapper program],
706[if test "$enableval" = "no"
707then
708 FSCK_PROG='' FSCK_MAN=''
709 AC_MSG_RESULT([Not building fsck wrapper])
710else
711 FSCK_PROG=fsck FSCK_MAN=fsck.8
712 AC_MSG_RESULT([Building fsck wrapper])
713fi]
714,
715[case "$host_os" in
716 gnu*)
717 FSCK_PROG='' FSCK_MAN=''
718 AC_MSG_RESULT([Not building fsck wrapper by default])
719 ;;
720 *)
721 FSCK_PROG=fsck FSCK_MAN=fsck.8
722 AC_MSG_RESULT([Building fsck wrapper by default])
723esac]
724)
725AC_SUBST(FSCK_PROG)
726AC_SUBST(FSCK_MAN)
727dnl
728dnl See whether to install the `e2initrd-helper' program
729dnl
730AC_ARG_ENABLE([e2initrd-helper],
731[ --enable-e2initrd-helper build e2initrd-helper program],
732[if test "$enableval" = "no"
733then
734 E2INITRD_PROG='' E2INITRD_MAN=''
735 AC_MSG_RESULT([Not building e2initrd helper])
736else
737 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
738 AC_MSG_RESULT([Building e2initrd helper])
739fi]
740,
741E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
742AC_MSG_RESULT([Building e2initrd helper by default])
743)
744AC_SUBST(E2INITRD_PROG)
745AC_SUBST(E2INITRD_MAN)
746dnl
747dnl
748dnl
749AC_ARG_ENABLE([tls],
750[ --disable-tls disable use of thread local support],
751[if test "$enableval" = "no"
752then
753 try_tls=""
754 AC_MSG_RESULT([Disabling thread local support])
755else
756 try_tls="yes"
757 AC_MSG_RESULT([Enabling thread local support])
758fi]
759,
760if test -n "$WITH_DIET_LIBC"
761then
762 try_tls=""
763 AC_MSG_RESULT([Diet libc does not support thread local support])
764else
765 try_tls="yes"
766 AC_MSG_RESULT([Try using thread local support by default])
767fi
768)
769if test "$try_tls" = "yes"
770then
771AX_TLS
772fi
773dnl
774dnl
775dnl
776AH_TEMPLATE([USE_UUIDD], [Define to 1 to build uuidd])
777AC_ARG_ENABLE([uuidd],
778[ --disable-uuidd disable building the uuid daemon],
779[if test "$enableval" = "no"
780then
781 AC_MSG_RESULT([Not building uuidd])
782 UUIDD_CMT="#"
783else
784 AC_DEFINE(USE_UUIDD, 1)
785 UUIDD_CMT=""
786 AC_MSG_RESULT([Building uuidd])
787fi]
788,
789AC_DEFINE(USE_UUIDD, 1)
790if test -z "$UUID_CMT"
791then
792 UUIDD_CMT=""
793 AC_MSG_RESULT([Building uuidd by default])
794else
795 UUIDD_CMT="#"
796 AC_MSG_RESULT([Disabling uuidd by default])
797fi
798)
799AC_SUBST(UUIDD_CMT)
800dnl
801dnl handle --disable-mmp
802dnl
803AH_TEMPLATE([CONFIG_MMP], [Define to 1 to enable mmp support])
804AC_ARG_ENABLE([mmp],
805[ --disable-mmp disable support mmp, Multi Mount Protection],
806if test "$enableval" = "no"
807then
808 AC_MSG_RESULT([Disabling mmp support])
809else
810 AC_MSG_RESULT([Enabling mmp support])
811 AC_DEFINE(CONFIG_MMP, 1)
812fi
813,
814AC_MSG_RESULT([Enabling mmp support by default])
815AC_DEFINE(CONFIG_MMP, 1)
816)
817dnl
818dnl handle --disable-tdb
819dnl
820AH_TEMPLATE([CONFIG_TDB], [Define to 1 to enable tdb support])
821AC_ARG_ENABLE([tdb],
822[ --disable-tdb disable tdb support],
823if test "$enableval" = "no"
824then
825 AC_MSG_RESULT([Disabling tdb support])
826 TDB_CMT="#"
827 TDB_MAN_COMMENT='.\"'
828else
829 AC_MSG_RESULT([Enabling tdb support])
830 AC_DEFINE(CONFIG_TDB, 1)
831 TDB_CMT=""
832 TDB_MAN_COMMENT=""
833fi
834,
835AC_MSG_RESULT([Enabling mmp support by default])
836AC_DEFINE(CONFIG_TDB, 1)
837TDB_CMT=""
838TDB_MAN_COMMENT=""
839)
840AC_SUBST(TDB_CMT)
841AC_SUBST(TDB_MAN_COMMENT)
842dnl
843dnl handle --disable-bmap-stats
844dnl
845AH_TEMPLATE([ENABLE_BMAP_STATS], [Define to 1 to enable bitmap stats.])
846AC_ARG_ENABLE([bmap-stats],
847[ --disable-bmap-stats disable collection of bitmap stats.],
848if test "$enableval" = "no"
849then
850 AC_MSG_RESULT([Disabling bitmap statistics support])
851else
852 AC_MSG_RESULT([Enabling bitmap statistics support])
853 AC_DEFINE(ENABLE_BMAP_STATS, 1)
854fi
855,
856AC_MSG_RESULT([Enabling bitmap statistics support by default])
857AC_DEFINE(ENABLE_BMAP_STATS, 1)
858)
859dnl
860dnl handle --enable-bmap-stats-ops
861dnl
862AH_TEMPLATE([ENABLE_BMAP_STATS_OPS], [Define to 1 to enable bitmap stats.])
863AC_ARG_ENABLE([bmap-stats-ops],
864[ --enable-bmap-stats-ops enable collection of additional bitmap stats],
865if test "$enableval" = "no"
866then
867 AC_MSG_RESULT([Disabling additional bitmap statistics])
868else
869 dnl There has to be a better way!
870 AS_IF([test "x${enable_bmap_stats}" = "xno"],
871 AC_MSG_FAILURE([Error --enable-bmap-stats-ops requires bmap-stats]))
872
873 AC_MSG_RESULT([Enabling additional bitmap statistics])
874 AC_DEFINE(ENABLE_BMAP_STATS_OPS, 1)
875fi
876,
877AC_MSG_RESULT([Disabling additional bitmap statistics by default])
878)
879dnl
880dnl
881dnl
882MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
883AC_SUBST_FILE(MAKEFILE_LIBRARY)
884dnl
885dnl Add internationalization support, using gettext.
886dnl
887GETTEXT_PACKAGE=e2fsprogs
888PACKAGE=e2fsprogs
889VERSION="$E2FSPROGS_VERSION"
890VERSION=0.14.1
891AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [package name for gettext])
892AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [version for gettext])
893AC_SUBST(GETTEXT_PACKAGE)
894AC_SUBST(PACKAGE)
895AC_SUBST(VERSION)
896
897AM_GNU_GETTEXT
898dnl
899dnl End of configuration options
900dnl
901AC_SUBST(BINARY_TYPE)
902AC_PROG_MAKE_SET
903CHECK_GNU_MAKE
904AC_PATH_PROG(LN, ln, ln)
905AC_PROG_MKDIR_P
906AC_PROG_LN_S
907AC_PATH_PROG(MV, mv, mv)
908AC_PATH_PROG(CP, cp, cp)
909AC_PATH_PROG(RM, rm, rm)
910AC_PATH_PROG(CHMOD, chmod, :)
911AC_PROG_AWK
912AC_PROG_EGREP
913AC_PATH_PROG(SED, sed, sed)
914AC_PATH_PROG(PERL, perl, perl)
915AC_PATH_PROG(LDCONFIG, ldconfig, :)
916AC_CHECK_TOOL(AR, ar, ar)
917AC_CHECK_TOOL(RANLIB, ranlib, :)
918AC_CHECK_TOOL(STRIP, strip, :)
919AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, )
920if test "_$MAKEINFO" = "_"; then
921 MAKEINFO="echo Makeinfo is missing. Info documentation will not be built."
922else
923 case "$MAKEINFO" in
924 */missing.*)
925 AC_MSG_WARN([
926*** Makeinfo is missing. Info documentation will not be built.])
927 ;;
928 *)
929 ;;
930 esac
931fi
932AC_SUBST(MAKEINFO)
933AC_PROG_INSTALL
934# See if we need a separate native compiler.
935if test $cross_compiling = no; then
936 BUILD_CC="$CC"
937 AC_SUBST(BUILD_CC)
938else
939 AC_CHECK_PROGS(BUILD_CC, gcc cc)
940fi
941AC_CHECK_HEADERS(m4_flatten([
942 dirent.h
943 errno.h
944 execinfo.h
945 getopt.h
946 malloc.h
947 mntent.h
948 paths.h
949 semaphore.h
950 setjmp.h
951 signal.h
952 stdarg.h
953 stdint.h
954 stdlib.h
955 termios.h
956 termio.h
957 unistd.h
958 utime.h
959 attr/xattr.h
960 linux/falloc.h
961 linux/fd.h
962 linux/fsmap.h
963 linux/major.h
964 linux/loop.h
965 linux/types.h
966 net/if_dl.h
967 netinet/in.h
968 sys/acl.h
969 sys/disklabel.h
970 sys/disk.h
971 sys/file.h
972 sys/ioctl.h
973 sys/key.h
974 sys/mkdev.h
975 sys/mman.h
976 sys/mount.h
977 sys/prctl.h
978 sys/resource.h
979 sys/select.h
980 sys/socket.h
981 sys/sockio.h
982 sys/stat.h
983 sys/syscall.h
984 sys/sysctl.h
985 sys/sysmacros.h
986 sys/time.h
987 sys/types.h
988 sys/un.h
989 sys/wait.h
990 sys/xattr.h
991]))
992dnl Check where to find a dd(1) that supports iflag=fullblock
993dnl and oflag=append
994AC_MSG_CHECKING([for a dd(1) program that supports iflag=fullblock])
995DD=
996for i in dd gdd ; do
997 if "$i" if=/dev/null of=/dev/null count=1 bs=10k 2>/dev/null iflag=fullblock oflag=append ; then
998 DD=$i
999 break
1000 fi
1001done
1002if test -n "$DD" ; then
1003 AC_MSG_RESULT([$DD])
1004else
1005 AC_MSG_RESULT([not found, using dd])
1006 DD=dd
1007 AC_MSG_WARN([No GNU-compatible dd(1) program found, expect some self-test failures.])
1008fi
1009AC_SUBST([DD])
1010
1011AC_CHECK_HEADERS(net/if.h,,,
1012[[
1013#if HAVE_SYS_TYPES_H
1014#include <sys/types.h>
1015#endif
1016#if HAVE_SYS_SOCKET
1017#include <sys/socket.h>
1018#endif
1019]])
1020AC_FUNC_VPRINTF
1021dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
1022dnl is not declared.
1023AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT, 1,
1024 [Define to 1 if dirent has d_reclen])],,
1025 [#include <dirent.h>])
1026AC_CHECK_MEMBERS([struct stat.st_atim])
1027dnl Check to see if ssize_t was declared
1028AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T, 1,
1029 [Define to 1 if ssize_t declared])],,
1030 [#include <sys/types.h>])
1031dnl
1032dnl Check to see if llseek() is declared in unistd.h. On some libc's
1033dnl it is, and on others it isn't..... Thank you glibc developers....
1034dnl
1035AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
1036 [Define to 1 if llseek declared in unistd.h])],,
1037 [#include <unistd.h>])
1038dnl
1039dnl Check to see if lseek64() is declared in unistd.h. Glibc's header files
1040dnl are so convoluted that I can't tell whether it will always be defined,
1041dnl and if it isn't defined while lseek64 is defined in the library,
1042dnl disaster will strike.
1043dnl
1044dnl Warning! Use of --enable-gcc-wall may throw off this test.
1045dnl
1046dnl
1047AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
1048 [Define to 1 if lseek64 declared in unistd.h])],,
1049 [#define _LARGEFILE_SOURCE
1050 #define _LARGEFILE64_SOURCE
1051 #include <unistd.h>])
1052dnl
1053dnl Word sizes...
1054dnl
1055AC_CHECK_SIZEOF(short)
1056AC_CHECK_SIZEOF(int)
1057AC_CHECK_SIZEOF(long)
1058AC_CHECK_SIZEOF(long long)
1059AC_CHECK_SIZEOF(off_t)
1060AC_CHECK_SIZEOF(time_t)
1061SIZEOF_SHORT=$ac_cv_sizeof_short
1062SIZEOF_INT=$ac_cv_sizeof_int
1063SIZEOF_LONG=$ac_cv_sizeof_long
1064SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
1065SIZEOF_OFF_T=$ac_cv_sizeof_off_t
1066SIZEOF_TIME_T=$ac_cv_sizeof_time_t
1067AC_SUBST(SIZEOF_SHORT)
1068AC_SUBST(SIZEOF_INT)
1069AC_SUBST(SIZEOF_LONG)
1070AC_SUBST(SIZEOF_LONG_LONG)
1071AC_SUBST(SIZEOF_OFF_T)
1072AC_SUBST(SIZEOF_TIME_T)
1073AC_C_BIGENDIAN
1074if test $cross_compiling = no; then
1075 BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
1076else
1077 CROSS_COMPILE="1" BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
1078fi
1079ASM_TYPES_HEADER=./asm_types.h
1080AC_SUBST_FILE(ASM_TYPES_HEADER)
1081dnl
1082dnl Save the configuration #defines needed for the public ext2fs.h
1083dnl header file
1084dnl
1085echo "/* These defines are needed for the public ext2fs.h header file */" \
1086 > public_config.h
1087if grep HAVE_SYS_TYPES_H confdefs.h > tmp_config.$$; then
1088 uniq tmp_config.$$ >> public_config.h
1089else
1090 echo "#undef HAVE_SYS_TYPES_H" >> public_config.h
1091fi
1092if grep WORDS_BIGENDIAN confdefs.h > tmp_config.$$; then
1093 uniq tmp_config.$$ >> public_config.h
1094else
1095 echo "#undef WORDS_BIGENDIAN" >> public_config.h
1096fi
1097rm -f tmp_config.$$
1098PUBLIC_CONFIG_HEADER=./public_config.h
1099AC_SUBST_FILE(PUBLIC_CONFIG_HEADER)
1100dnl
1101dnl See if we have inttypes.h and if intptr_t is defined
1102dnl
1103AC_CHECK_HEADERS([inttypes.h])
1104AC_CHECK_TYPES(intptr_t)
1105dnl
1106dnl See if struct stat has a st_flags field, in which case we can get file
1107dnl flags somewhat portably. Also check for the analogous setter, chflags().
1108dnl
1109AC_MSG_CHECKING(whether struct stat has a st_flags field)
1110AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
1111 AC_TRY_COMPILE([#include <sys/stat.h>],
1112 [struct stat stat; stat.st_flags = 0;],
1113 [e2fsprogs_cv_struct_st_flags=yes],
1114 [e2fsprogs_cv_struct_st_flags=no]))
1115AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
1116if test "$e2fsprogs_cv_struct_st_flags" = yes; then
1117 AC_MSG_CHECKING(whether st_flags field is useful)
1118 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
1119 AC_TRY_COMPILE([#include <sys/stat.h>],
1120 [struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
1121 [e2fsprogs_cv_struct_st_flags_immut=yes],
1122 [e2fsprogs_cv_struct_st_flags_immut=no]))
1123 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
1124 if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
1125 AC_DEFINE(HAVE_STAT_FLAGS, 1,
1126 [Define to 1 if struct stat has st_flags])
1127 fi
1128fi
1129dnl
1130dnl Check for the presence of SA_LEN
1131dnl
1132AC_CHECK_MEMBER(struct sockaddr.sa_len,
1133 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,
1134 [Define to 1 if if struct sockaddr contains sa_len]),,
1135 [#include <sys/types.h>
1136 #include <sys/socket.h>])
1137dnl
1138dnl If we are using the system-provided blkid library, check for
1139dnl the functions added after migrating that library to util-linux
1140dnl
1141if test -n "$BLKID_CMT"; then
1142 AC_CHECK_LIB(blkid, blkid_probe_get_topology,
1143 AC_DEFINE(HAVE_BLKID_PROBE_GET_TOPOLOGY, 1,
1144 [Define to 1 if blkid has blkid_probe_get_topology]))
1145 AC_CHECK_LIB(blkid, blkid_probe_enable_partitions,
1146 AC_DEFINE(HAVE_BLKID_PROBE_ENABLE_PARTITIONS, 1,
1147 [Define to 1 if blkid has blkid_probe_enable_partitions]))
1148fi
1149dnl
1150if test -n "$DLOPEN_LIB" ; then
1151 ac_cv_func_dlopen=yes
1152fi
1153AC_CHECK_FUNCS(m4_flatten([
1154 __secure_getenv
1155 add_key
1156 backtrace
1157 chflags
1158 dlopen
1159 fadvise64
1160 fallocate
1161 fallocate64
1162 fchown
1163 fcntl
1164 fdatasync
1165 fstat64
1166 fsync
1167 ftruncate64
1168 futimes
1169 getcwd
1170 getdtablesize
1171 gethostname
1172 getmntinfo
1173 getpwuid_r
1174 getrlimit
1175 getrusage
1176 jrand48
1177 keyctl
1178 llistxattr
1179 llseek
1180 lseek64
1181 mallinfo
1182 mbstowcs
1183 memalign
1184 mempcpy
1185 mmap
1186 msync
1187 nanosleep
1188 open64
1189 pathconf
1190 posix_fadvise
1191 posix_fadvise64
1192 posix_memalign
1193 prctl
1194 pread
1195 pwrite
1196 pread64
1197 pwrite64
1198 secure_getenv
1199 setmntent
1200 setresgid
1201 setresuid
1202 snprintf
1203 srandom
1204 stpcpy
1205 strcasecmp
1206 strdup
1207 strnlen
1208 strptime
1209 strtoull
1210 sync_file_range
1211 sysconf
1212 usleep
1213 utime
1214 utimes
1215 valloc
1216]))
1217dnl
1218dnl Check to see if -lsocket is required (solaris) to make something
1219dnl that uses socket() to compile; this is needed for the UUID library
1220dnl
1221SOCKET_LIB=''
1222AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
1223AC_SUBST(SOCKET_LIB)
1224dnl
1225dnl See if libmagic exists
1226dnl
1227AC_CHECK_LIB(magic, magic_file, [MAGIC_LIB=-lmagic
1228AC_CHECK_HEADERS([magic.h])])
1229if test "$ac_cv_func_dlopen" = yes ; then
1230 MAGIC_LIB=$DLOPEN_LIB
1231fi
1232AC_SUBST(MAGIC_LIB)
1233dnl
1234dnl Check to see if librt is required for clock_gettime() (glibc < 2.17)
1235dnl
1236AC_CHECK_LIB(rt, clock_gettime, [CLOCK_GETTIME_LIB=-lrt])
1237AC_SUBST(CLOCK_GETTIME_LIB)
1238dnl
1239dnl Check to see if the FUSE library is -lfuse or -losxfuse
1240dnl
1241FUSE_CMT=
1242FUSE_LIB=
1243dnl osxfuse.dylib supersedes fuselib.dylib
1244AC_ARG_ENABLE([fuse2fs],
1245[ --disable-fuse2fs do not build fuse2fs],
1246if test "$enableval" = "no"
1247then
1248 FUSE_CMT="#"
1249 AC_MSG_RESULT([Disabling fuse2fs])
1250else
1251 AC_CHECK_HEADERS([pthread.h fuse.h], [],
1252[AC_MSG_FAILURE([Cannot find fuse2fs headers.])],
1253[#define _FILE_OFFSET_BITS 64
1254#define FUSE_USE_VERSION 29])
1255
1256 AC_PREPROC_IFELSE(
1257[AC_LANG_PROGRAM([[#define FUSE_USE_VERSION 29
1258#ifdef __linux__
1259#include <linux/fs.h>
1260#include <linux/falloc.h>
1261#include <linux/xattr.h>
1262#endif
1263]], [])], [], [AC_MSG_FAILURE([Cannot find fuse2fs Linux headers.])])
1264
1265 AC_CHECK_LIB(osxfuse, fuse_main, [FUSE_LIB=-losxfuse],
1266 [AC_CHECK_LIB(fuse, fuse_main, [FUSE_LIB=-lfuse],
1267 [AC_MSG_FAILURE([Cannot find fuse library.])])])
1268 AC_MSG_RESULT([Enabling fuse2fs])
1269fi
1270,
1271AC_CHECK_HEADERS([pthread.h fuse.h], [], [FUSE_CMT="#"],
1272[#define _FILE_OFFSET_BITS 64
1273#define FUSE_USE_VERSION 29
1274#ifdef __linux__
1275# include <linux/fs.h>
1276# include <linux/falloc.h>
1277# include <linux/xattr.h>
1278#endif])
1279if test -z "$FUSE_CMT"
1280then
1281 AC_CHECK_LIB(osxfuse, fuse_main, [FUSE_LIB=-losxfuse],
1282[AC_CHECK_LIB(fuse, fuse_main, [FUSE_LIB=-lfuse], [FUSE_CMT="#"])])
1283fi
1284if test -z "$FUSE_CMT"
1285then
1286 AC_MSG_RESULT([Enabling fuse2fs by default.])
1287fi
1288)
1289AC_SUBST(FUSE_LIB)
1290AC_SUBST(FUSE_CMT)
1291dnl
1292dnl See if optreset exists
1293dnl
1294AC_MSG_CHECKING(for optreset)
1295AC_CACHE_VAL(ac_cv_have_optreset,
1296[AC_EGREP_HEADER(optreset, unistd.h,
1297 ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
1298AC_MSG_RESULT($ac_cv_have_optreset)
1299if test $ac_cv_have_optreset = yes; then
1300 AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if optreset for getopt is present])
1301fi
1302dnl
1303dnl Test for sem_init, and which library it might require:
1304dnl
1305AH_TEMPLATE([HAVE_SEM_INIT], [Define to 1 if sem_init() exists])
1306SEM_INIT_LIB=''
1307echo GL_THREADS_API: ${gl_threads_api}
1308if test "${gl_threads_api}" != none
1309then
1310 AC_CHECK_FUNC(sem_init, ,
1311 AC_CHECK_LIB(pthread, sem_init,
1312 AC_DEFINE(HAVE_SEM_INIT, 1)
1313 SEM_INIT_LIB=-lpthread,
1314 AC_CHECK_LIB(rt, sem_init,
1315 AC_DEFINE(HAVE_SEM_INIT, 1)
1316 SEM_INIT_LIB=-lrt,
1317 AC_CHECK_LIB(posix4, sem_init,
1318 AC_DEFINE(HAVE_SEM_INIT, 1)
1319 SEM_INIT_LIB=-lposix4))))dnl
1320fi
1321AC_SUBST(SEM_INIT_LIB)
1322dnl
1323dnl Check for unified diff
1324dnl
1325AC_MSG_CHECKING(for unified diff option)
1326if diff -u $0 $0 > /dev/null 2>&1 ; then
1327 UNI_DIFF_OPTS=-u
1328else
1329 UNI_DIFF_OPTS=-c
1330fi
1331AC_MSG_RESULT($UNI_DIFF_OPTS)
1332AC_SUBST(UNI_DIFF_OPTS)
1333dnl
1334dnl We use the EXT2 ioctls only under Linux
1335dnl
1336case "$host_os" in
1337linux*)
1338 AC_DEFINE(HAVE_EXT2_IOCTLS, 1, [Define to 1 if Ext2 ioctls present])
1339 ;;
1340esac
1341dnl
1342dnl Check the available mount options
1343dnl
1344AX_CHECK_MOUNT_OPT(nosuid)
1345AX_CHECK_MOUNT_OPT(nodev)
1346dnl Enable LTO for all packages
1347dnl
1348AC_ARG_ENABLE([lto],
1349[ --enable-lto enable link time optimization],,
1350enable_lto=no)
1351if test "$enable_lto" = "yes" || test "$enable_lto" = "probe"; then
1352 AC_MSG_CHECKING([if C compiler supports LTO])
1353 OLD_CFLAGS="$CFLAGS"
1354 OLD_LDFLAGS="$LDFLAGS"
1355 LTO_FLAGS="-g -flto -ffat-lto-objects"
1356 CFLAGS="$CFLAGS $LTO_FLAGS"
1357 LDFLAGS="$LDFLAGS $LTO_FLAGS"
1358 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
1359 [AC_MSG_RESULT([yes])]
1360 [lto_cflags=$LTO_FLAGS]
1361 [lto_ldflags=$LTO_FLAGS]
1362 [AC_PATH_PROG(gcc_ar, gcc-ar,,)]
1363 [AC_PATH_PROG(gcc_ranlib, gcc-ranlib,,)],
1364 [AC_MSG_RESULT([no])])
1365 if test -x "$gcc_ar" && test -x "$gcc_ranlib"; then
1366 have_lto=yes
1367 AR="${gcc_ar}"
1368 RANLIB="${gcc_ranlib}"
1369 fi
1370 CFLAGS="${OLD_CFLAGS}"
1371 LDFLAGS="${OLD_LDFLAGS}"
1372 AC_SUBST(have_lto)
1373 AC_SUBST(lto_cflags)
1374 AC_SUBST(lto_ldflags)
1375fi
1376if test "$enable_lto" = "yes" && test "$have_lto" != "yes"; then
1377 AC_MSG_ERROR([LTO not supported by compiler.])
1378fi
1379dnl
1380dnl Enable UBSAN for all packages
1381dnl
1382AC_ARG_ENABLE([ubsan],
1383[ --enable-ubsan enable undefined behavior sanitizer],,
1384enable_ubsan=no)
1385if test "$enable_ubsan" = "yes" || test "$enable_ubsan" = "probe"; then
1386 AC_MSG_CHECKING([if C compiler supports UBSAN])
1387 OLD_CFLAGS="$CFLAGS"
1388 OLD_LDFLAGS="$LDFLAGS"
1389 UBSAN_FLAGS="-fsanitize=undefined"
1390 CFLAGS="$CFLAGS $UBSAN_FLAGS"
1391 LDFLAGS="$LDFLAGS $UBSAN_FLAGS"
1392 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
1393 [AC_MSG_RESULT([yes])]
1394 [ubsan_cflags=$UBSAN_FLAGS]
1395 [ubsan_ldflags=$UBSAN_FLAGS]
1396 [have_ubsan=yes],
1397 [AC_MSG_RESULT([no])])
1398 CFLAGS="${OLD_CFLAGS}"
1399 LDFLAGS="${OLD_LDFLAGS}"
1400 AC_SUBST(have_ubsan)
1401 AC_SUBST(ubsan_cflags)
1402 AC_SUBST(ubsan_ldflags)
1403fi
1404if test "$enable_ubsan" = "yes" && test "$have_ubsan" != "yes"; then
1405 AC_MSG_ERROR([UBSAN not supported by compiler.])
1406fi
1407dnl
1408dnl Enable ADDRSAN for all packages
1409dnl
1410AC_ARG_ENABLE([addrsan],
1411[ --enable-addrsan enable address sanitizer],,
1412enable_addrsan=no)
1413if test "$enable_addrsan" = "yes" || test "$enable_addrsan" = "probe"; then
1414 AC_MSG_CHECKING([if C compiler supports ADDRSAN])
1415 OLD_CFLAGS="$CFLAGS"
1416 OLD_LDFLAGS="$LDFLAGS"
1417 ADDRSAN_FLAGS="-fsanitize=address"
1418 CFLAGS="$CFLAGS $ADDRSAN_FLAGS"
1419 LDFLAGS="$LDFLAGS $ADDRSAN_FLAGS"
1420 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
1421 [AC_MSG_RESULT([yes])]
1422 [addrsan_cflags=$ADDRSAN_FLAGS]
1423 [addrsan_ldflags=$ADDRSAN_FLAGS]
1424 [have_addrsan=yes],
1425 [AC_MSG_RESULT([no])])
1426 CFLAGS="${OLD_CFLAGS}"
1427 LDFLAGS="${OLD_LDFLAGS}"
1428 AC_SUBST(have_addrsan)
1429 AC_SUBST(addrsan_cflags)
1430 AC_SUBST(addrsan_ldflags)
1431fi
1432if test "$enable_addrsan" = "yes" && test "$have_addrsan" != "yes"; then
1433 AC_MSG_ERROR([ADDRSAN not supported by compiler.])
1434fi
1435dnl
1436dnl Enable THREADSAN for all packages
1437dnl
1438AC_ARG_ENABLE([threadsan],
1439[ --enable-threadsan enable thread sanitizer],,
1440enable_threadsan=no)
1441if test "$enable_threadsan" = "yes" || test "$enable_threadsan" = "probe"; then
1442 AC_MSG_CHECKING([if C compiler supports THREADSAN])
1443 OLD_CFLAGS="$CFLAGS"
1444 OLD_LDFLAGS="$LDFLAGS"
1445 THREADSAN_FLAGS="-fsanitize=thread"
1446 CFLAGS="$CFLAGS $THREADSAN_FLAGS"
1447 LDFLAGS="$LDFLAGS $THREADSAN_FLAGS"
1448 AC_LINK_IFELSE([AC_LANG_PROGRAM([])],
1449 [AC_MSG_RESULT([yes])]
1450 [threadsan_cflags=$THREADSAN_FLAGS]
1451 [threadsan_ldflags=$THREADSAN_FLAGS]
1452 [have_threadsan=yes],
1453 [AC_MSG_RESULT([no])])
1454 CFLAGS="${OLD_CFLAGS}"
1455 LDFLAGS="${OLD_LDFLAGS}"
1456 AC_SUBST(have_threadsan)
1457 AC_SUBST(threadsan_cflags)
1458 AC_SUBST(threadsan_ldflags)
1459fi
1460if test "$enable_threadsan" = "yes" && test "$have_threadsan" != "yes"; then
1461 AC_MSG_ERROR([THREADSAN not supported by compiler.])
1462fi
1463if test "$have_threadsan" = "yes" && test "$have_addrsan" = "yes"; then
1464 AC_MSG_WARN([ADDRSAN and THREADSAN are not known to work together.])
1465fi
1466dnl
1467dnl OS-specific uncomment control
1468dnl
1469LINUX_CMT="#"
1470CYGWIN_CMT="#"
1471UNIX_CMT=
1472case "$host_os" in
1473linux*)
1474 LINUX_CMT=
1475 ;;
1476cygwin)
1477 CYGWIN_CMT=
1478 UNIX_CMT="#"
1479 ;;
1480esac
1481AC_SUBST(LINUX_CMT)
1482AC_SUBST(CYGWIN_CMT)
1483AC_SUBST(UNIX_CMT)
1484dnl
1485dnl e2scrub only builds on linux
1486dnl
1487E2SCRUB_CMT="$LINUX_CMT"
1488AC_SUBST(E2SCRUB_CMT)
1489dnl
1490dnl Linux and Hurd places root files in the / by default
1491dnl
1492case "$host_os" in
1493linux* | gnu* | k*bsd*-gnu)
1494 if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
1495 root_prefix="";
1496 AC_MSG_RESULT([On $host_os systems, root_prefix defaults to ''])
1497 fi
1498 ;;
1499esac
1500dnl
1501dnl On Linux/hurd, force the prefix to be /usr
1502dnl
1503case "$host_os" in
1504linux* | gnu* | k*bsd*-gnu)
1505 if test "$prefix" = NONE ; then
1506 prefix="/usr";
1507 AC_MSG_RESULT([On $host_os systems, prefix defaults to /usr])
1508 if test "$mandir" = '${prefix}/man' ; then
1509 AC_MSG_RESULT([...and mandir defaults to /usr/share/man])
1510 mandir=/usr/share/man
1511 fi
1512 fi
1513;;
1514esac
1515if test "$root_prefix" = NONE ; then
1516 if test "$prefix" = NONE ; then
1517 root_prefix="$ac_default_prefix"
1518 else
1519 root_prefix="$prefix"
1520 fi
1521 root_bindir=$bindir
1522 root_sbindir=$sbindir
1523 root_libdir=$libdir
1524 root_sysconfdir=$sysconfdir
1525else
1526 root_bindir='${root_prefix}/bin'
1527 root_sbindir='${root_prefix}/sbin'
1528 root_libdir='${root_prefix}/lib'
1529 root_sysconfdir='${root_prefix}/etc'
1530fi
1531if test "$bindir" != '${exec_prefix}/bin'; then
1532 root_bindir=$bindir
1533 AC_MSG_RESULT([Setting root_bindir to $root_bindir])
1534fi
1535if test "$sbindir" != '${exec_prefix}/sbin'; then
1536 root_sbindir=$sbindir
1537 AC_MSG_RESULT([Setting root_sbindir to $root_sbindir])
1538fi
1539if test "$libdir" != '${exec_prefix}/lib'; then
1540 root_libdir=$libdir
1541 AC_MSG_RESULT([Setting root_libdir to $root_libdir])
1542fi
1543if test "$sysconfdir" != '${prefix}/etc'; then
1544 root_sysconfdir=$sysconfdir
1545 AC_MSG_RESULT([Setting root_sysconfdir to $root_sysconfdir])
1546fi
1547AC_SUBST(root_prefix)
1548AC_SUBST(root_bindir)
1549AC_SUBST(root_sbindir)
1550AC_SUBST(root_libdir)
1551AC_SUBST(root_sysconfdir)
1552dnl
1553dnl Allow specification of the multiarch arch
1554dnl
1555AC_ARG_WITH([multiarch],
1556[ --with-multiarch=ARCH specify the multiarch triplet],
1557if test "$withval" = "lib64"; then
1558 libdir=/usr/lib64
1559 root_libdir=/lib64
1560else
1561 libdir=$libdir/$withval
1562 root_libdir=$root_libdir/$withval
1563fi
1564)
1565dnl
1566dnl
1567dnl See if -static works. This could fail if the linker does not
1568dnl support -static, or if required external libraries are not available
1569dnl in static form.
1570dnl
1571AC_MSG_CHECKING([whether we can link with -static])
1572AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
1573[SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS_STATIC -static"
1574AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
1575 ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
1576LDFLAGS=$SAVE_LDFLAGS])
1577dnl
1578dnl Regardless of how the test turns out, Solaris doesn't handle -static
1579dnl This is caused by the socket library requiring the nsl library, which
1580dnl requires the -dl library, which only works for dynamically linked
1581dnl programs. It basically means you can't have statically linked programs
1582dnl which use the network under Solaris.
1583dnl
1584case "$host_os" in
1585solaris2.*)
1586 ac_cv_e2fsprogs_use_static=no
1587;;
1588esac
1589AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
1590if test $ac_cv_e2fsprogs_use_static = yes; then
1591 LDFLAGS_STATIC="$LDFLAGS_STATIC -static"
1592fi
1593AC_SUBST(LDFLAGS_STATIC)
1594dnl
1595dnl Work around mysterious Darwin / GNU libintl problem
1596dnl (__asm__ redirection doesn't work for some mysterious reason. Looks like
1597dnl Apple hacked gcc somehow?)
1598dnl
1599case "$host_os" in
1600darwin*)
1601 AC_MSG_RESULT([Using Apple Darwin / GNU libintl workaround])
1602 AC_DEFINE(_INTL_REDIRECT_MACROS, 1,
1603 [Define to 1 if Apple Darwin libintl workaround is needed])
1604 ;;
1605esac
1606dnl
1607dnl Only try to run the test suite if we're not cross compiling.
1608dnl
1609if test "$cross_compiling" = yes ; then
1610 DO_TEST_SUITE=
1611else
1612 DO_TEST_SUITE=check
1613fi
1614AC_SUBST(DO_TEST_SUITE)
1615dnl
1616dnl Only include the intl include files if we're building with them
1617dnl
1618INCLUDES='-I. -I$(top_builddir)/lib -I$(top_srcdir)/lib'
1619if test -n "$CPPFLAGS" ; then
1620 INCLUDES="$INCLUDES $CPPFLAGS"
1621fi
1622if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
1623 INCLUDES=$INCLUDES' -I$(top_builddir)/intl -I$(top_srcdir)/intl'
1624fi
1625if test -n "$WITH_DIET_LIBC" ; then
1626 INCLUDES="$INCLUDES -D_REENTRANT"
1627fi
1628AC_SUBST(INCLUDES)
1629dnl
1630dnl Build CFLAGS
1631dnl
1632if test $cross_compiling = no; then
1633 BUILD_CFLAGS="$CFLAGS $CPPFLAGS $INCLUDES -DHAVE_CONFIG_H"
1634 BUILD_LDFLAGS="$LDFLAGS"
1635fi
1636AC_SUBST(BUILD_CFLAGS)
1637AC_SUBST(BUILD_LDFLAGS)
1638dnl
1639dnl Define CFLAGS and LDFLAGS for shared libraries
1640dnl
1641CFLAGS_SHLIB=${CFLAGS_SHLIB:-$CFLAGS}
1642CFLAGS_STLIB=${CFLAGS_STLIB:-$CFLAGS}
1643LDFLAGS_SHLIB=${LDFLAGS_SHLIB:-$LDFLAGS}
1644AC_SUBST(CFLAGS_SHLIB)
1645AC_SUBST(CFLAGS_STLIB)
1646AC_SUBST(LDFLAGS_SHLIB)
1647
1648dnl
1649dnl Where do udev rules go?
1650dnl
1651AC_ARG_WITH([udev_rules_dir],
1652 [AS_HELP_STRING([--with-udev-rules-dir@<:@=DIR@:>@],
1653 [Install udev rules into DIR.])],
1654 [],
1655 [with_udev_rules_dir=yes])
1656AS_IF([test "x${with_udev_rules_dir}" != "xno"],
1657 [
1658 AS_IF([test "x${with_udev_rules_dir}" = "xyes"],
1659 [
1660 PKG_CHECK_MODULES([udev], [udev],
1661 [
1662 with_udev_rules_dir="$($PKG_CONFIG --variable=udevdir udev)/rules.d"
1663 ], [
1664 with_udev_rules_dir=""
1665 ])
1666 ])
1667 AC_MSG_CHECKING([for udev rules dir])
1668 pkg_udev_rules_dir="${with_udev_rules_dir}"
1669 AS_IF([test -n "${pkg_udev_rules_dir}"],
1670 [
1671 AC_MSG_RESULT(${pkg_udev_rules_dir})
1672 have_udev="yes"
1673 ],
1674 [
1675 AC_MSG_RESULT(no)
1676 have_udev="no"
1677 ])
1678 ],
1679 [
1680 have_udev="disabled"
1681 ])
1682AC_SUBST(have_udev)
1683AC_SUBST(pkg_udev_rules_dir)
1684
1685dnl
1686dnl Where do cron jobs go?
1687dnl
1688AC_ARG_WITH([crond_dir],
1689 [AS_HELP_STRING([--with-crond-dir@<:@=DIR@:>@],
1690 [Install system crontabs into DIR.])],
1691 [],
1692 [with_crond_dir=yes])
1693AS_IF([test "x${with_crond_dir}" != "xno"],
1694 [
1695 AS_IF([test "x${with_crond_dir}" = "xyes"],
1696 [
1697 AS_IF([test -d "/etc/cron.d"],
1698 [with_crond_dir="/etc/cron.d"],
1699 [have_crond="no"; with_crond_dir=""])
1700 ])
1701 AC_MSG_CHECKING([for system crontab dir])
1702 crond_dir="${with_crond_dir}"
1703 AS_IF([test -n "${crond_dir}"],
1704 [
1705 AC_MSG_RESULT(${crond_dir})
1706 have_crond="yes"
1707 ],
1708 [
1709 AC_MSG_RESULT(no)
1710 have_crond="no"
1711 ])
1712 ],
1713 [
1714 have_crond="disabled"
1715 ])
1716AC_SUBST(have_crond)
1717AC_SUBST(crond_dir)
1718
1719dnl
1720dnl Where do systemd services go?
1721dnl
1722AC_ARG_WITH([systemd_unit_dir],
1723 [AS_HELP_STRING([--with-systemd-unit-dir@<:@=DIR@:>@],
1724 [Install systemd system units into DIR.])],
1725 [],
1726 [with_systemd_unit_dir=yes])
1727AS_IF([test "x${with_systemd_unit_dir}" != "xno"],
1728 [
1729 AS_IF([test "x${with_systemd_unit_dir}" = "xyes"],
1730 [
1731 PKG_CHECK_MODULES([systemd], [systemd],
1732 [
1733 with_systemd_unit_dir="$($PKG_CONFIG --variable=systemdsystemunitdir systemd)"
1734 ], [
1735 with_systemd_unit_dir=""
1736 ])
1737 m4_pattern_allow([^PKG_(MAJOR|MINOR|BUILD|REVISION)$])
1738 ])
1739 AC_MSG_CHECKING([for systemd system unit dir])
1740 systemd_system_unit_dir="${with_systemd_unit_dir}"
1741 AS_IF([test -n "${systemd_system_unit_dir}"],
1742 [
1743 AC_MSG_RESULT(${systemd_system_unit_dir})
1744 have_systemd="yes"
1745 ],
1746 [
1747 AC_MSG_RESULT(no)
1748 have_systemd="no"
1749 ])
1750 ],
1751 [
1752 have_systemd="disabled"
1753 ])
1754AC_SUBST(have_systemd)
1755AC_SUBST(systemd_system_unit_dir)
1756
1757dnl
1758dnl Make our output files, being sure that we create the some miscellaneous
1759dnl directories
1760dnl
1761test -d lib || mkdir lib
1762test -d include || mkdir include
1763test -d include/linux || mkdir include/linux
1764test -d include/asm || mkdir include/asm
1765if test -z "$UUID_CMT" ; then
1766 uuid_out_list="lib/uuid/Makefile lib/uuid/uuid.pc \
1767 lib/uuid/uuid_types.h"
1768fi
1769if test -z "$BLKID_CMT" ; then
1770 blkid_out_list="lib/blkid/Makefile lib/blkid/blkid.pc \
1771 lib/blkid/blkid_types.h"
1772fi
1773for i in MCONFIG Makefile \
1774 util/Makefile util/subst.conf util/gen-tarball util/install-symlink \
1775 lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
1776 lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
1777 $uuid_out_list $blkid_out_list lib/support/Makefile \
1778 lib/ss/ss.pc lib/et/com_err.pc lib/e2p/e2p.pc lib/ext2fs/ext2fs.pc \
1779 misc/Makefile ext2ed/Makefile e2fsck/Makefile \
1780 debugfs/Makefile tests/Makefile tests/progs/Makefile \
1781 resize/Makefile doc/Makefile intl/Makefile \
1782 intl/libgnuintl.h po/Makefile.in scrub/Makefile; do
1783 if test -d `dirname ${srcdir}/$i` ; then
1784 outlist="$outlist $i"
1785 fi
1786done
1787AC_OUTPUT($outlist)
1788if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi