3 AC_CONFIG_AUX_DIR(config)
8 dnl This is to figure out the version number and the date....
10 E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \
11 | awk '{print $3}' | tr \" " " | awk '{print $1}'`
12 DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
14 E2FSPROGS_DAY=`echo $DATE | awk -F- '{print $1}'`
15 MONTH=`echo $DATE | awk -F- '{print $2}'`
16 YEAR=`echo $DATE | awk -F- '{print $3}'`
18 if expr $YEAR ">" 1900 > /dev/null ; then
20 elif expr $YEAR ">" 90 >/dev/null ; then
21 E2FSPROGS_YEAR=19$YEAR
23 E2FSPROGS_YEAR=20$YEAR
27 Jan) MONTH_NUM=01; E2FSPROGS_MONTH="January" ;;
28 Feb) MONTH_NUM=02; E2FSPROGS_MONTH="February" ;;
29 Mar) MONTH_NUM=03; E2FSPROGS_MONTH="March" ;;
30 Apr) MONTH_NUM=04; E2FSPROGS_MONTH="April" ;;
31 May) MONTH_NUM=05; E2FSPROGS_MONTH="May" ;;
32 Jun) MONTH_NUM=06; E2FSPROGS_MONTH="June" ;;
33 Jul) MONTH_NUM=07; E2FSPROGS_MONTH="July" ;;
34 Aug) MONTH_NUM=08; E2FSPROGS_MONTH="August" ;;
35 Sep) MONTH_NUM=09; E2FSPROGS_MONTH="September" ;;
36 Oct) MONTH_NUM=10; E2FSPROGS_MONTH="October" ;;
37 Nov) MONTH_NUM=11; E2FSPROGS_MONTH="November" ;;
38 Dec) MONTH_NUM=12; E2FSPROGS_MONTH="December" ;;
39 *) echo "Unknown month $MONTH??" ;;
42 base_ver=`echo $E2FSPROGS_VERSION | \
43 sed -e 's/-WIP//' -e 's/pre-//' -e 's/-PLUS//'`
44 pre_vers=`echo $base_ver 0.01 - p | dc`
46 date_spec=${E2FSPROGS_YEAR}.${MONTH_NUM}.${E2FSPROGS_DAY}
48 case $E2FSPROGS_VERSION in
50 E2FSPROGS_PKGVER="$pre_vers+${base_ver}_WIP_$date_spec"
53 E2FSPROGS_PKGVER="$base_ver"
57 unset DATE MONTH YEAR base_ver pre_vers date_spec
58 echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION"
59 echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}"
60 AC_SUBST(E2FSPROGS_YEAR)
61 AC_SUBST(E2FSPROGS_MONTH)
62 AC_SUBST(E2FSPROGS_DAY)
63 AC_SUBST(E2FSPROGS_VERSION)
64 AC_SUBST(E2FSPROGS_PKGVER)
69 AC_ARG_WITH([diet-libc],
70 [ --with-diet-libc Use diet libc],
71 CC="diet cc -nostdinc"
72 AC_MSG_RESULT(CC=$CC))dnl
74 dnl set $(CC) from --with-cc=value
77 [ --with-cc=COMPILER select compiler to use],
78 AC_MSG_RESULT(CC=$withval)
80 if test -z "$CC" ; then CC=cc; fi
81 [AC_MSG_RESULT(CC defaults to $CC)])dnl
86 dnl set $(LD) from --with-linker=value
89 [ --with-linker=LINKER select linker to use],
90 AC_MSG_RESULT(LD=$withval)
92 if test -z "$LD" ; then LD=$CC; fi
93 [AC_MSG_RESULT(LD defaults to $LD)])dnl
97 dnl set $(CCOPTS) from --with-ccopts=value
100 [ --with-ccopts=CCOPTS select compiler command line options],
101 AC_MSG_RESULT(CCOPTS is $withval)
105 dnl On systems without linux header files, we add an extra include directory
106 dnl that holds enough to fake it (hopefully). Note that the $(top_srcdir) here
107 dnl is quoted so that it gets expanded by make, not by configure.
109 AC_CHECK_HEADER(linux/fs.h, [linux_headers=yes], [linux_headers=no])
110 if test "$linux_headers" != yes; then
111 LINUX_INCLUDE='-I$(top_builddir)/include'
113 AC_SUBST(LINUX_INCLUDE)
115 dnl Alpha computers use fast and imprecise floating point code that may
116 dnl miss exceptions by default. Force sane options if we're using GCC.
117 AC_MSG_CHECKING(for additional special compiler flags)
121 alpha) addcflags="-mieee" ;;
124 if test "x$addcflags" != x
126 AC_MSG_RESULT($addcflags)
127 CFLAGS="$addcflags $CFLAGS"
129 AC_MSG_RESULT([[(none)]])
132 dnl Set default values for library extentions. Will be dealt with after
133 dnl parsing configuration opions, which may modify these
139 dnl set $(LDFLAGS) from --with-ldopts=value
141 AC_ARG_WITH([ldopts],
142 [ --with-ldopts=LDOPTS select linker command line options],
143 AC_MSG_RESULT(LDFLAGS is $withval)
148 dnl Allow separate `root_prefix' to be specified
150 AC_ARG_WITH([root-prefix],
151 [ --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
152 root_prefix=$withval,
155 dnl handle --enable-maintainer-mode
157 AC_ARG_ENABLE([maintainer-mode],
158 [ --enable-maintainer-mode enable makefile rules useful for maintainers],
159 if test "$enableval" = "no"
162 echo "Disabling maintainer mode"
165 echo "Enabling maintainer mode"
169 echo "Disabling maintainer mode by default"
171 AC_SUBST(MAINTAINER_CMT)
173 dnl handle --enable-compression
175 AC_ARG_ENABLE([compression],
176 [ --enable-compression enable EXPERIMENTAL compression support],
177 if test "$enableval" = "no"
179 echo "Disabling compression support"
181 AC_DEFINE(ENABLE_COMPRESSION)
182 echo "Enabling compression support"
183 echo "WARNING: Compression support is experimental"
186 echo "Disabling compression support by default"
189 dnl handle --enable-htree
191 AC_ARG_ENABLE([htree],
192 [ --enable-htree enable EXPERIMENTAL htree directory support],
193 if test "$enableval" = "no"
196 echo "Disabling htree directory support"
199 AC_DEFINE(ENABLE_HTREE)
200 echo "Enabling htree directory support"
204 AC_DEFINE(ENABLE_HTREE)
205 echo "Enabling htree directory support by default"
209 dnl handle --enable-elf-shlibs
211 AC_ARG_ENABLE([elf-shlibs],
212 [ --enable-elf-shlibs select ELF shared libraries],
213 if test "$enableval" = "no"
216 MAKEFILE_ELF=/dev/null
217 echo "Disabling ELF shared libraries"
220 MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
223 MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
228 echo "Enabling ELF shared libraries"
231 MAKEFILE_ELF=/dev/null
233 echo "Disabling ELF shared libraries by default"
236 AC_SUBST_FILE(MAKEFILE_ELF)
238 dnl handle --enable-bsd-shlibs
240 AC_ARG_ENABLE([bsd-shlibs],
241 [ --enable-bsd-shlibs select BSD shared libraries],
242 if test "$enableval" = "no"
245 MAKEFILE_BSDLIB=/dev/null
246 echo "Disabling BSD shared libraries"
249 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
253 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib
257 echo "Enabling BSD shared libraries"
260 MAKEFILE_BSDLIB=/dev/null
262 echo "Disabling BSD shared libraries by default"
265 AC_SUBST_FILE(MAKEFILE_BSDLIB)
267 dnl handle --enable-profile
269 AC_ARG_ENABLE([profile],
270 [ --enable-profile build profiling libraries],
271 if test "$enableval" = "no"
274 MAKEFILE_PROFILE=/dev/null
275 echo "Disabling profiling libraries"
278 MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
279 PROFILED_LIB_EXT=_p.a
280 echo "Building profiling libraries"
284 MAKEFILE_PROFILE=/dev/null
285 echo "Disabling profiling libraries by default"
287 AC_SUBST(PROFILE_CMT)
288 AC_SUBST_FILE(MAKEFILE_PROFILE)
290 dnl handle --enable-checker
292 AC_ARG_ENABLE([checker],
293 [ --enable-checker build checker libraries],
294 if test "$enableval" = "no"
297 MAKEFILE_CHECKER=/dev/null
298 echo "Disabling checker libraries"
301 MAKEFILE_CHECKER=$srcdir/lib/Makefile.checker
302 echo "Building checker libraries"
306 MAKEFILE_CHECKER=/dev/null
307 echo "Disabling checker libraries by default"
309 AC_SUBST(CHECKER_CMT)
310 AC_SUBST_FILE(MAKEFILE_CHECKER)
312 dnl Substitute library extensions
315 AC_SUBST(STATIC_LIB_EXT)
316 AC_SUBST(PROFILED_LIB_EXT)
318 dnl handle --enable-jbd-debug
320 AC_ARG_ENABLE([jbd-debug],
321 [ --enable-jbd-debug enable journal debugging],
322 if test "$enableval" = "no"
324 echo "Disabling journal debugging"
326 AC_DEFINE(CONFIG_JBD_DEBUG)
327 echo "Enabling journal debugging"
330 echo "Disabling journal debugging by default"
333 dnl handle --enable-blkid-debug
335 AC_ARG_ENABLE([blkid-debug],
336 [ --enable-blkid-debug enable blkid debugging],
337 if test "$enableval" = "no"
339 echo "Disabling blkid debugging"
341 AC_DEFINE(CONFIG_BLKID_DEBUG)
342 echo "Enabling blkid debugging"
345 echo "Disabling blkid debugging by default"
348 dnl handle --enable-testio-debug
350 AC_ARG_ENABLE([testio-debug],
351 [ --enable-testio-debug enable the use of the test I/O manager for debugging],
352 if test "$enableval" = "no"
354 echo "Disabling testio debugging"
356 AC_DEFINE(CONFIG_TESTIO_DEBUG)
357 echo "Enabling testio debugging"
360 echo "Disabling testio debugging by default"
363 dnl handle --enable-swapfs
365 AC_ARG_ENABLE([swapfs],
366 [ --disable-swapfs disable support of legacy byte-swapped filesystems],
367 if test "$enableval" = "no"
370 echo "Disabling swapfs support"
373 AC_DEFINE(ENABLE_SWAPFS)
374 echo "Enabling swapfs support"
378 echo "Enabling swapfs support by default"
379 AC_DEFINE(ENABLE_SWAPFS)
383 dnl handle --enable-debugfs
385 AC_ARG_ENABLE([debugfs],
386 [ --disable-debugfs disable support of debugfs program],
387 if test "$enableval" = "no"
389 echo "Disabling debugfs support"
393 echo "Enabling debugfs support"
396 echo "Enabling debugfs support by default"
399 AC_SUBST(DEBUGFS_CMT)
401 dnl handle --enable-imager
403 AC_ARG_ENABLE([imager],
404 [ --disable-imager disable support of e2image program],
405 if test "$enableval" = "no"
407 echo "Disabling e2image support"
411 echo "Enabling e2image support"
414 echo "Enabling e2image support by default"
419 dnl handle --enable-resizer
421 AC_ARG_ENABLE([resizer],
422 [ --disable-resizer disable support of e2resize program],
423 if test "$enableval" = "no"
425 echo "Disabling e2resize support"
429 echo "Enabling e2resize support"
432 echo "Enabling e2resize support by default"
435 AC_SUBST(RESIZER_CMT)
437 dnl handle --enable-dynamic-e2fsck
439 AC_ARG_ENABLE([dynamic-e2fsck],
440 [ --enable-dynamic-e2fsck build e2fsck dynamically],
441 if test "$enableval" = "no"
444 echo "Building e2fsck statically"
447 echo "Building e2fsck dynamically"
451 echo "Building e2fsck statically by default"
453 AC_SUBST(E2FSCK_TYPE)
455 dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
457 AC_ARG_ENABLE([fsck],
458 [ --enable-fsck build fsck wrapper program],
459 [if test "$enableval" = "no"
461 FSCK_PROG='' FSCK_MAN=''
462 echo "Not building fsck wrapper"
464 FSCK_PROG=fsck FSCK_MAN=fsck.8
465 echo "Building fsck wrapper"
470 FSCK_PROG='' FSCK_MAN=''
471 echo "Not building fsck wrapper by default"
474 FSCK_PROG=fsck FSCK_MAN=fsck.8
475 echo "Building fsck wrapper by default"
481 dnl See whether to install the `e2initrd-helper' program
483 AC_ARG_ENABLE([e2initrd-helper],
484 [ --enable-e2initrd-helper build e2initrd-helper program],
485 [if test "$enableval" = "no"
487 E2INITRD_PROG='' E2INITRD_MAN=''
488 echo "Not building e2initrd helper"
490 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
491 echo "Building e2initrd helper"
494 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
495 echo "Building e2initrd helper by default"
497 AC_SUBST(E2INITRD_PROG)
498 AC_SUBST(E2INITRD_MAN)
499 dnl handle --enable-blkid-devmapper
501 AC_ARG_ENABLE([blkid-devmapper],
502 [ --enable-blkid-devmapper build with device-mapper support],
503 [if test "$enableval" = "no"
505 echo "Disabling device-mapper support"
508 STATIC_DEVMAPPER_LIBS=''
510 AC_DEFINE(HAVE_DEVMAPPER)
511 echo "Enabling device-mapper support"
513 DEVMAPPER_REQ='libselinux libsepol'
514 DEVMAPPER_PC_LIBS='-ldevmapper'
515 DEVMAPPER_LIBS='-ldevmapper -lselinux -lsepol -lpthread'
516 STATIC_DEVMAPPER_LIBS='/usr/lib/libdevmapper.a /usr/lib/libselinux.a /usr/lib/libsepol.a -lpthread'
520 echo "Disabling device-mapper support by default"
522 AC_SUBST(DEVMAPPER_REQ)
523 AC_SUBST(DEVMAPPER_PC_LIBS)
524 AC_SUBST(DEVMAPPER_LIBS)
525 AC_SUBST(STATIC_DEVMAPPER_LIBS)
529 MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
530 AC_SUBST_FILE(MAKEFILE_LIBRARY)
532 dnl Add internationalization support, using gettext.
534 GETTEXT_PACKAGE=e2fsprogs
536 VERSION="$E2FSPROGS_VERSION"
538 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
539 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
540 AC_SUBST(GETTEXT_PACKAGE)
546 dnl End of configuration options
548 AC_SUBST(BINARY_TYPE)
550 AC_PATH_PROG(LN, ln, ln)
552 AC_PATH_PROG(MV, mv, mv)
553 AC_PATH_PROG(CP, cp, cp)
554 AC_PATH_PROG(RM, rm, rm)
555 AC_PATH_PROG(CHMOD, chmod, :)
558 AC_PATH_PROG(SED, sed, sed)
559 AC_PATH_PROG(PERL, perl, perl)
560 AC_PATH_PROG(LDCONFIG, ldconfig, :)
561 AC_CHECK_TOOL(AR, ar, ar)
562 AC_CHECK_TOOL(RANLIB, ranlib, :)
563 AC_CHECK_TOOL(STRIP, strip, :)
565 # See if we need a separate native compiler.
566 if test $cross_compiling = no; then
570 AC_CHECK_PROGS(BUILD_CC, gcc cc)
572 AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.h stdint.h errno.h malloc.h mntent.h paths.h dirent.h getopt.h setjmp.h signal.h termios.h linux/fd.h linux/major.h sys/disklabel.h sys/ioctl.h sys/mman.h sys/mkdev.h sys/prctl.h sys/queue.h sys/sockio.h sys/socket.h sys/sysmacros.h sys/time.h sys/stat.h sys/types.h sys/wait.h sys/resource.h net/if_dl.h netinet/in.h utime.h)
573 AC_CHECK_HEADERS(sys/disk.h sys/mount.h,,,
576 #include <sys/queue.h>
579 AC_CHECK_HEADERS(net/if.h,,,
582 #include <sys/types.h>
585 #include <sys/socket.h>
589 dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
590 dnl is not decleared.
591 AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT)],,
592 [#include <dirent.h>])
593 dnl Check to see if ssize_t was decleared
594 AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T)],,
595 [#include <sys/types.h>])
597 dnl Check to see if llseek() is declared in unistd.h. On some libc's
598 dnl it is, and on others it isn't..... Thank you glibc developers....
600 AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE)],,
601 [#include <unistd.h>])
603 dnl Check to see if lseek64() is declared in unistd.h. Glibc's header files
604 dnl are so convoluted that I can't tell whether it will always be defined,
605 dnl and if it isn't defined while lseek64 is defined in the library,
606 dnl disaster will strike.
608 dnl Warning! Use of --enable-gcc-wall may throw off this test.
611 AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE)],,
612 [#define _LARGEFILE_SOURCE
613 #define _LARGEFILE64_SOURCE
614 #include <unistd.h>])
618 if test "$cross_compiling" = yes -a "$ac_cv_sizeof_long" = ""; then
619 # if cross-compiling, with no cached values, just assume something common.
623 ac_cv_sizeof_long_long=8
624 AC_MSG_WARN([Cross-compiling, so cannot check type sizes; assuming short=2, int=4, long=4, long long=8])
626 AC_CHECK_SIZEOF(short)
628 AC_CHECK_SIZEOF(long)
629 AC_CHECK_SIZEOF(long long)
630 SIZEOF_SHORT=$ac_cv_sizeof_short
631 SIZEOF_INT=$ac_cv_sizeof_int
632 SIZEOF_LONG=$ac_cv_sizeof_long
633 SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
634 AC_SUBST(SIZEOF_SHORT)
636 AC_SUBST(SIZEOF_LONG)
637 AC_SUBST(SIZEOF_LONG_LONG)
639 /bin/sh $ac_aux_dir/parse-types.sh
640 ASM_TYPES_HEADER=./asm_types.h
641 AC_SUBST_FILE(ASM_TYPES_HEADER)
643 dnl See if we have inttypes.h and if intptr_t is defined
645 AC_CHECK_HEADERS([inttypes.h])
646 AC_CHECK_TYPES(intptr_t)
648 dnl See if struct stat has a st_flags field, in which case we can get file
649 dnl flags somewhat portably. Also check for the analogous setter, chflags().
651 AC_MSG_CHECKING(whether struct stat has a st_flags field)
652 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
653 AC_TRY_COMPILE([#include <sys/stat.h>],
654 [struct stat stat; stat.st_flags = 0;],
655 [e2fsprogs_cv_struct_st_flags=yes],
656 [e2fsprogs_cv_struct_st_flags=no]))
657 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
658 if test "$e2fsprogs_cv_struct_st_flags" = yes; then
659 AC_MSG_CHECKING(whether st_flags field is useful)
660 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
661 AC_TRY_COMPILE([#include <sys/stat.h>],
662 [struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
663 [e2fsprogs_cv_struct_st_flags_immut=yes],
664 [e2fsprogs_cv_struct_st_flags_immut=no]))
665 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
666 if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
667 AC_DEFINE(HAVE_STAT_FLAGS)
671 dnl Check for the presence of SA_LEN
673 AC_CHECK_MEMBER(struct sockaddr.sa_len,
674 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,[Define if struct sockaddr contains sa_len]),,
675 [#include <sys/types.h>
676 #include <sys/socket.h>])
678 AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime)
680 dnl Check to see if -lsocket is required (solaris) to make something
681 dnl that uses socket() to compile; this is needed for the UUID library
684 AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
687 dnl Check to see if libdl exists for the sake of dlopen
690 AC_CHECK_LIB(dl, dlopen,
692 AC_DEFINE(HAVE_DLOPEN)])
695 dnl See if optreset exists
697 AC_MSG_CHECKING(for optreset)
698 AC_CACHE_VAL(ac_cv_have_optreset,
699 [AC_EGREP_HEADER(optreset, unistd.h,
700 ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
701 AC_MSG_RESULT($ac_cv_have_optreset)
702 if test $ac_cv_have_optreset = yes; then
703 AC_DEFINE(HAVE_OPTRESET)
706 dnl Check for unified diff
708 AC_MSG_CHECKING(for unified diff option)
709 if diff -u $0 $0 >& /dev/null ; then
714 AC_MSG_RESULT($UNI_DIFF_OPTS)
715 AC_SUBST(UNI_DIFF_OPTS)
717 dnl We use the EXT2 ioctls only under Linux
721 AC_DEFINE(HAVE_EXT2_IOCTLS)
725 dnl OS-specific uncomment control
743 dnl Linux and Hurd places root files in the / by default
746 linux* | gnu* | k*bsd*-gnu)
747 if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
749 echo "On $host_os systems, root_prefix defaults to ''"
754 dnl On Linux/hurd, force the prefix to be /usr
757 linux* | gnu* | k*bsd*-gnu)
758 if test "$prefix" = NONE ; then
760 echo "On $host_os systems, prefix defaults to /usr"
761 if test "$mandir" = '${prefix}/man' ; then
762 echo "...and mandir defaults to /usr/share/man"
763 mandir=/usr/share/man
768 if test "$root_prefix" = NONE ; then
769 if test "$prefix" = NONE ; then
770 root_prefix="$ac_default_prefix"
772 root_prefix="$prefix"
775 root_sbindir=$sbindir
777 root_sysconfdir=$sysconfdir
779 root_bindir='${root_prefix}/bin'
780 root_sbindir='${root_prefix}/sbin'
781 root_libdir='${root_prefix}/lib'
782 root_sysconfdir='${root_prefix}/etc'
784 AC_SUBST(root_prefix)
785 AC_SUBST(root_bindir)
786 AC_SUBST(root_sbindir)
787 AC_SUBST(root_libdir)
788 AC_SUBST(root_sysconfdir)
790 dnl See if -static works.
792 AC_MSG_CHECKING([whether linker accepts -static])
793 AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
794 [SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
795 AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
796 ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
797 LDFLAGS=$SAVE_LDFLAGS])
799 dnl Regardless of how the test turns out, Solaris doesn't handle -static
800 dnl This is caused by the socket library requiring the nsl library, which
801 dnl requires the -dl library, which only works for dynamically linked
802 dnl programs. It basically means you can't have statically linked programs
803 dnl which use the network under Solaris.
807 ac_cv_e2fsprogs_use_static=no
810 AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
812 if test $ac_cv_e2fsprogs_use_static = yes; then
813 LDFLAG_STATIC=-static
815 AC_SUBST(LDFLAG_STATIC)
817 dnl Work around mysterious Darwin / GNU libintl problem
818 dnl (__asm__ redirection doesn't work for some mysterious reason. Looks like
819 dnl Apple hacked gcc somehow?)
823 echo "Using Apple Darwin / GNU libintl workaround"
824 AC_DEFINE(_INTL_REDIRECT_MACROS)
828 dnl Make the ss and et directories work correctly.
830 SS_DIR=`cd ${srcdir}/lib/ss; pwd`
831 ET_DIR=`cd ${srcdir}/lib/et; pwd`
835 dnl Only try to run the test suite if we're not cross compiling.
837 if test "$cross_compiling" = yes ; then
842 AC_SUBST(DO_TEST_SUITE)
844 dnl Only include the intl include files if we're building with them
847 if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
848 INTL_FLAGS='-I$(top_builddir)/intl -I$(top_srcdir)/intl'
854 if test $cross_compiling = no; then
855 BUILD_CFLAGS="$CFLAGS"
856 BUILD_LDFLAGS="$LDFLAGS"
861 AC_SUBST(BUILD_CFLAGS)
862 AC_SUBST(BUILD_LDFLAGS)
864 dnl Make our output files, being sure that we create the some miscellaneous
867 test -d lib || mkdir lib
868 test -d include || mkdir include
869 test -d include/linux || mkdir include/linux
870 test -d include/asm || mkdir include/asm
871 for i in MCONFIG Makefile e2fsprogs.spec \
872 util/Makefile util/subst.conf util/gen-tarball \
873 lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
874 lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
875 lib/uuid/Makefile lib/uuid/uuid_types.h \
876 lib/blkid/Makefile lib/blkid/blkid_types.h \
877 lib/ss/ss.pc lib/uuid/uuid.pc lib/et/com_err.pc \
878 lib/e2p/e2p.pc lib/blkid/blkid.pc lib/ext2fs/ext2fs.pc \
879 misc/Makefile ext2ed/Makefile e2fsck/Makefile \
880 debugfs/Makefile tests/Makefile tests/progs/Makefile \
881 resize/Makefile doc/Makefile intl/Makefile po/Makefile.in ; do
882 if test -d `dirname ${srcdir}/$i` ; then
883 outlist="$outlist $i"
887 if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi