Annotation of libaitsched/configure.in, revision 1.55.2.1
1.1 misho 1: #
2: # $Author: misho $
1.55.2.1! misho 3: # $Id: configure.in,v 1.55 2023/08/31 15:33:51 misho Exp $
1.1 misho 4: #
1.55.2.1! misho 5: AC_INIT(libaitsched, 8.0, misho@elwix.org)
1.1 misho 6: AC_CONFIG_SRCDIR([src/aitsched.c])
7: AC_CONFIG_HEADERS([inc/config.h])
8:
1.20 misho 9: ac_cv_func_malloc_0_nonnull="yes"
10: ac_cv_func_realloc_0_nonnull="yes"
11:
1.1 misho 12: # Checks for programs.
13: AC_PROG_CC
14: AC_PROG_INSTALL
15: AC_PROG_RANLIB
16:
17: AC_CANONICAL_HOST
18: AC_CANONICAL_TARGET
19:
1.35 misho 20: AC_CHECK_TOOL(MKDEP, mkdep, ../mkdep)
1.1 misho 21: AC_SUBST(MKDEP)
22:
1.32 misho 23: CFLAGS="-Wall -O2 -fPIC ${CFLAGS}"
24: LDFLAGS="${LDFLAGS}"
1.1 misho 25:
1.4 misho 26:
1.1 misho 27: # Checks for libraries.
1.4 misho 28: AC_CHECK_LIB([pthread], [pthread_create])
1.13 misho 29: AC_CHECK_LIB([rt], [aio_read])
1.44 misho 30: AC_CHECK_LIB([bsd], [strlcpy])
1.1 misho 31:
32: # Checks for header files.
33: AC_CHECK_HEADERS([stdint.h stdlib.h string.h sys/time.h unistd.h])
1.44 misho 34: AC_CHECK_HEADERS([bsd/string.h])
1.1 misho 35:
36: # Checks for typedefs, structures, and compiler characteristics.
37: AC_C_INLINE
38: AC_TYPE_SIZE_T
39:
40: # Checks for library functions.
41: AC_FUNC_MALLOC
1.35 misho 42: AC_CHECK_FUNCS([clock_gettime memset strerror timer_create timer_settime timer_delete strlcat strlcpy])
1.1 misho 43:
44: DEBUG=no
45: AC_MSG_CHECKING(Debug Build)
46: AC_ARG_ENABLE(debug,
47: [ --enable-debug Build library with debug information and additional messages],
48: [ DEBUG=$enableval
49: case "$enableval" in
50: yes)
51: AC_DEFINE(__DEBUG,, [Build libraries with debug information and additional messages])
52: CFLAGS="-g ${CFLAGS}"
53: ;;
54: *)
55: AC_DEFINE(NDEBUG,, [Turn off debug asserts])
56: ;;
57: esac ], AC_DEFINE(NDEBUG,, [Turn off debug asserts]))
58: AC_MSG_RESULT($DEBUG)
59:
1.13 misho 60: AIO=no
61: AC_MSG_CHECKING(AIO Builtin support)
62: AC_ARG_ENABLE(aio,
63: [ --enable-aio Build scheduler library with AIO operations ],
64: [ AIO=$enableval
65: case "$enableval" in
66: yes)
67: AC_DEFINE(AIO_SUPPORT,, [Build scheduler library with AIO operations])
68: ;;
69: *)
70: ;;
71: esac ],)
72: AC_MSG_RESULT($AIO)
73:
1.35 misho 74: AC_DEFINE(NO_SUPPORT, 0, [select support])
75: AC_DEFINE(KQ_SUPPORT, 1, [kqueue support])
76: AC_DEFINE(EP_SUPPORT, 2, [epoll support])
77:
78: AC_DEFINE(SUP_ENABLE, KQ_SUPPORT, [support type])
79:
80: EPSUP=no
81: AC_MSG_CHECKING(epoll support)
82: AC_ARG_ENABLE(epoll,
83: [ --enable-epoll Enable epoll support (only under Linux) ],
84: [ EPSUP=$enableval
85: case "$enableval" in
86: yes)
87: AC_DEFINE(SUP_ENABLE, EP_SUPPORT, [support type])
88: KQSUP=no
89: ;;
90: *)
91: KQSUP=yes
92: ;;
93: esac ], [ KQSUP=yes ])
94: AC_MSG_RESULT($EPSUP)
95:
1.32 misho 96: AC_MSG_CHECKING(kqueue support)
97: AC_ARG_ENABLE(kqueue,
98: [ --disable-kqueue Disable kqueue support ],
99: [ KQSUP=$enableval
100: case "$enableval" in
101: no)
1.35 misho 102: AC_DEFINE(SUP_ENABLE, NO_SUPPORT, [support type])
1.32 misho 103: ;;
104: *)
105: ;;
1.35 misho 106: esac ], )
1.32 misho 107: AC_MSG_RESULT($KQSUP)
108:
1.22 misho 109: KQ_EVENTS=24
110: AC_MSG_CHECKING(How many kqueue events can scheduling at one time)
111: AC_ARG_WITH(kq_events,
112: [ --with-kq_events Set how many kqueue events can scheduling at one time ],
113: [ KQ_EVENTS=$withval ], KQ_EVENTS=32)
114: AC_DEFINE_UNQUOTED(KQ_EVENTS, $KQ_EVENTS, [ How many kqueue events can scheduling at one time ])
115: AC_MSG_RESULT($KQ_EVENTS)
116:
1.45 misho 117: ELWIX=no
118: AC_MSG_CHECKING(With libelwix Build)
119: AC_ARG_WITH(elwix,
120: [ --with-elwix Build library with libelwix memory managemant],
121: [ ELWIX=$withval
122: case "$withval" in
123: yes)
124: AC_DEFINE(__ELWIX,, [Build libraries with libelwix memory managemant])
125: CFLAGS="-g ${CFLAGS}"
126: LIBS="${LIBS} -lelwix"
127: ;;
128: *)
129: ;;
130: esac ],)
131: AC_MSG_RESULT($ELWIX)
132:
1.1 misho 133: AC_CONFIG_FILES([Makefile
134: inc/Makefile
135: lib/Makefile
136: src/Makefile])
1.13 misho 137: AC_OUTPUT()
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>