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