8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 16:43:03 +01:00
firebird-mirror/configure.in

1336 lines
44 KiB
Plaintext
Raw Normal View History

dnl ############################# INITIALISATION ###############################
2003-11-10 12:25:05 +01:00
AC_PREREQ(2.56)
2001-07-31 10:42:21 +02:00
AC_INIT(src)
2003-07-06 03:08:33 +02:00
AC_CONFIG_AUX_DIR(builds/make.new/config)
2001-07-31 10:42:21 +02:00
AC_CACHE_VAL(ac_cv_prog_make_set, [AC_PROG_MAKE_SET])
AC_PREFIX_DEFAULT(/usr/local/firebird)
m4_ifdef([AC_CONFIG_MACRO_DIR],
[],
[m4_define([AC_CONFIG_MACRO_DIR], [])])
AC_CONFIG_MACRO_DIR(m4)
2001-07-31 10:42:21 +02:00
2003-07-06 03:08:33 +02:00
AC_CONFIG_HEADER(src/include/gen/autoconfig.h:builds/make.new/config/config.h.in)
2001-07-31 10:42:21 +02:00
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)
sinclude(binreloc.m4)
dnl ############################# ADD TESTS BELOW ##############################
2001-07-31 10:42:21 +02:00
AC_CANONICAL_SYSTEM
2004-10-24 11:10:56 +02:00
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
2004-01-12 05:58:09 +01:00
INSTALL_PREFIX=""
dnl Use /usr/lib for library links on most platforms except some 64-bit ones
libdir=/usr/lib
ICU_PLATFORM=LinuxRedHat
2009-04-15 08:29:00 +02:00
dnl Should system editline and/or icu be used
STD_EDITLINE=false
STD_ICU=false
RPM64=
2007-08-28 13:19:00 +02:00
dnl Test for realtime library presence?
RT_LIB_CHECK=false
case "$target" in
2007-12-19 14:25:49 +01:00
i686-*-darwin*)
MAKEFILE_PREFIX=darwin_i386
MAKEFILE_POSTFIX=darwin
PLATFORM=DARWIN
2007-12-19 14:25:49 +01:00
INSTALL_PREFIX=darwin
2003-10-30 09:03:17 +01:00
AC_DEFINE(DARWIN, 1, [Define this if OS is DARWIN])
2007-03-09 11:32:58 +01:00
XE_APPEND(-framework CoreFoundation,LIBS)
EDITLINE_FLG=Y
SHRLIB_EXT=dylib
2007-12-19 14:25:49 +01:00
ICU_PLATFORM=MacOSX
2008-01-18 15:12:26 +01:00
dnl CPU_TYPE=x86_64
2007-12-19 14:25:49 +01:00
;;
powerpc-*-darwin*)
2007-12-19 14:46:57 +01:00
MAKEFILE_PREFIX=darwin_powerpc
2008-06-09 14:02:59 +02:00
dnl MAKEFILE_PREFIX=darwin_ppc64
2007-12-19 14:25:49 +01:00
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
2008-06-09 14:02:59 +02:00
dnl CPU_TYPE=ppc64
;;
2008-10-30 10:14:13 +01:00
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
;;
2006-03-19 14:56:58 +01:00
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])
2006-03-19 16:37:42 +01:00
EDITLINE_FLG=Y
2006-03-19 14:56:58 +01:00
SHRLIB_EXT=so
;;
2006-12-08 19:32:09 +01:00
*-gentoo-freebsd*)
MAKEFILE_PREFIX=freebsd
PLATFORM=GENTOOFREEBSD
AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD])
EDITLINE_FLG=Y
SHRLIB_EXT=so
;;
*-*-freebsd*)
2009-04-15 08:29:00 +02:00
MAKEFILE_PREFIX=freebsd
2003-06-15 07:57:47 +02:00
PLATFORM=FREEBSD
2003-10-30 09:03:17 +01:00
AC_DEFINE(FREEBSD, 1, [Define this if OS is FreeBSD])
2006-03-19 16:37:42 +01:00
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
;;
2007-04-01 12:04:28 +02:00
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
;;
2004-09-30 18:30:05 +02:00
x86_64*-*-linux*)
2004-01-12 05:58:09 +01:00
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)'
2004-01-12 05:58:09 +01:00
;;
2008-05-22 17:02:59 +02:00
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
2008-05-22 17:07:19 +02:00
CPU_TYPE=ia64
2008-05-22 17:02:59 +02:00
RPM64='()(64bit)'
;;
2008-04-15 16:14:57 +02:00
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
;;
2004-09-30 18:30:05 +02:00
sparc*-*-linux*)
2003-10-11 01:56:57 +02:00
MAKEFILE_PREFIX=linux_sparc32
2004-01-12 05:58:09 +01:00
INSTALL_PREFIX=linux
2003-10-11 01:56:57 +02:00
PLATFORM=LINUX
2003-10-30 09:03:17 +01:00
AC_DEFINE(LINUX, 1, [Define this if OS is Linux])
2003-10-11 01:56:57 +02:00
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
2003-10-30 09:03:17 +01:00
AC_DEFINE(NETBSD, 1, [Define this if OS is NetBSD])
2004-05-21 01:05:02 +02:00
EDITLINE_FLG=Y
SHRLIB_EXT=so
;;
2009-02-12 11:48:18 +01:00
ia64-*-hpux*)
MAKEFILE_PREFIX=hpux_ia64
PLATFORM=HPUX
AC_DEFINE(HPUX, 1, [Define this if OS is HP-UX])
EDITLINE_FLG=Y
SHRLIB_EXT=sl
libdir=/usr/lib/pa20_64
RT_LIB_CHECK=true
2009-02-12 11:48:18 +01:00
;;
*-*-hpux*)
MAKEFILE_PREFIX=hpux
2007-11-12 15:26:44 +01:00
PLATFORM=HPUX
2008-01-10 12:26:58 +01:00
AC_DEFINE(HPUX, 1, [Define this if OS is HP-UX])
2007-11-12 15:26:44 +01:00
EDITLINE_FLG=Y
SHRLIB_EXT=sl
2008-01-07 13:26:23 +01:00
libdir=/usr/lib/pa20_64
RT_LIB_CHECK=true
;;
i386-pc-solaris*)
2003-11-21 20:52:10 +01:00
MAKEFILE_PREFIX=solx86gcc
2007-08-31 10:51:52 +02:00
INSTALL_PREFIX=solaris
PLATFORM=solx86
2003-10-30 09:03:17 +01:00
AC_DEFINE(solx86, 1, [Define this if OS is Solarix x86])
2007-08-31 10:51:52 +02:00
EDITLINE_FLG=Y
SHRLIB_EXT=so
PTHREAD_CFLAGS=-threads
PTHREAD_LIBS=-lthread
2005-06-22 15:48:23 +02:00
ICU_PLATFORM=SOLARISX86GCC
2007-08-28 13:19:00 +02:00
RT_LIB_CHECK=true
;;
2008-04-25 11:42:19 +02:00
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
2007-08-31 10:51:52 +02:00
INSTALL_PREFIX=solaris
PLATFORM=SOLARIS
2003-10-30 09:03:17 +01:00
AC_DEFINE(SOLARIS, 1, [Define this if OS is Solaris Sparc])
2002-12-29 15:15:50 +01:00
EDITLINE_FLG=Y
SHRLIB_EXT=so
PTHREAD_CFLAGS=-threads
PTHREAD_LIBS=-lthread
ICU_PLATFORM=SOLARISGCC
2007-08-28 13:19:00 +02:00
RT_LIB_CHECK=true
;;
*-*-mingw*)
MAKEFILE_PREFIX=mingw
PLATFORM=win32
2003-10-30 09:03:17 +01:00
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
2005-06-15 07:31:47 +02:00
ICU_PLATFORM=MinGW
;;
*)
AC_MSG_ERROR(unsupported platform ${target})
;;
esac
2004-01-12 05:58:09 +01:00
if test "$INSTALL_PREFIX" = ""; then
INSTALL_PREFIX=$MAKEFILE_PREFIX
fi
AM_BINRELOC
AC_SUBST(MAKEFILE_PREFIX)
AC_SUBST(PLATFORM)
AC_SUBST(SHRLIB_EXT)
AC_SUBST(ICU_PLATFORM)
2003-10-30 09:03:17 +01:00
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;;
2002-08-14 14:15:23 +02:00
no) PROD_BUILD_FLG=Y;;
*) AC_MSG_ERROR(bad value '${enableval}' for --enable-debug);;
esac])
AC_SUBST(PROD_BUILD_FLG)
2001-07-31 10:42:21 +02:00
dnl Find out how to use threads on this platform
2008-01-21 11:14:46 +01:00
pre_acx_pthread_cflags=$CFLAGS
ACX_PTHREAD([
2004-05-21 01:05:02 +02:00
AC_DEFINE(HAVE_MULTI_THREAD, 1,
[Define this if multi-threading should be supported])])
2008-01-21 11:14:46 +01:00
CFLAGS=$pre_acx_pthread_cflags
AC_SUBST(PTHREAD_LIBS)
AC_SUBST(PTHREAD_CFLAGS)
2004-05-21 01:05:02 +02:00
AC_ARG_ENABLE(raw-devices,
2003-11-23 17:37:40 +01:00
[ --enable-raw-devices enable databases on raw devices (default on POSIX)],
[case "$enableval" in
yes) RAW_DEVICES_FLG=Y;;
no) RAW_DEVICES_FLG=N;;
2002-11-04 09:07:23 +01:00
*) 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])
2007-04-04 09:30:15 +02:00
# 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)
2002-11-06 14:39:52 +01:00
FB_SERVICE_NAME=gds_db
FB_SERVICE_PORT=3050
2003-01-16 17:28:28 +01:00
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}])
2003-01-16 17:34:24 +01:00
AC_ARG_WITH(ipc-name,
[ --with-ipc-name specify local IPC name (default=FirebirdIPI)],
2003-01-16 17:34:24 +01:00
[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)
2003-01-16 17:28:28 +01:00
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
2007-02-06 13:18:18 +01:00
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
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
2001-07-31 10:42:21 +02:00
AC_CHECK_HEADERS(assert.h)
AC_CHECK_HEADERS(ctype.h)
AC_CHECK_HEADERS(errno.h)
2001-07-31 10:42:21 +02:00
AC_CHECK_HEADERS(fcntl.h)
AC_CHECK_HEADERS(grp.h)
2002-06-29 18:41:10 +02:00
AC_CHECK_HEADERS(pwd.h)
2001-07-31 10:42:21 +02:00
AC_CHECK_HEADERS(libio.h)
2002-06-29 18:41:10 +02:00
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
2001-07-31 10:42:21 +02:00
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
2002-06-29 18:41:10 +02:00
AC_CHECK_HEADERS(sys/timeb.h)
2001-07-31 10:42:21 +02:00
AC_CHECK_HEADERS(sys/param.h)
2007-12-20 15:20:08 +01:00
AC_CHECK_HEADERS(sys/mount.h)
2002-07-06 07:32:02 +02:00
AC_CHECK_HEADERS(sys/ioctl.h)
2006-07-25 15:03:11 +02:00
AC_CHECK_HEADERS(limits.h)
AC_CHECK_HEADERS(setjmp.h)
2001-07-31 10:42:21 +02:00
AC_CHECK_HEADERS(stdarg.h)
AC_CHECK_HEADERS(stdlib.h)
AC_CHECK_HEADERS(string.h)
2003-10-14 15:10:05 +02:00
AC_CHECK_HEADERS(signal.h sys/signal.h sys/siginfo.h)
2008-12-01 16:40:27 +01:00
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
2003-11-04 09:34:42 +01:00
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 <unistd.h>
2009-04-15 08:29:00 +02:00
main () {
#if defined(_POSIX_THREADS) && _POSIX_THREADS >= 200112L
exit(0);
#else
exit(1);
#endif
}],
[AC_DEFINE(HAVE_POSIX_THREADS, 1,
2003-10-30 13:47:59 +01:00
[Define this if POSIX threads are available])
AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
fi
AC_CHECK_HEADERS(varargs.h)
2002-11-05 14:15:47 +01:00
AC_CHECK_HEADERS(crypt.h)
2002-11-15 11:55:34 +01:00
AC_CHECK_HEADERS(netinet/in.h rpc/rpc.h netconfig.h)
AC_CHECK_HEADERS(rpc/xdr.h,,,[#include <rpc/rpc.h>])
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)
2007-11-12 15:26:44 +01:00
AC_CHECK_HEADERS(sys/sem.h)
AC_CHECK_HEADERS(semaphore.h)
2009-04-15 08:29:00 +02:00
AC_CHECK_HEADERS(float.h)
dnl Check for libraries
2002-07-04 11:34:20 +02:00
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, \
2009-04-15 08:29:00 +02:00
AC_MSG_ERROR(termcap support not found)))))
2008-01-10 11:06:22 +01:00
AC_SUBST(TERMLIB)
XE_APPEND(-l$TERMLIB, LIBS)
fi
2007-08-28 13:19:00 +02:00
if test "$RT_LIB_CHECK" = "true"; then
AC_CHECK_LIB(rt, main)
AC_CHECK_LIB(resolv, inet_aton)
2007-08-28 13:19:00 +02:00
fi
2009-02-19 22:10:46 +01:00
dnl Check for libraries for static C++ runtime linking
AC_CHECK_LIB(supc++, main, XE_APPEND(-lsupc++, STATIC_CXXSUPPORT_LIB))
AC_CHECK_LIB(gcc_eh, main, XE_APPEND(-lgcc_eh, STATIC_CXXSUPPORT_LIB))
AC_SUBST(STATIC_CXXSUPPORT_LIB)
2007-04-11 18:05:40 +02:00
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 <math.h>],
[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 <stdarg.h>
void vafun(const char* fmt, ...)
{
2009-04-15 08:29:00 +02:00
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
AC_MSG_CHECKING(if gettimeofday accepts second (timezone) argument)
AC_TRY_COMPILE([#include <sys/time.h>],
[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)])
2003-10-31 12:33:45 +01:00
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_CHECK_FUNCS(nanosleep)
2003-02-10 06:42:22 +01:00
AC_SEARCH_LIBS(gethostname,nsl)
AC_SEARCH_LIBS(gethostbyname,nsl)
2003-02-10 06:42:22 +01:00
AC_SEARCH_LIBS(connect,socket)
2002-08-28 10:02:12 +02:00
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.
2009-04-15 08:29:00 +02:00
dnl CVC: Maybe other platforms need this, too? Otherwise, delete the block.
2002-08-28 09:51:18 +02:00
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)
2003-08-12 12:06:14 +02:00
AC_CHECK_FUNCS(snprintf vsnprintf)
AC_CHECK_FUNCS(swab _swab)
2009-04-15 08:29:00 +02:00
AC_FUNC_MMAP
AC_FUNC_FORK
AC_FUNC_SETPGRP
AC_CHECK_FUNCS(setpgid)
AC_FUNC_GETPGRP
AC_CHECK_FUNCS(flock)
AC_CHECK_FUNCS(dladdr)
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 <stdio.h>
#include <sys/mnttab.h>],
[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)
2005-12-23 10:21:46 +01:00
AC_CHECK_FUNCS(gmtime_r)
AC_CHECK_FUNCS(fchmod)
2007-11-15 12:38:46 +01:00
if test "$ac_cv_header_semaphore_h" = "yes"; then
2007-11-12 15:26:44 +01:00
savedFlags="$CFLAGS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
AC_CHECK_FUNCS(sem_timedwait)
2007-12-07 13:19:37 +01:00
AC_CHECK_FUNCS(sem_init)
if test "$ac_cv_func_sem_init" = "yes"; then
AC_MSG_CHECKING(for working sem_init())
2007-12-07 13:19:37 +01:00
AC_TRY_RUN([#include <semaphore.h>
main () {
sem_t s;
exit(sem_init(&s,0,0));
}
],
2007-12-08 08:46:23 +01:00
[AC_DEFINE(WORKING_SEM_INIT,1,[Define this if sem_init() works on the platform])
2007-12-07 13:19:37 +01:00
AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
fi
2007-11-12 15:26:44 +01:00
CFLAGS="$savedFlags"
fi
2007-12-07 13:19:37 +01:00
AC_CHECK_FUNCS(semtimedop)
AC_CHECK_FUNCS(posix_fadvise)
AC_CHECK_FUNCS(pthread_mutexattr_setrobust_np)
AC_CHECK_FUNCS(pthread_mutex_consistent_np)
2002-07-01 18:59:09 +02:00
# Checks for typedefs, structures, and compiler characteristics.
2001-07-31 10:42:21 +02:00
AC_C_BIGENDIAN
2009-04-15 08:29:00 +02:00
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 <unistd.h>
2009-04-15 08:29:00 +02:00
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)
2003-10-27 19:42:47 +01:00
AC_CHECK_TYPES([socklen_t],,,[#include <sys/socket.h>])
AH_BOTTOM([#ifndef HAVE_SOCKLEN_T
typedef int socklen_t;
#endif])
2003-10-27 19:42:47 +01:00
AC_CHECK_TYPES([semun])
if test "$ac_cv_type_semun" = "no"; then
AC_MSG_CHECKING(if sem.h defines semun)
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>],
[union semun s;],
[ac_cv_type_semun=yes; AC_DEFINE(HAVE_SEMUN) AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
fi
2009-04-15 08:29:00 +02:00
AC_CHECK_TYPES([struct XDR::xdr_ops],,,[#include <rpc/rpc.h>
2002-11-15 11:55:34 +01:00
#include <rpc/xdr.h>])
2009-04-15 08:29:00 +02:00
AC_CHECK_TYPES([struct xdr_ops],,,[#include <rpc/rpc.h>
2002-11-15 11:55:34 +01:00
#include <rpc/xdr.h>])
dnl AC_STRUCT_DIRENT_D_TYPE
AC_CHECK_MEMBER([struct dirent.d_type],
2009-04-15 08:29:00 +02:00
AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE,1,[Define this if struct dirent has d_type]),,
[#include <dirent.h>])
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;
2006-11-09 08:43:57 +01:00
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!
2002-11-01 14:22:35 +01:00
dnl EKU: Add any platform specific tests below
2002-11-22 15:11:28 +01:00
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)
;;
2007-11-12 15:26:44 +01:00
HPUX)
AC_DEFINE(HAVE_POSIX_THREADS)
2009-04-15 08:29:00 +02:00
;;
2006-12-08 19:32:09 +01:00
FREEBSD|GENTOOFREEBSD)
2003-11-13 01:53:12 +01:00
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 <sys/types.h>
#include <sys/socket.h>],
[socklen_t s;],
[AC_DEFINE(HAVE_SOCKLEN_T) AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
2003-11-13 04:41:45 +01:00
dnl define HAVE_POSIX_THREADS for FreeBSD 4.x support
AC_DEFINE(HAVE_POSIX_THREADS)
2003-11-13 01:53:12 +01:00
;;
SOLARIS|solx86)
2005-02-16 11:29:11 +01:00
dnl kkuznetsov: Solaris always check for -lnsl and use Sun thread (!not posix)
AC_CHECK_LIB(nsl, gethostname, XE_APPEND(-lnsl,LIBS))
2009-04-15 08:29:00 +02:00
AC_CHECK_LIB(thread, thr_create, XE_PREPEND(-lthread,LIBS))
2005-02-16 11:29:11 +01:00
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=""
2009-04-15 08:29:00 +02:00
else
AC_CHECK_LIB(sfio, main)
2005-02-16 11:29:11 +01:00
dnl Kkuznetsov: using sfio-mt looks like double protecting of FILE*
dnl and I avoid to use vthread based on posix threading
2009-04-15 08:29:00 +02:00
#AC_CHECK_LIB(sfio-mt, main,,
2005-02-16 11:29:11 +01:00
#AC_MSG_ERROR([sfio library not found]),-lvthread)
2009-04-15 08:29:00 +02:00
#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"
2008-09-02 16:17:32 +02:00
SFIO_EXAMPLES="Y"
fi
2002-11-01 14:22:35 +01:00
;;
win32)
FB_PIPE_NAME=interbas
AC_ARG_WITH(pipe-name,
[ --with-pipe-name specify wnet pipe name (default=interbas)],
2002-11-07 15:06:13 +01:00
[FB_PIPE_NAME=${withval}])
2003-10-30 09:03:17 +01:00
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)
;;
*)
2002-11-01 14:22:35 +01:00
;;
esac
2002-11-01 14:22:35 +01:00
dnl Detect support for ISO syntax for thread-locals
2009-04-03 11:14:12 +02:00
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([[__thread int a = 42;]],[[a = a + 1;]])],
AC_DEFINE(HAVE___THREAD, 1, [Define it if compiler supports ISO syntax for thread-local storage]),)
2002-11-01 14:22:35 +01:00
dnl ##################### DO NOT ADD ANY TESTS BELOW ###########################
AC_SUBST(SFIO_DIR)
AC_SUBST(SFIO_FLAGS)
AC_SUBST(SFIO_LDFLAGS)
2008-09-02 16:17:32 +02:00
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])
2003-03-03 07:02:29 +01:00
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
2003-10-27 02:14:44 +01:00
mkdir -p gen/iscguard
mkdir -p gen/isql
mkdir -p gen/jrd
2008-04-11 03:38:50 +02:00
mkdir -p gen/jrd/extds
2009-02-02 15:57:48 +01:00
mkdir -p gen/jrd/trace
mkdir -p gen/msgs
mkdir -p gen/qli
mkdir -p gen/utilities
2003-07-11 04:28:45 +02:00
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
2009-02-03 13:03:25 +01:00
mkdir -p gen/firebird/plugins
2003-07-11 04:28:45 +02:00
mkdir -p gen/firebird/examples/api
mkdir -p gen/firebird/examples/dyn
2005-03-24 12:16:27 +01:00
dnl # mkdir -p gen/firebird/examples/build_unix
dnl # mkdir -p gen/firebird/examples/build_win32
2003-07-11 04:28:45 +02:00
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 # rebuild version header if needed
./src/misc/writeBuildNum.sh rebuildHeader
dnl #### TEMP ######### directories for .o and .d
dnl # by module name
mkdir -p temp/boot/alice
2007-02-06 13:18:18 +01:00
mkdir -p temp/boot/auth/trusted
mkdir -p temp/boot/burp
mkdir -p temp/boot/common/classes
mkdir -p temp/boot/common/config
2005-05-28 00:45:31 +02:00
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
2008-04-11 03:38:50 +02:00
mkdir -p temp/boot/jrd/extds
2009-02-02 16:08:50 +01:00
mkdir -p temp/boot/jrd/trace
mkdir -p temp/boot/jrd/os/posix
mkdir -p temp/boot/jrd/os/win32
2007-03-09 11:32:58 +01:00
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
2007-03-09 11:32:58 +01:00
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
2009-02-03 13:03:25 +01:00
mkdir -p temp/boot/utilities/ntrace
mkdir -p temp/boot/utilities/ntrace/os/posix
2009-02-28 12:43:14 +01:00
mkdir -p temp/boot/utilities/ntrace/os/win32
2005-05-28 00:45:31 +02:00
mkdir -p temp/boot/vulcan
mkdir -p temp/extern/binreloc
mkdir -p temp/std/alice
2007-02-06 13:18:18 +01:00
mkdir -p temp/std/auth/trusted
mkdir -p temp/std/burp
mkdir -p temp/std/common/classes
mkdir -p temp/std/common/config
2005-05-28 00:45:31 +02:00
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
2008-04-11 03:38:50 +02:00
mkdir -p temp/std/jrd/extds
2009-02-02 16:08:50 +01:00
mkdir -p temp/std/jrd/trace
mkdir -p temp/std/jrd/os/posix
mkdir -p temp/std/jrd/os/win32
2007-03-09 11:32:58 +01:00
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
2007-03-09 11:32:58 +01:00
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
2009-02-03 13:03:25 +01:00
mkdir -p temp/std/utilities/ntrace
mkdir -p temp/std/utilities/ntrace/os/posix
2009-02-28 12:43:14 +01:00
mkdir -p temp/std/utilities/ntrace/os/win32
2005-05-28 00:45:31 +02:00
mkdir -p temp/std/vulcan
mkdir -p temp/superclient/alice
2007-02-06 13:18:18 +01:00
mkdir -p temp/superclient/auth/trusted
mkdir -p temp/superclient/burp
mkdir -p temp/superclient/common/classes
mkdir -p temp/superclient/common/config
2005-05-28 00:45:31 +02:00
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
2008-04-11 03:38:50 +02:00
mkdir -p temp/superclient/jrd/extds
2009-02-02 16:08:50 +01:00
mkdir -p temp/superclient/jrd/trace
mkdir -p temp/superclient/jrd/os/posix
mkdir -p temp/superclient/jrd/os/win32
2007-03-09 11:32:58 +01:00
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
2007-03-09 11:32:58 +01:00
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
2009-02-03 13:03:25 +01:00
mkdir -p temp/superclient/utilities/ntrace
mkdir -p temp/superclient/utilities/ntrace/os/posix
2009-02-28 12:43:14 +01:00
mkdir -p temp/superclient/utilities/ntrace/os/win32
2005-05-28 00:45:31 +02:00
mkdir -p temp/superclient/vulcan
mkdir -p temp/superserver/alice
2007-02-06 13:18:18 +01:00
mkdir -p temp/superserver/auth/trusted
mkdir -p temp/superserver/burp
mkdir -p temp/superserver/common/classes
mkdir -p temp/superserver/common/config
2005-05-28 00:45:31 +02:00
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
2008-04-11 03:38:50 +02:00
mkdir -p temp/superserver/jrd/extds
2009-02-02 16:08:50 +01:00
mkdir -p temp/superserver/jrd/trace
mkdir -p temp/superserver/jrd/os/posix
mkdir -p temp/superserver/jrd/os/win32
2007-03-09 11:32:58 +01:00
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
2007-03-09 11:32:58 +01:00
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
2009-02-03 13:03:25 +01:00
mkdir -p temp/superserver/utilities/ntrace
mkdir -p temp/superserver/utilities/ntrace/os/posix
2009-02-28 12:43:14 +01:00
mkdir -p temp/superserver/utilities/ntrace/os/win32
2005-05-28 00:45:31 +02:00
mkdir -p temp/superserver/vulcan
])
MAKE_SRC_DIR=builds/posix
dnl EKU: handle platform specific installation and packaging
2008-01-07 13:26:23 +01:00
dnl: Common Files
case "$PLATFORM" in
2009-02-11 11:29:30 +01:00
[LINUX|GENTOOFREEBSD|HPUX|AIX])
2008-06-09 16:37:39 +02:00
AC_CONFIG_FILES([gen/install/misc/firebird.conf:builds/install/misc/firebird.conf
2008-01-07 13:26:23 +01:00
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
2002-11-22 15:11:28 +01:00
case "$PLATFORM" in
2006-12-08 19:32:09 +01:00
LINUX|GENTOOFREEBSD)
2003-03-03 07:02:29 +01:00
AC_CONFIG_COMMANDS(,,[
mkdir -p gen/install/scripts
mkdir -p gen/install/misc
mkdir -p gen/RPM/RPMS/i686
mkdir -p gen/RPM/BUILD])
2003-07-09 03:20:17 +02:00
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
2005-04-29 20:24:44 +02:00
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
2005-04-29 20:24:44 +02:00
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
2005-04-29 20:24:44 +02:00
gen/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
gen/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in
2008-06-09 16:37:39 +02:00
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])
;;
2008-01-07 13:26:23 +01:00
HPUX)
HP_INSTALL_SRC_DIR=builds/install/arch-specific/hpux/${FIREBIRD_ARCH_TYPE}
2008-06-09 16:37:39 +02:00
AC_CONFIG_FILES([gen/install/makeinstallImage.sh:${HP_INSTALL_SRC_DIR}/makeinstallImage.sh.in
2008-01-10 12:26:58 +01:00
gen/firebirdCS.psf:${HP_INSTALL_SRC_DIR}/firebirdCS.psf.in
2008-12-12 14:53:10 +01:00
gen/firebird/bin/preInstall.sh:${HP_INSTALL_SRC_DIR}/preInstall.sh.in
gen/firebird/bin/tarInstall.sh:${HP_INSTALL_SRC_DIR}/tarInstall.sh.in
gen/firebird/bin/tarmainInstall.sh:${HP_INSTALL_SRC_DIR}/tarmainInstall.sh.in
gen/firebird/bin/tarUninstall.sh:${HP_INSTALL_SRC_DIR}/tarUninstall.sh.in
gen/firebird/bin/tarmainUninstall.sh:${HP_INSTALL_SRC_DIR}/tarmainUninstall.sh.in
gen/firebird/bin/postInstall.sh:${HP_INSTALL_SRC_DIR}/postInstall.sh.in
gen/firebird/bin/preUninstall.sh:${HP_INSTALL_SRC_DIR}/preUninstall.sh.in
gen/firebird/bin/postUninstall.sh:${HP_INSTALL_SRC_DIR}/postUninstall.sh.in
2008-01-07 13:26:23 +01:00
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
2009-04-15 08:29:00 +02:00
gen/firebird/bin/createaliasDB.sh:builds/install/arch-specific/hpux/misc/createaliasDB.sh.in],
2008-01-07 13:26:23 +01:00
[chmod a+x gen/install/scripts/*.sh gen/install/*.sh 2>/dev/null])
;;
2003-10-27 19:42:47 +01:00
2009-02-11 11:29:30 +01:00
AIX)
AIX_INSTALL_SRC_DIR=builds/install/arch-specific/aix/${FIREBIRD_ARCH_TYPE}
2009-02-19 22:10:46 +01:00
AC_CONFIG_FILES([gen/install/scripts/rpmheader.aix.txt:${AIX_INSTALL_SRC_DIR}/rpmheader.txt.in
2009-02-11 11:29:30 +01:00
gen/install/scripts/rpmfiles.aix.txt:${AIX_INSTALL_SRC_DIR}/rpmfiles.txt.in
gen/install/makeInstallImage.aix.sh:${AIX_INSTALL_SRC_DIR}/makeInstallImage.sh.in
gen/firebird/bin/preinstall.aix.sh:builds/install/arch-specific/aix/misc/preinstall.sh.in
gen/firebird/bin/tarinstall.aix.sh:builds/install/arch-specific/aix/misc/tarinstall.sh.in
gen/firebird/bin/tarmaininstall.aix.sh:builds/install/arch-specific/aix/misc/tarmaininstall.sh.in
gen/firebird/bin/taruninstall.aix.sh:builds/install/arch-specific/aix/misc/taruninstall.sh.in
gen/firebird/bin/tarmainuninstall.aix.sh:builds/install/arch-specific/aix/misc/tarmainuninstall.sh.in
gen/firebird/bin/postinstall.aix.sh:builds/install/arch-specific/aix/misc/postinstall.sh.in
gen/firebird/bin/preuninstall.aix.sh:builds/install/arch-specific/aix/misc/preuninstall.sh.in
gen/firebird/bin/postuninstall.aix.sh:builds/install/arch-specific/aix/misc/postuninstall.sh.in
gen/install/misc/firebird.init.d.aix:builds/install/arch-specific/aix/misc/firebird.init.d.aix.in
gen/install/misc/rc.config.firebird.aix:builds/install/arch-specific/aix/misc/rc.config.firebird.aix.in
gen/firebird/bin/changedbapassword.aix.sh:builds/install/misc/changeDBAPassword.sh.in
gen/firebird/bin/changemulticonnectmode.aix.sh:builds/install/misc/changeMultiConnectMode.sh.in
gen/firebird/bin/changegdslibrarycompatiblelink.aix.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
gen/firebird/bin/createaliasdb.aix.sh:builds/install/misc/createAliasDB.sh.in
2009-04-15 08:29:00 +02:00
gen/firebird/bin/aixLibrary.sh:builds/install/arch-specific/aix/misc/aixLibrary.sh.in],
2009-02-11 11:29:30 +01:00
[chmod a+x gen/install/scripts/*.sh gen/install/*.sh 2>/dev/null])
;;
FREEBSD)
2008-06-09 16:37:39 +02:00
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])
;;
2004-05-21 01:05:02 +02:00
NETBSD)
2008-06-09 16:37:39 +02:00
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])
2004-05-21 01:05:02 +02:00
;;
2006-03-09 14:26:47 +01:00
solx86|SOLARIS)
2008-09-02 16:17:32 +02:00
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])
;;
2005-03-11 16:00:03 +01:00
2007-03-09 11:32:58 +01:00
DARWIN)
;;
esac
2007-12-19 14:25:49 +01:00
if test -f ${MAKE_SRC_DIR}/postfix.${MAKEFILE_POSTFIX};then
POSTFIX_FILE=gen/make.platform.postfix:${MAKE_SRC_DIR}/postfix.${MAKEFILE_POSTFIX}
2007-03-09 11:32:58 +01:00
POSTFIX_INCLUDE='include $(ROOT)/gen/make.platform.postfix'
else
POSTFIX_FILE=
POSTFIX_INCLUDE=
fi
AC_SUBST(POSTFIX_INCLUDE)
2002-11-05 17:49:05 +01:00
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/darwin.defaults:${MAKE_SRC_DIR}/darwin.defaults
2007-03-09 11:32:58 +01:00
${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
2003-09-30 19:48:55 +02:00
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
2003-09-30 19:48:55 +02:00
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
2009-02-03 13:03:25 +01:00
gen/Makefile.fbtrace:${MAKE_SRC_DIR}/Makefile.in.fbtrace
2004-01-12 05:58:09 +01:00
gen/Makefile.install:builds/install/arch-specific/${INSTALL_PREFIX}/Makefile.in
Makefile:Makefile.in
2001-07-31 10:42:21 +02:00
)
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
2008-09-02 16:17:32 +02:00
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
2009-04-15 08:29:00 +02:00
echo
echo The Firebird2 package has been configured with the following options:
2002-08-14 14:15:23 +02:00
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