Preparing for 4.8.0-beta1
[platform/upstream/rpm.git] / configure.ac
1 AC_PREREQ(2.61)
2 AC_INIT(rpm, 4.8.0-beta1, rpm-maint@lists.rpm.org)
3
4 AC_CONFIG_SRCDIR([rpmqv.c])
5 AC_CONFIG_HEADERS([config.h])
6 AC_CONFIG_MACRO_DIR([m4])
7
8 AM_INIT_AUTOMAKE([1.10 foreign tar-ustar dist-bzip2 subdir-objects nostdinc])
9
10 AC_CONFIG_TESTDIR(tests)
11
12 AC_USE_SYSTEM_EXTENSIONS
13
14 AC_DISABLE_STATIC
15
16 dnl Checks for programs.
17 AC_PROG_CXX
18 AC_PROG_AWK
19 AC_PROG_CC
20 AC_PROG_CPP
21 AC_PROG_INSTALL
22 AC_PROG_LN_S
23 AC_PROG_MAKE_SET
24 AC_PROG_LIBTOOL
25 AC_PROG_YACC
26
27 AC_SUBST(__CC, $CC)
28 AC_PROG_CC_C99
29 if test "$ac_cv_prog_cc_c99" = no; then
30     AC_MSG_ERROR([ISO C99 capable compiler required])
31 fi
32
33 AS=${AS-as}
34 AC_SUBST(AS)
35 if test "$GCC" = yes; then
36     CFLAGS="$CFLAGS -fPIC -DPIC -D_REENTRANT -Wall -Wpointer-arith -Wmissing-prototypes -Wno-char-subscripts"
37     # XXX disabled for now due to noise from NSPR headers
38     # CFLAGS="$CFLAGS -Wstrict-prototypes"
39     cflags_to_try="-fno-strict-aliasing -fstack-protector -Wempty-body"
40     AC_MSG_CHECKING([supported compiler flags])
41     old_cflags=$CFLAGS
42     echo
43     for flag in $cflags_to_try; do
44         CFLAGS="$CFLAGS $flag"
45         AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])],[
46                 echo "   $flag"
47                 RPMCFLAGS="$RPMCFLAGS $flag"
48         ],[])
49         CFLAGS=$old_cflags
50     done
51     CFLAGS="$CFLAGS $RPMCFLAGS"
52 fi
53 export CFLAGS
54
55 AC_SYS_LARGEFILE
56
57 dnl
58 dnl look for POSIX chmod attributes
59 dnl
60 AC_MSG_CHECKING(POSIX chmod)
61 touch foo.chmodtest
62 chmod 744 foo.chmodtest
63 chmod +X foo.chmodtest 2>/dev/null
64 a=`ls -l foo.chmodtest | awk '{print substr($1,1,10)}'`
65 rm -f foo.chmodtest
66 if test "$a" = "-rwxr-xr-x"; then
67     AC_MSG_RESULT(yes)
68     FIXPERMS=a+rX,u+w,g-w,o-w 
69 else
70     AC_MSG_RESULT(no (tell your OS vendor about GNU fileutils))
71     FIXPERMS=a+r,u+w,g-w,o-w 
72 fi
73 AC_SUBST(FIXPERMS)
74
75 dnl
76 dnl see if we have a mkdir that supports `-p'.
77 dnl
78 AC_PATH_PROGS(RPM_MKDIR, mkdir, mkdir)
79 AC_MSG_CHECKING(if $RPM_MKDIR supports -p)
80 rm -rf conftest
81 $RPM_MKDIR -p conftest/a 2>/dev/null
82 if test $? = 0 ; then
83         rmdir conftest/a 2>/dev/null
84         if test $? = 0  ; then
85                 :
86         else
87                 RPM_MKDIR_P=0
88         fi
89
90         rmdir conftest 2>/dev/null
91         if test $? = 0 ; then
92                 RPM_MKDIR_P="$RPM_MKDIR -p"
93         else
94                 RPM_MKDIR_P=0
95         fi
96 else
97         RPM_MKDIR_P=0
98 fi
99
100 if test X"$RPM_MKDIR_P" = X0 ; then
101         AC_MSG_RESULT(no)
102         RPM_MKDIR_P="`echo ${prefix}/lib/rpm/mkinstalldirs`"
103 else
104         AC_MSG_RESULT(yes)
105 fi
106 dnl
107 dnl substitute this into config.h, so the C source picks it up.
108 dnl
109 AC_DEFINE_UNQUOTED(RPM_MKDIR_P, "${RPM_MKDIR_P}",
110 [A full path to a program, possibly with arguments, that will create a
111    directory and all necessary parent directories, ala 'mkdir -p'])
112 AC_SUBST(RPM_MKDIR_P)
113
114 dnl AM_DISABLE_SHARED
115 AM_PROG_LIBTOOL
116
117 AC_CHECK_TOOL(AR, ar, :)
118
119 dnl
120 dnl use defaults if cross-compiling, otherwise use the default path.
121 dnl
122 if test "$cross_compiling" = "yes"; then
123     MYPATH=":"
124 else
125     MYPATH=$PATH
126 fi
127
128 dnl
129 dnl Find some common programs
130 dnl
131 AC_PATH_PROG(__BZIP2, bzip2, /usr/bin/bzip2, $MYPATH)
132 AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH)
133 AC_PATH_PROG(__CHGRP, chgrp, /bin/chgrp, $MYPATH)
134 AC_PATH_PROG(__CHMOD, chmod, /bin/chmod, $MYPATH)
135 AC_PATH_PROG(__CHOWN, chown, /bin/chown, $MYPATH)
136 AC_PATH_PROG(__CP, cp, /bin/cp, $MYPATH)
137 AC_PATH_PROG(__CPIO, cpio, /bin/cpio, $MYPATH)
138 AC_PATH_PROG(__CURL, curl, /usr/bin/curl, $MYPATH)
139 AC_PATH_PROG(__FILE, file, /usr/bin/file, $MYPATH)
140 AC_PATH_PROG(__GPG, gpg, /usr/bin/gpg, $MYPATH)
141 AC_PATH_PROG(__GREP, grep, /bin/grep, $MYPATH)
142 AC_PATH_PROG(__GZIP, gzip, /bin/gzip, $MYPATH)
143 AC_PATH_PROG(__UNZIP, unzip, /usr/bin/unzip, $MYPATH)
144
145 AC_PATH_PROG(__ID, id, /usr/bin/id, $MYPATH)
146 AC_MSG_CHECKING(checking whether id supports -u)
147     if ${__ID} -u 2>&1 > /dev/null ; then
148         __ID_U="%{__id} -u"
149         AC_MSG_RESULT(yes)
150     else
151         __ID_U="%{__id} | %{__sed} 's/[[^=]]*=\\\\([[0-9]][[0-9]]*\\\\).*$/\\\\1/'"
152         AC_MSG_RESULT(no)
153     fi
154 AC_SUBST(__ID_U)
155
156 AC_PATH_PROG(__INSTALL, install, /usr/bin/install, $MYPATH)
157 AC_PATH_PROG(__XZ, xz, /usr/bin/xz, $MYPATH)
158 AC_PATH_PROG(__MAKE, make, /usr/bin/make, $MYPATH)
159 AC_PATH_PROG(__MKDIR, mkdir, /bin/mkdir, $MYPATH)
160 AC_PATH_PROG(__MV, mv, /bin/mv, $MYPATH)
161 AC_PATH_PROG(__PATCH, patch, /usr/bin/patch, $MYPATH)
162 AC_MSG_CHECKING(old version of patch)
163     PATCHVERSION=`patch --version 2>&1`
164
165     if test "$PATCHVERSION" = "Patch version 2.1"; then
166         AC_DEFINE(HAVE_OLDPATCH_21, 1,
167                 [Define if the patch call you'll be using is 2.1 or older])
168         AC_MSG_RESULT(patch older then 2.2 found)
169     else
170         AC_MSG_RESULT(patch later then 2.2 found)
171     fi
172
173 AC_PATH_PROG(__PERL, perl, /usr/bin/perl, $MYPATH)
174 AC_PATH_PROG(__PGP, pgp, /usr/bin/pgp, $MYPATH)
175 AC_PATH_PROG(__PYTHON, python, /usr/bin/python, $MYPATH) 
176 AC_PATH_PROG(__RM, rm, /bin/rm, $MYPATH)
177 AC_PATH_PROG(__RSH, rsh, /usr/bin/rsh, $MYPATH)
178 AC_PATH_PROG(__SED, sed, /bin/sed, $MYPATH)
179 AC_PATH_PROG(__SSH, ssh, /usr/bin/ssh, $MYPATH)
180 AC_PATH_PROG(__TAR, tar, /bin/tar, $MYPATH)
181
182 AC_PATH_PROG(__LD, ld, /usr/bin/ld, $MYPATH)
183 AC_PATH_PROG(__NM, nm, /usr/bin/nm, $MYPATH)
184 AC_PATH_PROG(__OBJCOPY, objcopy, /usr/bin/objcopy, $MYPATH)
185 AC_PATH_PROG(__OBJDUMP, objdump, /usr/bin/objdump, $MYPATH)
186 AC_PATH_PROG(__STRIP, strip, /usr/bin/strip, $MYPATH)
187 AC_PATH_PROG(__FAKECHROOT, fakechroot, /usr/bin/fakechroot, $MYPATH)
188
189 #=================
190 # Check for zlib library. 
191
192 WITH_ZLIB_INCLUDE=
193 WITH_ZLIB_LIB=
194
195 AC_CHECK_HEADERS([zlib.h],[
196   AS_IF([test -z "${WITH_ZLIB_LIB}"],[
197     for zlib in z gz ; do
198       AC_CHECK_LIB(${zlib}, gzread, 
199         [WITH_ZLIB_LIB="-l${zlib}"; break])
200     done
201
202 dnl zlib-1.0.4 has not gzseek
203     AC_CHECK_LIB(${zlib}, gzseek, [AC_DEFINE(HAVE_GZSEEK, 1, [Define as 1 if your zlib has gzseek()])])
204   ])
205 ])
206
207 AC_SUBST(WITH_ZLIB_INCLUDE)
208 AC_SUBST(WITH_ZLIB_LIB)
209
210 #=================
211 # Check for bzip2 library.
212
213 AC_CHECK_HEADERS([bzlib.h],[
214   AC_CHECK_LIB(bz2, bzread, [WITH_BZ2_LIB=-lbz2],
215   [
216     AC_CHECK_LIB(bz2, BZ2_bzread,[ 
217       WITH_BZ2_LIB="-lbz2"
218       AC_DEFINE(HAVE_BZ2_1_0, 1, [Define as 1 if you bzip2 1.0])
219     ]) 
220   ])
221 ])
222 AC_SUBST(WITH_BZ2_LIB)
223
224 #=================
225 # Check for lzma library.
226
227 AC_CHECK_HEADERS([lzma.h],[
228   AC_CHECK_LIB(lzma, lzma_easy_encoder, [WITH_LZMA_LIB=-llzma])
229 ])
230 AC_SUBST(WITH_LZMA_LIB)
231
232 #=================
233
234 dnl
235 dnl Check for features
236 dnl
237
238 dnl Checks for libraries.
239
240 AC_CHECK_FUNC(setreuid, [], [
241     AC_CHECK_LIB(ucb, setreuid, [if echo $LIBS | grep -- -lucb >/dev/null ;then :; else LIBS="$LIBS -lc -lucb" USEUCB=y;fi])
242 ])
243
244 AC_CHECK_FUNC(rand, [], [
245     AC_CHECK_LIB(rand, rand, [])
246 ])
247
248 AC_CHECK_FUNC(getdomainname, [], [
249     AC_CHECK_LIB(nsl, getdomainname)
250 ])
251 AC_CHECK_FUNC(socket, [], [
252     AC_CHECK_LIB(socket, socket)
253 ])
254
255 AC_CHECK_HEADERS(error.h)
256 AC_CHECK_FUNCS(error)
257
258 AC_CHECK_HEADERS(poll.h)
259
260 AC_CHECK_HEADERS(pthread.h)
261
262 AC_CHECK_LIB(pthread, pthread_mutex_trylock, [], [
263   dnl OSF 5.0 has the the symbols prefixed with __ in libpthread.
264   AC_CHECK_LIB(pthread, __pthread_mutex_trylock, [], [
265     AC_CHECK_LIB(thread, mutex_lock)
266   ])
267 ])
268
269 AC_SEARCH_LIBS(aio_read, [c rt aio posix4])
270
271 AC_CHECK_FUNCS(vsnprintf snprintf)
272
273 dnl Temporary hack for MiNT.  Some functions (writev, snprintf) are
274 dnl not in the libc but in libport (for political reasons).  This check
275 dnl can hopefully be removed soon.  Please use the default action
276 dnl for this macro (not LIBS=...), otherwise the check for dbopen
277 dnl will fail.
278 AC_CHECK_LIB(port, writev)
279
280 #=================
281 # Check for libelf library. Prefer external, otherwise none.
282 WITH_LIBELF_INCLUDE=
283 WITH_LIBELF_LIB=
284 AC_CHECK_HEADER([libelf.h])
285 AC_CHECK_HEADERS([gelf.h], [
286         AC_CHECK_LIB(elf, gelf_getvernaux, [
287             AC_DEFINE(HAVE_LIBELF, 1, [Define to 1 if you have the 'elf' library (-lelf).])
288             WITH_LIBELF_LIB="-lelf"
289             WITH_LIBELF=yes
290         ])
291 ])
292 AC_SUBST(WITH_LIBELF_INCLUDE)
293 AC_SUBST(WITH_LIBELF_LIB)
294 AM_CONDITIONAL(LIBELF,[test "$WITH_LIBELF" = yes])
295
296 AC_CHECK_HEADERS([dwarf.h], [
297   WITH_LIBDWARF=yes
298 ])
299 AM_CONDITIONAL(LIBDWARF,[test "$WITH_LIBDWARF" = yes])
300
301 #=================
302 # Check for NSS library.
303 # We need nss.h from NSS which needs nspr.h. Unfortunately both glibc and NSS 
304 # have a header named nss.h... so make extra check for NSS's sechash.h 
305 # which we use too and hopefully is slightly more unique to NSS.
306 WITH_NSS_INCLUDE=
307 WITH_NSS_LIB=
308 AC_CHECK_HEADERS([nspr.h nss.h sechash.h], [], [
309   AC_MSG_ERROR([missing required NSPR / NSS header])
310 ])
311 AC_CHECK_LIB(nss3, NSS_NoDB_Init, [
312   WITH_NSS_LIB=-lnss3
313 ], [
314   AC_MSG_ERROR([missing required NSS library 'nss3'])
315 ])
316 AC_SUBST(WITH_NSS_INCLUDE)
317 AC_SUBST(WITH_NSS_LIB)
318
319 #=================
320 # Check for magic library.
321 WITH_MAGIC_INCLUDE=
322 WITH_MAGIC_LIB=
323
324 AC_CHECK_HEADER([magic.h], [
325     AC_CHECK_LIB(magic, magic_open, [
326       WITH_MAGIC_INCLUDE=
327       WITH_MAGIC_LIB="-lmagic"
328     ],[
329       AC_MSG_ERROR([missing required library 'libmagic']) 
330     ])
331 ],[
332       AC_MSG_ERROR([missing required header magic.h]) 
333 ])
334
335 AC_SUBST(WITH_MAGIC_INCLUDE)
336 AC_SUBST(WITH_MAGIC_LIB)
337
338 #=================
339 # Check for popt library.
340 WITH_POPT_INCLUDE=
341 WITH_POPT_LIB=
342
343 AC_CHECK_HEADER([popt.h], [
344   AC_CHECK_LIB(popt, poptGetContext, [
345       WITH_POPT_INCLUDE=
346       WITH_POPT_LIB="-lpopt"
347   ],[
348     AC_MSG_ERROR([missing required library popt])
349   ])
350 ],[
351   AC_MSG_ERROR([missing required header popt.h])
352 ])
353
354 AC_SUBST(WITH_POPT_INCLUDE)
355 AC_SUBST(WITH_POPT_LIB)
356
357 #=================
358 # Process --with/without-external-db
359 AC_ARG_WITH(external_db, [AS_HELP_STRING([--with-external-db],[build against an external Berkeley db])],
360 [case "$with_external_db" in
361 yes|no) ;;
362 *) AC_MSG_ERROR([invalid argument to --with-external-db]) ;;
363 esac],
364 [with_external_db=no])
365
366 case "$with_external_db" in
367 yes )
368   AC_CHECK_HEADERS([db.h],[
369     AC_CHECK_TYPE([db_threadid_t],[],
370       [AC_MSG_WARN([missing type db_threadid_t])],
371       [#include <db.h>])
372     save_LIBS="$LIBS"
373     AC_CHECK_LIB([db],[db_create],[],[
374       AC_MSG_ERROR([missing db_create in libdb])
375       ])
376     AC_CHECK_LIB([db],[db_env_create],[],[
377       AC_MSG_ERROR([missing db_env_create in libdb])
378       ])
379     AC_CHECK_LIB([db],[db_env_set_func_fsync],[],[
380       AC_MSG_ERROR([missing db_env_set_func_fsync in libdb])
381       ])
382     AC_CHECK_LIB([db],[db_strerror],[],[
383       AC_MSG_ERROR([missing db_strerror in libdb])
384       ])
385     WITH_DB_LIB=-ldb
386     LIBS="$save_LIBS"
387   ],[
388     AC_MSG_ERROR([missing required header db.h])
389   ])
390   ;;
391 * ) # Fall back to internal db if available
392   if [ test -x db/dist/configure ]; then
393     AC_DEFINE(HAVE_DB_H, 1, [Define if you have the <db3/db.h> header file])
394   else
395     AC_MSG_ERROR([internal Berkeley DB directory not present, see INSTALL])
396   fi
397   ;;
398 esac
399
400 AC_SUBST([WITH_DB_LIB])
401
402 #=================
403 # Check for sqlite3 library.
404 AC_ARG_ENABLE(sqlite3, [AS_HELP_STRING([--enable-sqlite3],[enable sqlite3 support])],
405 [case "$enable_sqlite3" in
406 yes|no) ;;
407 *) AC_MSG_ERROR([invalid argument to --enable-sqlite3])
408   ;;
409 esac],
410 [enable_sqlite3=no])
411
412 WITH_SQLITE3_INCLUDE=
413 WITH_SQLITE3_LIB=
414 WITH_SQLITE3=no
415 AS_IF([test "$enable_sqlite3" = yes],[
416   AC_CHECK_HEADERS([sqlite3.h],
417   [ AC_CHECK_LIB(sqlite3, sqlite3_open, [
418       WITH_SQLITE3_INCLUDE=
419       WITH_SQLITE3_LIB="-lsqlite3"
420       WITH_SQLITE3=yes
421     ],[
422       AC_MSG_ERROR([missing libsqlite3])
423     ])
424   ],[
425     AC_MSG_ERROR([missing sqlite3.h])
426   ])
427 ])
428
429 AC_SUBST(WITH_SQLITE3_INCLUDE)
430 AC_SUBST(WITH_SQLITE3_LIB)
431 AM_CONDITIONAL([SQLITE3],[test "$WITH_SQLITE3" = yes])
432
433 #=================
434
435 dnl AmigaOS and IXEmul have a fork() dummy
436   case "$host" in
437     m68k-*-amigaos ) 
438         echo "Building for AmigaOS: using vfork() instead of fork()"; 
439         CFLAGS="$CFLAGS -Dfork=vfork" 
440         ;;
441   esac
442
443 AM_GNU_GETTEXT_VERSION([0.16.1])
444 AM_GNU_GETTEXT([external])
445
446 dnl Checks for header files we can live without.
447 AC_HEADER_STDC
448 AC_HEADER_MAJOR
449 AC_HEADER_DIRENT
450 AC_HEADER_TIME
451
452 AC_CHECK_HEADERS(locale.h)
453 AC_CHECK_HEADERS(limits.h)
454 AC_CHECK_HEADERS(fcntl.h getopt.h grp.h memory.h netdb.h pwd.h utime.h)
455
456 AC_CHECK_HEADERS(sys/ipc.h sys/socket.h sys/select.h)
457 AC_CHECK_HEADERS(sys/types.h sys/stdtypes.h)
458 AC_CHECK_HEADERS(sys/mman.h sys/resource.h sys/utsname.h sys/wait.h)
459
460 AC_CHECK_HEADERS(netinet/in_systm.h)
461 AC_CHECK_HEADERS(mntent.h sys/mnttab.h sys/systemcfg.h)
462 AC_CHECK_HEADERS(sys/mount.h sys/mntctl.h sys/param.h sys/vmount.h)
463 AC_CHECK_HEADERS(libio.h)
464 AC_CHECK_HEADERS(err.h mcheck.h)
465
466 AC_CHECK_HEADERS(glob.h)
467
468 dnl statfs portability fiddles.
469 dnl
470 dnl We should really emulate/steal sections of the statfs and struct statfs
471 dnl checks from GNU fileutils.
472 dnl
473 AC_MSG_CHECKING(for struct statfs)
474
475 dnl
476 dnl this is easier than nesting AC_TRY_COMPILEs...
477 dnl
478 found_struct_statfs=no
479
480 if test X$found_struct_statfs = Xno ; then
481 dnl Solaris 2.6+ wants to use statvfs
482 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
483 #ifdef HAVE_SYS_TYPES_H
484 #include <sys/types.h>
485 #endif
486 #include <sys/statvfs.h> ]], [[struct statvfs sfs;]])],[AC_MSG_RESULT(in sys/statvfs.h)
487         AC_DEFINE(STATFS_IN_SYS_STATVFS, 1,
488                 [statfs in <sys/statvfs.h> (for solaris 2.6+ systems)])
489         found_struct_statfs=yes],[])
490 fi
491
492 if test X$found_struct_statfs = Xno ; then
493 dnl first try including sys/vfs.h
494 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
495 #ifdef HAVE_SYS_TYPES_H
496 #include <sys/types.h>
497 #endif
498 #include <sys/vfs.h> ]], [[struct statfs sfs;]])],[AC_MSG_RESULT(in sys/vfs.h)
499         AC_DEFINE(STATFS_IN_SYS_VFS, 1, [statfs in <sys/vfs.h> (for linux systems)])
500         found_struct_statfs=yes],[])
501 fi
502
503 if test X$found_struct_statfs = Xno ; then
504 dnl ...next try including sys/mount.h
505 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
506 #ifdef HAVE_SYS_TYPES_H
507 #include <sys/types.h>
508 #endif
509 #ifdef HAVE_SYS_PARAM_H
510 #include <sys/param.h>
511 #endif
512 #include <sys/mount.h> ]], [[struct statfs sfs;]])],[AC_MSG_RESULT(in sys/mount.h)
513         AC_DEFINE(STATFS_IN_SYS_MOUNT, 1, [statfs in <sys/mount.h> (for Digital Unix 4.0D systems)])
514         found_struct_statfs=yes],[])
515 fi
516
517 if test X$found_struct_statfs = Xno ; then
518 dnl ...still no joy.  Try sys/statfs.h
519 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
520 #ifdef HAVE_SYS_TYPES_H
521 #include <sys/types.h>
522 #endif
523 #include <sys/statfs.h> ]], [[struct statfs sfs;]])],[AC_MSG_RESULT(in sys/statfs.h)
524         AC_DEFINE(STATFS_IN_SYS_STATFS, 1, [statfs in <sys/statfs.h> (for Irix 6.4 systems)])
525         found_struct_statfs=yes],[])
526 fi
527
528 if test X$found_struct_statfs = Xno ; then
529 dnl ...no luck.  Warn the user of impending doom.
530 AC_MSG_WARN(not found)
531 fi
532
533 dnl
534 dnl if we found the struct, see if it has the f_bavail member.  Some OSes
535 dnl don't, including IRIX 6.5+
536 dnl
537 if test X$found_struct_statfs = Xyes ; then
538 AC_MSG_CHECKING(for f_bavail member in struct statfs)
539 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
540 #ifdef HAVE_SYS_TYPES_H
541 #include <sys/types.h>
542 #endif
543 #if STATFS_IN_SYS_STATVFS
544 # include <sys/statvfs.h>
545   typedef struct statvfs STATFS_t;
546 #else
547   typedef struct statfs STATFS_t;
548 # if STATFS_IN_SYS_VFS
549 #  include <sys/vfs.h>
550 # elif STATFS_IN_SYS_MOUNT
551 #  include <sys/mount.h>
552 # elif STATFS_IN_SYS_STATFS
553 #  include <sys/statfs.h>
554 # endif
555 #endif ]], [[STATFS_t sfs;
556         sfs.f_bavail = 0;]])],[AC_MSG_RESULT(yes)
557         AC_DEFINE(STATFS_HAS_F_BAVAIL, 1, [Define if struct statfs has the f_bavail member])],[AC_MSG_RESULT(no)
558 ])
559 fi
560
561 if test X$found_struct_statfs = Xyes ; then
562 dnl
563 dnl now check to see if we have the 4-argument variant of statfs()
564 dnl this pretty much requires AC_RUN_IFELSE([AC_LANG_SOURCE([[]])],[],[],[])
565 dnl
566 AC_MSG_CHECKING([if statfs() requires 4 arguments])
567 AC_RUN_IFELSE([AC_LANG_SOURCE([[
568 #ifdef HAVE_SYS_TYPES_H
569 #include <sys/types.h>
570 #endif
571 #ifdef STATFS_IN_SYS_VFS
572 #include <sys/vfs.h>
573 #elif STATFS_IN_SYS_MOUNT
574 #include <sys/mouht.h>
575 #elif STATFS_IN_SYS_STATFS
576 #include <sys/statfs.h>
577 #endif
578 main() {
579         struct statfs sfs;
580         exit (statfs(".", &sfs, sizeof(sfs), 0));
581 }
582 ]])],[AC_MSG_RESULT(yes)
583         AC_DEFINE(STAT_STATFS4, 1, [Define if the statfs() call takes 4 arguments])],[AC_MSG_RESULT(no)],[AC_MSG_RESULT(no)
584 ])
585 fi
586
587 AC_C_INLINE
588
589 dnl look for libc features
590 PROVIDES_ERRNO=no
591 AC_MSG_CHECKING(if <netdb.h> defines h_errno)
592 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]], [[printf("%d",h_errno)]])],[PROVIDES_ERRNO=yes],[])
593 AC_MSG_RESULT($PROVIDES_ERRNO)
594 if test $PROVIDES_ERRNO = yes; then
595         AC_DEFINE(HAVE_HERRNO, 1, [ Define as 1 if <netdb.h> defines h_errno])
596 fi
597
598 dnl If a system doesn't have S_IFSOCK, define it as 0 which will
599 dnl make S_ISSOCK always return false (nice, eh?)
600 AC_MSG_CHECKING(if <sys/stat.h> defines S_IFSOCK)
601 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/stat.h>]], [[printf("%d", S_IFSOCK)]])],[HAS_S_IFSOCK=yes],[HAS_S_IFSOCK=no])
602 AC_MSG_RESULT($HAS_S_IFSOCK)
603 if test $HAS_S_IFSOCK = yes; then
604         AC_DEFINE(HAVE_S_IFSOCK, 1, [Define as 1 if <sys/stat.h> defines S_IFSOCK])
605 fi
606
607 dnl Some Unix's are missing S_ISLNK, S_ISSOCK
608 AC_MSG_CHECKING(if <sys/stat.h> defines S_ISLNK)
609 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/stat.h>]], [[printf("%d", S_ISLNK(0755))]])],[HAS_S_ISLNK=yes],[HAS_S_ISLNK=no])
610 AC_MSG_RESULT($HAS_S_ISLNK)
611 if test $HAS_S_ISLNK = yes; then
612         AC_DEFINE(HAVE_S_ISLNK, 1, [Define as 1 if <sys/stat.h> defines S_ISLNK])
613 fi
614
615 AC_MSG_CHECKING(if <sys/stat.h> defines S_ISSOCK)
616 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/stat.h>]], [[printf("%d", S_ISSOCK(0755))]])],[HAS_S_ISSOCK=yes],[HAS_S_ISSOCK=no])
617 AC_MSG_RESULT($HAS_S_ISSOCK)
618 if test $HAS_S_ISSOCK = yes; then
619         AC_DEFINE(HAVE_S_ISSOCK, 1, [Define as 1 if <sys/stat.h> defines S_ISSOCK])
620 fi
621
622 dnl Check for missing typedefs
623 AC_TYPE_MODE_T
624 AC_TYPE_OFF_T
625 AC_TYPE_PID_T
626 AC_TYPE_SIZE_T
627
628 dnl Checks for library functions.
629 AC_FUNC_VPRINTF
630 dnl XXX don't want to re-enable code that's been unused for years at this
631 dnl point, but should offer good performance improvements, check after
632 dnl 4.4.2.1...
633 dnl AC_FUNC_MMAP
634
635 AC_CHECK_FUNCS(getaddrinfo getnameinfo inet_aton)
636 AC_CHECK_FUNCS(mtrace)
637 AC_CHECK_FUNCS(strndup strerror)
638
639 AC_REPLACE_FUNCS(basename getcwd getwd)
640 AC_REPLACE_FUNCS(putenv realpath setenv)
641 AC_REPLACE_FUNCS(stpcpy stpncpy strcspn)
642 AC_REPLACE_FUNCS(strdup strtol strtoul strspn strstr)
643
644 AC_CHECK_FUNCS(__secure_getenv)
645
646 AC_CHECK_FUNCS(regcomp)
647
648 AC_CHECK_FUNCS(ftok)
649
650 AC_CHECK_FUNCS([mkstemp], [], [AC_MSG_ERROR([mkstemp() is required by rpm])])
651
652 dnl XXX Glob *is* broken on linux with libc5, solaris and possibly aix when
653 dnl %files gets something like
654 dnl     /usr/*/locale/*/LC_MESSAGES/*.mo
655 dnl (Note: more than one asterisk in glob pattern.)
656 dnl
657 dnl XXX Glob is "fixed" in glibc-2.3.3-61, but the cost is that
658 dnl dangling symlinks are no longer globbed. Always use the internal glob.
659 AC_DEFINE(USE_GNU_GLOB, 1, [Use the included glob.c?])
660 AC_LIBOBJ(glob)
661 AC_LIBOBJ(fnmatch)
662
663 dnl check if python is requested
664 AC_ARG_ENABLE(python, [AS_HELP_STRING([--enable-python],[build rpm python bindings])],
665 [case "$enable_python" in
666 yes|no) ;;
667 *) AC_MSG_ERROR([invalid argument to --enable-python])
668   ;;
669 esac],
670 [enable_python=no])
671
672 AS_IF([test "$enable_python" = yes],[
673   AM_PATH_PYTHON([2.6],[
674     WITH_PYTHON_INCLUDE=`${PYTHON} -c 'from distutils.sysconfig import *; import sys; sys.stdout.write(get_python_inc())'`
675     WITH_PYTHON_SUBPACKAGE=1
676     save_CPPFLAGS="$CPPFLAGS"
677     CPPFLAGS="$CPPFLAGS -I$WITH_PYTHON_INCLUDE"
678     AC_CHECK_HEADER([Python.h],[],
679       [AC_MSG_ERROR([missing Python.h])
680       ])
681     CPPFLAGS="$save_CPPFLAGS"
682     save_LIBS="$LIBS"
683     AC_SEARCH_LIBS([Py_Main],[python${PYTHON_VERSION} python],[
684       WITH_PYTHON_LIB="$ac_res"
685     ],[AC_MSG_ERROR([missing python library])
686     ])
687     LIBS="$save_LIBS"
688   ])
689 ],[
690     WITH_PYTHON_INCLUDE=
691     WITH_PYTHON_LIB=
692     WITH_PYTHON_SUBPACKAGE=0
693 ])
694
695 AC_SUBST(WITH_PYTHON_INCLUDE)
696 AC_SUBST(WITH_PYTHON_LIB)
697
698 AM_CONDITIONAL(PYTHON,[test "$WITH_PYTHON_SUBPACKAGE" = 1])
699
700 AC_PATH_PROG(DOXYGEN, doxygen, no)
701 dnl
702 dnl Only build internal API + source hacking docs on request
703 dnl
704 AC_ARG_WITH(hackingdocs, [AS_HELP_STRING([--with-hackingdocs],[build rpm hacking docs])],,[with_hackingdocs=no])
705
706 case "$with_hackingdocs" in
707 auto)
708   AS_IF([test "$DOXYGEN" = no],[with_hackingdocs=no],[with_hackingdocs=no])
709   ;;
710 yes)
711   AS_IF([test "$DOXYGEN" = no],
712     [AC_MSG_ERROR([rpm hacking docs eeds doxygen in PATH])])
713   ;;
714 esac
715 AC_CHECK_PROG(HAVE_DOT,[dot],[YES],[NO])
716
717 WITH_SELINUX_LIB=
718 AC_ARG_WITH(selinux, [AS_HELP_STRING([--with-selinux],[build with selinux support])],
719 [case "$with_selinux" in
720 yes|no) ;;
721 *) AC_MSG_ERROR([invalid argument to --with-selinux])
722   ;;
723 esac],
724 [with_selinux=no])
725
726 AS_IF([test "$with_selinux" = yes],[
727   AC_CHECK_HEADER([selinux/selinux.h],[
728     AC_CHECK_LIB(selinux,[is_selinux_enabled],[with_selinux=yes],[
729       AC_MSG_ERROR([--with-selinux given, but libselinux not found])])
730   ],[
731     AC_MSG_ERROR([--with-selinux given, but selinux/selinux.h not found])
732   ])
733 ])
734
735 AS_IF([test "$with_selinux" = yes],[
736   AC_DEFINE(WITH_SELINUX, 1, [Build with selinux support?])
737   WITH_SELINUX_LIB="-lselinux"
738 ])
739 AC_SUBST(WITH_SELINUX_LIB)
740 AM_CONDITIONAL(SELINUX,[test "$with_selinux" = yes])
741
742 # libcap
743 WITH_CAP_LIB=
744 AC_ARG_WITH(cap, [AS_HELP_STRING([--with-cap],[build with capability support])],
745 [case "$with_cap" in
746 yes|no) ;;
747 *) AC_MSG_ERROR([invalid argument to --with-cap])
748   ;;
749 esac],
750 [with_cap=no])
751
752 AS_IF([test "$with_cap" = yes],[
753   AC_CHECK_HEADER([sys/capability.h],[
754     AC_CHECK_LIB(cap,[cap_get_file], [
755       with_cap=yes
756       save_LIBS="$LIBS"
757       AC_CHECK_LIB(cap,[cap_compare], [
758         AC_DEFINE(HAVE_CAP_COMPARE, 1, [Have cap_compare function?])
759       ])
760       LIBS="$save_LIBS"
761     ],[
762       AC_MSG_ERROR([--with-cap given, but libcap not found])])
763   ],[
764     AC_MSG_ERROR([--with-cap given, but sys/capability.h not found])
765   ])
766 ])
767
768 AS_IF([test "$with_cap" = yes],[
769   AC_DEFINE(WITH_CAP, 1, [Build with capability support?])
770   WITH_CAP_LIB="-lcap"
771 ])
772 AC_SUBST(WITH_CAP_LIB)
773 AM_CONDITIONAL(CAP,[test "$with_cap" = yes])
774
775 WITH_ACL_LIB=
776 AC_ARG_WITH(acl, [AS_HELP_STRING([--with-acl],[build with acl support])],
777 [case "$with_acl" in
778 yes|no) ;;
779 *) AC_MSG_ERROR([invalid argument to --with-acl])
780   ;;
781 esac],
782 [with_acl=no])
783
784 AS_IF([test "$with_acl" = yes],[
785   dnl verification uses non-portable acl_equiv_mode() 
786   AC_CHECK_HEADER([acl/libacl.h],[
787     AC_CHECK_LIB(acl,[acl_equiv_mode],[with_acl=yes],[
788       AC_MSG_ERROR([--with-acl given, but libacl not found or not suitable])])
789   ],[
790     AC_MSG_ERROR([--with-acl given, but acl/libacl.h not found])
791   ])
792 ])
793
794 AS_IF([test "$with_acl" = yes],[
795   AC_DEFINE(WITH_ACL, 1, [Build with acl support?])
796   WITH_ACL_LIB="-lacl"
797 ])
798 AC_SUBST(WITH_ACL_LIB)
799 AM_CONDITIONAL(ACL,[test "$with_acl" = yes])
800
801 WITH_LUA_LIB=
802 WITH_LUA_INCLUDE=
803 AC_ARG_WITH(lua, [AS_HELP_STRING([--with-lua],[build with lua support])],,[with_lua=yes])
804 AS_IF([test "$with_lua" = yes],[
805   AC_CHECK_HEADER([lua.h],[
806     AC_CHECK_LIB(lua,[luaL_openlibs],[with_lua=yes],[
807       AC_MSG_ERROR([--with-lua given, but liblua not found])
808     ], 
809     [-lm])
810   ],[
811       AC_MSG_ERROR([--with-lua given, but lua.h not found])
812   ])
813 ])
814
815 AS_IF([test "$with_lua" = yes],[
816   AC_DEFINE(WITH_LUA, 1, [Build with lua support?])
817   WITH_LUA_INCLUDE=
818   WITH_LUA_LIB="-llua -lm" 
819 ])
820 AC_SUBST(WITH_LUA_LIB)
821 AC_SUBST(WITH_LUA_INCLUDE)
822 AM_CONDITIONAL(WITH_LUAEXT,[test "$with_lua" = yes])
823
824 with_dmalloc=no
825 AC_ARG_WITH(dmalloc, [AS_HELP_STRING([--with-dmalloc],[build with dmalloc debugging support])])
826 if test "$with_dmalloc" = yes ; then
827   AC_DEFINE(DMALLOC, 1, [Build with dmalloc support?])
828   LIBS="$LIBS -ldmalloc"
829 fi
830
831 AC_CHECK_FUNCS(setlocale)
832
833 AC_CHECK_FUNCS(getpassphrase)
834
835 AC_CHECK_FUNC(getmntent, AC_DEFINE(HAVE_GETMNTENT, 1, [Define if you have the getmntent() function]), [
836   AC_CHECK_FUNC(mntctl, AC_DEFINE(HAVE_MNTCTL, 1, [Define as 1 if you have mntctl() (only aix?)]),[
837     AC_CHECK_FUNC(getmntinfo, AC_DEFINE(HAVE_GETMNTINFO, 1, [Define as 1 if you have getmntinfo() (Mac OS X)]), [
838       AC_CHECK_FUNC(getmntinfo_r, AC_DEFINE(HAVE_GETMNTINFO_R, 1, [Define as 1 if you have getmntinfo_r() (only osf?)]), [
839         AC_CHECK_LIB(c_r, getmntinfo_r, [LIBS="$LIBS -lc_r"; 
840                                         AC_DEFINE(HAVE_GETMNTINFO_R, 1, [Define as 1 if you have getmntinfo_r() (only osf?)])], [
841                  AC_DEFINE([USE_GETMNTENT], 1, [Defined if getmntent replacement is used])
842                  AC_LIBOBJ(getmntent)])
843       ])
844     ])
845   ])
846 ])
847
848 AC_CHECK_FUNC(lchown,
849    [__CHOWN_RHF="%{__chown} -Rhf"
850     __CHGRP_RHF="%{__chgrp} -Rhf"
851     AC_DEFINE(HAVE_LCHOWN, 1, [Define as 1 if you have lchown()])],
852    [__CHOWN_RHF="%{__chown} -Rf"
853     __CHGRP_RHF="%{__chgrp} -Rf"
854     dnl Does chown() follow symlinks? This should be a good enough test.
855     AC_MSG_CHECKING(whether chown() follows symlinks)
856     AC_ARG_ENABLE([broken-chown],
857             [AS_HELP_STRING([--enable-broken-chown],[this system's chown follows symbolic links])], 
858             result=$enableval, result=unknown)
859     if echo "$build" | ${EGREP} "(aix)|(hpux)|(linux)" > /dev/null ; then
860         result=yes
861     elif echo "$build" | ${EGREP} "(nextstep)" > /dev/null ; then
862         result=no
863     fi
864     if test $result = unknown; then
865         if test `${__ID} | cut -f2 -d\= | cut -f1 -d\(` = 0; then
866             rm -f foo bar
867             touch foo
868             ln -s foo bar
869             ${__CHOWN} 10 bar
870             if test `ls -l foo | awk '{print $3}'` != "root"; then
871                 result=yes
872             else
873                 result=no
874             fi
875             ${__RM} -f foo bar
876         else
877             AC_MSG_CHECKING((cannot check by non-root user))
878             result=no
879         fi
880     fi
881
882     AC_MSG_RESULT($result)
883     if test $result = yes; then
884             AC_DEFINE(CHOWN_FOLLOWS_SYMLINK, 1, [Define as 1 if chown() follows symlinks and you don't have lchown()])
885     fi])
886 AC_SUBST(__CHOWN_RHF)
887 AC_SUBST(__CHGRP_RHF)
888
889 if echo "$host_os" | grep sco > /dev/null; then
890         echo "hacking things up for sco"
891         AC_DEFINE(NEED_STRINGS_H, 1, [Define as one if we need to include <strings.h> (along with <string.h>)])
892         AC_DEFINE(HAVE_STRUCT_MNTTAB, 1,
893         [Define as 1 if you have "struct mnttab" (only sco?)])
894 elif echo "$host_os" | grep sunos > /dev/null; then
895         echo "hacking things up for sunos"
896         CFLAGS="$CFLAGS -D__USE_FIXED_PROTOTYPES__"
897         AC_DEFINE(NEED_STRINGS_H, 1, [Define as one if we need to include <strings.h> (along with <string.h>)])
898         AC_DEFINE(NEED_MYREALLOC, 1, [Define as 1 if we need myrealloc])
899         AC_LIBOBJ(myrealloc)
900 fi
901
902 #
903 # get rid of the 4-th tuple, if config.guess returned "linux-gnu" for host_os
904 #
905 host_os_gnu=-gnu
906 if echo "$host_os" | grep '.*-gnulibc1' > /dev/null ; then
907         host_os=`echo "${host_os}" | sed 's/-gnulibc1$//'`
908 fi
909 if echo "$host_os" | grep '.*-gnueabi' > /dev/null ; then
910         host_os=`echo "${host_os}" | sed 's/-gnueabi$//'`
911         host_os_gnu=-gnueabi
912 fi
913 if echo "$host_os" | grep '.*-gnu' > /dev/null ; then
914         host_os=`echo "${host_os}" | sed 's/-gnu$//'`
915 fi
916
917 changequote(<, >)
918 host_os_exact="${host_os}"
919 host_os_major=`echo "${host_os}" | sed 's/\..*$//'`
920 host_os_noversion=`echo "${host_os}" | sed 's/[0-9]*\..*$//'`
921 changequote([, ])
922
923 rm -f ./find-provides
924 if test -f ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.prov ; then
925         echo "using ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.prov for automatic provides generation"
926     ln -s ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.prov ./find-provides
927 elif test -f ${srcdir}/autodeps/${host_os_exact}.prov ; then
928         echo "using ${srcdir}/autodeps/${host_os_exact}.prov for automatic provides generation"
929     ln -s ${srcdir}/autodeps/${host_os_exact}.prov ./find-provides
930 elif test -f ${srcdir}/autodeps/${host_os_major}.prov ; then
931         echo "using ${srcdir}/autodeps/${host_os_major}.prov for automatic provides generation"
932     ln -s ${srcdir}/autodeps/${host_os_major}.prov ./find-provides
933 elif test -f ${srcdir}/autodeps/${host_os_noversion}.prov ; then
934         echo "using ${srcdir}/autodeps/${host_os_noversion}.prov for automatic provides generation"
935     ln -s ${srcdir}/autodeps/${host_os_noversion}.prov ./find-provides
936 else
937     echo "*** no default provides information is available for ${host_os_noversion}"
938     ln -s ${srcdir}/autodeps/none ./find-provides
939 fi
940
941 rm -f ./find-requires
942 if test -f ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.req ; then
943         echo "using ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.req for automatic requires generation"
944     ln -s ${srcdir}/autodeps/${host_cpu}-${host_os_exact}.req ./find-requires
945 elif test -f ${srcdir}/autodeps/${host_os_exact}.req ; then
946         echo "using ${srcdir}/autodeps/${host_os_exact}.req for automatic requires generation"
947     ln -s ${srcdir}/autodeps/${host_os_exact}.req ./find-requires
948 elif test -f ${srcdir}/autodeps/${host_os_major}.req ; then
949         echo "using ${srcdir}/autodeps/${host_os_major}.req for automatic requires generation"
950     ln -s ${srcdir}/autodeps/${host_os_major}.req ./find-requires
951 elif test -f ${srcdir}/autodeps/${host_os_noversion}.req ; then
952         echo "using ${srcdir}/autodeps/${host_os_noversion}.req for automatic requires generation"
953     ln -s ${srcdir}/autodeps/${host_os_noversion}.req ./find-requires
954 else
955     echo "*** no default requires information is available for ${host_os_noversion}"
956     ln -s ${srcdir}/autodeps/none ./find-requires
957 fi
958
959 dnl Determine the canonical arch-vendor-os for the host machine
960 case "${host_cpu}" in
961 *86)            RPMCANONCOLOR=0; RPMCANONARCH=i386 ;;
962 ia32e*)         RPMCANONCOLOR=3; RPMCANONARCH=ia32e ;;
963 amd64*)         RPMCANONCOLOR=3; RPMCANONARCH=amd64 ;;
964 x86_64*)        RPMCANONCOLOR=3; RPMCANONARCH=x86_64 ;;
965 alpha*)         RPMCANONCOLOR=0; RPMCANONARCH=alpha ;;
966 sparc64*)       RPMCANONCOLOR=3; RPMCANONARCH=sparc64 ;;
967 sparc*)         RPMCANONCOLOR=3; RPMCANONARCH=sparc ;;
968 ia64*)          RPMCANONCOLOR=2; RPMCANONARCH=ia64 ;;
969 s390x*)         RPMCANONCOLOR=3; RPMCANONARCH=s390x ;;
970 s390*)          RPMCANONCOLOR=0; RPMCANONARCH=s390 ;;
971 powerpc64*|ppc64*)      RPMCANONCOLOR=3; RPMCANONARCH=ppc64 ;;
972 powerpc*|ppc*)  RPMCANONCOLOR=0; RPMCANONARCH=ppc ;;
973 arm*)           RPMCANONCOLOR=0; RPMCANONARCH=arm ;;
974 mipsel*)        RPMCANONCOLOR=0; RPMCANONARCH=mipsel ;;
975 mips*)          RPMCANONCOLOR=0; RPMCANONARCH=mips ;;
976 m68k*)          RPMCANONCOLOR=0; RPMCANONARCH=m68k ;;
977 sh3*)           RPMCANONCOLOR=0; RPMCANONARCH=sh3 ;;
978 sh4*)           RPMCANONCOLOR=0; RPMCANONARCH=sh4 ;;
979 *)              RPMCANONCOLOR=0; RPMCANONARCH=unknown ;;
980 esac
981 case "${host_os_noversion}" in
982 mint)           RPMCANONARCH=m68kmint ;;
983 esac
984 RPMCANONVENDOR="$build_vendor"
985 case "${build_vendor}" in
986 unknown|pc|ibm|redhat|pld|mandrake|conectiva|lvr|yellowdog|caos|suse)
987         test -f /etc/redhat-release &&          RPMCANONVENDOR=redhat
988         test -f /etc/SuSE-release &&            RPMCANONVENDOR=suse
989         test -f /etc/pld-release &&             RPMCANONVENDOR=pld
990         test -f /etc/mandrake-release &&        RPMCANONVENDOR=mandrake
991         test -f /etc/conectiva-release &&       RPMCANONVENDOR=conectiva
992         test -f /etc/lvr-release &&             RPMCANONVENDOR=lvr
993         test -f /etc/yellowdog-release &&       RPMCANONVENDOR=yellowdog
994         test -f /etc/caos-release &&            RPMCANONVENDOR=caos
995         ;;
996 esac
997 RPMCANONOS="$host_os_noversion"
998 RPMCANONGNU="$host_os_gnu"
999 AC_SUBST(RPMCANONCOLOR)
1000 AC_SUBST(RPMCANONARCH)
1001 AC_SUBST(RPMCANONVENDOR)
1002 AC_SUBST(RPMCANONOS)
1003 AC_SUBST(RPMCANONGNU)
1004 AC_DEFINE_UNQUOTED([RPMCANONVENDOR],["${RPMCANONVENDOR}"],[canonical vendor])
1005
1006 if test X"$prefix" = XNONE ; then
1007     usrprefix="$ac_default_prefix"
1008 else
1009     usrprefix=$prefix
1010 fi
1011
1012 RPMCONFIGDIR="`echo ${usrprefix}/lib/rpm`"
1013 AC_SUBST(RPMCONFIGDIR)
1014
1015 AC_SUBST(OBJDUMP)
1016
1017 if test "$with_external_db" = no; then
1018     AC_CONFIG_SUBDIRS(db3)
1019 fi
1020
1021 AM_CONDITIONAL([WITH_INTERNAL_DB],[test "$with_external_db" = no])
1022 AM_CONDITIONAL([DOXYGEN],[test "$DOXYGEN" != no])
1023 AM_CONDITIONAL([HACKINGDOCS],[test "$with_hackingdocs" = yes])
1024
1025 AC_PATH_PROG(AUTOM4TE,autom4te,:)
1026
1027 AS_IF([test "$ac_cv_header_stdint_h" = "yes"],[
1028 AC_DEFINE([__RPM_USES_STDINT_H__],[1],[if rpm uses stdint.h])
1029 ])
1030
1031 AC_SUBST([dirstamp],[\${am__leading_dot}dirstamp])
1032
1033 AC_CONFIG_FILES([Makefile
1034         rpmio/Makefile lib/Makefile build/Makefile
1035         po/Makefile.in scripts/Makefile 
1036         misc/Makefile 
1037         doc/Makefile
1038         python/Makefile
1039         luaext/Makefile
1040         tests/Makefile
1041   ])
1042 AC_OUTPUT