# Process this file with autoconf to produce a configure script. AC_INIT(physfs.c) dnl --------------------------------------------------------------------- dnl System/version info dnl --------------------------------------------------------------------- # Making releases: # MICRO_VERSION += 1; # INTERFACE_AGE += 1; # BINARY_AGE += 1; # if any functions have been added, set INTERFACE_AGE to 0. # if backwards compatibility has been broken, # set BINARY_AGE and INTERFACE_AGE to 0. MAJOR_VERSION=0 MINOR_VERSION=1 MICRO_VERSION=6 INTERFACE_AGE=0 BINARY_AGE=0 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION AC_SUBST(MAJOR_VERSION) AC_SUBST(MINOR_VERSION) AC_SUBST(MICRO_VERSION) AC_SUBST(INTERFACE_AGE) AC_SUBST(BINARY_AGE) AC_SUBST(VERSION) # libtool versioning LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE` LT_REVISION=$INTERFACE_AGE LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE` AC_SUBST(LT_RELEASE) AC_SUBST(LT_CURRENT) AC_SUBST(LT_REVISION) AC_SUBST(LT_AGE) dnl Detect the canonical host and target build environment AC_CANONICAL_HOST AC_CANONICAL_TARGET dnl Setup for automake AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE(physfs, $VERSION) dnl --------------------------------------------------------------------- dnl Compilers and other tools dnl --------------------------------------------------------------------- AC_PROG_CC AC_PROG_CXX AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_LIBTOOL dnl --------------------------------------------------------------------- dnl Debug mode? dnl --------------------------------------------------------------------- AC_ARG_ENABLE(debug, [ --enable-debug enable debug mode [default=yes]], , enable_debug=yes) if test x$enable_debug = xyes; then if test x$ac_cv_prog_cc_g = xyes; then CFLAGS="-g -O0" else CFLAGS="-O0" fi CFLAGS="$CFLAGS -Werror" AC_DEFINE(DEBUG) AC_DEFINE(DEBUG_CHATTER) else CFLAGS="-O2" AC_DEFINE(NDEBUG) fi dnl --------------------------------------------------------------------- dnl Build test program? dnl --------------------------------------------------------------------- AC_ARG_ENABLE(testprog, [ --enable-testprog build test program [default=yes]], , enable_testprog=yes) dnl --------------------------------------------------------------------- dnl Checks for libraries. dnl --------------------------------------------------------------------- require_zlib="no" dnl Check for zip archiver inclusion... AC_ARG_ENABLE(zip, [ --enable-zip enable ZIP support [default=yes]], , enable_zip=yes) if test x$enable_zip = xyes; then AC_DEFINE(PHYSFS_SUPPORTS_ZIP) require_zlib="yes" fi dnl Check for zip archiver inclusion... AC_ARG_ENABLE(grp, [ --enable-grp enable Build Engine GRP support [default=yes]], , enable_grp=yes) if test x$enable_grp = xyes; then AC_DEFINE(PHYSFS_SUPPORTS_GRP) fi AC_ARG_ENABLE(internal-zlib, [ --enable-internal-zlib use included zlib [default=only if needed]], , enable_internal_zlib=maybe) dnl Check for zlib if needed. have_external_zlib="no" if test x$enable_internal_zlib != xyes; then if test x$require_zlib = xyes; then AC_CHECK_HEADER(zlib.h, have_zlib_hdr=yes) AC_CHECK_LIB(z, zlibVersion, have_zlib_lib=yes) if test x$have_zlib_hdr = xyes -a x$have_zlib_lib = xyes; then have_external_zlib="yes" fi fi fi AC_MSG_CHECKING([what zlib to use]) dnl no zlib is needed at all if we aren't supporting ZIP files. if test x$require_zlib = xno; then enable_internal_zlib="no" enable_external_zlib="no" AC_MSG_RESULT([no zlib needed]) else if test x$enable_internal_zlib = xmaybe; then if test x$have_external_zlib = xyes; then enable_internal_zlib="no" enable_external_zlib="yes" else enable_internal_zlib="yes" enable_external_zlib="no" fi else if test x$enable_internal_zlib = xno -a x$have_external_zlib = xyes; then enable_internal_zlib="no" enable_external_zlib="yes" fi fi if test x$enable_internal_zlib = xyes; then AC_MSG_RESULT([internal zlib]) else if test x$enable_external_zlib = xyes; then AC_MSG_RESULT([external zlib]) LIBS="$LIBS -lz" else AC_MSG_ERROR([Need zlib, but you disabled our copy and have no system lib]) fi fi fi dnl determine if we should include readline support... AC_ARG_ENABLE(readline, [ --enable-readline use GNU readline in test program [default=yes]], , enable_readline=yes) if test x$enable_readline = xyes; then AC_CHECK_HEADER(readline/readline.h, have_readline_hdr=yes) AC_CHECK_LIB(readline, readline, have_readline_lib=yes, , -lcurses) AC_CHECK_HEADER(readline/history.h, have_history_hdr=yes) AC_CHECK_LIB(readline, add_history, have_history_lib=yes, , -lcurses) if test x$have_readline_hdr = xyes -a x$have_readline_lib = xyes; then if test x$have_history_hdr = xyes -a x$have_history_lib = xyes; then AC_DEFINE(PHYSFS_HAVE_READLINE) LIBS="$LIBS -lreadline -lcurses" fi fi fi AC_CHECK_HEADER(be/kernel/OS.h, this_is_beos=yes) if test x$this_is_beos = xyes; then LIBS="$LIBS -lroot -lbe" fi # Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([stdlib.h string.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T # Checks for library functions. # This is only in the bleeding edge autoconf distro... #AC_FUNC_MALLOC AC_FUNC_MEMCMP AC_CHECK_FUNCS([memset strrchr]) dnl Add Makefile conditionals AM_CONDITIONAL(BUILD_ZLIB, test x$enable_internal_zlib = xyes) AM_CONDITIONAL(BUILD_TEST_PHYSFS, test x$enable_testprog = xyes) AC_OUTPUT([ Makefile platform/Makefile archivers/Makefile test/Makefile zlib114/Makefile extras/Makefile ])