Whamcloud - gitweb
po: update nl.po (from translationproject.org)
[tools/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 --disable-libquota
530 dnl
531 PKG_PROG_PKG_CONFIG
532 LIBQUOTA=
533 DEPLIBQUOTA=
534 STATIC_LIBQUOTA=
535 DEPSTATIC_LIBQUOTA=
536 PROFILED_LIBQUOTA=
537 DEPPROFILED_LIBQUOTA=
538 QUOTA_CMT=
539 AC_ARG_ENABLE([libquota],
540 [  --disable-libquota     do not build private quota library],
541 if test "$enableval" = "no"
542 then
543         if test -z "$PKG_CONFIG"; then
544                 AC_MSG_ERROR([pkg-config not installed; please install it.])
545         fi
546
547         AC_CHECK_LIB(quota,
548                 [LIBQUOTA=`$PKG_CONFIG --libs quota`;
549                  STATIC_LIBQUOTA=`$PKG_CONFIG --static --libs quota`],
550                 [AC_MSG_ERROR([external quota library not found])],
551                 [$LIBQUOTA])
552         QUOTA_CMT=#
553         AC_MSG_RESULT([Disabling private quota library])
554 else
555         LIBQUOTA='$(LIB)/libquota'$LIB_EXT
556         DEPLIBQUOTA=$LIBQUOTA
557         STATIC_LIBQUOTA='$(LIB)/libquota'$STATIC_LIB_EXT
558         DEPSTATIC_LIBQUOTA=$STATIC_LIBQUOTA
559         PROFILED_LIBQUOTA='$(LIB)/libquota'$PROFILED_LIB_EXT
560         DEPPROFILED_LIBQUOTA=$PROFILED_LIBQUOTA
561         AC_MSG_RESULT([Enabling private quota library])
562 fi
563 ,
564 LIBQUOTA='$(LIB)/libquota'$LIB_EXT
565 DEPLIBQUOTA=$LIBQUOTA
566 STATIC_LIBQUOTA='$(LIB)/libquota'$STATIC_LIB_EXT
567 DEPSTATIC_LIBQUOTA=$STATIC_LIBQUOTA
568 PROFILED_LIBQUOTA='$(LIB)/libquota'$PROFILED_LIB_EXT
569 DEPPROFILED_LIBQUOTA=$PROFILED_LIBQUOTA
570 AC_MSG_RESULT([Enabling private quota library by default])
571 )
572 AC_SUBST(LIBQUOTA)
573 AC_SUBST(DEPLIBQUOTA)
574 AC_SUBST(STATIC_LIBQUOTA)
575 AC_SUBST(DEPSTATIC_LIBQUOTA)
576 AC_SUBST(PROFILED_LIBQUOTA)
577 AC_SUBST(DEPPROFILED_LIBQUOTA)
578 AC_SUBST(QUOTA_CMT)
579 dnl
580 dnl handle --enable-debugfs
581 dnl
582 AC_ARG_ENABLE([debugfs],
583 [  --disable-debugfs      disable support of debugfs program],
584 if test "$enableval" = "no"
585 then
586         AC_MSG_RESULT([Disabling debugfs support])
587         DEBUGFS_CMT="#"
588 else
589         DEBUGFS_CMT=
590         AC_MSG_RESULT([Enabling debugfs support])
591 fi
592 ,
593 AC_MSG_RESULT([Enabling debugfs support by default])
594 DEBUGFS_CMT=
595 )
596 AC_SUBST(DEBUGFS_CMT)
597 dnl
598 dnl handle --enable-imager
599 dnl
600 AC_ARG_ENABLE([imager],
601 [  --disable-imager       disable support of e2image program],
602 if test "$enableval" = "no"
603 then
604         AC_MSG_RESULT([Disabling e2image support])
605         IMAGER_CMT="#"
606 else
607         IMAGER_CMT=
608         AC_MSG_RESULT([Enabling e2image support])
609 fi
610 ,
611 AC_MSG_RESULT([Enabling e2image support by default])
612 IMAGER_CMT=
613 )
614 AC_SUBST(IMAGER_CMT)
615 dnl
616 dnl handle --enable-resizer
617 dnl
618 AC_ARG_ENABLE([resizer],
619 [  --disable-resizer      disable support of e2resize program],
620 if test "$enableval" = "no"
621 then
622         AC_MSG_RESULT([Disabling e2resize support])
623         RESIZER_CMT="#"
624 else
625         RESIZER_CMT=
626         AC_MSG_RESULT([Enabling e2resize support])
627 fi
628 ,
629 AC_MSG_RESULT([Enabling e2resize support by default])
630 RESIZER_CMT=
631 )
632 AC_SUBST(RESIZER_CMT)
633 dnl
634 dnl handle --enable-defrag
635 dnl
636 AC_ARG_ENABLE([defrag],
637 [  --disable-defrag       disable support of e4defrag program],
638 if test "$enableval" = "no"
639 then
640         AC_MSG_RESULT([Disabling e4defrag support])
641         DEFRAG_CMT="#"
642 else
643         DEFRAG_CMT=
644         AC_MSG_RESULT([Enabling e4defrag support])
645 fi
646 ,
647 AC_MSG_RESULT([Enabling e4defrag support by default])
648 DEFRAG_CMT=
649 )
650 AC_SUBST(DEFRAG_CMT)
651 dnl
652 dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
653 dnl
654 AC_ARG_ENABLE([fsck],
655 [  --enable-fsck           build fsck wrapper program],
656 [if test "$enableval" = "no"
657 then
658         FSCK_PROG='' FSCK_MAN=''
659         AC_MSG_RESULT([Not building fsck wrapper])
660 else
661         FSCK_PROG=fsck FSCK_MAN=fsck.8
662         AC_MSG_RESULT([Building fsck wrapper])
663 fi]
664 ,
665 [case "$host_os" in
666   gnu*)
667     FSCK_PROG='' FSCK_MAN=''
668     AC_MSG_RESULT([Not building fsck wrapper by default])
669     ;;
670   *)
671     FSCK_PROG=fsck FSCK_MAN=fsck.8
672     AC_MSG_RESULT([Building fsck wrapper by default])
673 esac]
674 )
675 AC_SUBST(FSCK_PROG)
676 AC_SUBST(FSCK_MAN)
677 dnl
678 dnl See whether to install the `e2initrd-helper' program
679 dnl
680 AC_ARG_ENABLE([e2initrd-helper],
681 [  --enable-e2initrd-helper build e2initrd-helper program],
682 [if test "$enableval" = "no"
683 then
684         E2INITRD_PROG='' E2INITRD_MAN=''
685         AC_MSG_RESULT([Not building e2initrd helper])
686 else
687         E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
688         AC_MSG_RESULT([Building e2initrd helper])
689 fi]
690 ,
691 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
692 AC_MSG_RESULT([Building e2initrd helper by default])
693 )
694 AC_SUBST(E2INITRD_PROG)
695 AC_SUBST(E2INITRD_MAN)
696 dnl
697 dnl
698 dnl
699 AC_ARG_ENABLE([tls],
700 [  --disable-tls           disable use of thread local support],
701 [if test "$enableval" = "no"
702 then
703         try_tls=""
704         AC_MSG_RESULT([Disabling thread local support])
705 else
706         try_tls="yes"
707         AC_MSG_RESULT([Enabling thread local support])
708 fi]
709 ,
710 if test -n "$WITH_DIET_LIBC"
711 then
712         try_tls=""
713         AC_MSG_RESULT([Diet libc does not support thread local support])
714 else
715         try_tls="yes"
716         AC_MSG_RESULT([Try using thread local support by default])
717 fi
718 )
719 if test "$try_tls" = "yes"
720 then
721 AX_TLS
722 fi
723 dnl
724 dnl
725 dnl
726 AH_TEMPLATE([USE_UUIDD], [Define to 1 to build uuidd])
727 AC_ARG_ENABLE([uuidd],
728 [  --disable-uuidd         disable building the uuid daemon],
729 [if test "$enableval" = "no"
730 then
731         AC_MSG_RESULT([Not building uuidd])
732         UUIDD_CMT="#"
733 else
734         AC_DEFINE(USE_UUIDD, 1)
735         UUIDD_CMT=""
736         AC_MSG_RESULT([Building uuidd])
737 fi]
738 ,
739 AC_DEFINE(USE_UUIDD, 1)
740 UUIDD_CMT=""
741 AC_MSG_RESULT([Building uuidd by default])
742 )
743 AC_SUBST(UUIDD_CMT)
744 dnl
745 dnl
746 dnl
747 MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
748 AC_SUBST_FILE(MAKEFILE_LIBRARY)
749 dnl
750 dnl Add internationalization support, using gettext.
751 dnl
752 GETTEXT_PACKAGE=e2fsprogs
753 PACKAGE=e2fsprogs
754 VERSION="$E2FSPROGS_VERSION"
755 VERSION=0.14.1
756 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [package name for gettext])
757 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [version for gettext])
758 AC_SUBST(GETTEXT_PACKAGE)
759 AC_SUBST(PACKAGE)
760 AC_SUBST(VERSION)
761
762 AM_GNU_GETTEXT
763 dnl
764 dnl End of configuration options
765 dnl
766 AC_SUBST(BINARY_TYPE)
767 AC_PROG_MAKE_SET
768 CHECK_GNU_MAKE
769 AC_PATH_PROG(LN, ln, ln)
770 AC_PROG_LN_S
771 AC_PATH_PROG(MV, mv, mv)
772 AC_PATH_PROG(CP, cp, cp)
773 AC_PATH_PROG(RM, rm, rm)
774 AC_PATH_PROG(CHMOD, chmod, :)
775 AC_PROG_AWK
776 AC_PROG_EGREP
777 AC_PATH_PROG(SED, sed, sed)
778 AC_PATH_PROG(PERL, perl, perl)
779 AC_PATH_PROG(LDCONFIG, ldconfig, :)
780 AC_CHECK_TOOL(AR, ar, ar)
781 AC_CHECK_TOOL(RANLIB, ranlib, :)
782 AC_CHECK_TOOL(STRIP, strip, :)
783 AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, )
784 if test "_$MAKEINFO" = "_"; then
785     MAKEINFO="@echo Makeinfo is missing. Info documentation will not be built.;true"
786 else
787     case "$MAKEINFO" in
788       */missing.*)
789         AC_MSG_WARN([
790 *** Makeinfo is missing. Info documentation will not be built.])
791         ;;
792       *)
793         ;;
794     esac
795 fi
796 AC_SUBST(MAKEINFO)
797 AC_PROG_INSTALL
798 # See if we need a separate native compiler.
799 if test $cross_compiling = no; then
800   BUILD_CC="$CC"
801   AC_SUBST(BUILD_CC)
802 else
803   AC_CHECK_PROGS(BUILD_CC, gcc cc)
804 fi
805 AC_CHECK_HEADERS(dirent.h errno.h execinfo.h getopt.h malloc.h mntent.h paths.h semaphore.h setjmp.h signal.h stdarg.h stdint.h stdlib.h termios.h termio.h unistd.h utime.h linux/falloc.h linux/fd.h linux/major.h net/if_dl.h netinet/in.h sys/disklabel.h sys/file.h sys/ioctl.h sys/mkdev.h sys/mman.h sys/prctl.h sys/queue.h sys/quota.h sys/resource.h sys/select.h sys/socket.h sys/sockio.h sys/stat.h sys/syscall.h sys/sysmacros.h sys/time.h sys/types.h sys/un.h sys/wait.h)
806 AC_CHECK_HEADERS(sys/disk.h sys/mount.h,,,
807 [[
808 #if HAVE_SYS_QUEUE_H
809 #include <sys/queue.h>
810 #endif
811 ]])
812 AC_CHECK_HEADERS(net/if.h,,,
813 [[
814 #if HAVE_SYS_TYPES_H
815 #include <sys/types.h>
816 #endif
817 #if HAVE_SYS_SOCKET
818 #include <sys/socket.h>
819 #endif
820 ]])
821 AC_FUNC_VPRINTF
822 dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
823 dnl is not decleared.
824 AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT, 1,
825                        [Define to 1 if dirent has d_reclen])],,
826                 [#include <dirent.h>])
827 dnl Check to see if ssize_t was declared
828 AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T, 1,
829                 [Define to 1 if ssize_t declared])],,
830               [#include <sys/types.h>])
831 dnl
832 dnl Check to see if llseek() is declared in unistd.h.  On some libc's 
833 dnl it is, and on others it isn't..... Thank you glibc developers....
834 dnl
835 AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
836                         [Define to 1 if llseek declared in unistd.h])],,
837               [#include <unistd.h>])
838 dnl
839 dnl Check to see if lseek64() is declared in unistd.h.  Glibc's header files
840 dnl are so convoluted that I can't tell whether it will always be defined,
841 dnl and if it isn't defined while lseek64 is defined in the library, 
842 dnl disaster will strike.  
843 dnl
844 dnl Warning!  Use of --enable-gcc-wall may throw off this test.
845 dnl
846 dnl
847 AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
848                         [Define to 1 if lseek64 declared in unistd.h])],,
849                 [#define _LARGEFILE_SOURCE
850                  #define _LARGEFILE64_SOURCE
851                  #include <unistd.h>])
852 dnl
853 dnl Word sizes...
854 dnl
855 AC_CHECK_SIZEOF(short)
856 AC_CHECK_SIZEOF(int)
857 AC_CHECK_SIZEOF(long)
858 AC_CHECK_SIZEOF(long long)
859 SIZEOF_SHORT=$ac_cv_sizeof_short
860 SIZEOF_INT=$ac_cv_sizeof_int
861 SIZEOF_LONG=$ac_cv_sizeof_long
862 SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
863 AC_SUBST(SIZEOF_SHORT)
864 AC_SUBST(SIZEOF_INT)
865 AC_SUBST(SIZEOF_LONG)
866 AC_SUBST(SIZEOF_LONG_LONG)
867 AC_C_BIGENDIAN
868 BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
869 ASM_TYPES_HEADER=./asm_types.h
870 AC_SUBST_FILE(ASM_TYPES_HEADER)
871 dnl
872 dnl Save the configuration #defines needed for the public ext2fs.h
873 dnl header file
874 dnl
875 echo "/* These defines are needed for the public ext2fs.h header file */" \
876      > public_config.h
877 if grep HAVE_SYS_TYPES_H confdefs.h > tmp_config.$$; then
878   uniq tmp_config.$$ >> public_config.h
879 else
880   echo "#undef HAVE_SYS_TYPES_H" >> public_config.h
881 fi
882 if grep WORDS_BIGENDIAN confdefs.h > tmp_config.$$; then
883   uniq tmp_config.$$ >> public_config.h
884 else
885   echo "#undef WORDS_BIGENDIAN" >> public_config.h
886 fi
887 rm -f tmp_config.$$
888 PUBLIC_CONFIG_HEADER=./public_config.h
889 AC_SUBST_FILE(PUBLIC_CONFIG_HEADER)
890 dnl
891 dnl See if we have inttypes.h and if intptr_t is defined
892 dnl
893 AC_CHECK_HEADERS([inttypes.h])
894 AC_CHECK_TYPES(intptr_t)
895 dnl
896 dnl See if struct stat has a st_flags field, in which case we can get file
897 dnl flags somewhat portably.  Also check for the analogous setter, chflags().
898 dnl
899 AC_MSG_CHECKING(whether struct stat has a st_flags field)
900 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
901         AC_TRY_COMPILE([#include <sys/stat.h>],
902                 [struct stat stat; stat.st_flags = 0;],
903                 [e2fsprogs_cv_struct_st_flags=yes],
904                 [e2fsprogs_cv_struct_st_flags=no]))
905 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
906 if test "$e2fsprogs_cv_struct_st_flags" = yes; then
907   AC_MSG_CHECKING(whether st_flags field is useful)
908   AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
909         AC_TRY_COMPILE([#include <sys/stat.h>],
910                 [struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
911                 [e2fsprogs_cv_struct_st_flags_immut=yes],
912                 [e2fsprogs_cv_struct_st_flags_immut=no]))
913   AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
914   if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
915           AC_DEFINE(HAVE_STAT_FLAGS, 1,
916                 [Define to 1 if struct stat has st_flags])
917   fi
918 fi
919 dnl
920 dnl Check for the presence of SA_LEN
921 dnl
922 AC_CHECK_MEMBER(struct sockaddr.sa_len,
923                 AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,
924                         [Define to 1 if if struct sockaddr contains sa_len]),,
925         [#include <sys/types.h>
926          #include <sys/socket.h>])
927 dnl
928 dnl This will add -lblkid to the AC_CHECK_FUNCS search if we are using
929 dnl the system-provided blkid library
930 dnl
931 if test -n "$BLKID_CMT"; then
932   AC_SEARCH_LIBS([blkid_probe_all], [blkid])
933 fi
934 dnl
935 AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 ftruncate64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync quotactl strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime setresuid setresgid usleep nanosleep getdtablesize getrlimit sync_file_range posix_fadvise fallocate fallocate64 blkid_probe_get_topology mbstowcs backtrace)
936 dnl
937 dnl Check to see if -lsocket is required (solaris) to make something
938 dnl that uses socket() to compile; this is needed for the UUID library
939 dnl
940 SOCKET_LIB=''
941 AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
942 AC_SUBST(SOCKET_LIB)
943 dnl
944 dnl See if optreset exists
945 dnl
946 AC_MSG_CHECKING(for optreset)
947 AC_CACHE_VAL(ac_cv_have_optreset,
948 [AC_EGREP_HEADER(optreset, unistd.h,
949   ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
950 AC_MSG_RESULT($ac_cv_have_optreset)
951 if test $ac_cv_have_optreset = yes; then
952   AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if optreset for getopt is present])
953 fi
954 dnl
955 dnl Test for sem_init, and which library it might require:
956 dnl
957 AH_TEMPLATE([HAVE_SEM_INIT], [Define to 1 if sem_init() exists])
958 SEM_INIT_LIB=''
959 AC_CHECK_FUNC(sem_init, ,
960   AC_CHECK_LIB(pthread, sem_init,
961         AC_DEFINE(HAVE_SEM_INIT, 1)
962         SEM_INIT_LIB=-lpthread,
963   AC_CHECK_LIB(rt, sem_init,
964         AC_DEFINE(HAVE_SEM_INIT, 1)
965         SEM_INIT_LIB=-lrt,
966   AC_CHECK_LIB(posix4, sem_init,
967         AC_DEFINE(HAVE_SEM_INIT, 1)
968         SEM_INIT_LIB=-lposix4))))dnl
969 AC_SUBST(SEM_INIT_LIB)
970 dnl
971 dnl Check for unified diff
972 dnl
973 AC_MSG_CHECKING(for unified diff option)
974 if diff -u $0 $0 > /dev/null 2>&1 ; then
975    UNI_DIFF_OPTS=-u
976 else
977    UNI_DIFF_OPTS=-c
978 fi
979 AC_MSG_RESULT($UNI_DIFF_OPTS)
980 AC_SUBST(UNI_DIFF_OPTS)
981 dnl
982 dnl We use the EXT2 ioctls only under Linux
983 dnl
984 case "$host_os" in
985 linux*)
986         AC_DEFINE(HAVE_EXT2_IOCTLS, 1, [Define to 1 if Ext2 ioctls present])
987         ;;
988 esac
989 dnl
990 dnl OS-specific uncomment control
991 dnl
992 LINUX_CMT="#"
993 CYGWIN_CMT="#"
994 UNIX_CMT=
995 case "$host_os" in
996 linux*)
997         LINUX_CMT=
998         ;;
999 cygwin)
1000         CYGWIN_CMT=
1001         UNIX_CMT="#"
1002         ;;
1003 esac
1004 AC_SUBST(LINUX_CMT)
1005 AC_SUBST(CYGWIN_CMT)
1006 AC_SUBST(UNIX_CMT)
1007 dnl
1008 dnl Linux and Hurd places root files in the / by default
1009 dnl
1010 case "$host_os" in
1011 linux* | gnu* | k*bsd*-gnu)
1012         if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
1013                 root_prefix="";
1014                 AC_MSG_RESULT([On $host_os systems, root_prefix defaults to ''])
1015         fi
1016         ;;
1017 esac
1018 dnl
1019 dnl On Linux/hurd, force the prefix to be /usr
1020 dnl
1021 case "$host_os" in
1022 linux* | gnu* | k*bsd*-gnu)
1023         if test "$prefix" = NONE ; then
1024                 prefix="/usr";
1025                 AC_MSG_RESULT([On $host_os systems, prefix defaults to /usr])
1026                 if test "$mandir" = '${prefix}/man' ; then
1027                         AC_MSG_RESULT([...and mandir defaults to /usr/share/man])
1028                         mandir=/usr/share/man
1029                 fi
1030         fi
1031 ;;
1032 esac
1033 if test "$root_prefix" = NONE ; then
1034         if test "$prefix" = NONE ; then
1035                 root_prefix="$ac_default_prefix"
1036         else
1037                 root_prefix="$prefix"
1038         fi
1039         root_bindir=$bindir
1040         root_sbindir=$sbindir
1041         root_libdir=$libdir
1042         root_sysconfdir=$sysconfdir
1043 else
1044         root_bindir='${root_prefix}/bin'
1045         root_sbindir='${root_prefix}/sbin'
1046         root_libdir='${root_prefix}/lib'
1047         root_sysconfdir='${root_prefix}/etc'
1048 fi
1049 if test "$bindir" != '${exec_prefix}/bin'; then
1050     root_bindir=$bindir
1051     AC_MSG_RESULT([Setting root_bindir to $root_bindir])
1052 fi
1053 if test "$sbindir" != '${exec_prefix}/sbin'; then
1054     root_sbindir=$sbindir
1055     AC_MSG_RESULT([Setting root_sbindir to $root_sbindir])
1056 fi
1057 if test "$libdir" != '${exec_prefix}/lib'; then
1058     root_libdir=$libdir
1059     AC_MSG_RESULT([Setting root_libdir to $root_libdir])
1060 fi
1061 if test "$sysconfdir" != '${prefix}/etc'; then
1062     root_sysconfdir=$sysconfdir
1063     AC_MSG_RESULT([Setting root_sysconfdir to $root_sysconfdir])
1064 fi
1065 AC_SUBST(root_prefix)
1066 AC_SUBST(root_bindir)
1067 AC_SUBST(root_sbindir)
1068 AC_SUBST(root_libdir)
1069 AC_SUBST(root_sysconfdir)
1070 dnl
1071 dnl Allow specification of the multiarch arch
1072 dnl
1073 AC_ARG_WITH([multiarch],
1074 [  --with-multiarch=ARCH specify the multiarch triplet],
1075 libdir=$libdir/$withval
1076 root_libdir=$root_libdir/$withval
1077 )dnl
1078 dnl
1079 dnl See if -static works.
1080 dnl
1081 AC_MSG_CHECKING([whether linker accepts -static])
1082 AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
1083 [SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
1084 AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
1085  ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
1086 LDFLAGS=$SAVE_LDFLAGS])
1087 dnl
1088 dnl Regardless of how the test turns out, Solaris doesn't handle -static
1089 dnl This is caused by the socket library requiring the nsl library, which
1090 dnl requires the -dl library, which only works for dynamically linked 
1091 dnl programs.  It basically means you can't have statically linked programs
1092 dnl which use the network under Solaris.  
1093 dnl
1094 case "$host_os" in
1095 solaris2.*)
1096         ac_cv_e2fsprogs_use_static=no   
1097 ;;
1098 esac
1099 AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
1100 LDFLAG_STATIC=
1101 if test $ac_cv_e2fsprogs_use_static = yes; then
1102         LDFLAG_STATIC=-static
1103 fi
1104 AC_SUBST(LDFLAG_STATIC)
1105 dnl
1106 dnl Work around mysterious Darwin / GNU libintl problem
1107 dnl (__asm__ redirection doesn't work for some mysterious reason.  Looks like
1108 dnl Apple hacked gcc somehow?)
1109 dnl
1110 case "$host_os" in
1111 darwin*)
1112         AC_MSG_RESULT([Using Apple Darwin / GNU libintl workaround])
1113         AC_DEFINE(_INTL_REDIRECT_MACROS, 1,
1114                 [Define to 1 if Apple Darwin libintl workaround is needed])
1115         ;;
1116 esac
1117 dnl
1118 dnl Make the ss and et directories work correctly.
1119 dnl
1120 SS_DIR=`cd ${srcdir}/lib/ss; pwd`
1121 ET_DIR=`cd ${srcdir}/lib/et; pwd`
1122 AC_SUBST(SS_DIR)
1123 AC_SUBST(ET_DIR)
1124 dnl
1125 dnl Only try to run the test suite if we're not cross compiling.
1126 dnl
1127 if test "$cross_compiling" = yes ; then
1128   DO_TEST_SUITE=
1129 else
1130   DO_TEST_SUITE=check
1131 fi
1132 AC_SUBST(DO_TEST_SUITE)
1133 dnl
1134 dnl Only include the intl include files if we're building with them
1135 dnl
1136 INCLUDES='-I. -I$(top_builddir)/lib -I$(top_srcdir)/lib'
1137 if test -n "$CPPFLAGS" ; then
1138         INCLUDES="$INCLUDES $CPPFLAGS"
1139 fi
1140 if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
1141         INCLUDES=$INCLUDES' -I$(top_builddir)/intl -I$(top_srcdir)/intl'
1142 fi
1143 AC_SUBST(INCLUDES)
1144 dnl
1145 dnl Build CFLAGS
1146 dnl
1147 if test $cross_compiling = no; then
1148    BUILD_CFLAGS="$CFLAGS"
1149    BUILD_LDFLAGS="$LDFLAGS"
1150 else
1151    BUILD_CFLAGS=
1152    BUILD_LDFLAGS=
1153 fi
1154 AC_SUBST(BUILD_CFLAGS)
1155 AC_SUBST(BUILD_LDFLAGS)
1156 dnl
1157 dnl Make our output files, being sure that we create the some miscellaneous 
1158 dnl directories
1159 dnl
1160 test -d lib || mkdir lib
1161 test -d include || mkdir include
1162 test -d include/linux || mkdir include/linux
1163 test -d include/asm || mkdir include/asm
1164 for i in MCONFIG Makefile e2fsprogs.spec \
1165         util/Makefile util/subst.conf util/gen-tarball \
1166         lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
1167         lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
1168         lib/uuid/Makefile lib/uuid/uuid_types.h \
1169         lib/blkid/Makefile lib/blkid/blkid_types.h lib/quota/Makefile \
1170         lib/ss/ss.pc lib/uuid/uuid.pc lib/et/com_err.pc \
1171         lib/e2p/e2p.pc lib/blkid/blkid.pc lib/ext2fs/ext2fs.pc \
1172         misc/Makefile ext2ed/Makefile e2fsck/Makefile \
1173         debugfs/Makefile tests/Makefile tests/progs/Makefile \
1174         resize/Makefile doc/Makefile intl/Makefile \
1175         intl/libgnuintl.h po/Makefile.in ; do
1176         if test -d `dirname ${srcdir}/$i` ; then
1177                 outlist="$outlist $i"
1178         fi
1179 done
1180 AC_OUTPUT($outlist)
1181 if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi