X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/32120cde98308448fbcd31cf7841f13a86d3e0a8..c368b3abe198f59d5bd4d715a801e1b187b698a7:/configure.ac diff --git a/configure.ac b/configure.ac index 40556ee54..43eab5e1b 100644 --- a/configure.ac +++ b/configure.ac @@ -6,19 +6,20 @@ dnl code more portable dnl You MUST have an environment that has all the POSIX functions and dnl some of the more popular bsd/sysv ones (like select). You'll also -dnl need a C++ compiler that is semi-standard conformant, exceptions are +dnl need a C++ compiler that is semi-standard conformant, exceptions are dnl not used but STL is. -dnl 'make -f Makefile startup' will generate the configure file from +dnl 'make -f Makefile startup' will generate the configure file from dnl configure.ac correctly and can be run at any time -AC_PREREQ(2.50) -AC_INIT(configure.ac) +AC_PREREQ([2.68]) +AC_INIT +AC_CONFIG_SRCDIR([configure.ac]) AC_CONFIG_AUX_DIR(buildlib) AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in) PACKAGE="apt" -PACKAGE_VERSION="0.9.15.5" +PACKAGE_VERSION="1.1.8" PACKAGE_MAIL="APT Development Team " AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE") AC_DEFINE_UNQUOTED(PACKAGE_VERSION,"$PACKAGE_VERSION") @@ -28,12 +29,12 @@ AC_SUBST(PACKAGE_VERSION) AC_SUBST(PACKAGE_MAIL) dnl Check the archs, we want the target type. -AC_CANONICAL_SYSTEM +AC_CANONICAL_TARGET dnl Check our C compiler -AC_CHECK_TOOL_PREFIX + AC_PROG_CC -AC_ISC_POSIX +AC_SEARCH_LIBS([strerror],[cposix]) dnl check for large file support and enable it if possible dnl do this early as other stuff might depend on it @@ -53,7 +54,7 @@ AC_SEARCH_LIBS(connect,socket) SOCKETLIBS="$LIBS" AC_SUBST(SOCKETLIBS) LIBS="$SAVE_LIBS" - + dnl Checks for pthread -- disabled due to glibc bugs jgg dnl AC_CHECK_LIB(pthread, pthread_create,[AC_DEFINE(HAVE_PTHREAD) PTHREADLIB="-lpthread"]) AC_SUBST(PTHREADLIB) @@ -89,6 +90,13 @@ AC_CHECK_LIB(curl, curl_easy_init, AC_MSG_ERROR([failed: I need CURL due https support]), ) +AC_LANG_PUSH([C++]) +AC_CHECK_HEADER(gtest/gtest.h,, + AC_MSG_WARN([failed: I need gtest (packaged as libgtest-dev) for unit testing]), +) +AC_LANG_POP([C++]) + + AC_SUBST(BDBLIB) HAVE_ZLIB=no @@ -107,6 +115,13 @@ if test "x$HAVE_BZ2" = "xyes"; then AC_DEFINE(HAVE_BZ2) fi +HAVE_LZMA=no +AC_CHECK_LIB(lzma, lzma_easy_encoder,[AC_CHECK_HEADER(lzma.h, [HAVE_LZMA=yes], [])], []) +AC_SUBST(HAVE_LZMA) +if test "x$HAVE_LZMA" = "xyes"; then + AC_DEFINE(HAVE_LZMA) +fi + dnl Converts the ARCH to be something singular for this general CPU family dnl This is often the dpkg architecture string. dnl First check against the full canonical canoncial-system-type in $target @@ -153,20 +168,28 @@ dnl HP-UX needs -d_XOPEN_SOURCE_EXTENDED for h_errno AC_MSG_CHECKING(for h_errno) AC_EGREP_HEADER(h_errno, netdb.h, [AC_MSG_RESULT(normal)], [CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" - AC_EGREP_HEADER(h_errno, netdb.h, + AC_EGREP_HEADER(h_errno, netdb.h, [AC_MSG_RESULT(needs _XOPEN_SOURCE_EXTENDED)], [AC_MSG_ERROR("not found.")]) ]) -dnl Check for debiandoc -AC_PATH_PROG(DEBIANDOC_HTML,debiandoc2html) -AC_PATH_PROG(DEBIANDOC_TEXT,debiandoc2text) + +dnl check for setuid checking function +AC_CHECK_FUNCS(getresuid getresgid setresuid setresgid) +AC_SUBST(HAVE_GETRESUID) +AC_SUBST(HAVE_GETRESGID) +AC_SUBST(HAVE_SETRESUID) +AC_SUBST(HAVE_SETRESGID) + +AC_CHECK_FUNC(ptsname_r) +AC_SUBST(HAVE_PTSNAME_R) dnl Check for doxygen AC_PATH_PROG(DOXYGEN, doxygen) dnl Check for the XSLTProc tool needed to build man pages together with po4a AC_PATH_PROG(XSLTPROC,xsltproc) +AC_PATH_PROG(W3M, w3m) dnl Check for the po4a tool needed to build man pages AC_PATH_PROG(PO4A,po4a) @@ -187,4 +210,5 @@ fi AC_SUBST(USE_NLS) AC_PATH_PROG(BASH, bash) -AC_OUTPUT(environment.mak:buildlib/environment.mak.in makefile:buildlib/makefile.in doc/Doxyfile:doc/Doxyfile.in,make -s dirs) +AC_CONFIG_FILES([environment.mak:buildlib/environment.mak.in makefile:buildlib/makefile.in doc/Doxyfile:doc/Doxyfile.in]) +AC_OUTPUT