OSDN Git Service

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