2
# Copyright (c) 2006, 2009, Innobase Oy. All Rights Reserved.
4
# This program is free software; you can redistribute it and/or modify it under
5
# the terms of the GNU General Public License as published by the Free Software
6
# Foundation; version 2 of the License.
8
# This program is distributed in the hope that it will be useful, but WITHOUT
9
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
10
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12
# You should have received a copy of the GNU General Public License along with
13
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
14
# Place, Suite 330, Boston, MA 02111-1307 USA
17
DRIZZLE_STORAGE_ENGINE(innobase, innodb, [InnoDB Storage Engine],
18
[Transactional Tables using InnoDB], [max,max-no-ndb])
19
DRIZZLE_PLUGIN_STATIC(innobase, [libinnobase.la])
20
DRIZZLE_PLUGIN_DYNAMIC(innobase, [ha_innodb.la])
21
DRIZZLE_PLUGIN_MANDATORY(innobase) dnl Default
22
DRIZZLE_PLUGIN_ACTIONS(innobase, [
25
AC_CHECK_LIB(rt, aio_read, [innodb_system_libs="-lrt"])
26
AC_SUBST(innodb_system_libs)
27
AC_CHECK_HEADERS(aio.h sched.h)
28
AC_CHECK_SIZEOF(int, 4)
29
AC_CHECK_SIZEOF(long, 4)
30
AC_CHECK_SIZEOF(void*, 4)
31
AC_CHECK_FUNCS(sched_yield fdatasync localtime_r)
32
AC_CHECK_FUNCS([uname munmap memchr getpagesize bzero])
36
CFLAGS="$CFLAGS -DUNIV_LINUX";;
38
CFLAGS="$CFLAGS -DUNIV_MUST_NOT_INLINE -DUNIV_HPUX -DUNIV_HPUX10";;
40
CFLAGS="$CFLAGS -DUNIV_MUST_NOT_INLINE -DUNIV_HPUX";;
42
CFLAGS="$CFLAGS -DUNIV_AIX";;
43
irix*|osf*|sysv5uw7*|openbsd*)
44
CFLAGS="$CFLAGS -DUNIV_MUST_NOT_INLINE";;
46
CFLAGS="$CFLAGS -DUNIV_SOLARIS";;
48
INNODB_DYNAMIC_CFLAGS="-DDRIZZLE_DYNAMIC_PLUGIN"
51
# The AMD64 ABI forbids absolute addresses in shared libraries
54
# Use absolute addresses on IA-32
55
INNODB_DYNAMIC_CFLAGS="$INNODB_DYNAMIC_CFLAGS -prefer-non-pic"
58
AC_SUBST(INNODB_DYNAMIC_CFLAGS)
59
AC_MSG_CHECKING(whether pthread_t can be used by GCC atomic builtins)
64
int main(int argc, char** argv) {
69
__sync_bool_compare_and_swap(&x1, x2, x3);
75
AC_DEFINE([HAVE_ATOMIC_PTHREAD_T], [1],
76
[pthread_t can be used by GCC atomic builtins])