| AC_CONFIG_AUX_DIR(./helpers) |
| OS=`./config.guess` |
| OS=`./config.sub $OS` |
| |
| echo "Configuring APR library" |
| echo "Platform: ${OS}" |
| |
| dnl Process this file with autoconf to produce a configure script. |
| AC_INIT(configure.in) |
| |
| AC_CONFIG_HEADER(include/apr_config.h) |
| |
| AC_ARG_WITH(optim,[ --with-optim="FLAGS" compiler optimisation flags], |
| [OPTIM="$withval"]) |
| |
| # Most platforms use a prefix of 'lib' on their library files. |
| LIBPREFIX='lib' |
| |
| dnl Checks for programs. |
| AC_PROG_CC |
| AC_PROG_RANLIB |
| AC_PROG_MAKE_SET |
| AC_CHECK_PROG(RM, rm, rm) |
| AC_CHECK_PROG(AR, ar, ar) |
| |
| dnl # this is the place to put specific options for platform/compiler |
| dnl # combinations |
| case "$OS:$CC" in |
| *-hp-hpux*:cc ) CFAGS="$CFLAGS -Ae +DAportable" ;; |
| esac |
| |
| |
| # This macro needs to be here in case we are on an AIX box. |
| AC_AIX |
| |
| dnl Checks for integer size |
| AC_CHECK_SIZEOF(char, 1) |
| AC_CHECK_SIZEOF(int, 4) |
| AC_CHECK_SIZEOF(long, 4) |
| AC_CHECK_SIZEOF(short, 2) |
| AC_CHECK_SIZEOF(long double, 12) |
| AC_CHECK_SIZEOF(long long, 8) |
| |
| dnl Checks for standard typedefs |
| AC_TYPE_OFF_T |
| AC_TYPE_PID_T |
| AC_TYPE_SIZE_T |
| AC_TYPE_UID_T |
| AC_CHECK_TYPE(ssize_t, int) |
| AC_C_INLINE |
| |
| # Use /bin/sh if it exists, otherwise go looking for sh in the path |
| if (test -z "$SH" -a -e /bin/sh); then |
| SH="/bin/sh" |
| fi |
| AC_CHECK_PROG(SH, sh, sh) |
| |
| AC_CHECK_DEFINE(LOCK_EX, sys/file.h) |
| AC_CHECK_DEFINE(F_SETLK, fcntl.h) |
| AC_CHECK_DEFINE(PTHREAD_PROCESS_SHARED, pthread.h) |
| |
| dnl Checks for libraries. |
| AC_BEGIN_DECISION([lock implementation method]) |
| AC_IFALLYES(header:sys/file.h define:LOCK_EX, |
| AC_DECIDE(USE_FLOCK_SERIALIZE, [4.2BSD-style flock()])) |
| AC_IFALLYES(header:sys/ipc.h header:sys/sem.h header:sys/file.h dnl |
| func:semget func:semctl, |
| AC_DECIDE(USE_SYSVSEM_SERIALIZE, [SysV IPC semget()])) |
| AC_IFALLYES(header:fcntl.h define:F_SETLK, |
| AC_DECIDE(USE_FCNTL_SERIALIZE, [SVR4-style fcntl()])) |
| AC_IFALLYES(header:pthread.h define:PTHREAD_PROCESS_SHARED dnl |
| custom:use_pthread_cross, |
| AC_DECIDE(USE_PROC_PTHREAD_SERIALIZE, [pthread mutex])) |
| AC_DECISION_FORCE(USE_FCNTL_SERIALIZE) |
| AC_END_DECISION |
| AC_DEFINE_UNQUOTED($ac_decision) |
| |
| AC_USE_FUNCTION(pthread_mutex_init, PTHREAD_SERIALIZE) |
| |
| case "$OS" in |
| *beos*) |
| OSDIR="beos" |
| ;; |
| *) |
| OSDIR="unix" |
| ;; |
| esac |
| |
| AC_CHECK_LIB(dl, dlopen) |
| AC_CHECK_LIB(pthread, pthread_mutex_init) |
| |
| if (test "$SYS_SW" = "AIX"); then |
| CFLAGS="$CFLAGS -U__STR__" |
| case "$SYS_KV" in |
| [12]*) |
| AC_DEFINE(USEBCOPY) |
| ;; |
| 3*) |
| AC_DEFINE(NEED_RLIM_T) |
| ;; |
| 41*) |
| AC_DEFINE(NEED_RLIM_T) |
| ;; |
| esac |
| fi |
| |
| if (test "$SYS_SW" = "FreeBSD"); then |
| CFLAGS="$CFLAGS -pthread -U__STR__" |
| fi |
| |
| dnl Checks for header files. |
| AC_HEADER_STDC |
| |
| AC_CHECK_HEADERS(crypt.h) |
| AC_CHECK_HEADERS(ctype.h) |
| AC_CHECK_HEADERS(dir.h) |
| AC_CHECK_HEADERS(dirent.h) |
| AC_CHECK_HEADERS(errno.h) |
| AC_CHECK_HEADERS(net/errno.h) |
| AC_CHECK_HEADERS(fcntl.h) |
| AC_CHECK_HEADERS(features.h) |
| AC_CHECK_HEADERS(grp.h) |
| AC_CHECK_HEADERS(io.h) |
| AC_CHECK_HEADERS(limits.h) |
| AC_CHECK_HEADERS(malloc.h) |
| AC_CHECK_HEADERS(math.h) |
| AC_CHECK_HEADERS(memory.h) |
| AC_CHECK_HEADERS(netdb.h) |
| AC_CHECK_HEADERS(osreldate.h) |
| AC_CHECK_HEADERS(process.h) |
| AC_CHECK_HEADERS(pwd.h) |
| AC_CHECK_HEADERS(setjmp.h) |
| AC_CHECK_HEADERS(signal.h) |
| AC_CHECK_HEADERS(stdarg.h) |
| AC_CHECK_HEADERS(stddef.h) |
| AC_CHECK_HEADERS(stdio.h) |
| AC_CHECK_HEADERS(stdlib.h) |
| AC_CHECK_HEADERS(string.h) |
| AC_CHECK_HEADERS(sysapi.h) |
| AC_CHECK_HEADERS(sysgtime.h) |
| AC_CHECK_HEADERS(time.h) |
| AC_CHECK_HEADERS(sys/time.h) |
| AC_CHECK_HEADERS(sys/times.h) |
| AC_CHECK_HEADERS(tpfeq.h) |
| AC_CHECK_HEADERS(tpfio.h) |
| AC_CHECK_HEADERS(unistd.h) |
| AC_CHECK_HEADERS(unix.h) |
| AC_CHECK_HEADERS(winsock.h) |
| |
| AC_CHECK_HEADERS(arpa/inet.h) |
| AC_CHECK_HEADERS(netinet/in.h) |
| |
| AC_CHECK_HEADERS(sys/file.h) |
| AC_CHECK_HEADERS(sys/ioctl.h) |
| AC_CHECK_HEADERS(sys/mman.h) |
| AC_CHECK_HEADERS(sys/param.h) |
| AC_CHECK_HEADERS(sys/resource.h) |
| AC_CHECK_HEADERS(sys/select.h) |
| AC_CHECK_HEADERS(sys/socket.h) |
| AC_CHECK_HEADERS(sys/stat.h) |
| AC_CHECK_HEADERS(sys/types.h) |
| AC_CHECK_HEADERS(sys/wait.h) |
| |
| AC_CHECK_HEADERS(pthread.h) |
| |
| dnl Checks for typedefs, structures, and compiler characteristics. |
| AC_C_CONST |
| AC_TYPE_SIZE_T |
| AC_FUNC_MMAP |
| AC_FUNC_SETPGRP |
| |
| AC_MSG_CHECKING(looking for union semun in sys/sem.h) |
| AC_TRY_COMPILE([ |
| #include <sys/types.h> |
| #include <sys/ipc.h> |
| #include <sys/sem.h> |
| ],[ |
| union semun arg; |
| semctl(0, 0, 0, arg); |
| ], AC_DEFINE(HAVE_STRUCT_UNION_SEMUN) |
| msg=yes,dnl |
| msg=no) |
| AC_MSG_RESULT([$msg]) |
| |
| dnl Checks for library functions. |
| AC_CHECK_FUNCS(strcasecmp stricmp poll setsid) |
| AC_CHECK_FUNCS(sigaction writev) |
| |
| dnl Start building stuff from our information |
| AC_SUBST(LDLIBS) |
| AC_SUBST(OPTIM) |
| AC_SUBST(RANLIB) |
| AC_SUBST(AR) |
| AC_SUBST(RM) |
| AC_SUBST(OSDIR) |
| AC_SUBST(LIBPREFIX) |
| AC_SUBST(EXEEXT) |
| AC_OUTPUT(Makefile lib/Makefile file_io/$OSDIR/Makefile |
| network_io/$OSDIR/Makefile threadproc/$OSDIR/Makefile |
| locks/$OSDIR/Makefile misc/$OSDIR/Makefile |
| time/$OSDIR/Makefile signal/$OSDIR/Makefile |
| test/Makefile) |