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_CONFIG_MACRO_DIR([m4]) 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]"]) sinclude(acx_pthread.m4) dnl ############################# ADD TESTS BELOW ############################## AC_CANONICAL_SYSTEM CPU_TYPE=$target_cpu AC_SUBST(CPU_TYPE) dnl EKU: set appropiate defaults for each platform dnl EDITLINE_FLG : support fancy command line editing in isql dnl SHRLIB_EXT : suffix of shared library files RAW_DEVICES_FLG=Y INSTALL_PREFIX="" dnl Use /usr/lib for library links on most platforms except some 64-bit ones libdir=/usr/lib ICU_PLATFORM=LinuxRedHat dnl Should system editline and/or icu be used STD_EDITLINE=false STD_ICU=false RPM64= dnl Test for realtime library presence? RT_LIB_CHECK=false case "$target" in i686-*-darwin*) MAKEFILE_PREFIX=darwin_i386 MAKEFILE_POSTFIX=darwin PLATFORM=DARWIN INSTALL_PREFIX=darwin AC_DEFINE(DARWIN, 1, [Define this if OS is DARWIN]) XE_APPEND(-framework CoreFoundation,LIBS) EDITLINE_FLG=Y SHRLIB_EXT=dylib ICU_PLATFORM=MacOSX dnl CPU_TYPE=x86_64 ;; powerpc-*-darwin*) MAKEFILE_PREFIX=darwin_powerpc dnl MAKEFILE_PREFIX=darwin_ppc64 MAKEFILE_POSTFIX=darwin PLATFORM=DARWIN INSTALL_PREFIX=darwin AC_DEFINE(DARWIN, 1, [Define this if OS is DARWIN]) XE_APPEND(-framework CoreFoundation,LIBS) EDITLINE_FLG=Y SHRLIB_EXT=dylib ICU_PLATFORM=MacOSX dnl CPU_TYPE=ppc64 ;; powerpc-*-aix*) MAKEFILE_PREFIX=aix_powerpc MAKEFILE_POSTFIX=aix PLATFORM=AIX INSTALL_PREFIX=aix AC_DEFINE(AIX, 1, [Define this if OS is AIX]) EDITLINE_FLG=N SHRLIB_EXT=so dnl ICU_PLATFORM=AIXPPCXLC ;; amd64-*-freebsd*) MAKEFILE_PREFIX=freebsd PLATFORM=FREEBSD AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD]) AC_DEFINE(AMD64, 1, [Define this if CPU is amd64]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-gentoo-freebsd*) MAKEFILE_PREFIX=freebsd PLATFORM=GENTOOFREEBSD AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-freebsd*) MAKEFILE_PREFIX=freebsd PLATFORM=FREEBSD AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; mips-*-linux*) MAKEFILE_PREFIX=linux_mips INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX) EDITLINE_FLG=Y SHRLIB_EXT=so PTHREAD_CFLAGS=-pthread PTHREAD_LIBS=-lpthread ;; mipsel-*-linux*) MAKEFILE_PREFIX=linux_mipsel INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX) EDITLINE_FLG=Y SHRLIB_EXT=so PTHREAD_CFLAGS=-pthread PTHREAD_LIBS=-lpthread ;; x86_64*-*-linux*) MAKEFILE_PREFIX=linux_amd64 INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so if test -L /usr/lib64; then libdir=/usr/lib else libdir=/usr/lib64 fi CPU_TYPE=amd64 RPM64='()(64bit)' ;; ia64*-*-linux*) MAKEFILE_PREFIX=linux_ia64 INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so libdir=/usr/lib CPU_TYPE=ia64 RPM64='()(64bit)' ;; arm*-*-linux*) MAKEFILE_PREFIX=linux_arm INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so STD_EDITLINE=true STD_ICU=true ;; sparc*-*-linux*) MAKEFILE_PREFIX=linux_sparc32 INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; powerpc*-*-linux*) MAKEFILE_PREFIX=linux_powerpc INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; i*86*-*-linux*) MAKEFILE_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-linux*) MAKEFILE_PREFIX=linux_generic INSTALL_PREFIX=linux PLATFORM=LINUX AC_DEFINE(LINUX, 1, [Define this if OS is Linux]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-netbsd*) MAKEFILE_PREFIX=netbsd PLATFORM=NETBSD AC_DEFINE(NETBSD, 1, [Define this if OS is NetBSD]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-hpux*) MAKEFILE_PREFIX=hpux PLATFORM=HPUX AC_DEFINE(HPUX, 1, [Define this if OS is HP-UX]) EDITLINE_FLG=Y SHRLIB_EXT=sl libdir=/usr/lib/pa20_64 ;; i386-pc-solaris*) MAKEFILE_PREFIX=solx86gcc INSTALL_PREFIX=solaris PLATFORM=solx86 AC_DEFINE(solx86, 1, [Define this if OS is Solarix x86]) EDITLINE_FLG=Y SHRLIB_EXT=so PTHREAD_CFLAGS=-threads PTHREAD_LIBS=-lthread ICU_PLATFORM=SOLARISX86GCC RT_LIB_CHECK=true ;; x86_64-pc-solaris*) MAKEFILE_PREFIX=solx86gcc_64 INSTALL_PREFIX=solaris PLATFORM=solx86 AC_DEFINE(solx86, 1, [Define this if OS is Solarix x86]) AC_DEFINE(AMD64, 1, [Define this if CPU is amd64]) EDITLINE_FLG=Y SHRLIB_EXT=so PTHREAD_CFLAGS=-threads PTHREAD_LIBS=-lthread ICU_PLATFORM=SOLARISX86GCC service_thread_CS=true libdir=/usr/lib/amd64 CPU_TYPE=amd64 RT_LIB_CHECK=true ;; sparc-sun-solaris*) MAKEFILE_PREFIX=solaris INSTALL_PREFIX=solaris PLATFORM=SOLARIS AC_DEFINE(SOLARIS, 1, [Define this if OS is Solaris Sparc]) EDITLINE_FLG=Y SHRLIB_EXT=so PTHREAD_CFLAGS=-threads PTHREAD_LIBS=-lthread ICU_PLATFORM=SOLARISGCC RT_LIB_CHECK=true ;; i*-sni-sysv4) MAKEFILE_PREFIX=sinixz PLATFORM="SINIX-Z" AC_DEFINE(SINIXZ, 1, [Define this if OS is SINIX-Z]) EDITLINE_FLG=Y SHRLIB_EXT=so ;; *-*-mingw*) MAKEFILE_PREFIX=mingw PLATFORM=win32 AC_DEFINE(WIN_NT, 1, [Define this if OS is Windows NT]) AC_DEFINE(HAVE_MULTI_THREAD, 1, [Define this if multi-threading should be supported]) EDITLINE_FLG=N RAW_DEVICES_FLG=N SHRLIB_EXT=dll ICU_PLATFORM=MinGW ;; *) AC_MSG_ERROR(unsupported platform ${target}) ;; esac if test "$INSTALL_PREFIX" = ""; then INSTALL_PREFIX=$MAKEFILE_PREFIX fi AC_SUBST(MAKEFILE_PREFIX) AC_SUBST(PLATFORM) AC_SUBST(SHRLIB_EXT) AC_SUBST(ICU_PLATFORM) AC_DEFINE(CASE_SENSITIVITY, false, [Define this if paths are case sensitive]) AC_SUBST(RPM64) 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) dnl Find out how to use threads on this platform pre_acx_pthread_cflags=$CFLAGS ACX_PTHREAD([ AC_DEFINE(HAVE_MULTI_THREAD, 1, [Define this if multi-threading should be supported])]) CFLAGS=$pre_acx_pthread_cflags AC_SUBST(PTHREAD_LIBS) AC_SUBST(PTHREAD_CFLAGS) AC_ARG_ENABLE(raw-devices, [ --enable-raw-devices enable databases on raw devices (default on POSIX)], [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 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_ARG_WITH(system-editline, [ --with-system-editline use OS supplied libeditline], [case "$withval" in yes) STD_EDITLINE=true;; no) STD_EDITLINE=false;; *) AC_MSG_ERROR(bad value '${withval}' for --with-system-editline);; esac]) # not need editline in default libs, but need to test for its presence saveLIBS=$LIBS if test "$STD_EDITLINE" = "true"; then AC_CHECK_LIB(editline, readline, EDITLINE_FLG=Y, STD_EDITLINE=false) fi LIBS=$saveLIBS AC_SUBST(STD_EDITLINE) AC_SUBST(EDITLINE_FLG) AC_ARG_WITH(system-icu, [ --with-system-icu use OS supplied ICU], [case "$withval" in yes) STD_ICU=true;; no) STD_ICU=false;; *) AC_MSG_ERROR(bad value '${withval}' for --with-system-icu);; esac]) AC_SUBST(STD_ICU) 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 rmc.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 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) case "$PLATFORM" in SOLARIS|solx86) AC_CHECK_HEADERS(thread.h) ;; *) AC_CHECK_HEADERS(pthread.h) ;; esac 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/mount.h) AC_CHECK_HEADERS(sys/ioctl.h) AC_CHECK_HEADERS(limits.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) AC_CHECK_HEADERS(termio.h termios.h) if test "$EDITLINE_FLG" = "Y"; then AC_HEADER_DIRENT AC_DEFINE(HAVE_EDITLINE_H, 1, [Define this if editline 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) AC_CHECK_HEADERS(sys/resource.h) AC_CHECK_HEADERS(sys/sem.h) AC_CHECK_HEADERS(semaphore.h) dnl Check for libraries AC_CHECK_LIB(dl, main) AC_CHECK_LIB(m, main) if test "$EDITLINE_FLG" = "Y"; then AC_CHECK_LIB(curses, tgetent, TERMLIB=curses, \ AC_CHECK_LIB(ncurses, tgetent, TERMLIB=ncurses, \ AC_CHECK_LIB(termcap, tgetent, TERMLIB=termcap, \ AC_CHECK_LIB(tinfo, tgetent, TERMLIB=tinfo, \ AC_MSG_ERROR(termcap support not found))))) AC_SUBST(TERMLIB) XE_APPEND(-l$TERMLIB, LIBS) fi if test "$RT_LIB_CHECK" = "true"; then AC_CHECK_LIB(rt, main) AC_CHECK_LIB(resolv, inet_aton) fi dnl check for INFINITY in math.h dnl _ISOC99_SOURCE is defined to emulate C++ compilation in plain-C conftest.c AC_TRY_COMPILE([#define _ISOC99_SOURCE 1 #include ], [double x = INFINITY;], [AC_DEFINE(HAVE_INFINITY, 1, [Define this if INFINITY is defined in math.h])]) dnl check for va_copy() in stdarg.h dnl _ISOC99_SOURCE is defined to emulate C++ compilation in plain-C conftest.c AC_TRY_COMPILE([#define _ISOC99_SOURCE 1 #include void vafun(const char* fmt, ...) { va_list par, par2; va_start(par, fmt); va_copy(par2, par); va_end(par2); va_end(par); } ], [exit(0);], [AC_DEFINE(HAVE_VA_COPY, 1, [Define this if va_copy() is defined in stdarg.h])]) dnl Check for functions 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) AC_CHECK_FUNCS(strncasecmp strnicmp) 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(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(setrlimit getrlimit) AC_CHECK_FUNCS(tcgetattr strdup) AC_CHECK_FUNCS(mkstemp) AC_CHECK_FUNCS(pthread_keycreate pthread_key_create) AC_CHECK_FUNCS(llrint) AC_CHECK_FUNCS(localtime_r) AC_CHECK_FUNCS(gmtime_r) AC_CHECK_FUNCS(fchmod) if test "$ac_cv_header_semaphore_h" = "yes"; then savedFlags="$CFLAGS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" AC_CHECK_FUNCS(sem_timedwait) AC_CHECK_FUNCS(sem_init) if test "$ac_cv_func_sem_init" = "yes"; then AC_MSG_CHECKING(for working sem_int()) AC_TRY_RUN([#include main () { sem_t s; exit(sem_init(&s,0,0)); } ], [AC_DEFINE(WORKING_SEM_INIT,1,[Define this if sem_init() works on the platform]) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) fi CFLAGS="$savedFlags" fi AC_CHECK_FUNCS(semtimedop) # 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 ]) AH_BOTTOM([#ifndef HAVE_SOCKLEN_T typedef int socklen_t; #endif]) 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 AC_STRUCT_DIRENT_D_TYPE AC_CHECK_MEMBER([struct dirent.d_type], AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE,1,[Define this if struct dirent has d_type]),, [#include ]) dnl EKU: try to determine the alignment of long and double dnl replaces FB_ALIGNMENT and FB_DOUBLE_ALIGN in src/jrd/common.h AC_MSG_CHECKING(alignment of long) AC_TRY_RUN([main () { struct s { char a; long 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(FB_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(FB_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) ;; HPUX) AC_DEFINE(HAVE_POSIX_THREADS) ;; FREEBSD|GENTOOFREEBSD) dnl the AC_CHECK_TYPES for socklen_t doesn't include sys/socket.h dnl so test for socklen_t with sys/socket.h included AC_MSG_CHECKING(if sys/socket.h defines socklen_t) AC_TRY_COMPILE([#include #include ], [socklen_t s;], [AC_DEFINE(HAVE_SOCKLEN_T) AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) dnl define HAVE_POSIX_THREADS for FreeBSD 4.x support AC_DEFINE(HAVE_POSIX_THREADS) ;; SOLARIS|solx86) dnl kkuznetsov: Solaris always check for -lnsl and use Sun thread (!not posix) AC_CHECK_LIB(nsl, gethostname, XE_APPEND(-lnsl,LIBS)) AC_CHECK_LIB(thread, thr_create, XE_PREPEND(-lthread,LIBS)) if test "$EDITLINE_FLG" = "Y"; then AC_CHECK_LIB(termcap, main, XE_APPEND(-ltermcap,EDITLINE_A)) fi AC_CHECK_TYPES([caddr_t]) 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, main) dnl Kkuznetsov: using sfio-mt looks like double protecting of FILE* dnl and I avoid to use vthread based on posix threading #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" SFIO_EXAMPLES="Y" 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( -mno-cygwin -mthreads -lmpr -lversion -lws2_32 -lole32,LIBS) ;; *) ;; esac dnl Detect support for ISO syntax for thread-locals AC_CACHE_CHECK([for __thread], firebird_cv_gcc___thread, [cat > conftest.c <<\EOF __thread int a = 42; main() { a = a + 1; return 0; } EOF if AC_TRY_COMMAND([gcc -fPIC -o conftest conftest.c >&AS_MESSAGE_LOG_FD && ./conftest]); then firebird_cv_gcc___thread=yes else firebird_cv_gcc___thread=no fi rm -f conftest*]) if test "$firebird_cv_gcc___thread" = yes; then AC_DEFINE(HAVE___THREAD, 1, [Define it if compiler supports ISO syntax for thread-local storage]) fi dnl ##################### DO NOT ADD ANY TESTS BELOW ########################### AC_SUBST(SFIO_DIR) AC_SUBST(SFIO_FLAGS) AC_SUBST(SFIO_LDFLAGS) AC_SUBST(SFIO_EXAMPLES) 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 # rebuild version header if needed ./src/misc/writeBuildNum.sh rebuildHeader 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/jrd/extds 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 mkdir -p gen/remote/os/sun 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/dyn dnl # mkdir -p gen/firebird/examples/build_unix dnl # mkdir -p gen/firebird/examples/build_win32 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/boot/alice mkdir -p temp/boot/auth/trusted mkdir -p temp/boot/burp mkdir -p temp/boot/common/classes mkdir -p temp/boot/common/config mkdir -p temp/boot/config mkdir -p temp/boot/dsql mkdir -p temp/boot/dudley mkdir -p temp/boot/extlib mkdir -p temp/boot/extlib/fbudf mkdir -p temp/boot/gpre mkdir -p temp/boot/intl mkdir -p temp/boot/ipserver mkdir -p temp/boot/iscguard mkdir -p temp/boot/isql mkdir -p temp/boot/jrd mkdir -p temp/boot/jrd/extds mkdir -p temp/boot/jrd/os/posix mkdir -p temp/boot/jrd/os/win32 mkdir -p temp/boot/jrd/os/darwin mkdir -p temp/boot/lock mkdir -p temp/boot/misc mkdir -p temp/boot/msgs mkdir -p temp/boot/qli mkdir -p temp/boot/remote mkdir -p temp/boot/remote/os/win32 mkdir -p temp/boot/remote/os/sun mkdir -p temp/boot/remote/os/darwin mkdir -p temp/boot/utilities/common mkdir -p temp/boot/utilities/gsec mkdir -p temp/boot/utilities/gstat mkdir -p temp/boot/utilities/guard mkdir -p temp/boot/utilities/ibmgr mkdir -p temp/boot/utilities/install mkdir -p temp/boot/utilities/nbackup mkdir -p temp/boot/utilities/rebuild mkdir -p temp/boot/vulcan mkdir -p temp/std/alice mkdir -p temp/std/auth/trusted mkdir -p temp/std/burp mkdir -p temp/std/common/classes mkdir -p temp/std/common/config mkdir -p temp/std/config mkdir -p temp/std/dsql mkdir -p temp/std/dudley mkdir -p temp/std/extlib mkdir -p temp/std/extlib/fbudf mkdir -p temp/std/gpre mkdir -p temp/std/intl mkdir -p temp/std/ipserver mkdir -p temp/std/iscguard mkdir -p temp/std/isql mkdir -p temp/std/jrd mkdir -p temp/std/jrd/extds mkdir -p temp/std/jrd/os/posix mkdir -p temp/std/jrd/os/win32 mkdir -p temp/std/jrd/os/darwin mkdir -p temp/std/lock mkdir -p temp/std/misc mkdir -p temp/std/msgs mkdir -p temp/std/qli mkdir -p temp/std/remote mkdir -p temp/std/remote/os/win32 mkdir -p temp/std/remote/os/sun mkdir -p temp/std/remote/os/darwin mkdir -p temp/std/utilities/common mkdir -p temp/std/utilities/gsec mkdir -p temp/std/utilities/gstat mkdir -p temp/std/utilities/guard mkdir -p temp/std/utilities/ibmgr mkdir -p temp/std/utilities/install mkdir -p temp/std/utilities/nbackup mkdir -p temp/std/utilities/rebuild mkdir -p temp/std/vulcan mkdir -p temp/superclient/alice mkdir -p temp/superclient/auth/trusted mkdir -p temp/superclient/burp mkdir -p temp/superclient/common/classes mkdir -p temp/superclient/common/config mkdir -p temp/superclient/config mkdir -p temp/superclient/dsql mkdir -p temp/superclient/dudley mkdir -p temp/superclient/extlib mkdir -p temp/superclient/extlib/fbudf mkdir -p temp/superclient/gpre mkdir -p temp/superclient/intl mkdir -p temp/superclient/ipserver mkdir -p temp/superclient/iscguard mkdir -p temp/superclient/isql mkdir -p temp/superclient/jrd mkdir -p temp/superclient/jrd/extds mkdir -p temp/superclient/jrd/os/posix mkdir -p temp/superclient/jrd/os/win32 mkdir -p temp/superclient/jrd/os/darwin mkdir -p temp/superclient/lock mkdir -p temp/superclient/misc mkdir -p temp/superclient/msgs mkdir -p temp/superclient/qli mkdir -p temp/superclient/remote mkdir -p temp/superclient/remote/os/win32 mkdir -p temp/superclient/remote/os/sun mkdir -p temp/superclient/remote/os/darwin mkdir -p temp/superclient/utilities/common mkdir -p temp/superclient/utilities/gsec mkdir -p temp/superclient/utilities/gstat mkdir -p temp/superclient/utilities/guard mkdir -p temp/superclient/utilities/ibmgr mkdir -p temp/superclient/utilities/install mkdir -p temp/superclient/utilities/nbackup mkdir -p temp/superclient/utilities/rebuild mkdir -p temp/superclient/vulcan mkdir -p temp/superserver/alice mkdir -p temp/superserver/auth/trusted mkdir -p temp/superserver/burp mkdir -p temp/superserver/common/classes mkdir -p temp/superserver/common/config mkdir -p temp/superserver/config mkdir -p temp/superserver/dsql mkdir -p temp/superserver/dudley mkdir -p temp/superserver/extlib mkdir -p temp/superserver/extlib/fbudf mkdir -p temp/superserver/gpre mkdir -p temp/superserver/intl mkdir -p temp/superserver/ipserver mkdir -p temp/superserver/iscguard mkdir -p temp/superserver/isql mkdir -p temp/superserver/jrd mkdir -p temp/superserver/jrd/extds mkdir -p temp/superserver/jrd/os/posix mkdir -p temp/superserver/jrd/os/win32 mkdir -p temp/superserver/jrd/os/darwin mkdir -p temp/superserver/lock mkdir -p temp/superserver/misc mkdir -p temp/superserver/msgs mkdir -p temp/superserver/qli mkdir -p temp/superserver/remote mkdir -p temp/superserver/remote/os/win32 mkdir -p temp/superserver/remote/os/sun mkdir -p temp/superserver/remote/os/darwin mkdir -p temp/superserver/utilities/common mkdir -p temp/superserver/utilities/gsec mkdir -p temp/superserver/utilities/gstat mkdir -p temp/superserver/utilities/guard mkdir -p temp/superserver/utilities/ibmgr mkdir -p temp/superserver/utilities/install mkdir -p temp/superserver/utilities/nbackup mkdir -p temp/superserver/utilities/rebuild mkdir -p temp/superserver/vulcan ]) MAKE_SRC_DIR=builds/posix dnl EKU: handle platform specific installation and packaging dnl: Common Files case "$PLATFORM" in [LINUX|GENTOOFREEBSD|HPUX]) AC_CONFIG_FILES([gen/install/misc/firebird.conf:builds/install/misc/firebird.conf gen/install/misc/aliases.conf:builds/install/misc/aliases.conf.in gen/install/misc/fbintl.conf:builds/install/misc/fbintl.conf gen/firebird/bin/fb_config:builds/install/misc/fb_config.in gen/firebird/bin/posixLibrary.sh:builds/install/misc/posixLibrary.sh.in gen/firebird/bin/classicLibrary.sh:builds/install/misc/classicLibrary.sh.in gen/firebird/bin/superLibrary.sh:builds/install/misc/superLibrary.sh.in gen/firebird/bin/changeRunUser.sh:builds/install/misc/changeRunUser.sh.in gen/firebird/bin/restoreRootRunUser.sh:builds/install/misc/restoreRootRunUser.sh.in], [chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null]) ;; esac dnl: Platform Specific Files case "$PLATFORM" in LINUX|GENTOOFREEBSD) 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/rpmheader.txt:${INSTALL_SRC_DIR}/rpmheader.txt.in gen/install/scripts/rpmfiles.txt:${INSTALL_SRC_DIR}/rpmfiles.txt.in gen/firebird/bin/tarMainInstall.sh:builds/install/arch-specific/linux/misc/tarMainInstall.sh.in gen/firebird/bin/tarinstall.sh:builds/install/arch-specific/linux/misc/tarinstall.sh.in gen/firebird/bin/preinstall.sh:builds/install/arch-specific/linux/misc/preinstall.sh.in gen/firebird/bin/postinstall.sh:builds/install/arch-specific/linux/misc/postinstall.sh.in gen/firebird/bin/preuninstall.sh:builds/install/arch-specific/linux/misc/preuninstall.sh.in gen/firebird/bin/postuninstall.sh:builds/install/arch-specific/linux/misc/postuninstall.sh.in gen/firebird/bin/taruninstall.sh:builds/install/arch-specific/linux/misc/taruninstall.sh.in gen/firebird/bin/tarMainUninstall.sh:builds/install/arch-specific/linux/misc/tarMainUninstall.sh.in gen/install/misc/firebird.xinetd:builds/install/arch-specific/linux/misc/firebird.xinetd.in gen/install/misc/firebird.init.d.generic:builds/install/arch-specific/linux/misc/firebird.init.d.generic.in gen/install/misc/firebird.init.d.mandrake:builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in gen/install/misc/firebird.init.d.suse:builds/install/arch-specific/linux/misc/firebird.init.d.suse.in gen/install/misc/firebird.init.d.debian:builds/install/arch-specific/linux/misc/firebird.init.d.debian.in gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/misc/firebird.init.d.gentoo.in gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/misc/firebird.init.d.slackware.in gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/misc/rc.config.firebird.in gen/firebird/bin/changeDBAPassword.sh:builds/install/misc/changeDBAPassword.sh.in gen/firebird/bin/changeMultiConnectMode.sh:builds/install/misc/changeMultiConnectMode.sh.in gen/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in gen/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in gen/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/misc/linuxLibrary.sh.in] ,[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null]) ;; HPUX) HP_INSTALL_SRC_DIR=builds/install/arch-specific/hpux/${FIREBIRD_ARCH_TYPE} AC_CONFIG_FILES([gen/install/makeinstallImage.sh:${HP_INSTALL_SRC_DIR}/makeinstallImage.sh.in gen/firebirdCS.psf:${HP_INSTALL_SRC_DIR}/firebirdCS.psf.in gen/install/scripts/preInstall.sh:${HP_INSTALL_SRC_DIR}/preInstall.sh.in gen/install/scripts/tarInstall.sh:${HP_INSTALL_SRC_DIR}/tarInstall.sh.in gen/install/scripts/tarmainInstall.sh:${HP_INSTALL_SRC_DIR}/tarmainInstall.sh.in gen/install/scripts/tarUninstall.sh:${HP_INSTALL_SRC_DIR}/tarUninstall.sh.in gen/install/scripts/tarmainUninstall.sh:${HP_INSTALL_SRC_DIR}/tarmainUninstall.sh.in gen/install/scripts/postInstall.sh:${HP_INSTALL_SRC_DIR}/postInstall.sh.in gen/install/scripts/preUninstall.sh:${HP_INSTALL_SRC_DIR}/preUninstall.sh.in gen/install/scripts/postUninstall.sh:${HP_INSTALL_SRC_DIR}/postUninstall.sh.in gen/install/misc/firebird.init.d.hpux:builds/install/arch-specific/hpux/misc/firebird.init.d.hpux.in gen/install/misc/rc.config.firebird.hpux:builds/install/arch-specific/hpux/misc/rc.config.firebird.hpux.in gen/firebird/bin/changedbaPassword.sh:builds/install/arch-specific/hpux/misc/changedbaPassword.sh.in gen/firebird/bin/changegdslibrarycompatibleLink.sh:builds/install/arch-specific/hpux/misc/changegdslibrarycompatibleLink.sh.in gen/firebird/bin/hpuxLibrary.sh:builds/install/arch-specific/hpux/misc/hpuxLibrary.sh.in gen/firebird/bin/createaliasDB.sh:builds/install/arch-specific/hpux/misc/createaliasDB.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]) ;; NETBSD) AC_CONFIG_FILES([gen/install/install.netbsd.sh:builds/install/arch-specific/netbsd/install.sh.in] ,[chmod a+x gen/install/install.netbsd.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]) ;; solx86|SOLARIS) AC_CONFIG_FILES([gen/firebird/install/Pkginfo:builds/install/arch-specific/solaris/${ARCH_TYPE_SUFFIX}/pkginfo.in gen/firebird/install/Prototype:builds/install/arch-specific/solaris/${ARCH_TYPE_SUFFIX}/prototype.in gen/firebird/install/Preinstall:builds/install/arch-specific/solaris/${ARCH_TYPE_SUFFIX}/preinstall.in gen/firebird/install/Postinstall:builds/install/arch-specific/solaris/${ARCH_TYPE_SUFFIX}/postinstall.in gen/firebird/install/Postremove:builds/install/arch-specific/solaris/${ARCH_TYPE_SUFFIX}/postremove.in gen/firebird/install/prototypelg:builds/install/arch-specific/solaris/libgcc/prototypelg.in gen/firebird/install/pkginfolg:builds/install/arch-specific/solaris/libgcc/pkginfolg.in ],[chmod a+x gen/firebird/install/Pre* gen/install/Post* 2>/dev/null]) ;; DARWIN) ;; esac if test -f ${MAKE_SRC_DIR}/postfix.${MAKEFILE_POSTFIX};then POSTFIX_FILE=gen/make.platform.postfix:${MAKE_SRC_DIR}/postfix.${MAKEFILE_POSTFIX} POSTFIX_INCLUDE='include $(ROOT)/gen/make.platform.postfix' else POSTFIX_FILE= POSTFIX_INCLUDE= fi AC_SUBST(POSTFIX_INCLUDE) 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} ${POSTFIX_FILE} 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.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.fbserver:${MAKE_SRC_DIR}/Makefile.in.fbserver gen/Makefile.smp_server:${MAKE_SRC_DIR}/Makefile.in.smp_server gen/Makefile.libfbclient:${MAKE_SRC_DIR}/Makefile.in.libfbclient 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.gpre:${MAKE_SRC_DIR}/Makefile.in.client.gpre gen/Makefile.client.util:${MAKE_SRC_DIR}/Makefile.in.client.util gen/Makefile.client.gsec:${MAKE_SRC_DIR}/Makefile.in.client.gsec 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.util:${MAKE_SRC_DIR}/Makefile.in.embed.util 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.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/${INSTALL_PREFIX}/Makefile.in Makefile:Makefile.in ) if test "$STD_EDITLINE" = "false"; then AC_CONFIG_FILES(gen/Makefile.extern.editline:${MAKE_SRC_DIR}/Makefile.in.extern.editline) fi if test "$STD_ICU" = "false"; then AC_CONFIG_FILES(gen/Makefile.extern.icu:${MAKE_SRC_DIR}/Makefile.in.extern.icu) fi if test "$PROD_BUILD_FLG" = N; then DEBUG_ICU=--enable-debug fi case "$PLATFORM" in SOLARIS | solx86 ) AC_CONFIG_FILES( gen/make.platform.solaris.examples:${MAKE_SRC_DIR}/make.platform.solaris.examples ) ;; esac if test "$STD_ICU" = "true"; then AC_OUTPUT else AC_OUTPUT (cd extern/icu/source chmod +x runConfigureICU configure install-sh ./runConfigureICU "$ICU_PLATFORM" "$DEBUG_ICU" --prefix=`pwd`/..) fi 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 for 32-bit platforms : disabled";; 64) echo "64 bit I/O for 32-bit platforms : enabled";; esac case $RAW_DEVICES_FLG in Y) echo " Raw devices : enabled";; N) echo " Raw devices : disabled";; esac 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