File:  [ELWIX - Embedded LightWeight unIX -] / libaitio / configure.in
Revision 1.56: download - view: text, annotated - select for diffs - revision graph
Thu Aug 18 09:06:31 2016 UTC (7 years, 8 months ago) by misho
Branches: MAIN
CVS tags: io7_4, IO7_3, HEAD
version 7.3

#
# $Author: misho $
# $Id: configure.in,v 1.56 2016/08/18 09:06:31 misho Exp $
#
AC_INIT(libaitio, 7.3, misho@elwix.org)
AC_CONFIG_SRCDIR([src/aitio.c])
AC_CONFIG_HEADERS([inc/config.h])

ac_cv_func_malloc_0_nonnull="yes"
ac_cv_func_realloc_0_nonnull="yes"

# Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_RANLIB

AC_CANONICAL_HOST
AC_CANONICAL_TARGET

AC_CHECK_TOOL(MKDEP, mkdep, ../mkdep)
AC_SUBST(MKDEP)

CFLAGS="-Wall -O2 -fPIC ${CFLAGS}"
LDFLAGS="${LDFLAGS}"

AC_CHECK_LIB([crypto], [EVP_CipherInit_ex])
AC_CHECK_LIB([pthread], [pthread_mutex_init])
AC_CHECK_LIB([util], [forkpty])
AC_CHECK_LIB([rt], [aio_read])
AC_CHECK_LIB([elwix], [crcFletcher16])
AC_CHECK_LIB([aitsched], [schedRead])

# Checks for header files.
AC_CHECK_HEADERS([stdlib.h string.h sys/ioctl.h termios.h unistd.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_C_INLINE

# Checks for library functions.
AC_FUNC_MMAP
AC_CHECK_FUNCS([bzero memset munmap fpurge])
AC_CHECK_FUNCS([pthread_create pthread_exit])
AC_CHECK_FUNCS([shm_open shm_unlink])

# It's stupid, but not all platforms have union semun, even those that need it.
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_UNION_SEMUN,, [union semun])
		] msg=yes, msg=no )
AC_MSG_RESULT([$msg])

DEBUG=no
AC_MSG_CHECKING(Debug Build)
AC_ARG_ENABLE(debug,
	[  --enable-debug          Build library with debug information and additional messages],
	[ DEBUG=$enableval
		case "$enableval" in
			yes)
				CFLAGS="-g ${CFLAGS}"
				;;
			*)
				AC_DEFINE(NDEBUG,, [Build w/o assert() support])
				;;
		esac ],)
AC_MSG_RESULT($DEBUG)

AIO=no
AC_MSG_CHECKING(AIO Build)
AC_ARG_ENABLE(aio,
	[  --enable-aio            Build library with AIO operations ], 
	[ AIO=$enableval
		case "$enableval" in
			yes)
				AC_DEFINE(AIO_OPS,, [Build library with AIO operations])
				;;
			*)
				;;
		esac ],)
AC_MSG_RESULT($AIO)

ZCBUF=no
AC_MSG_CHECKING(Zero-copy buffer Build)
AC_ARG_ENABLE(zcpy-buffer,
	[  --enable-zcpy-buffer    Build library with zero-copy buffer ], 
	[ ZCBUF=$enableval
		case "$enableval" in
			yes)
				AC_DEFINE(ZCBUF_ENABLE,, [Build library with zero-copy buffer])
				;;
			*)
				;;
		esac ],)
AC_MSG_RESULT($ZCBUF)

AC_CONFIG_FILES([Makefile
                 inc/Makefile
                 lib/Makefile
                 src/Makefile])
AC_OUTPUT

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>