8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 04:43:03 +01:00
firebird-mirror/configure.in
alexpeshkoff eb095416cb Use shared robust mutexes if present.
This provides successfull recovery in case when any of firebird processes
died with locked shared mutex (like it was with semaphores SystemV).
2009-04-10 16:53:01 +00:00

1349 lines
44 KiB
Plaintext

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)
m4_ifdef([AC_CONFIG_MACRO_DIR],
[],
[m4_define([AC_CONFIG_MACRO_DIR], [])])
AC_CONFIG_MACRO_DIR(m4)
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)
sinclude(binreloc.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
;;
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
;;
*-*-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
RT_LIB_CHECK=true
;;
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
AM_BINRELOC
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
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 <unistd.h>
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 <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)
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 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)
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, ...)
{
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 <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)])
;;
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_CHECK_FUNCS(nanosleep)
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(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)
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_init())
AC_TRY_RUN([#include <semaphore.h>
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)
AC_CHECK_FUNCS(posix_fadvise)
AC_CHECK_FUNCS(pthread_mutexattr_setrobust_np)
AC_CHECK_FUNCS(pthread_mutex_consistent_np)
# 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 <unistd.h>
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 <sys/socket.h>])
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 <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
AC_CHECK_TYPES([struct XDR::xdr_ops],,,[#include <rpc/rpc.h>
#include <rpc/xdr.h>])
AC_CHECK_TYPES([struct xdr_ops],,,[#include <rpc/rpc.h>
#include <rpc/xdr.h>])
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 <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;
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 <sys/types.h>
#include <sys/socket.h>],
[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_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]),)
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 ### 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/jrd/trace
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/plugins
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 # 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
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/trace
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/utilities/ntrace
mkdir -p temp/boot/utilities/ntrace/os/posix
mkdir -p temp/boot/utilities/ntrace/os/win32
mkdir -p temp/boot/vulcan
mkdir -p temp/extern/binreloc
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/trace
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/utilities/ntrace
mkdir -p temp/std/utilities/ntrace/os/posix
mkdir -p temp/std/utilities/ntrace/os/win32
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/trace
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/utilities/ntrace
mkdir -p temp/superclient/utilities/ntrace/os/posix
mkdir -p temp/superclient/utilities/ntrace/os/win32
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/trace
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/utilities/ntrace
mkdir -p temp/superserver/utilities/ntrace/os/posix
mkdir -p temp/superserver/utilities/ntrace/os/win32
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|AIX])
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/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
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])
;;
AIX)
AIX_INSTALL_SRC_DIR=builds/install/arch-specific/aix/${FIREBIRD_ARCH_TYPE}
AC_CONFIG_FILES([gen/install/scripts/rpmheader.aix.txt:${AIX_INSTALL_SRC_DIR}/rpmheader.txt.in
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
gen/firebird/bin/aixLibrary.sh:builds/install/arch-specific/aix/misc/aixLibrary.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])
;;
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}
gen/darwin.defaults:${MAKE_SRC_DIR}/darwin.defaults
${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.fbtrace:${MAKE_SRC_DIR}/Makefile.in.fbtrace
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