configure.in revision 91d11da1430b801476f6d5f71ad8669b232731af
1AC_INIT(version.h)
2AC_PREREQ(2.50)
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}'`
14DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
15	| tr \" " "`
16E2FSPROGS_DAY=`echo $DATE | awk -F- '{print $1}'`
17MONTH=`echo $DATE | awk -F- '{print $2}'`
18YEAR=`echo $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-$E2FSPROGS_YEAR-$MONTH_NUM-$E2FSPROGS_DAY"
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_CANONICAL_HOST
67dnl
68dnl Check to see if libdl exists for the sake of dlopen
69dnl
70DLOPEN_LIB=''
71AC_CHECK_LIB(dl, dlopen, 
72[DLOPEN_LIB=-ldl
73AC_DEFINE(HAVE_DLOPEN, 1, [Define to 1 if dlopen/libdl exists])])
74AC_SUBST(DLOPEN_LIB)
75dnl
76dnl Use diet libc
77dnl 
78WITH_DIET_LIBC=
79AC_ARG_WITH([diet-libc],
80[  --with-diet-libc        use diet libc],
81CC="diet cc -nostdinc"
82WITH_DIET_LIBC=yes
83AC_MSG_RESULT(CC=$CC))dnl
84dnl
85AC_ARG_WITH([cc],
86AC_HELP_STRING([--with-cc],[no longer supported, use CC= instead]),
87AC_MSG_ERROR([--with-cc no longer supported; use CC= instead]))
88dnl
89AC_ARG_WITH([ccopts],
90AC_HELP_STRING([--with-ccopts],[no longer supported, use CFLAGS= instead]),
91AC_MSG_ERROR([--with-ccopts no longer supported; use CFLAGS= instead]))
92dnl
93AC_ARG_WITH([ldopts],
94AC_HELP_STRING([--with-ldopts],[no longer supported, use LDFLAGS= instead]),
95AC_MSG_ERROR([--with-ldopts no longer supported; use LDFLAGS= instead]))
96dnl
97AC_PROG_CC
98if test "$GCC" = yes; then
99   RDYNAMIC="-rdynamic"
100   AC_SUBST(RDYNAMIC)
101fi
102AC_PROG_CPP
103dnl
104dnl Alpha computers use fast and imprecise floating point code that may
105dnl miss exceptions by default. Force sane options if we're using GCC.
106AC_MSG_CHECKING(for additional special compiler flags)
107if test "$GCC" = yes
108then
109    case "$host_cpu" in
110	alpha)		addcflags="-mieee" ;;
111    esac
112fi
113if test "x$addcflags" != x
114then
115    AC_MSG_RESULT($addcflags)
116    CFLAGS="$addcflags $CFLAGS"
117else
118    AC_MSG_RESULT([[(none)]])
119fi
120dnl
121dnl Set default values for library extentions.  Will be dealt with after
122dnl parsing configuration opions, which may modify these
123dnl
124LIB_EXT=.a
125STATIC_LIB_EXT=.a
126PROFILED_LIB_EXT=.a
127dnl
128dnl Allow separate `root_prefix' to be specified
129dnl
130AC_ARG_WITH([root-prefix],
131[  --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
132root_prefix=$withval,
133root_prefix=NONE)dnl
134dnl
135dnl handle --enable-maintainer-mode
136dnl
137AC_ARG_ENABLE([maintainer-mode],
138[  --enable-maintainer-mode enable makefile rules useful for maintainers],
139if test "$enableval" = "no"
140then
141	MAINTAINER_CMT=#
142	AC_MSG_RESULT([Disabling maintainer mode])
143else
144	MAINTAINER_CMT=
145	AC_MSG_RESULT([Enabling maintainer mode])
146fi
147,
148MAINTAINER_CMT=#
149AC_MSG_RESULT([Disabling maintainer mode by default])
150)
151AC_SUBST(MAINTAINER_CMT)
152dnl
153dnl handle --enable-symlink-install
154dnl
155AC_ARG_ENABLE([symlink-install],
156[  --enable-symlink-install use symlinks when installing instead of hard links],
157if test "$enableval" = "no"
158then
159	LINK_INSTALL_FLAGS=-f
160	AC_MSG_RESULT([Disabling symlinks for install])
161else
162	LINK_INSTALL_FLAGS=-sf
163	AC_MSG_RESULT([Enabling symlinks for install])
164fi
165,
166LINK_INSTALL_FLAGS=-f
167AC_MSG_RESULT([Disabling symlinks for install by default])
168)
169AC_SUBST(LINK_INSTALL_FLAGS)
170dnl
171dnl handle --enable-relative-symlinks
172dnl
173relative_symlink_defined=
174AC_ARG_ENABLE([relative-symlinks],
175[  --enable-relative-symlinks use relative symlinks when installing],
176if test "$enableval" = "no"
177then
178	SYMLINK_RELATIVE=
179	relative_symlink_defined=yes
180	AC_MSG_RESULT([Disabling relative symlinks for install])
181else
182	SYMLINK_RELATIVE=--relative
183	relative_symlink_defined=yes
184	AC_MSG_RESULT([Enabling relative symlinks for install])
185fi)
186AC_ARG_ENABLE([symlink-relative-symlinks],,
187if test "$enableval" = "no"
188then
189	SYMLINK_RELATIVE=yes
190	AC_MSG_RESULT([Disabling relative symlinks for install])
191else
192	SYMLINK_RELATIVE=--relative
193	AC_MSG_RESULT([Enabling relative symlinks for install])
194fi
195,
196if test -z "$relative_symlink_defined"
197then
198	SYMLINK_RELATIVE=
199AC_MSG_RESULT([Disabling relative symlinks for install by default])
200fi
201)
202AC_SUBST(SYMLINK_RELATIVE)
203dnl
204dnl handle --enable-symlink-build
205dnl
206AC_ARG_ENABLE([symlink-build],
207[  --enable-symlink-build  use symlinks while building instead of hard links],
208if test "$enableval" = "no"
209then
210	LINK_BUILD_FLAGS=
211	AC_MSG_RESULT([Disabling symlinks for build])
212else
213	LINK_BUILD_FLAGS=-s
214	AC_MSG_RESULT([Enabling symlinks for build])
215fi
216,
217LINK_BUILD_FLAGS=
218AC_MSG_RESULT([Disabling symlinks for build by default])
219)
220AC_SUBST(LINK_BUILD_FLAGS)
221dnl
222dnl handle --enable-verbose-makecmds
223dnl
224AC_ARG_ENABLE([verbose-makecmds],
225[  --enable-verbose-makecmds enable verbose make command output],
226if test "$enableval" = "no"
227then
228	AC_MSG_RESULT([Disabling verbose make commands])
229	E=@echo
230	ES=echo
231	Q=@
232else
233	AC_MSG_RESULT([Enabling verbose make commands])
234	E=@\\#
235	ES=\\#
236	Q= 
237fi
238,
239AC_MSG_RESULT([Disabling verbose make commands])
240E=@echo
241ES=echo
242Q=@
243)
244AC_SUBST(E)
245AC_SUBST(ES)
246AC_SUBST(Q)
247dnl
248dnl handle --enable-compression
249dnl
250AC_ARG_ENABLE([compression],
251[  --enable-compression	  enable EXPERIMENTAL compression support],
252if test "$enableval" = "no"
253then
254	AC_MSG_RESULT([Disabling compression support])
255else
256	AC_DEFINE(ENABLE_COMPRESSION, 1,
257		[Define to 1 if ext2 compression enabled])
258	AC_MSG_RESULT([Enabling compression support])
259	AC_MSG_WARN([Compression support is experimental])
260fi
261,
262AC_MSG_RESULT([Disabling compression support by default])
263)
264dnl
265dnl handle --enable-htree
266dnl
267AH_TEMPLATE([ENABLE_HTREE], [Define to 1 if ext3/4 htree support enabled])
268AC_ARG_ENABLE([htree],
269[  --enable-htree      	  enable EXPERIMENTAL htree directory support],
270if test "$enableval" = "no"
271then
272	HTREE_CMT=#
273	AC_MSG_RESULT([Disabling htree directory support])
274else
275	HTREE_CMT=
276	AC_DEFINE(ENABLE_HTREE, 1)
277	AC_MSG_RESULT([Enabling htree directory support])
278fi
279,
280HTREE_CMT=
281AC_DEFINE(ENABLE_HTREE, 1)
282AC_MSG_RESULT([Enabling htree directory support by default])
283)
284AC_SUBST(HTREE_CMT)
285dnl
286dnl This needs to be before all of the --enable-*-shlibs options
287dnl
288E2_PKG_CONFIG_STATIC=--static
289LDFLAG_DYNAMIC=
290PRIVATE_LIBS_CMT=
291dnl
292dnl handle --enable-elf-shlibs
293dnl
294AC_ARG_ENABLE([elf-shlibs],
295[  --enable-elf-shlibs	  select ELF shared libraries],
296if test "$enableval" = "no"
297then
298	ELF_CMT=#
299	MAKEFILE_ELF=/dev/null
300	AC_MSG_RESULT([Disabling ELF shared libraries])
301else
302	E2_PKG_CONFIG_STATIC=
303	ELF_CMT=
304	MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
305	[case "$host_os" in
306	solaris2.*)
307		MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
308	;;
309	esac]
310	BINARY_TYPE=elfbin
311	LIB_EXT=.so
312	PRIVATE_LIBS_CMT=#
313	LDFLAG_DYNAMIC=['-Wl,-rpath-link,$(top_builddir)/lib']
314	AC_MSG_RESULT([Enabling ELF shared libraries])
315fi
316,
317MAKEFILE_ELF=/dev/null
318ELF_CMT=#
319AC_MSG_RESULT([Disabling ELF shared libraries by default])
320)
321AC_SUBST(ELF_CMT)
322AC_SUBST_FILE(MAKEFILE_ELF)
323dnl
324dnl handle --enable-bsd-shlibs
325dnl
326AC_ARG_ENABLE([bsd-shlibs],
327[  --enable-bsd-shlibs	  select BSD shared libraries],
328if test "$enableval" = "no"
329then
330	BSDLIB_CMT=#
331	MAKEFILE_BSDLIB=/dev/null
332	AC_MSG_RESULT([Disabling BSD shared libraries])
333else
334	E2_PKG_CONFIG_STATIC=
335	BSDLIB_CMT=
336	MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
337	LIB_EXT=.so
338	[case "$host_os" in
339	darwin*)
340		MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib
341		LIB_EXT=.dylib
342	;;
343	esac]
344	AC_MSG_RESULT([Enabling BSD shared libraries])
345fi
346,
347MAKEFILE_BSDLIB=/dev/null
348BSDLIB_CMT=#
349AC_MSG_RESULT([Disabling BSD shared libraries by default])
350)
351AC_SUBST(BSDLIB_CMT)
352AC_SUBST_FILE(MAKEFILE_BSDLIB)
353dnl
354dnl handle --enable-profile
355dnl
356AC_ARG_ENABLE([profile],
357[  --enable-profile	  build profiling libraries],
358if test "$enableval" = "no"
359then
360	PROFILE_CMT=#
361	MAKEFILE_PROFILE=/dev/null
362	AC_MSG_RESULT([Disabling profiling libraries])
363else
364	PROFILE_CMT=
365	MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
366	PROFILED_LIB_EXT=_p.a
367	AC_MSG_RESULT([Building profiling libraries])
368fi
369,
370PROFILE_CMT=#
371MAKEFILE_PROFILE=/dev/null
372AC_MSG_RESULT([Disabling profiling libraries by default])
373)
374AC_SUBST(PROFILE_CMT)
375AC_SUBST_FILE(MAKEFILE_PROFILE)
376dnl
377dnl handle --enable-checker
378dnl
379AC_ARG_ENABLE([checker],
380[  --enable-checker	  build checker libraries],
381if test "$enableval" = "no"
382then
383	CHECKER_CMT=#
384	MAKEFILE_CHECKER=/dev/null
385	AC_MSG_RESULT([Disabling checker libraries])
386else
387	CHECKER_CMT=
388	MAKEFILE_CHECKER=$srcdir/lib/Makefile.checker
389	AC_MSG_RESULT([Building checker libraries])
390fi
391,
392CHECKER_CMT=#
393MAKEFILE_CHECKER=/dev/null
394AC_MSG_RESULT([Disabling checker libraries by default])
395)
396AC_SUBST(CHECKER_CMT)
397AC_SUBST_FILE(MAKEFILE_CHECKER)
398dnl
399dnl Substitute library extensions
400dnl
401AC_SUBST(LIB_EXT)
402AC_SUBST(STATIC_LIB_EXT)
403AC_SUBST(PROFILED_LIB_EXT)
404AC_SUBST(LDFLAG_DYNAMIC)
405AC_SUBST(PRIVATE_LIBS_CMT)
406dnl
407dnl handle --enable-jbd-debug
408dnl
409AC_ARG_ENABLE([jbd-debug],
410[  --enable-jbd-debug  	  enable journal debugging],
411if test "$enableval" = "no"
412then
413	AC_MSG_RESULT([Disabling journal debugging])
414else
415	AC_DEFINE(CONFIG_JBD_DEBUG, 1,
416		[Define to 1 if debugging ext3/4 journal code])
417	AC_MSG_RESULT([Enabling journal debugging])
418fi
419,
420AC_MSG_RESULT([Disabling journal debugging by default])
421)
422dnl
423dnl handle --enable-blkid-debug
424dnl
425AC_ARG_ENABLE([blkid-debug],
426[  --enable-blkid-debug    enable blkid debugging],
427if test "$enableval" = "no"
428then
429	AC_MSG_RESULT([Disabling blkid debugging])
430else
431	AC_DEFINE(CONFIG_BLKID_DEBUG, 1,
432		[Define to 1 if debugging the blkid library])
433	AC_MSG_RESULT([Enabling blkid debugging])
434fi
435,
436AC_MSG_RESULT([Disabling blkid debugging by default])
437)
438dnl
439dnl handle --enable-testio-debug
440dnl
441AC_ARG_ENABLE([testio-debug],
442[  --disable-testio-debug  disable the use of the test I/O manager for debugging],
443AH_TEMPLATE([CONFIG_TESTIO_DEBUG],
444	[Define to 1 if the testio I/O manager should be enabled])
445if test "$enableval" = "no"
446then
447	AC_MSG_RESULT([Disabling testio debugging])
448	TEST_IO_CMT="#"
449else
450	TEST_IO_CMT=
451	AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
452	AC_MSG_RESULT([Enabling testio debugging])
453fi
454,
455AC_MSG_RESULT([Enabling testio debugging by default])
456AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
457TEST_IO_CMT=
458)
459AC_SUBST(TEST_IO_CMT)
460dnl
461dnl handle --disable-libuuid
462dnl
463PKG_PROG_PKG_CONFIG
464LIBUUID=
465DEPLIBUUID=
466STATIC_LIBUUID=
467DEPSTATIC_LIBUUID=
468PROFILED_LIBUUID=
469DEPPROFILED_LIBUUID=
470UUID_CMT=
471AC_ARG_ENABLE([libuuid],
472[  --disable-libuuid	  do not build private uuid library],
473if test "$enableval" = "no"
474then
475	if test -z "$PKG_CONFIG"; then
476		AC_MSG_ERROR([pkg-config not installed; please install it.])
477	fi
478
479	AC_CHECK_LIB(uuid, uuid_generate,
480		[LIBUUID=`$PKG_CONFIG --libs uuid`;
481		 STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`],
482		[AC_MSG_ERROR([external uuid library not found])],
483		[$LIBUUID])
484	UUID_CMT=#
485	AC_MSG_RESULT([Disabling private uuid library])
486else
487	LIBUUID='$(LIB)/libuuid'$LIB_EXT
488	DEPLIBUUID=$LIBUUID
489	STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
490	DEPSTATIC_LIBUUID=$STATIC_LIBUUID
491	PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
492	DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
493	AC_MSG_RESULT([Enabling private uuid library])
494fi
495,
496LIBUUID='$(LIB)/libuuid'$LIB_EXT
497DEPLIBUUID=$LIBUUID
498STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
499DEPSTATIC_LIBUUID=$STATIC_LIBUUID
500PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
501DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
502AC_MSG_RESULT([Enabling private uuid library by default])
503)
504AC_SUBST(LIBUUID)
505AC_SUBST(DEPLIBUUID)
506AC_SUBST(STATIC_LIBUUID)
507AC_SUBST(DEPSTATIC_LIBUUID)
508AC_SUBST(PROFILED_LIBUUID)
509AC_SUBST(DEPPROFILED_LIBUUID)
510AC_SUBST(UUID_CMT)
511dnl
512dnl handle --disable-libblkid
513dnl
514PKG_PROG_PKG_CONFIG
515LIBBLKID=
516DEPLIBBLKID=
517STATIC_LIBBLKID=
518DEPSTATIC_LIBBLKID=
519PROFILED_LIBBLKID=
520DEPPROFILED_LIBBLKID=
521BLKID_CMT=
522AH_TEMPLATE([CONFIG_BUILD_FINDFS], [Define to 1 to compile findfs])
523AC_ARG_ENABLE([libblkid],
524[  --disable-libblkid	  do not build private blkid library],
525if test "$enableval" = "no"
526then
527	if test -z "$PKG_CONFIG"; then
528		AC_MSG_ERROR([pkg-config not installed; please install it.])
529	fi
530
531	AC_CHECK_LIB(blkid, blkid_get_cache,
532		[LIBBLKID=`$PKG_CONFIG --libs blkid`;
533		 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
534		[AC_MSG_ERROR([external blkid library not found])],
535		[$LIBBLKID])
536	BLKID_CMT=#
537	AC_MSG_RESULT([Disabling private blkid library])
538else
539	LIBBLKID='$(LIB)/libblkid'$LIB_EXT
540	DEPLIBBLKID=$LIBBLKID
541	STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
542	DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
543	PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
544	DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
545	AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
546	AC_MSG_RESULT([Enabling private blkid library])
547fi
548,
549LIBBLKID='$(LIB)/libblkid'$LIB_EXT
550DEPLIBBLKID=$LIBBLKID
551STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
552DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
553PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
554DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
555AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
556AC_MSG_RESULT([Enabling private blkid library by default])
557)
558AC_SUBST(LIBBLKID)
559AC_SUBST(DEPLIBBLKID)
560AC_SUBST(STATIC_LIBBLKID)
561AC_SUBST(DEPSTATIC_LIBBLKID)
562AC_SUBST(PROFILED_LIBBLKID)
563AC_SUBST(DEPPROFILED_LIBBLKID)
564AC_SUBST(BLKID_CMT)
565dnl
566dnl handle --enable-quota
567dnl
568PKG_PROG_PKG_CONFIG
569AH_TEMPLATE([CONFIG_QUOTA], [Define to 1 to enable quota support])
570AC_ARG_ENABLE([quota],
571[  --enable-libquota	  enable quota support],
572if test "$enableval" = "no"
573then
574	AC_MSG_RESULT([Disabling quota support])
575else
576	AC_DEFINE(CONFIG_QUOTA, 1)
577	AC_MSG_RESULT([Enabling quota support])
578fi
579,
580AC_MSG_RESULT([Disabling quota support by default])
581)
582dnl
583dnl Define stuff expected for quota library
584dnl
585LIBQUOTA='$(LIB)/libquota'$LIB_EXT
586DEPLIBQUOTA=$LIBQUOTA
587STATIC_LIBQUOTA='$(LIB)/libquota'$STATIC_LIB_EXT
588DEPSTATIC_LIBQUOTA=$STATIC_LIBQUOTA
589PROFILED_LIBQUOTA='$(LIB)/libquota'$PROFILED_LIB_EXT
590DEPPROFILED_LIBQUOTA=$PROFILED_LIBQUOTA
591AC_SUBST(LIBQUOTA)
592AC_SUBST(DEPLIBQUOTA)
593AC_SUBST(STATIC_LIBQUOTA)
594AC_SUBST(DEPSTATIC_LIBQUOTA)
595AC_SUBST(PROFILED_LIBQUOTA)
596AC_SUBST(DEPPROFILED_LIBQUOTA)
597AC_SUBST(QUOTA_CMT)
598dnl
599dnl handle --enable-debugfs
600dnl
601AC_ARG_ENABLE([debugfs],
602[  --disable-debugfs   	  disable support of debugfs program],
603if test "$enableval" = "no"
604then
605	AC_MSG_RESULT([Disabling debugfs support])
606	DEBUGFS_CMT="#"
607else
608	DEBUGFS_CMT=
609	AC_MSG_RESULT([Enabling debugfs support])
610fi
611,
612AC_MSG_RESULT([Enabling debugfs support by default])
613DEBUGFS_CMT=
614)
615AC_SUBST(DEBUGFS_CMT)
616dnl
617dnl handle --enable-imager
618dnl
619AC_ARG_ENABLE([imager],
620[  --disable-imager   	  disable support of e2image program],
621if test "$enableval" = "no"
622then
623	AC_MSG_RESULT([Disabling e2image support])
624	IMAGER_CMT="#"
625else
626	IMAGER_CMT=
627	AC_MSG_RESULT([Enabling e2image support])
628fi
629,
630AC_MSG_RESULT([Enabling e2image support by default])
631IMAGER_CMT=
632)
633AC_SUBST(IMAGER_CMT)
634dnl
635dnl handle --enable-resizer
636dnl
637AC_ARG_ENABLE([resizer],
638[  --disable-resizer   	  disable support of e2resize program],
639if test "$enableval" = "no"
640then
641	AC_MSG_RESULT([Disabling e2resize support])
642	RESIZER_CMT="#"
643else
644	RESIZER_CMT=
645	AC_MSG_RESULT([Enabling e2resize support])
646fi
647,
648AC_MSG_RESULT([Enabling e2resize support by default])
649RESIZER_CMT=
650)
651AC_SUBST(RESIZER_CMT)
652dnl
653dnl handle --enable-defrag
654dnl
655AC_ARG_ENABLE([defrag],
656[  --disable-defrag   	  disable support of e4defrag program],
657if test "$enableval" = "no"
658then
659	AC_MSG_RESULT([Disabling e4defrag support])
660	DEFRAG_CMT="#"
661else
662	DEFRAG_CMT=
663	AC_MSG_RESULT([Enabling e4defrag support])
664fi
665,
666AC_MSG_RESULT([Enabling e4defrag support by default])
667DEFRAG_CMT=
668)
669AC_SUBST(DEFRAG_CMT)
670dnl
671dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
672dnl
673AC_ARG_ENABLE([fsck],
674[  --enable-fsck           build fsck wrapper program],
675[if test "$enableval" = "no"
676then
677	FSCK_PROG='' FSCK_MAN=''
678	AC_MSG_RESULT([Not building fsck wrapper])
679else
680	FSCK_PROG=fsck FSCK_MAN=fsck.8
681	AC_MSG_RESULT([Building fsck wrapper])
682fi]
683,
684[case "$host_os" in
685  gnu*)
686    FSCK_PROG='' FSCK_MAN=''
687    AC_MSG_RESULT([Not building fsck wrapper by default])
688    ;;
689  *)
690    FSCK_PROG=fsck FSCK_MAN=fsck.8
691    AC_MSG_RESULT([Building fsck wrapper by default])
692esac]
693)
694AC_SUBST(FSCK_PROG)
695AC_SUBST(FSCK_MAN)
696dnl
697dnl See whether to install the `e2initrd-helper' program
698dnl
699AC_ARG_ENABLE([e2initrd-helper],
700[  --enable-e2initrd-helper build e2initrd-helper program],
701[if test "$enableval" = "no"
702then
703	E2INITRD_PROG='' E2INITRD_MAN=''
704	AC_MSG_RESULT([Not building e2initrd helper])
705else
706	E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
707	AC_MSG_RESULT([Building e2initrd helper])
708fi]
709,
710E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
711AC_MSG_RESULT([Building e2initrd helper by default])
712)
713AC_SUBST(E2INITRD_PROG)
714AC_SUBST(E2INITRD_MAN)
715dnl
716dnl
717dnl
718AC_ARG_ENABLE([tls],
719[  --disable-tls           disable use of thread local support],
720[if test "$enableval" = "no"
721then
722	try_tls=""
723	AC_MSG_RESULT([Disabling thread local support])
724else
725	try_tls="yes"
726	AC_MSG_RESULT([Enabling thread local support])
727fi]
728,
729if test -n "$WITH_DIET_LIBC"
730then
731	try_tls=""
732	AC_MSG_RESULT([Diet libc does not support thread local support])
733else
734	try_tls="yes"
735	AC_MSG_RESULT([Try using thread local support by default])
736fi
737)
738if test "$try_tls" = "yes"
739then
740AX_TLS
741fi
742dnl
743dnl
744dnl
745AH_TEMPLATE([USE_UUIDD], [Define to 1 to build uuidd])
746AC_ARG_ENABLE([uuidd],
747[  --disable-uuidd         disable building the uuid daemon],
748[if test "$enableval" = "no"
749then
750	AC_MSG_RESULT([Not building uuidd])
751	UUIDD_CMT="#"
752else
753	AC_DEFINE(USE_UUIDD, 1)
754	UUIDD_CMT=""
755	AC_MSG_RESULT([Building uuidd])
756fi]
757,
758AC_DEFINE(USE_UUIDD, 1)
759UUIDD_CMT=""
760AC_MSG_RESULT([Building uuidd by default])
761)
762AC_SUBST(UUIDD_CMT)
763dnl
764dnl
765dnl
766MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
767AC_SUBST_FILE(MAKEFILE_LIBRARY)
768dnl
769dnl Add internationalization support, using gettext.
770dnl
771GETTEXT_PACKAGE=e2fsprogs
772PACKAGE=e2fsprogs
773VERSION="$E2FSPROGS_VERSION"
774VERSION=0.14.1
775AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [package name for gettext])
776AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [version for gettext])
777AC_SUBST(GETTEXT_PACKAGE)
778AC_SUBST(PACKAGE)
779AC_SUBST(VERSION)
780
781AM_GNU_GETTEXT
782dnl
783dnl End of configuration options
784dnl
785AC_SUBST(BINARY_TYPE)
786AC_PROG_MAKE_SET
787CHECK_GNU_MAKE
788AC_PATH_PROG(LN, ln, ln)
789AC_PROG_LN_S
790AC_PATH_PROG(MV, mv, mv)
791AC_PATH_PROG(CP, cp, cp)
792AC_PATH_PROG(RM, rm, rm)
793AC_PATH_PROG(CHMOD, chmod, :)
794AC_PROG_AWK
795AC_PROG_EGREP
796AC_PATH_PROG(SED, sed, sed)
797AC_PATH_PROG(PERL, perl, perl)
798AC_PATH_PROG(LDCONFIG, ldconfig, :)
799AC_CHECK_TOOL(AR, ar, ar)
800AC_CHECK_TOOL(RANLIB, ranlib, :)
801AC_CHECK_TOOL(STRIP, strip, :)
802AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, )
803if test "_$MAKEINFO" = "_"; then
804    MAKEINFO="@echo Makeinfo is missing. Info documentation will not be built.;true"
805else
806    case "$MAKEINFO" in
807      */missing.*)
808        AC_MSG_WARN([
809*** Makeinfo is missing. Info documentation will not be built.])
810        ;;
811      *)
812        ;;
813    esac
814fi
815AC_SUBST(MAKEINFO)
816AC_PROG_INSTALL
817# See if we need a separate native compiler.
818if test $cross_compiling = no; then
819  BUILD_CC="$CC"
820  AC_SUBST(BUILD_CC)
821else
822  AC_CHECK_PROGS(BUILD_CC, gcc cc)
823fi
824AC_CHECK_HEADERS(m4_flatten([
825	dirent.h
826	errno.h
827	execinfo.h
828	getopt.h
829	malloc.h
830	mntent.h
831	paths.h
832	semaphore.h
833	setjmp.h
834	signal.h
835	stdarg.h
836	stdint.h
837	stdlib.h
838	termios.h
839	termio.h
840	unistd.h
841	utime.h
842	linux/falloc.h
843	linux/fd.h
844	linux/major.h
845	net/if_dl.h
846	netinet/in.h
847	sys/disklabel.h
848	sys/file.h
849	sys/ioctl.h
850	sys/mkdev.h
851	sys/mman.h
852	sys/prctl.h
853	sys/queue.h
854	sys/resource.h
855	sys/select.h
856	sys/socket.h
857	sys/sockio.h
858	sys/stat.h
859	sys/syscall.h
860	sys/sysmacros.h
861	sys/time.h
862	sys/types.h
863	sys/un.h
864	sys/wait.h
865]))
866AC_CHECK_HEADERS(sys/disk.h sys/mount.h,,,
867[[
868#if HAVE_SYS_QUEUE_H
869#include <sys/queue.h>
870#endif
871]])
872AC_CHECK_HEADERS(net/if.h,,,
873[[
874#if HAVE_SYS_TYPES_H
875#include <sys/types.h>
876#endif
877#if HAVE_SYS_SOCKET
878#include <sys/socket.h>
879#endif
880]])
881AC_FUNC_VPRINTF
882dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
883dnl is not decleared.
884AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT, 1,
885		       [Define to 1 if dirent has d_reclen])],,
886		[#include <dirent.h>])
887dnl Check to see if ssize_t was declared
888AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T, 1,
889		[Define to 1 if ssize_t declared])],,
890	      [#include <sys/types.h>])
891dnl
892dnl Check to see if llseek() is declared in unistd.h.  On some libc's 
893dnl it is, and on others it isn't..... Thank you glibc developers....
894dnl
895AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
896			[Define to 1 if llseek declared in unistd.h])],,
897	      [#include <unistd.h>])
898dnl
899dnl Check to see if lseek64() is declared in unistd.h.  Glibc's header files
900dnl are so convoluted that I can't tell whether it will always be defined,
901dnl and if it isn't defined while lseek64 is defined in the library, 
902dnl disaster will strike.  
903dnl
904dnl Warning!  Use of --enable-gcc-wall may throw off this test.
905dnl
906dnl
907AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
908			[Define to 1 if lseek64 declared in unistd.h])],,
909		[#define _LARGEFILE_SOURCE
910		 #define _LARGEFILE64_SOURCE
911		 #include <unistd.h>])
912dnl
913dnl Word sizes...
914dnl
915AC_CHECK_SIZEOF(short)
916AC_CHECK_SIZEOF(int)
917AC_CHECK_SIZEOF(long)
918AC_CHECK_SIZEOF(long long)
919SIZEOF_SHORT=$ac_cv_sizeof_short
920SIZEOF_INT=$ac_cv_sizeof_int
921SIZEOF_LONG=$ac_cv_sizeof_long
922SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
923AC_SUBST(SIZEOF_SHORT)
924AC_SUBST(SIZEOF_INT)
925AC_SUBST(SIZEOF_LONG)
926AC_SUBST(SIZEOF_LONG_LONG)
927AC_C_BIGENDIAN
928BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
929ASM_TYPES_HEADER=./asm_types.h
930AC_SUBST_FILE(ASM_TYPES_HEADER)
931dnl
932dnl Save the configuration #defines needed for the public ext2fs.h
933dnl header file
934dnl
935echo "/* These defines are needed for the public ext2fs.h header file */" \
936     > public_config.h
937if grep HAVE_SYS_TYPES_H confdefs.h > tmp_config.$$; then
938  uniq tmp_config.$$ >> public_config.h
939else
940  echo "#undef HAVE_SYS_TYPES_H" >> public_config.h
941fi
942if grep WORDS_BIGENDIAN confdefs.h > tmp_config.$$; then
943  uniq tmp_config.$$ >> public_config.h
944else
945  echo "#undef WORDS_BIGENDIAN" >> public_config.h
946fi
947rm -f tmp_config.$$
948PUBLIC_CONFIG_HEADER=./public_config.h
949AC_SUBST_FILE(PUBLIC_CONFIG_HEADER)
950dnl
951dnl See if we have inttypes.h and if intptr_t is defined
952dnl
953AC_CHECK_HEADERS([inttypes.h])
954AC_CHECK_TYPES(intptr_t)
955dnl
956dnl See if struct stat has a st_flags field, in which case we can get file
957dnl flags somewhat portably.  Also check for the analogous setter, chflags().
958dnl
959AC_MSG_CHECKING(whether struct stat has a st_flags field)
960AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
961	AC_TRY_COMPILE([#include <sys/stat.h>],
962		[struct stat stat; stat.st_flags = 0;],
963		[e2fsprogs_cv_struct_st_flags=yes],
964		[e2fsprogs_cv_struct_st_flags=no]))
965AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
966if test "$e2fsprogs_cv_struct_st_flags" = yes; then
967  AC_MSG_CHECKING(whether st_flags field is useful)
968  AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
969	AC_TRY_COMPILE([#include <sys/stat.h>],
970		[struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
971		[e2fsprogs_cv_struct_st_flags_immut=yes],
972		[e2fsprogs_cv_struct_st_flags_immut=no]))
973  AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
974  if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
975	  AC_DEFINE(HAVE_STAT_FLAGS, 1,
976		[Define to 1 if struct stat has st_flags])
977  fi
978fi
979dnl
980dnl Check for the presence of SA_LEN
981dnl
982AC_CHECK_MEMBER(struct sockaddr.sa_len,
983		AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,
984			[Define to 1 if if struct sockaddr contains sa_len]),,
985	[#include <sys/types.h>
986	 #include <sys/socket.h>])
987dnl
988dnl This will add -lblkid to the AC_CHECK_FUNCS search if we are using
989dnl the system-provided blkid library
990dnl
991if test -n "$BLKID_CMT"; then
992  AC_SEARCH_LIBS([blkid_probe_all], [blkid])
993fi
994dnl
995AC_CHECK_FUNCS(m4_flatten([
996	__secure_getenv
997	backtrace
998	blkid_probe_get_topology
999	chflags
1000	fallocate
1001	fallocate64
1002	fchown
1003	fdatasync
1004	fstat64
1005	ftruncate64
1006	getdtablesize
1007	getmntinfo
1008	getpwuid_r
1009	getrlimit
1010	getrusage
1011	jrand48
1012	llseek
1013	lseek64
1014	mallinfo
1015	mbstowcs
1016	memalign
1017	mmap
1018	msync
1019	nanosleep
1020	open64
1021	pathconf
1022	posix_fadvise
1023	posix_memalign
1024	prctl
1025	setmntent
1026	setresgid
1027	setresuid
1028	srandom
1029	strcasecmp
1030	strdup
1031	strnlen
1032	strptime
1033	strtoull
1034	sync_file_range
1035	sysconf
1036	usleep
1037	utime
1038	valloc
1039]))
1040dnl
1041dnl Check to see if -lsocket is required (solaris) to make something
1042dnl that uses socket() to compile; this is needed for the UUID library
1043dnl
1044SOCKET_LIB=''
1045AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
1046AC_SUBST(SOCKET_LIB)
1047dnl
1048dnl See if optreset exists
1049dnl
1050AC_MSG_CHECKING(for optreset)
1051AC_CACHE_VAL(ac_cv_have_optreset,
1052[AC_EGREP_HEADER(optreset, unistd.h,
1053  ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
1054AC_MSG_RESULT($ac_cv_have_optreset)
1055if test $ac_cv_have_optreset = yes; then
1056  AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if optreset for getopt is present])
1057fi
1058dnl
1059dnl Test for sem_init, and which library it might require:
1060dnl
1061AH_TEMPLATE([HAVE_SEM_INIT], [Define to 1 if sem_init() exists])
1062SEM_INIT_LIB=''
1063AC_CHECK_FUNC(sem_init, ,
1064  AC_CHECK_LIB(pthread, sem_init,
1065  	AC_DEFINE(HAVE_SEM_INIT, 1)
1066  	SEM_INIT_LIB=-lpthread,
1067  AC_CHECK_LIB(rt, sem_init,
1068  	AC_DEFINE(HAVE_SEM_INIT, 1)
1069  	SEM_INIT_LIB=-lrt,
1070  AC_CHECK_LIB(posix4, sem_init,
1071  	AC_DEFINE(HAVE_SEM_INIT, 1)
1072  	SEM_INIT_LIB=-lposix4))))dnl
1073AC_SUBST(SEM_INIT_LIB)
1074dnl
1075dnl Check for unified diff
1076dnl
1077AC_MSG_CHECKING(for unified diff option)
1078if diff -u $0 $0 > /dev/null 2>&1 ; then
1079   UNI_DIFF_OPTS=-u
1080else
1081   UNI_DIFF_OPTS=-c
1082fi
1083AC_MSG_RESULT($UNI_DIFF_OPTS)
1084AC_SUBST(UNI_DIFF_OPTS)
1085dnl
1086dnl We use the EXT2 ioctls only under Linux
1087dnl
1088case "$host_os" in
1089linux*)
1090	AC_DEFINE(HAVE_EXT2_IOCTLS, 1, [Define to 1 if Ext2 ioctls present])
1091	;;
1092esac
1093dnl
1094dnl OS-specific uncomment control
1095dnl
1096LINUX_CMT="#"
1097CYGWIN_CMT="#"
1098UNIX_CMT=
1099case "$host_os" in
1100linux*)
1101	LINUX_CMT=
1102	;;
1103cygwin)
1104	CYGWIN_CMT=
1105	UNIX_CMT="#"
1106	;;
1107esac
1108AC_SUBST(LINUX_CMT)
1109AC_SUBST(CYGWIN_CMT)
1110AC_SUBST(UNIX_CMT)
1111dnl
1112dnl Linux and Hurd places root files in the / by default
1113dnl
1114case "$host_os" in
1115linux* | gnu* | k*bsd*-gnu)
1116	if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
1117		root_prefix="";
1118		AC_MSG_RESULT([On $host_os systems, root_prefix defaults to ''])
1119	fi
1120	;;
1121esac
1122dnl
1123dnl On Linux/hurd, force the prefix to be /usr
1124dnl
1125case "$host_os" in
1126linux* | gnu* | k*bsd*-gnu)
1127	if test "$prefix" = NONE ; then
1128		prefix="/usr";
1129		AC_MSG_RESULT([On $host_os systems, prefix defaults to /usr])
1130		if test "$mandir" = '${prefix}/man' ; then
1131			AC_MSG_RESULT([...and mandir defaults to /usr/share/man])
1132			mandir=/usr/share/man
1133		fi
1134	fi
1135;;
1136esac
1137if test "$root_prefix" = NONE ; then
1138	if test "$prefix" = NONE ; then
1139		root_prefix="$ac_default_prefix"
1140	else
1141		root_prefix="$prefix"
1142	fi
1143	root_bindir=$bindir
1144	root_sbindir=$sbindir
1145	root_libdir=$libdir
1146	root_sysconfdir=$sysconfdir
1147else
1148	root_bindir='${root_prefix}/bin'
1149	root_sbindir='${root_prefix}/sbin'
1150	root_libdir='${root_prefix}/lib'
1151	root_sysconfdir='${root_prefix}/etc'
1152fi
1153if test "$bindir" != '${exec_prefix}/bin'; then
1154    root_bindir=$bindir
1155    AC_MSG_RESULT([Setting root_bindir to $root_bindir])
1156fi
1157if test "$sbindir" != '${exec_prefix}/sbin'; then
1158    root_sbindir=$sbindir
1159    AC_MSG_RESULT([Setting root_sbindir to $root_sbindir])
1160fi
1161if test "$libdir" != '${exec_prefix}/lib'; then
1162    root_libdir=$libdir
1163    AC_MSG_RESULT([Setting root_libdir to $root_libdir])
1164fi
1165if test "$sysconfdir" != '${prefix}/etc'; then
1166    root_sysconfdir=$sysconfdir
1167    AC_MSG_RESULT([Setting root_sysconfdir to $root_sysconfdir])
1168fi
1169AC_SUBST(root_prefix)
1170AC_SUBST(root_bindir)
1171AC_SUBST(root_sbindir)
1172AC_SUBST(root_libdir)
1173AC_SUBST(root_sysconfdir)
1174dnl
1175dnl Allow specification of the multiarch arch
1176dnl
1177AC_ARG_WITH([multiarch],
1178[  --with-multiarch=ARCH specify the multiarch triplet],
1179libdir=$libdir/$withval
1180root_libdir=$root_libdir/$withval
1181)dnl
1182dnl
1183dnl See if -static works.
1184dnl
1185AC_MSG_CHECKING([whether linker accepts -static])
1186AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
1187[SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
1188AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
1189 ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
1190LDFLAGS=$SAVE_LDFLAGS])
1191dnl
1192dnl Regardless of how the test turns out, Solaris doesn't handle -static
1193dnl This is caused by the socket library requiring the nsl library, which
1194dnl requires the -dl library, which only works for dynamically linked 
1195dnl programs.  It basically means you can't have statically linked programs
1196dnl which use the network under Solaris.  
1197dnl
1198case "$host_os" in
1199solaris2.*)
1200	ac_cv_e2fsprogs_use_static=no	
1201;;
1202esac
1203AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
1204LDFLAG_STATIC=
1205if test $ac_cv_e2fsprogs_use_static = yes; then
1206	LDFLAG_STATIC=-static
1207fi
1208AC_SUBST(LDFLAG_STATIC)
1209dnl
1210dnl Work around mysterious Darwin / GNU libintl problem
1211dnl (__asm__ redirection doesn't work for some mysterious reason.  Looks like
1212dnl Apple hacked gcc somehow?)
1213dnl
1214case "$host_os" in
1215darwin*)
1216	AC_MSG_RESULT([Using Apple Darwin / GNU libintl workaround])
1217	AC_DEFINE(_INTL_REDIRECT_MACROS, 1,
1218		[Define to 1 if Apple Darwin libintl workaround is needed])
1219	;;
1220esac
1221dnl
1222dnl Make the ss and et directories work correctly.
1223dnl
1224SS_DIR=`cd ${srcdir}/lib/ss; pwd`
1225ET_DIR=`cd ${srcdir}/lib/et; pwd`
1226AC_SUBST(SS_DIR)
1227AC_SUBST(ET_DIR)
1228dnl
1229dnl Only try to run the test suite if we're not cross compiling.
1230dnl
1231if test "$cross_compiling" = yes ; then
1232  DO_TEST_SUITE=
1233else
1234  DO_TEST_SUITE=check
1235fi
1236AC_SUBST(DO_TEST_SUITE)
1237dnl
1238dnl Only include the intl include files if we're building with them
1239dnl
1240INCLUDES='-I. -I$(top_builddir)/lib -I$(top_srcdir)/lib'
1241if test -n "$CPPFLAGS" ; then
1242	INCLUDES="$INCLUDES $CPPFLAGS"
1243fi
1244if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
1245	INCLUDES=$INCLUDES' -I$(top_builddir)/intl -I$(top_srcdir)/intl'
1246fi
1247AC_SUBST(INCLUDES)
1248dnl
1249dnl Build CFLAGS
1250dnl
1251if test $cross_compiling = no; then
1252   BUILD_CFLAGS="$CFLAGS $CPPFLAGS"
1253   BUILD_LDFLAGS="$LDFLAGS"
1254else
1255   BUILD_CFLAGS=
1256   BUILD_LDFLAGS=
1257fi
1258AC_SUBST(BUILD_CFLAGS)
1259AC_SUBST(BUILD_LDFLAGS)
1260dnl
1261dnl Make our output files, being sure that we create the some miscellaneous 
1262dnl directories
1263dnl
1264test -d lib || mkdir lib
1265test -d include || mkdir include
1266test -d include/linux || mkdir include/linux
1267test -d include/asm || mkdir include/asm
1268for i in MCONFIG Makefile e2fsprogs.spec \
1269	util/Makefile util/subst.conf util/gen-tarball util/install-symlink \
1270	lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
1271	lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
1272	lib/uuid/Makefile lib/uuid/uuid_types.h \
1273	lib/blkid/Makefile lib/blkid/blkid_types.h lib/quota/Makefile \
1274	lib/ss/ss.pc lib/uuid/uuid.pc lib/et/com_err.pc \
1275	lib/e2p/e2p.pc lib/blkid/blkid.pc lib/ext2fs/ext2fs.pc \
1276	misc/Makefile ext2ed/Makefile e2fsck/Makefile \
1277	debugfs/Makefile tests/Makefile tests/progs/Makefile \
1278	resize/Makefile doc/Makefile intl/Makefile \
1279	intl/libgnuintl.h po/Makefile.in ; do
1280	if test -d `dirname ${srcdir}/$i` ; then
1281		outlist="$outlist $i"
1282	fi
1283done
1284AC_OUTPUT($outlist)
1285if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi
1286