]> git.ipfire.org Git - thirdparty/e2fsprogs.git/blame - configure.in
.del-ext2_fs.h~7a460879, ChangeLog:
[thirdparty/e2fsprogs.git] / configure.in
CommitLineData
50e1e10f 1AC_INIT(version.h)
a4b2d3ce 2AC_PREREQ(2.12)
50e1e10f
TT
3MCONFIG=./MCONFIG
4AC_SUBST_FILE(MCONFIG)
74becf3c
TT
5BINARY_TYPE=bin
6dnl
7dnl This is to figure out the version number and the date....
8dnl
9E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \
10 | awk '{print $3}' | tr \" " " | awk '{print $1}'`
11DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
12 | tr \" " "`
13MONTH=`echo $DATE | awk -F- '{print $2}'`
14YEAR=`echo $DATE | awk -F- '{print $3}'`
15
40fa8cc9
TT
16if expr $YEAR ">" 1900 > /dev/null ; then
17 E2FSPROGS_YEAR=$YEAR
18elif expr $YEAR ">" 90 >/dev/null ; then
74becf3c
TT
19 E2FSPROGS_YEAR=19$YEAR
20else
21 E2FSPROGS_YEAR=20$YEAR
22fi
23
24case $MONTH in
25Jan) E2FSPROGS_MONTH="January" ;;
26Feb) E2FSPROGS_MONTH="February" ;;
27Mar) E2FSPROGS_MONTH="March" ;;
28Apr) E2FSPROGS_MONTH="April" ;;
29May) E2FSPROGS_MONTH="May" ;;
30Jun) E2FSPROGS_MONTH="June" ;;
31Jul) E2FSPROGS_MONTH="July" ;;
32Aug) E2FSPROGS_MONTH="August" ;;
33Sep) E2FSPROGS_MONTH="September" ;;
34Oct) E2FSPROGS_MONTH="October" ;;
35Nov) E2FSPROGS_MONTH="November" ;;
36Dec) E2FSPROGS_MONTH="December" ;;
37*) echo "Unknown month $MONTH??" ;;
38esac
39
40unset DATE MONTH YEAR
41echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION"
42echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}"
43AC_SUBST(E2FSPROGS_YEAR)
44AC_SUBST(E2FSPROGS_MONTH)
45AC_SUBST(E2FSPROGS_VERSION)
fc6d9d51 46AC_REQUIRE([AC_CANONICAL_HOST])
74becf3c
TT
47dnl
48dnl set $(CC) from --with-cc=value
49dnl
50AC_ARG_WITH([cc],
51[ --with-cc=COMPILER select compiler to use],
52AC_MSG_RESULT(CC=$withval)
53CC=$withval,
54if test -z "$CC" ; then CC=cc; fi
55[AC_MSG_RESULT(CC defaults to $CC)])dnl
56export CC
57AC_SUBST([CC])
73ae2d4a 58AC_PROG_CC
74becf3c
TT
59dnl
60dnl set $(LD) from --with-linker=value
61dnl
62AC_ARG_WITH([linker],
63[ --with-linker=LINKER select linker to use],
64AC_MSG_RESULT(LD=$withval)
65LD=$withval,
66if test -z "$LD" ; then LD=$CC; fi
67[AC_MSG_RESULT(LD defaults to $LD)])dnl
68export LD
69AC_SUBST([LD])
70dnl
71dnl set $(CCOPTS) from --with-ccopts=value
72dnl
73AC_ARG_WITH([ccopts],
74[ --with-ccopts=CCOPTS select compiler command line options],
75AC_MSG_RESULT(CCOPTS is $withval)
76CCOPTS=$withval
77CFLAGS="$CFLAGS $withval",
78CCOPTS=)dnl
79AC_SUBST(CCOPTS)
80dnl
f8bd9807
TT
81dnl On systems without linux header files, we add an extra include directory
82dnl that holds enough to fake it (hopefully). Note that the $(top_srcdir) here
83dnl is quoted so that it gets expanded by make, not by configure.
84dnl
85AC_CHECK_HEADER(linux/fs.h, [linux_headers=yes], [linux_headers=no])
73ae2d4a
TT
86if test "$linux_headers" != yes; then
87 LINUX_INCLUDE='-I$(top_builddir)/include'
f8bd9807
TT
88fi
89AC_SUBST(LINUX_INCLUDE)
90dnl
a4d09610
TT
91dnl Set default values for library extentions. Will be dealt with after
92dnl parsing configuration opions, which may modify these
93dnl
94LIB_EXT=.a
95STATIC_LIB_EXT=.a
96PROFILE_LIB_EXT=.a
97dnl
74becf3c
TT
98dnl set $(LDFLAGS) from --with-ldopts=value
99dnl
100AC_ARG_WITH([ldopts],
101[ --with-ldopts=LDOPTS select linker command line options],
102AC_MSG_RESULT(LDFLAGS is $withval)
103LDFLAGS=$withval,
104LDFLAGS=)dnl
105AC_SUBST(LDFLAGS)
50e1e10f 106dnl
a4b2d3ce 107dnl Allow separate `root_prefix' to be specified
fc6d9d51 108dnl
a4b2d3ce
TT
109AC_ARG_WITH([root-prefix],
110[ --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
111root_prefix=$withval,
112root_prefix=NONE)dnl
fc6d9d51 113dnl
1917875f
TT
114dnl handle --enable-compression
115dnl
116AC_ARG_ENABLE([compression],
117[ --enable-compression enable EXPERIMENTAL compression support],
118if test "$enableval" = "no"
119then
120 echo "Disabling compression support"
121else
122 AC_DEFINE(ENABLE_COMPRESSION)
123 echo "Enabling compression support"
124 echo "WARNING: Compression support is experimental"
125fi
126,
127echo "Disabling compression support by default"
128)
129dnl
50e1e10f
TT
130dnl handle --enable-dll-shlibs
131dnl
132AC_ARG_ENABLE([dll-shlibs],
a4d09610 133[ --enable-dll-shlibs select DLL libraries],
50e1e10f
TT
134if test "$enableval" = "no"
135then
136 DLL_CMT=#
137 MAKEFILE_DLL=/dev/null
138 echo "Disabling DLL shared libraries"
139else
140 DLL_CMT=
141 MAKEFILE_DLL=$srcdir/lib/Makefile.dll-lib
74becf3c 142 BINARY_TYPE=dllbin
a4d09610 143 LIB_EXT=.sa
50e1e10f
TT
144 echo "Enabling DLL shared libraries"
145fi
146,
147MAKEFILE_DLL=/dev/null
148DLL_CMT=#
149echo "Disabling DLL shared libraries by default"
150)
151AC_SUBST(DLL_CMT)
152AC_SUBST_FILE(MAKEFILE_DLL)
153dnl
154dnl handle --enable-elf-shlibs
155dnl
156AC_ARG_ENABLE([elf-shlibs],
a4d09610 157[ --enable-elf-shlibs select ELF shared libraries],
50e1e10f
TT
158if test "$enableval" = "no"
159then
160 ELF_CMT=#
161 MAKEFILE_ELF=/dev/null
162 echo "Disabling ELF shared libraries"
163else
164 ELF_CMT=
165 MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
f5955dda
TT
166 [case "$host_os" in
167 solaris2.*)
168 MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
169 ;;
170 esac]
74becf3c 171 BINARY_TYPE=elfbin
a4d09610 172 LIB_EXT=.so
50e1e10f
TT
173 echo "Enabling ELF shared libraries"
174fi
175,
176MAKEFILE_ELF=/dev/null
177ELF_CMT=#
178echo "Disabling ELF shared libraries by default"
179)
180AC_SUBST(ELF_CMT)
181AC_SUBST_FILE(MAKEFILE_ELF)
182dnl
183dnl handle --enable-bsd-shlibs
184dnl
185AC_ARG_ENABLE([bsd-shlibs],
a4d09610 186[ --enable-bsd-shlibs select BSD shared libraries],
50e1e10f
TT
187if test "$enableval" = "no"
188then
189 BSDLIB_CMT=#
190 MAKEFILE_BSDLIB=/dev/null
191 echo "Disabling BSD shared libraries"
192else
193 BSDLIB_CMT=
194 MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
a4d09610 195 LIB_EXT=.so
50e1e10f
TT
196 echo "Enabling BSD shared libraries"
197fi
198,
199MAKEFILE_BSDLIB=/dev/null
200BSDLIB_CMT=#
201echo "Disabling BSD shared libraries by default"
202)
203AC_SUBST(BSDLIB_CMT)
204AC_SUBST_FILE(MAKEFILE_BSDLIB)
205dnl
80bfaa3e
TT
206dnl handle --enable-jfs-debug
207dnl
208AC_ARG_ENABLE([jfs-debug],
209[ --enable-jfs-debug enable journal debugging],
210if test "$enableval" = "no"
211then
212 echo "Disabling journal debugging"
213else
214 AC_DEFINE(JFS_DEBUG)
215 echo "Enabling journal debugging"
216fi
217,
218echo "Disabling journal debugging by default"
219)
220dnl
a64c9c13
TT
221dnl Add internationalization support, using gettext.
222dnl
223PACKAGE=e2fsprogs
224VERSION="$E2FSPROGS_VERSION"
225AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
226AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
227AC_SUBST(PACKAGE)
228AC_SUBST(VERSION)
229
1917875f 230ALL_LINGUAS="it nyc"
a64c9c13
TT
231AM_GNU_GETTEXT
232dnl
50e1e10f
TT
233dnl handle --enable-profile
234dnl
235AC_ARG_ENABLE([profile],
a4d09610 236[ --enable-profile build profiling libraries],
50e1e10f
TT
237if test "$enableval" = "no"
238then
239 PROFILE_CMT=#
240 MAKEFILE_PROFILE=/dev/null
241 echo "Disabling profiling libraries"
242else
243 PROFILE_CMT=
244 MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
a4d09610 245 PROFILED_LIB_EXT=_p.a
50e1e10f
TT
246 echo "Building profiling libraries"
247fi
248,
249PROFILE_CMT=#
250MAKEFILE_PROFILE=/dev/null
251echo "Disabling profiling libraries by default"
252)
253AC_SUBST(PROFILE_CMT)
254AC_SUBST_FILE(MAKEFILE_PROFILE)
255dnl
256dnl handle --enable-checker
257dnl
258AC_ARG_ENABLE([checker],
a4d09610 259[ --enable-checker build checker libraries],
50e1e10f
TT
260if test "$enableval" = "no"
261then
262 CHECKER_CMT=#
263 MAKEFILE_CHECKER=/dev/null
264 echo "Disabling checker libraries"
265else
266 CHECKER_CMT=
267 MAKEFILE_CHECKER=$srcdir/lib/Makefile.checker
268 echo "Building checker libraries"
269fi
270,
271CHECKER_CMT=#
272MAKEFILE_CHECKER=/dev/null
273echo "Disabling checker libraries by default"
274)
275AC_SUBST(CHECKER_CMT)
276AC_SUBST_FILE(MAKEFILE_CHECKER)
277dnl
a4d09610
TT
278dnl Substitute library extensions
279dnl
280AC_SUBST(LIB_EXT)
281AC_SUBST(STATIC_LIB_EXT)
282AC_SUBST(PROFILED_LIB_EXT)
283dnl
50e1e10f
TT
284dnl handle --enable-gcc-wall
285dnl
286AC_ARG_ENABLE([gcc-wall],
b0b9c4de 287[ --enable-gcc-wall enable GCC anal warnings (DON'T USE IN PRODUCTION)],
50e1e10f
TT
288if test "$enableval" = "no"
289then
290 W=#
291 echo "Disabling GCC warnings"
292else
293 W=
294 echo "Enabling GCC warnings"
295fi
296,
297W=#
298echo "Disabling GCC warnings by default"
299)
300AC_SUBST(W)
a4d09610
TT
301AC_ARG_ENABLE([dynamic-e2fsck],
302[ --enable-dynamic-e2fsck build e2fsck dynamically],
303if test "$enableval" = "no"
304then
305 E2FSCK_TYPE=static
306 echo "Building e2fsck statically"
307else
308 E2FSCK_TYPE=shared
309 echo "Building e2fsck dynamically"
310fi
311,
312E2FSCK_TYPE=static
313echo "Building e2fsck statically by default"
314)
315AC_SUBST(E2FSCK_TYPE)
50e1e10f 316dnl
fc6d9d51
TT
317dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
318dnl
319AC_ARG_ENABLE([fsck],
320[ --enable-fsck build fsck wrapper program],
321[if test "$enableval" = "no"
322then
323 FSCK_PROG='' FSCK_MAN=''
324 echo "Not building fsck wrapper"
325else
326 FSCK_PROG=fsck FSCK_MAN=fsck.8
327 echo "Building fsck wrapper"
328fi]
329,
330[case "$host_os" in
331 gnu*)
332 FSCK_PROG='' FSCK_MAN=''
333 echo "Not building fsck wrapper by default"
334 ;;
335 *)
336 FSCK_PROG=fsck FSCK_MAN=fsck.8
337 echo "Building fsck wrapper by default"
338esac]
339)
340AC_SUBST(FSCK_PROG)
341AC_SUBST(FSCK_MAN)
342dnl
50e1e10f
TT
343dnl
344MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
345AC_SUBST_FILE(MAKEFILE_LIBRARY)
346dnl
fc6d9d51
TT
347dnl
348AC_ARG_ENABLE([old-bitops],
349[ --enable-old-bitops Use old (non-standard but native) bitmask operations],
350if test "$enableval" = "no"
351then
352 echo "Using new (standard) bitmask operations"
353else
354 AC_DEFINE(EXT2_OLD_BITOPS)
355 echo "Using old (native) bitmask operations"
356
357fi
358,
359echo "Using standard bitmask operations by default"
360)
361dnl
50e1e10f
TT
362dnl End of configuration options
363dnl
74becf3c 364AC_SUBST(BINARY_TYPE)
50e1e10f
TT
365AC_PROG_MAKE_SET
366AC_PATH_PROG(LN, ln, ln)
fc6d9d51 367AC_PROG_LN_S
50e1e10f
TT
368AC_PATH_PROG(MV, mv, mv)
369AC_PATH_PROG(CP, cp, cp)
370AC_PATH_PROG(RM, rm, rm)
371AC_PATH_PROG(CHMOD, chmod, :)
372AC_PATH_PROG(AWK, awk, awk)
373AC_PATH_PROG(SED, sed, sed)
9d564f73 374AC_PATH_PROG(PERL, perl, perl)
50e1e10f
TT
375AC_CHECK_TOOL(AR, ar, ar)
376AC_CHECK_TOOL(RANLIB, ranlib, :)
377AC_CHECK_TOOL(STRIP, strip, :)
50e1e10f 378AC_PROG_INSTALL
6c133523
TT
379# See if we need a separate native compiler.
380if test $cross_compiling = no; then
381 BUILD_CC="$CC"
382 AC_SUBST(BUILD_CC)
383else
384 AC_CHECK_PROGS(BUILD_CC, gcc cc)
385fi
a2980713 386AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.h errno.h malloc.h mntent.h paths.h dirent.h getopt.h setjmp.h signal.h termios.h linux/fd.h linux/major.h sys/disklabel.h sys/mount.h sys/sockio.h sys/time.h sys/stat.h sys/types.h net/if.h netinet/in.h)
50e1e10f
TT
387AC_FUNC_VPRINTF
388dnl
389dnl See if struct dirent has a d_namlen field (like bsd systems), implying
390dnl that the actual length of the structure may be grater than the declared
391dnl length.
392dnl
393AC_MSG_CHECKING(whether struct dirent has a d_namlen field)
394AC_CACHE_VAL(e2fsprogs_cv_struct_d_namlen,
395 AC_TRY_COMPILE(
396[#include <sys/types.h>
397#include <dirent.h>],
398 [struct dirent de; de.d_namlen = 0;],
399 [e2fsprogs_cv_struct_d_namlen=yes],
400 [e2fsprogs_cv_struct_d_namlen=no]))
401AC_MSG_RESULT($e2fsprogs_cv_struct_d_namlen)
402if test "$e2fsprogs_cv_struct_d_namlen" = yes; then
403 AC_DEFINE(HAVE_DIRENT_NAMLEN)
404fi
405dnl
b0b9c4de
TT
406dnl Check to see if llseek() is declared in unistd.h. On some libc's
407dnl it is, and on others it isn't..... Thank you glibc developers....
408dnl
409dnl Warning! Use of --enable-gcc-wall may throw off this test.
410dnl
411dnl
412AC_MSG_CHECKING(whether llseek declared in unistd.h)
413AC_CACHE_VAL(e2fsprogs_cv_have_llseek_prototype,
414 AC_TRY_COMPILE(
415[#include <unistd.h>], [extern int llseek(int);],
416 [e2fsprogs_cv_have_llseek_prototype=no],
417 [e2fsprogs_cv_have_llseek_prototype=yes]))
418AC_MSG_RESULT($e2fsprogs_cv_have_llseek_prototype)
419if test "$e2fsprogs_cv_have_llseek_prototype" = yes; then
420 AC_DEFINE(HAVE_LLSEEK_PROTOTYPE)
421fi
422dnl
6928adc9
TT
423dnl Check to see if lseek64() is declared in unistd.h. Glibc's header files
424dnl are so convoluted that I can't tell whether it will always be defined,
425dnl and if it isn't defined while lseek64 is defined in the library,
426dnl disaster will strike.
427dnl
428dnl Warning! Use of --enable-gcc-wall may throw off this test.
429dnl
430dnl
431AC_MSG_CHECKING(whether lseek64 declared in unistd.h)
432AC_CACHE_VAL(e2fsprogs_cv_have_lseek64_prototype,
433 AC_TRY_COMPILE(
434[#define _LARGEFILE_SOURCE
435#define _LARGEFILE64_SOURCE
436#include <unistd.h>], [extern int lseek64(int);],
437 [e2fsprogs_cv_have_lseek64_prototype=no],
438 [e2fsprogs_cv_have_lseek64_prototype=yes]))
439AC_MSG_RESULT($e2fsprogs_cv_have_lseek64_prototype)
440if test "$e2fsprogs_cv_have_lseek64_prototype" = yes; then
441 AC_DEFINE(HAVE_LSEEK64_PROTOTYPE)
442fi
443dnl
50e1e10f
TT
444dnl Word sizes...
445dnl
446if test "$cross_compiling" = yes -a "$ac_cv_sizeof_long" = ""; then
447 # if cross-compiling, with no cached values, just assume something common.
448 ac_cv_sizeof_short=2
449 ac_cv_sizeof_int=4
450 ac_cv_sizeof_long=4
6c133523
TT
451 ac_cv_sizeof_long_long=8
452 AC_MSG_WARN([Cross-compiling, so cannot check type sizes; assuming short=2, int=4, long=4, long long=8])
50e1e10f
TT
453fi
454AC_CHECK_SIZEOF(short)
455AC_CHECK_SIZEOF(int)
456AC_CHECK_SIZEOF(long)
fc6d9d51 457AC_CHECK_SIZEOF(long long)
50e1e10f
TT
458SIZEOF_SHORT=$ac_cv_sizeof_short
459SIZEOF_INT=$ac_cv_sizeof_int
460SIZEOF_LONG=$ac_cv_sizeof_long
fc6d9d51 461SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
50e1e10f
TT
462AC_SUBST(SIZEOF_SHORT)
463AC_SUBST(SIZEOF_INT)
464AC_SUBST(SIZEOF_LONG)
fc6d9d51 465AC_SUBST(SIZEOF_LONG_LONG)
50e1e10f
TT
466dnl
467dnl See if struct stat has a st_flags field, in which case we can get file
468dnl flags somewhat portably. Also check for the analogous setter, chflags().
469dnl
470AC_MSG_CHECKING(whether struct stat has a st_flags field)
471AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
472 AC_TRY_COMPILE([#include <sys/stat.h>],
473 [struct stat stat; stat.st_flags = 0;],
474 [e2fsprogs_cv_struct_st_flags=yes],
475 [e2fsprogs_cv_struct_st_flags=no]))
476AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
477if test "$e2fsprogs_cv_struct_st_flags" = yes; then
c03bc4e8
TT
478 AC_MSG_CHECKING(whether st_flags field is useful)
479 AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
480 AC_TRY_COMPILE([#include <sys/stat.h>],
481 [struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
482 [e2fsprogs_cv_struct_st_flags_immut=yes],
483 [e2fsprogs_cv_struct_st_flags_immut=no]))
484 AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
485 if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
486 AC_DEFINE(HAVE_STAT_FLAGS)
487 fi
50e1e10f 488fi
6928adc9 489AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 strdup getmntinfo strcasecmp srandom fchown mallinfo fdatasync)
fc6d9d51
TT
490dnl
491dnl Check to see if ino_t is defined
492dnl
493AC_MSG_CHECKING(ino_t defined by sys/types.h)
494AC_CACHE_VAL(e2fsprogs_cv_ino_t,
495 AC_TRY_COMPILE([#include <sys/types.h>],
496 [ino_t ino; ino = 0;],
497 [e2fsprogs_cv_ino_t=yes],
498 [e2fsprogs_cv_ino_t=no]))
499AC_MSG_RESULT($e2fsprogs_cv_ino_t)
500if test "$e2fsprogs_cv_ino_t" = yes; then
501 AC_DEFINE(HAVE_INO_T)
502fi
50e1e10f 503dnl
fc6d9d51
TT
504dnl Check to see if -lsocket is required (solaris) to make something
505dnl that uses socket() to compile; this is needed for the UUID library
506dnl
507SOCKET_LIB=''
508AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
509AC_SUBST(SOCKET_LIB)
510dnl
50e1e10f
TT
511dnl See if optreset exists
512dnl
513AC_MSG_CHECKING(for optreset)
514AC_CACHE_VAL(ac_cv_have_optreset,
515[AC_EGREP_HEADER(optreset, unistd.h,
516 ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
517AC_MSG_RESULT($ac_cv_have_optreset)
518if test $ac_cv_have_optreset = yes; then
519 AC_DEFINE(HAVE_OPTRESET)
520fi
521dnl
8f3f29d3
TT
522dnl We use the EXT2 ioctls only under Linux
523dnl
524case "$host_os" in
525linux*)
526 AC_DEFINE(HAVE_EXT2_IOCTLS)
527 ;;
528esac
50e1e10f 529dnl
6c133523 530dnl Linux and Hurd places root files in the / by default
50e1e10f 531dnl
50e1e10f 532case "$host_os" in
6c133523 533linux* | gnu*)
a4b2d3ce
TT
534 if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
535 root_prefix="";
536 echo "On $host_os systems, root_prefix defaults to ''"
fc6d9d51
TT
537 fi
538 ;;
539esac
fc6d9d51 540dnl
a4b2d3ce 541dnl On Linux/hurd, force the prefix to be /usr
fc6d9d51
TT
542dnl
543case "$host_os" in
544linux* | gnu*)
545 if test "$prefix" = NONE ; then
a4b2d3ce
TT
546 prefix="/usr";
547 echo "On $host_os systems, prefix defaults to /usr"
50e1e10f
TT
548 fi
549;;
550esac
a4b2d3ce 551if test "$root_prefix" = NONE ; then
ffe1991f 552 if test "$prefix" = NONE ; then
a4b2d3ce
TT
553 root_prefix="$ac_default_prefix"
554 else
555 root_prefix="$prefix"
556 fi
557fi
558AC_SUBST(root_prefix)
50e1e10f
TT
559dnl
560dnl See if -static works.
50e1e10f 561dnl
ae851482
TT
562AC_MSG_CHECKING([whether linker accepts -static])
563AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
564[SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
565AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
566 ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
567LDFLAGS=$SAVE_LDFLAGS])
defde784
TT
568dnl
569dnl Regardless of how the test turns out, Solaris doesn't handle -static
570dnl This is caused by the socket library requiring the nsl library, which
571dnl requires the -dl library, which only works for dynamically linked
572dnl programs. It basically means you can't have statically linked programs
573dnl which use the network under Solaris.
574dnl
575case "$host_os" in
576solaris2.*)
577 ac_cv_e2fsprogs_use_static=no
578;;
579esac
ae851482 580AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
74becf3c 581LDFLAG_STATIC=
ae851482 582if test $ac_cv_e2fsprogs_use_static = yes; then
50e1e10f 583 LDFLAG_STATIC=-static
ae851482 584fi
50e1e10f
TT
585AC_SUBST(LDFLAG_STATIC)
586dnl
50e1e10f
TT
587dnl Make the ss and et directories work correctly.
588dnl
589SS_DIR=`cd ${srcdir}/lib/ss; pwd`
590ET_DIR=`cd ${srcdir}/lib/et; pwd`
591AC_SUBST(SS_DIR)
592AC_SUBST(ET_DIR)
593dnl
594dnl Only try to run the test suite if we're not cross compiling.
595dnl
596if test "$cross_compiling" = yes ; then
597 DO_TEST_SUITE=
598else
599 DO_TEST_SUITE=check
600fi
601AC_SUBST(DO_TEST_SUITE)
602dnl
603dnl Make our output files, being sure that we create the some miscellaneous
604dnl directories
605dnl
606test -d lib || mkdir lib
607test -d include || mkdir include
608test -d include/linux || mkdir include/linux
defde784 609test -d include/asm || mkdir include/asm
24b2c7a7
TT
610rmakefile=
611if test -d ${srcdir}/resize ; then
612 rmakefile=resize/Makefile
613fi
44339bdf 614AC_OUTPUT(MCONFIG Makefile util/Makefile util/subst.conf lib/et/Makefile
fc6d9d51
TT
615 lib/ss/Makefile lib/ext2fs/Makefile lib/e2p/Makefile lib/uuid/Makefile
616 misc/Makefile e2fsck/Makefile debugfs/Makefile tests/Makefile
a64c9c13
TT
617 tests/progs/Makefile $rmakefile doc/Makefile
618 intl/Makefile po/Makefile.in)