dnl $Id: configure.in,v 1.181 2003-11-10 11:25:05 aafemt Exp $ dnl ############################# INITIALISATION ############################### AC_PREREQ(2.56) AC_INIT(src) AC_CONFIG_AUX_DIR(builds/make.new/config) AC_CACHE_VAL(ac_cv_prog_make_set, [AC_PROG_MAKE_SET]) AC_PREFIX_DEFAULT(/usr/local/firebird) AC_CONFIG_HEADER(src/include/gen/autoconfig.h:builds/make.new/config/config.h.in) dnl XE_APPEND(value, varname) define([XE_APPEND],[[$2]="$[$2] [$1]"]) dnl XE_PREPEND(value, varname) define([XE_PREPEND],[[$2]="[$1] $[$2]"]) dnl ############################# ADD TESTS BELOW ############################## AC_CANONICAL_SYSTEM CPU_TYPE=$host_cpu dnl EKU: Should this be target_cpu ??? AC_SUBST(CPU_TYPE) dnl EKU: set appropiate defaults for each platform dnl LOCK_MANAGER_FLG : build lock manager (CS only) dnl EDITLINE_FLG : support fancy command line editing in isql dnl SHRLIB_EXT : suffix of shared library files case "$target" in *-*-darwin*) MAKEFILE_PREFIX=darwin PLATFORM=DARWIN AC_DEFINE(DARWIN, 1, [Define this if OS is DARWIN]) LOCK_MANAGER_FLG=Y EDITLINE_FLG=N SHRLIB_EXT=so ;; *-*-freebsd*) MAKEFILE_PREFIX=freebsd PLATFORM=FREEBSD AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD]) LOCK_MANAGER_FLG=Y EDITLINE_FLG=N SHRLIB_EXT=so ;; sparc*-*-linux-*) MAKEFILE_PREFIX=linux_sparc32 PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) LOCK_MANAGER_FLG=Y EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-linux*) MAKEFILE_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX) LOCK_MANAGER_FLG=Y EDITLINE_FLG=N SHRLIB_EXT=so ;; *-*-netbsd*) MAKEFILE_PREFIX=netbsd PLATFORM=NETBSD AC_DEFINE(NETBSD, 1, [Define this if OS is NetBSD]) LOCK_MANAGER_FLG=Y EDITLINE_FLG=N SHRLIB_EXT=so ;; *-*-hpux*) MAKEFILE_PREFIX=hpux PLATFORM=hpux AC_DEFINE(hpux, 1, [Define this if OS is HP-UX]) LOCK_MANAGER_FLG=Y EDITLINE_FLG=N SHRLIB_EXT=so ;; i386-pc-solaris*) MAKEFILE_PREFIX=solx86 PLATFORM=solx86 AC_DEFINE(solx86, 1, [Define this if OS is Solarix x86]) LOCK_MANAGER_FLG=N EDITLINE_FLG=N SHRLIB_EXT=so ;; sparc-sun-solaris*) MAKEFILE_PREFIX=solaris PLATFORM=SOLARIS AC_DEFINE(SOLARIS, 1, [Define this if OS is Solaris Sparc]) LOCK_MANAGER_FLG=N EDITLINE_FLG=Y SHRLIB_EXT=so ;; i*-sni-sysv4) MAKEFILE_PREFIX=sinixz PLATFORM="SINIX-Z" AC_DEFINE(SINIXZ, 1, [Define this if OS is SINIX-Z]) LOCK_MANAGER_FLG=N EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-mingw*) MAKEFILE_PREFIX=mingw PLATFORM=win32 AC_DEFINE(WIN_NT, 1, [Define this if OS is Windows NT]) LOCK_MANAGER_FLG=N EDITLINE_FLG=N SHRLIB_EXT=dll ;; *) AC_MSG_ERROR(unsupported platform ${target}) ;; esac AC_SUBST(MAKEFILE_PREFIX) AC_SUBST(PLATFORM) AC_SUBST(SHRLIB_EXT) AC_DEFINE(CASE_SENSITIVITY, false, [Define this if paths are case sensitive]) dnl Some controllable options FIREBIRD_ARCH_TYPE=classic AC_ARG_ENABLE(superserver, [ --enable-superserver build SuperServer architecture (default=no)], [case "$enableval" in yes) FIREBIRD_ARCH_TYPE=super;; no) FIREBIRD_ARCH_TYPE=classic;; *) AC_MSG_ERROR(bad value '${enableval}' for --enable-superserver);; esac]) AC_SUBST(FIREBIRD_ARCH_TYPE) case $FIREBIRD_ARCH_TYPE in super) AC_SUBST(ARCH_TYPE_SUFFIX,SS);; classic) AC_SUBST(ARCH_TYPE_SUFFIX,CS);; esac PROD_BUILD_FLG=Y AC_ARG_ENABLE(debug, [ --enable-debug build debug version (default=no)], [case "$enableval" in yes) PROD_BUILD_FLG=N;; no) PROD_BUILD_FLG=Y;; *) AC_MSG_ERROR(bad value '${enableval}' for --enable-debug);; esac]) AC_SUBST(PROD_BUILD_FLG) RAW_DEVICES_FLG=N AC_ARG_ENABLE(raw-devices, [ --enable-raw-devices enable databases on raw devices (default=no)], [case "$enableval" in yes) RAW_DEVICES_FLG=Y;; no) RAW_DEVICES_FLG=N;; *) AC_MSG_ERROR(bad value '${enableval}' for --enable-raw-devices);; esac]) if test "$RAW_DEVICES_FLG" = "Y"; then AC_DEFINE(SUPPORT_RAW_DEVICES, 1, [Define this if databases on raw devices should be supported]) fi MANAGER_PROCESS_TARGET= if test "$FIREBIRD_ARCH_TYPE" = "classic"; then dnl The lock manager process is only need on systems, that do not support dnl sending signals to process groups (man 2 kill). AC_ARG_WITH(lock-manager, [ --with-lock-manager build lock manager], [case "$withval" in yes) LOCK_MANAGER_FLG=Y;; no) LOCK_MANAGER_FLG=N;; *) AC_MSG_ERROR(bad value '${withval}' for --with-lock-manager);; esac]) if test "$LOCK_MANAGER_FLG" = "Y"; then dnl EKU: we should determine the necessity by target system dnl at least SOLARIS-MT, DARWIN and SINIX-Z do not require a lock dnl manager process dnl EKU: is this really true??? AC_DEFINE(MANAGER_PROCESS, 1, [Define this if the lock manager process is needed]) MANAGER_PROCESS_TARGET=lock_mgr fi fi AC_SUBST(MANAGER_PROCESS_TARGET) AC_ARG_WITH(editline, [ --with-editline support fancy command line editing], [case "$withval" in yes) EDITLINE_FLG=Y;; no) EDITLINE_FLG=N;; *) AC_MSG_ERROR(bad value '${withval}' for --with-editline);; esac]) AC_SUBST(EDITLINE_FLG) FB_SERVICE_NAME=gds_db FB_SERVICE_PORT=3050 FB_IPC_NAME=FirebirdIPI AC_ARG_WITH(service-name, [ --with-service-name specify inet service name (default=gds_db)], [FB_SERVICE_NAME=${withval}]) AC_ARG_WITH(service-port, [ --with-service-port specify inet service port (default=3050)], [FB_SERVICE_PORT=${withval}]) AC_ARG_WITH(ipc-name, [ --with-ipc-name specify local IPC name (default=FirebirdIPI)], [FB_IPC_NAME=${withval}]) AC_DEFINE_UNQUOTED(FB_SERVICE_NAME,"$FB_SERVICE_NAME", [Inet service name]) AC_DEFINE_UNQUOTED(FB_SERVICE_PORT,$FB_SERVICE_PORT, [Inet service port]) AC_DEFINE_UNQUOTED(FB_IPC_NAME,"$FB_IPC_NAME", [Local IPC name]) AC_SUBST(FB_SERVICE_NAME) AC_SUBST(FB_SERVICE_PORT) AC_SUBST(FB_IPC_NAME) dnl gpre built-in language support (C/C++ are mandatory) GPRE_LANGUAGE_MODULES="" AC_ARG_WITH(gpre-ada, [ --with-gpre-ada support ADA in gpre (default=no)], [case "$withval" in yes) XE_APPEND(ada.cpp,GPRE_LANGUAGE_MODULES) AC_DEFINE(GPRE_ADA, 1, [Define this if GPRE should support ADA]);; no) ;; *) AC_MSG_ERROR(bad value '${withval}' for --with-gpre-ada);; esac]) AC_ARG_WITH(gpre-cobol, [ --with-gpre-cobol support COBOL in gpre (default=no)], [case "$withval" in yes) XE_APPEND(cob.cpp,GPRE_LANGUAGE_MODULES) AC_DEFINE(GPRE_COBOL, 1, [Define this if GPRE should support COBOL]);; no) ;; *) AC_MSG_ERROR(bad value '${withval}' for --with-gpre-cobol);; esac]) AC_ARG_WITH(gpre-fortran, [ --with-gpre-fortran support FORTRAN in gpre (default=no)], [case "$withval" in yes) XE_APPEND(ftn.cpp,GPRE_LANGUAGE_MODULES) AC_DEFINE(GPRE_FORTRAN, 1, [Define this if GPRE should support FORTRAN]);; no) ;; *) AC_MSG_ERROR(bad value '${withval}' for --with-gpre-fortran);; esac]) AC_ARG_WITH(gpre-pascal, [ --with-gpre-pascal support PASCAL in gpre (default=no)], [case "$withval" in yes) XE_APPEND(pas.cpp,GPRE_LANGUAGE_MODULES) AC_DEFINE(GPRE_PASCAL, 1, [Define this if GPRE should support PASCAL]);; no) ;; *) AC_MSG_ERROR(bad value '${withval}' for --with-gpre-pascal);; esac]) AC_SUBST(GPRE_LANGUAGE_MODULES) dnl Checks for programs. AC_PROG_AWK AC_PROG_CC dnl EKU: C++ programs should not use CC, but at the moment all dnl makefiles use $(CC) to link objects. This has to be changed! AC_PROG_GCC_TRADITIONAL AC_PROG_CXX AC_PROG_CPP AC_PROG_INSTALL AC_PROG_LN_S dnl EKU: AC_PROG_RANLIB has been superseded by AC_PROG_LIBTOOL AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL AC_PROG_MAKE_SET AC_PROG_LIBTOOL AC_PROG_YACC dnl Check for system header files AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_CHECK_HEADERS(assert.h) AC_CHECK_HEADERS(ctype.h) AC_CHECK_HEADERS(errno.h) AC_CHECK_HEADERS(fcntl.h) AC_CHECK_HEADERS(grp.h) AC_CHECK_HEADERS(pwd.h) AC_CHECK_HEADERS(libio.h) AC_CHECK_HEADERS(locale.h) AC_CHECK_HEADERS(math.h) AC_CHECK_HEADERS(pthread.h) AC_CHECK_HEADERS(sys/types.h) AC_CHECK_HEADERS(sys/stat.h) AC_CHECK_HEADERS(sys/uio.h) AC_HEADER_SYS_WAIT AC_HEADER_TIME AC_CHECK_HEADERS(sys/timeb.h) AC_CHECK_HEADERS(sys/param.h) AC_CHECK_HEADERS(sys/ioctl.h) AC_CHECK_HEADERS(setjmp.h) AC_CHECK_HEADERS(stdarg.h) AC_CHECK_HEADERS(stdlib.h) AC_CHECK_HEADERS(string.h) AC_CHECK_HEADERS(signal.h sys/signal.h sys/siginfo.h) if test "$EDITLINE_FLG" = "Y"; then AC_CHECK_HEADERS(termio.h termios.h) AC_HEADER_DIRENT AC_DEFINE(HAVE_EDITLINE_H, 1, [Define this if internal editline.h is in use]) fi AC_CHECK_HEADERS(unistd.h) if test "$ac_cv_header_unistd_h" = "yes"; then dnl For details see dnl http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html dnl http://people.redhat.com/drepper/posix-option-groups.html AC_MSG_CHECKING(if POSIX threads are available) AC_TRY_RUN([#include main () { #if defined(_POSIX_THREADS) && _POSIX_THREADS >= 200112L exit(0); #else exit(1); #endif }], [AC_DEFINE(HAVE_POSIX_THREADS, 1, [Define this if POSIX threads are available]) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) fi AC_CHECK_HEADERS(varargs.h) AC_CHECK_HEADERS(crypt.h) AC_CHECK_HEADERS(netinet/in.h rpc/rpc.h netconfig.h) AC_CHECK_HEADERS(rpc/xdr.h,,,[#include ]) AC_CHECK_HEADERS(aio.h) AC_CHECK_HEADERS(mntent.h mnttab.h sys/mntent.h sys/mnttab.h) AC_CHECK_HEADERS(sys/ipc.h sys/file.h) AC_CHECK_HEADERS(socket.h sys/socket.h sys/sockio.h winsock2.h) dnl Check for libraries AC_CHECK_LIB(dl, main) AC_CHECK_LIB(c, main) AC_CHECK_LIB(m, main) if test "$FIREBIRD_ARCH_TYPE" = "super"; then AC_CHECK_LIB(pthread, main) fi AC_CHECK_LIB(crypt, main) AC_CHECK_LIB(curses, main) dnl AC_CHECK_LIB(termcap, main) if test "$EDITLINE_FLG" = "Y"; then AC_SUBST(EDITLINE_A, -leditline) fi AC_CHECK_LIB(stdc++, main,,, $LIBS) dnl Check for functions AC_CHECK_FUNCS(strlcpy strlcat) AC_CHECK_FUNCS(gettimeofday) if test "$ac_cv_func_gettimeofday" = "yes"; then dnl EKU: SINIX-Z has no prototype for gettimeofday() so the following test dnl will always succeed, which is wrong. case "$PLATFORM" in SINIX-Z) ;; *) AC_MSG_CHECKING(if gettimeofday accepts second (timezone) argument) AC_TRY_COMPILE([#include ], [struct timeval tp; gettimeofday(&tp, (struct timezone *)0);], [AC_DEFINE(GETTIMEOFDAY_RETURNS_TIMEZONE, 1, [Define this if gettimeofday accepts second (timezone) argument]) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) ;; esac AH_BOTTOM([#ifdef GETTIMEOFDAY_RETURNS_TIMEZONE #define GETTIMEOFDAY(x) gettimeofday((x), (struct timezone *)0) #else #define GETTIMEOFDAY(x) gettimeofday((x)) #endif]) fi AC_CHECK_FUNCS(time times) AC_SEARCH_LIBS(gethostname,nsl) AC_SEARCH_LIBS(connect,socket) AC_CHECK_FUNCS(strcasecmp stricmp) if test "$ac_cv_func_strcasecmp" = "no" -a "$ac_cv_func_stricmp" = "no"; then dnl EKU: On SINIX-Z strcasecmp is in libresolv. AC_CHECK_LIB(resolv, strcasecmp, [XE_APPEND(-lresolv,LIBS) unset ac_cv_func_strcasecmp AC_CHECK_FUNCS(strcasecmp)],, $LIBS) fi AC_SEARCH_LIBS(dirname, gen) AC_CHECK_FUNCS(dirname) AC_CHECK_FUNCS(sigaction setitimer) AC_CHECK_FUNCS(snprintf vsnprintf) AC_CHECK_FUNCS(swab _swab) AC_FUNC_MMAP AC_FUNC_FORK AC_FUNC_SETPGRP AC_CHECK_FUNCS(setpgid) AC_FUNC_GETPGRP AC_CHECK_FUNCS(flock) AC_CHECK_FUNCS(initgroups) AC_CHECK_FUNCS(getpagesize) AC_CHECK_FUNCS(crypt) AC_CHECK_FUNCS(pread pwrite) AC_CHECK_FUNCS(getcwd getwd) AC_CHECK_FUNCS(setmntent getmntent) if test "$ac_cv_func_getmntent" = "yes"; then AC_MSG_CHECKING(if getmntent needs second argument) AC_TRY_COMPILE([#include #include ], [FILE *f; struct mntent *m; getmntent(f, m);], [AC_DEFINE(GETMNTENT_TAKES_TWO_ARGUMENTS, 1, [Define this if getmntent needs second argument]) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) fi AC_CHECK_FUNCS(tcgetattr strdup) AC_CHECK_FUNCS(mkstemp) AC_CHECK_FUNCS(pthread_keycreate pthread_key_create) # Checks for typedefs, structures, and compiler characteristics. AC_C_BIGENDIAN AC_C_VOLATILE AC_TYPE_SIGNAL AC_TYPE_OFF_T AC_TYPE_SIZE_T AC_TYPE_UID_T AC_SYS_LARGEFILE if test "$ac_cv_sys_file_offset_bits" = "no"; then AC_MSG_CHECKING(for native large file support) AC_TRY_RUN([#include main () { exit(!(sizeof(off_t) == 8)); }], [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) fi AC_CHECK_SIZEOF(void*) AC_CHECK_SIZEOF(long) AC_CHECK_TYPES([socklen_t],,,[#include ]) AC_CHECK_TYPES([semun]) if test "$ac_cv_type_semun" = "no"; then AC_MSG_CHECKING(if sem.h defines semun) AC_TRY_COMPILE([#include #include #include ], [union semun s;], [ac_cv_type_semun=yes; AC_DEFINE(HAVE_SEMUN) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) fi AC_CHECK_TYPES([struct XDR::xdr_ops],,,[#include #include ]) AC_CHECK_TYPES([struct xdr_ops],,,[#include #include ]) dnl EKU: try to determine the alignment of long and double dnl replaces ALIGNMENT and DOUBLE_ALIGN in src/jrd/common.h AC_MSG_CHECKING(alignment of long) AC_TRY_RUN([main () { struct s { char a; long b; }; exit((int)&((struct s*)0)->b); }], ac_cv_c_alignment=$ac_status, ac_cv_c_alignment=$ac_status) AC_MSG_RESULT($ac_cv_c_alignment) AC_DEFINE_UNQUOTED(ALIGNMENT, $ac_cv_c_alignment, [Alignment of long]) AC_MSG_CHECKING(alignment of double) AC_TRY_RUN([main () { struct s { char a; double b; }; exit((int)&((struct s*)0)->b); }], ac_cv_c_double_align=$ac_status, ac_cv_c_double_align=$ac_status) AC_MSG_RESULT($ac_cv_c_double_align) AC_DEFINE_UNQUOTED(DOUBLE_ALIGN, $ac_cv_c_double_align, [Alignment of double]) dnl EKU: don't know how to convert this into an autoconf test: dnl #define FB_ALIGN(n,b) ... dnl dnl VMS (n) -> no dnl sun_68k ((n+1) & ~1) -> even dnl XENIX ((n+1) & ~1) -> even dnl netware_386 ((n+1) & ~1) -> even dnl all others ((n + b - 1) & ~(b - 1)) -> multiple of b dnl dnl volunters are welcome! dnl EKU: Add any platform specific tests below case "$PLATFORM" in LINUX) dnl MOD: Check for /proc/self/exe mainly used on linux systems dnl this is used to determine path to executable file. AC_CHECK_FILES(/proc/self/exe) dnl EKU: some Linux distributions do not provide POSIX threads dnl compatibility. Define HAVE_POSIX_THREADS anyway to get dnl thread support compiled into FIREBIRD. AC_DEFINE(HAVE_POSIX_THREADS) ;; SOLARIS|solx86) dnl kkuznetsov: Solaris always check for -lnsl AC_CHECK_LIB(nsl, gethostname, XE_APPEND(-lnsl,LIBS)) AC_CHECK_LIB(thread, main) AC_ARG_WITH(sfio, AC_HELP_STRING([--with-sfio=PATH], [use sfio (replacement stdio on Solaris) (default=no)]), [ac_cv_use_sfio=$withval],[ac_cv_use_sfio=no]) if test "$ac_cv_use_sfio" = "no"; then SFIO_DIR="" SFIO_FLAGS="" SFIO_LDFLAGS="" else AC_CHECK_LIB(sfio-mt, main,, AC_MSG_ERROR([sfio library not found]),-lvthread) XE_PREPEND(-lvthread,LIBS) SFIO_DIR="$ac_cv_use_sfio" SFIO_FLAGS="-DSFIO -I$ac_cv_use_sfio/include" SFIO_LDFLAGS="-L$ac_cv_use_sfio/lib" fi ;; win32) FB_PIPE_NAME=interbas AC_ARG_WITH(pipe-name, [ --with-pipe-name specify wnet pipe name (default=interbas)], [FB_PIPE_NAME=${withval}]) AH_VERBATIM(FB_PIPE_NAME, [/* Wnet pipe name */ #define FB_PIPE_NAME "interbas"]) AC_DEFINE_UNQUOTED(FB_PIPE_NAME,"$FB_PIPE_NAME") AC_SUBST(FB_PIPE_NAME) XE_PREPEND(-lmpr -lversion -lws2_32 -lole32,LIBS) ;; *) ;; esac dnl ##################### DO NOT ADD ANY TESTS BELOW ########################### AC_SUBST(SFIO_DIR) AC_SUBST(SFIO_FLAGS) AC_SUBST(SFIO_LDFLAGS) dnl The following file defines the version number strings. Specially for install/uninstall routines . ./src/misc/writeBuildNum.sh AC_SUBST(FIREBIRD_VERSION) AC_SUBST(FIREBIRD_PACKAGE_VERSION) AC_SUBST(FB_BUILD_NUM, $BuildNum) BUILD_ROOT_DIR=`pwd` SRC_ROOT=$BUILD_ROOT_DIR/src GEN_ROOT=$BUILD_ROOT_DIR/gen NEW_FIREBIRD_DIR=$GEN_ROOT/firebird AC_SUBST(BUILD_ROOT_DIR) AC_SUBST(NEW_FIREBIRD_DIR) AC_DEFINE_UNQUOTED(FB_PREFIX, $(if test "x$prefix" = "xNONE" ; then echo \"$ac_default_prefix\"; else echo \"$prefix\"; fi), [Installation path prefix]) AC_CONFIG_COMMANDS(,,[ dnl ### GEN ### directories for preprocessed cpp, databases and output mkdir -p gen/alice mkdir -p gen/burp mkdir -p gen/dsql mkdir -p gen/dudley mkdir -p gen/gpre mkdir -p gen/iscguard mkdir -p gen/isql mkdir -p gen/jrd mkdir -p gen/msgs mkdir -p gen/qli mkdir -p gen/utilities mkdir -p gen/examples dnl # some .o and .d in this directory (to be removed) mkdir -p gen/remote/os/win32 dnl # databases and output mkdir -p gen/refDatabases mkdir -p gen/firebird/include mkdir -p gen/firebird/intl mkdir -p gen/firebird/UDF mkdir -p gen/firebird/bin mkdir -p gen/firebird/examples/api mkdir -p gen/firebird/examples/build_win32 mkdir -p gen/firebird/examples/build_unix mkdir -p gen/firebird/examples/dyn mkdir -p gen/firebird/examples/empbuild mkdir -p gen/firebird/examples/include mkdir -p gen/firebird/examples/stat mkdir -p gen/firebird/examples/udf mkdir -p gen/firebird/lib mkdir -p gen/firebird/misc mkdir -p gen/firebird/help dnl #### TEMP ######### directories for .o and .d dnl # by module name mkdir -p temp/libfbserver/jrd mkdir -p temp/libfbserver/dsql mkdir -p temp/libfbserver/lock mkdir -p temp/libfbserver/misc mkdir -p temp/libfbserver/remote/os/win32 mkdir -p temp/libfbserver/pipe mkdir -p temp/libfbserver/gpre mkdir -p temp/libfbserver/alice mkdir -p temp/libfbserver/burp mkdir -p temp/libfbserver/utilities/common mkdir -p temp/libfbserver/utilities/gstat mkdir -p temp/libfbserver/utilities/gsec mkdir -p temp/libfbserver/fbutil mkdir -p temp/libfbserver/wal mkdir -p temp/libfbserver/common/classes mkdir -p temp/libfbserver/common/config mkdir -p temp/libfbserver/jrd/os/posix mkdir -p temp/libfbserver/jrd/os/win32 mkdir -p temp/fbserver/remote/os/win32 mkdir -p temp/fbserver/ipserver mkdir -p temp/libfbclient/jrd mkdir -p temp/libfbclient/dsql mkdir -p temp/libfbclient/gpre mkdir -p temp/libfbclient/remote/os/win32 mkdir -p temp/libfbclient/utilities/gsec mkdir -p temp/libfbclient/common/classes mkdir -p temp/libfbclient/common/config mkdir -p temp/libfbclient/jrd/os/posix mkdir -p temp/libfbclient/jrd/os/win32 mkdir -p temp/client.archive/journal mkdir -p temp/client.archive/jrd mkdir -p temp/client.archive/wal mkdir -p temp/client.fbudf/fbudf mkdir -p temp/client.gbak/burp mkdir -p temp/client.gfix/alice mkdir -p temp/client.gpre/gpre mkdir -p temp/client.gdef/dudley mkdir -p temp/client.gdef/wal mkdir -p temp/client.gdef/gpre mkdir -p temp/client.gdef/jrd mkdir -p temp/client.journal/journal mkdir -p temp/client.journal/jrd mkdir -p temp/client.journal/wal mkdir -p temp/client.qli/qli mkdir -p temp/client.qli/wal mkdir -p temp/client.qli/jrd mkdir -p temp/client.qli/gpre mkdir -p temp/client.isql/isql mkdir -p temp/client.util/utilities/rebuild mkdir -p temp/client.util/utilities/ibmgr mkdir -p temp/client.util/utilities/guard mkdir -p temp/client.util/utilities/gsec mkdir -p temp/client.util/utilities/gstat mkdir -p temp/client.util/utilities/install mkdir -p temp/client.util/lock mkdir -p temp/client.util/iscguard mkdir -p temp/client.util/remote/os/win32 mkdir -p temp/client.util/jrd/os/win32 mkdir -p temp/intl mkdir -p temp/libfbcommon/common/classes mkdir -p temp/libfbcommon/common/config mkdir -p temp/boot.gpre/jrd/os/posix mkdir -p temp/boot.gpre/jrd/os/darwin mkdir -p temp/boot.gpre/jrd/os/win32 mkdir -p temp/boot.gpre/gpre mkdir -p temp/static.gpre/gpre mkdir -p temp/static.gbak/burp mkdir -p temp/static.isql/isql mkdir -p temp/libfbstatic/jrd mkdir -p temp/libfbstatic/dsql mkdir -p temp/libfbstatic/lock mkdir -p temp/libfbstatic/misc mkdir -p temp/libfbstatic/remote/os/win32 mkdir -p temp/libfbstatic/gpre mkdir -p temp/libfbstatic/jrd/os/posix mkdir -p temp/libfbstatic/jrd/os/darwin mkdir -p temp/libfbstatic/jrd/os/win32 mkdir -p temp/libfbstatic/wal mkdir -p temp/libfbstatic/common/config mkdir -p temp/embed.lockmgr/lock mkdir -p temp/embed.util/utilities/gstat mkdir -p temp/embed.util/utilities/gsec mkdir -p temp/embed.util/lock mkdir -p temp/embed.archive/journal mkdir -p temp/embed.archive/jrd mkdir -p temp/embed.archive/wal mkdir -p temp/embed.journal/journal mkdir -p temp/embed.journal/jrd mkdir -p temp/embed.journal/wal mkdir -p temp/embed.gbak/burp mkdir -p temp/embed.gfix/alice mkdir -p temp/embed.isql/isql mkdir -p temp/embed.gdef/dudley mkdir -p temp/embed.qli/qli mkdir -p temp/embed.fbudf/fbudf mkdir -p temp/embed.gpre/gpre mkdir -p temp/inet_server/remote/os/win32 mkdir -p temp/inet_server/ipserver mkdir -p temp/msgs/msgs mkdir -p temp/extlib/extlib mkdir -p temp/extlib/extlib/fbudf mkdir -p temp/examples mkdir -p temp/libfbembed/jrd mkdir -p temp/libfbembed/dsql mkdir -p temp/libfbembed/lock mkdir -p temp/libfbembed/misc mkdir -p temp/libfbembed/remote/os/win32 mkdir -p temp/libfbembed/pipe mkdir -p temp/libfbembed/gpre mkdir -p temp/libfbembed/alice mkdir -p temp/libfbembed/utilities/gsec mkdir -p temp/libfbembed/fbutil mkdir -p temp/libfbembed/jrd/os/posix mkdir -p temp/libfbembed/jrd/os/win32 mkdir -p temp/libfbembed/burp mkdir -p temp/libfbembed/wal mkdir -p temp/libfbembed/common/classes mkdir -p temp/libfbembed/common/config mkdir -p temp/codes/misc mkdir -p temp/codes/jrd mkdir -p temp/editline/extern/editline ]) MAKE_SRC_DIR=builds/posix dnl EKU: handle platform specific installation and packaging case "$PLATFORM" in LINUX) AC_CONFIG_COMMANDS(,,[ mkdir -p gen/install/scripts mkdir -p gen/install/misc mkdir -p gen/RPM/RPMS/i686 mkdir -p gen/RPM/BUILD]) INSTALL_SRC_DIR=builds/install/arch-specific/linux/${FIREBIRD_ARCH_TYPE} AC_CONFIG_FILES([gen/install/makeInstallImage.sh:${INSTALL_SRC_DIR}/makeInstallImage.sh.in gen/install/scripts/preinstall.sh:${INSTALL_SRC_DIR}/preinstall.sh.in gen/install/scripts/tarinstall.sh:${INSTALL_SRC_DIR}/tarinstall.sh.in gen/install/scripts/tarMainInstall.sh:${INSTALL_SRC_DIR}/tarMainInstall.sh.in gen/install/scripts/taruninstall.sh:${INSTALL_SRC_DIR}/taruninstall.sh.in gen/install/scripts/tarMainUninstall.sh:${INSTALL_SRC_DIR}/tarMainUninstall.sh.in gen/install/scripts/postinstall.sh:${INSTALL_SRC_DIR}/postinstall.sh.in gen/install/scripts/preuninstall.sh:${INSTALL_SRC_DIR}/preuninstall.sh.in gen/install/scripts/postuninstall.sh:${INSTALL_SRC_DIR}/postuninstall.sh.in gen/install/scripts/rpmheader.txt:${INSTALL_SRC_DIR}/rpmheader.txt.in gen/install/scripts/rpmfiles.txt:${INSTALL_SRC_DIR}/rpmfiles.txt.in gen/firebird/misc/firebird.xinetd:builds/install/arch-specific/linux/misc/firebird.xinetd.in gen/firebird/bin/changeDBAPassword.sh:builds/install/arch-specific/linux/misc/changeDBAPassword.sh.in gen/firebird/bin/CSchangeRunUser.sh:builds/install/misc/CSchangeRunUser.sh.in gen/firebird/bin/CSrestoreRootRunUser.sh:builds/install/misc/CSrestoreRootRunUser.sh.in gen/firebird/bin/SSchangeRunUser.sh:builds/install/misc/SSchangeRunUser.sh.in gen/firebird/bin/SSrestoreRootRunUser.sh:builds/install/misc/SSrestoreRootRunUser.sh.in ],[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null]) ;; FREEBSD) AC_CONFIG_FILES([gen/install/install.sh:builds/install/arch-specific/freebsd/install.sh.in ],[chmod a+x gen/install/install.sh 2>/dev/null]) ;; SINIX-Z) AC_CONFIG_FILES([gen/install/pkginfo:builds/install/arch-specific/sinixz/pkginfo.in gen/install/prototype:builds/install/arch-specific/sinixz/prototype.in gen/install/preinstall:builds/install/arch-specific/sinixz/preinstall.in gen/install/postinstall:builds/install/arch-specific/sinixz/postinstall.in gen/install/postremove:builds/install/arch-specific/sinixz/postremove.in ],[chmod a+x gen/install/pre* gen/install/post* 2>/dev/null]) ;; esac AC_CONFIG_FILES( gen/make.rules:${MAKE_SRC_DIR}/make.rules gen/make.defaults:${MAKE_SRC_DIR}/make.defaults gen/make.platform:${MAKE_SRC_DIR}/prefix.${MAKEFILE_PREFIX} gen/make.shared.variables:${MAKE_SRC_DIR}/make.shared.variables gen/make.shared.targets:${MAKE_SRC_DIR}/make.shared.targets gen/Makefile:${MAKE_SRC_DIR}/Makefile.in.firebird gen/Makefile.libfbcommon:${MAKE_SRC_DIR}/Makefile.in.libfbcommon gen/Makefile.codes:${MAKE_SRC_DIR}/Makefile.in.codes gen/Makefile.boot.gpre:${MAKE_SRC_DIR}/Makefile.in.boot.gpre gen/Makefile.libfbstatic:${MAKE_SRC_DIR}/Makefile.in.libfbstatic gen/Makefile.static.gpre:${MAKE_SRC_DIR}/Makefile.in.static.gpre gen/Makefile.static.gbak:${MAKE_SRC_DIR}/Makefile.in.static.gbak gen/Makefile.static.isql:${MAKE_SRC_DIR}/Makefile.in.static.isql gen/Makefile.refDatabases:${MAKE_SRC_DIR}/Makefile.in.refDatabases gen/Makefile.libfbserver:${MAKE_SRC_DIR}/Makefile.in.libfbserver gen/Makefile.fbserver:${MAKE_SRC_DIR}/Makefile.in.fbserver gen/Makefile.libfbclient:${MAKE_SRC_DIR}/Makefile.in.libfbclient gen/Makefile.client.archive:${MAKE_SRC_DIR}/Makefile.in.client.archive gen/Makefile.client.fbudf:${MAKE_SRC_DIR}/Makefile.in.client.fbudf gen/Makefile.client.gbak:${MAKE_SRC_DIR}/Makefile.in.client.gbak gen/Makefile.client.gfix:${MAKE_SRC_DIR}/Makefile.in.client.gfix gen/Makefile.client.gdef:${MAKE_SRC_DIR}/Makefile.in.client.gdef gen/Makefile.client.qli:${MAKE_SRC_DIR}/Makefile.in.client.qli gen/Makefile.client.isql:${MAKE_SRC_DIR}/Makefile.in.client.isql gen/Makefile.client.journal:${MAKE_SRC_DIR}/Makefile.in.client.journal gen/Makefile.client.gpre:${MAKE_SRC_DIR}/Makefile.in.client.gpre gen/Makefile.client.util:${MAKE_SRC_DIR}/Makefile.in.client.util gen/Makefile.intl:${MAKE_SRC_DIR}/Makefile.in.intl gen/Makefile.msgs:${MAKE_SRC_DIR}/Makefile.in.msgs gen/Makefile.extlib:${MAKE_SRC_DIR}/Makefile.in.extlib gen/examples/Makefile.examples:${MAKE_SRC_DIR}/Makefile.in.examples gen/Makefile.libfbembed:${MAKE_SRC_DIR}/Makefile.in.libfbembed gen/Makefile.inet_server:${MAKE_SRC_DIR}/Makefile.in.inet_server gen/Makefile.embed.lockmgr:${MAKE_SRC_DIR}/Makefile.in.embed.lockmgr gen/Makefile.embed.util:${MAKE_SRC_DIR}/Makefile.in.embed.util gen/Makefile.embed.archive:${MAKE_SRC_DIR}/Makefile.in.embed.archive gen/Makefile.embed.fbudf:${MAKE_SRC_DIR}/Makefile.in.embed.fbudf gen/Makefile.embed.gfix:${MAKE_SRC_DIR}/Makefile.in.embed.gfix gen/Makefile.embed.gbak:${MAKE_SRC_DIR}/Makefile.in.embed.gbak gen/Makefile.embed.isql:${MAKE_SRC_DIR}/Makefile.in.embed.isql gen/Makefile.embed.journal:${MAKE_SRC_DIR}/Makefile.in.embed.journal gen/Makefile.embed.gdef:${MAKE_SRC_DIR}/Makefile.in.embed.gdef gen/Makefile.embed.qli:${MAKE_SRC_DIR}/Makefile.in.embed.qli gen/Makefile.embed.gpre:${MAKE_SRC_DIR}/Makefile.in.embed.gpre gen/Makefile.install:builds/install/arch-specific/${MAKEFILE_PREFIX}/Makefile.in Makefile:Makefile.in gen/Makefile.extern.editline:${MAKE_SRC_DIR}/Makefile.in.extern.editline ) AC_OUTPUT dnl Print out the build configuration (the most interesting thing) echo echo echo The Firebird2 package has been configured with the following options: echo case $FIREBIRD_ARCH_TYPE in super) echo "Architecture : SuperServer";; classic) echo "Architecture : ClassicServer";; esac case $PROD_BUILD_FLG in Y) echo " Debug : disabled";; N) echo " Debug : enabled";; esac case $ac_cv_sys_file_offset_bits in no) echo " 64 bit I/O : disabled";; 64) echo " 64 bit I/O : enabled";; esac case $RAW_DEVICES_FLG in Y) echo " Raw devices : enabled";; N) echo " Raw devices : disabled";; esac if test "$FIREBIRD_ARCH_TYPE" = "classic"; then case $LOCK_MANAGER_FLG in Y) echo "Lock manager : enabled";; N) echo "Lock manager : disabled";; esac fi echo "Service name : $FB_SERVICE_NAME" echo "Service port : $FB_SERVICE_PORT" case "$PLATFORM" in win32) echo " Pipe name : $FB_PIPE_NAME";; esac echo "GPRE modules : c_cxx.cpp$GPRE_LANGUAGE_MODULES" echo echo " Install Dir : $prefix" echo dnl EOF