~drizzle-trunk/drizzle/development

575.4.7 by Monty Taylor
More header cleanup.
1
dnl -*- bash -*-
1 by brian
clean slate
2
dnl Process this file with autoconf to produce a configure script.
3
992.1.25 by Monty Taylor
Moved myisam to new plugin system.
4
dnl  Copyright (C) 2009 Sun Microsystems
5
dnl
6
dnl  This program is free software; you can redistribute it and/or modify
7
dnl  it under the terms of the GNU General Public License as published by
8
dnl  the Free Software Foundation; version 2 of the License.
9
dnl
10
dnl  This program is distributed in the hope that it will be useful,
11
dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of
12
dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
dnl  GNU General Public License for more details.
14
dnl
15
dnl  You should have received a copy of the GNU General Public License
16
dnl  along with this program; if not, write to the Free Software
17
dnl  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
19
77.1.65 by Monty Taylor
We don't really require 2.61, 2.59 is actually fine.
20
AC_PREREQ(2.59)dnl		Minimum Autoconf version required.
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
21
AC_INIT([drizzle],[RELEASE_VERSION],[http://bugs.launchpad.net/drizzle])
214 by Brian Aker
Rename of fields (fix issue with string and decimal .h clashing).
22
AC_CONFIG_SRCDIR([drizzled/drizzled.cc])
39 by Brian Aker
Move build helper files into config
23
AC_CONFIG_AUX_DIR(config)
236.1.9 by Monty Taylor
Cleaned up configure.ac line.
24
AC_CONFIG_HEADERS([config.h])
908.1.4 by Monty Taylor
Fix to fake-out libtoolize, since AC_INIT is in bzr_version.m4 now.
25
AC_CONFIG_MACRO_DIR([m4])
435.1.1 by Monty Taylor
Fixed -O3 optimization for gcc.
26
1085.3.4 by Monty Taylor
pandora-build v0.8
27
PANDORA_CANONICAL_TARGET(less-warnings, warnings-always-on, use-gnulib, require-cxx, force-gcc42)
873.2.41 by Monty Taylor
Fixed the ol build for ol Solaris.
28
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
29
# Version with no dots
1093.7.6 by Monty Taylor
pandora-build v0.34
30
AC_DEFINE([DRIZZLE_VERSION_ID],RELEASE_ID,
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
31
	  [Version ID that can be easily used for numeric comparison])
1 by brian
clean slate
32
859.1.4 by Monty Taylor
Hack to allow use of hash_map in gcc 4.3.
33
AC_DEFINE([_BACKWARD_BACKWARD_WARNING_H],[1],[Hack to disable deprecation warning in gcc])
34
971.3.48 by Eric Day
New Listen interface about done, not quite compiling yet, but need a backup.
35
# The port that was assigned by IANA.
301 by Brian Aker
Clean up port startup
36
DRIZZLE_TCP_PORT_DEFAULT=4427
1 by brian
clean slate
37
722.1.3 by Monty Taylor
Cleaned up a few build things.
38
# Set this for plugins to use
39
ac_build_drizzle="yes"
441 by Monty Taylor
Move unconditional defines to config.h.
40
41
873.2.4 by Monty Taylor
Fixed some configure errors.
42
AC_PATH_PROG(GPERF, gperf)
43
AS_IF([test "x$GPERF" = "x"],
917.1.5 by Monty Taylor
Added more verbose failure messages.
44
      AC_MSG_ERROR("Drizzle requires gperf to build."))
779.4.5 by Monty Taylor
Replaced gen_lex_hash with gperf. Yay for no more building tools to build source!!!
45
840.1.3 by Monty Taylor
Fixed gperf checking to fail properly.
46
AC_PATH_PROG(LCOV, lcov)
47
AC_PATH_PROG(GENHTML, genhtml)
779.1.25 by Monty Taylor
Put in LCOV checks. Put output in subdir.
48
873.2.4 by Monty Taylor
Fixed some configure errors.
49
AM_CONDITIONAL(HAVE_LCOV,[test "x$LCOV" != "x"])
779.1.25 by Monty Taylor
Put in LCOV checks. Put output in subdir.
50
629.1.1 by Monty Taylor
More solaris fixes.
51
AC_CHECK_PROGS(YACC, ['bison -y'])
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
52
if test -z "$YACC" && test "$building_from_bzr" = "yes"
77.1.70 by Monty Taylor
Added a failure if you don't have bison and you're building from a .bzr branch.
53
then
54
  AC_MSG_ERROR(["bison is required for Drizzle to build from a bzr branch"])
55
fi
1 by brian
clean slate
56
971.4.1 by Monty Taylor
GCC on Solaris build fixes.
57
919.2.22 by Monty Taylor
Fixed the latest stuff on Solaris.
58
AM_GNU_GETTEXT(external, need-formatstring-macros)
59
if test "x$MSGMERGE" = "x" -o "x$MSGMERGE" = "x:"
60
then
61
  AM_PATH_PROG_WITH_TEST(GMSGMERGE, gmsgmerge,
62
    [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :)
63
  MSGMERGE="${GMSGMERGE}"
64
fi
65
AM_CONDITIONAL([BUILD_GETTEXT],[test "x$MSGMERGE" != "x" -a "x$MSGMERGE" != "x:"])
66
67
520.4.44 by mordred
A whole bunch of solaris/sun studio compile fixes.
68
AC_CXX_STL_HASH
69
AC_CXX_CSTDINT
70
AC_CXX_CINTTYPES
1 by brian
clean slate
71
1099.1.6 by Monty Taylor
pandora-build v0.25
72
PANDORA_REQUIRE_PTHREAD
73
74
PANDORA_REQUIRE_LIBPROTOBUF
75
PANDORA_PROTOBUF_RECENT
76
PANDORA_REQUIRE_PROTOC
77.1.111 by Monty Taylor
Added --enable-tcmalloc which will enable searching for and linking with tcmalloc if you have it.
77
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
78
#--------------------------------------------------------------------
520.4.27 by Monty Taylor
Fail if we don't find uuid/uuid.h.
79
# Check for libuuid
80
#--------------------------------------------------------------------
81
779.2.1 by Monty Taylor
Added new pthread m4 file. Changing lib checks to use AC_LIB_HAVE_LINKFLAGS
82
dnl Do this by hand. Need to check for uuid/uuid.h, but uuid may or may
83
dnl not be a lib is weird.
84
590.2.13 by Monty Taylor
Reverted libuuid check code.
85
AC_CHECK_HEADERS(uuid/uuid.h)
86
if test "x$ac_cv_header_uuid_uuid_h" = "xno"
87
then
917.1.5 by Monty Taylor
Added more verbose failure messages.
88
  AC_MSG_ERROR([Couldn't find uuid/uuid.h. On Debian this can be found in uuid-dev. On Redhat this can be found in e2fsprogs-devel.])
590.2.13 by Monty Taylor
Reverted libuuid check code.
89
fi
779.2.3 by Monty Taylor
Added stdlib.h depend for readline.
90
AC_LIB_HAVE_LINKFLAGS(uuid,,
91
[
92
#include <uuid/uuid.h>
93
],
94
[
95
  uuid_t uout;
96
  uuid_generate(uout);
97
])
98
134.2.1 by Antony Curtis
Changes for proper detection of libraries
99
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
100
101
102
#--------------------------------------------------------------------
612.2.5 by Monty Taylor
Added test for mtmalloc, if we haven't explicitly asked for tcmalloc.
103
# Check for tcmalloc/mtmalloc
77.1.111 by Monty Taylor
Added --enable-tcmalloc which will enable searching for and linking with tcmalloc if you have it.
104
#--------------------------------------------------------------------
105
1093.2.1 by Monty Taylor
pandora-build v0.16
106
PANDORA_HAVE_BETTER_MALLOC
107
LIBS="${LIBS} ${BETTER_MALLOC_LIBS}"
779.2.1 by Monty Taylor
Added new pthread m4 file. Changing lib checks to use AC_LIB_HAVE_LINKFLAGS
108
77.1.111 by Monty Taylor
Added --enable-tcmalloc which will enable searching for and linking with tcmalloc if you have it.
109
#--------------------------------------------------------------------
779.1.15 by Monty Taylor
Added libdrizzle configure support.
110
# Check for libdrizzle
111
#--------------------------------------------------------------------
112
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
113
AC_LANG_PUSH(C++)
1093.2.1 by Monty Taylor
pandora-build v0.16
114
PANDORA_REQUIRE_LIBDRIZZLE
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
115
AC_LANG_POP
779.1.15 by Monty Taylor
Added libdrizzle configure support.
116
117
118
#--------------------------------------------------------------------
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
119
# Check for libz
120
#--------------------------------------------------------------------
121
779.2.1 by Monty Taylor
Added new pthread m4 file. Changing lib checks to use AC_LIB_HAVE_LINKFLAGS
122
AC_LIB_HAVE_LINKFLAGS(z,,
123
[#include <zlib.h>],
124
[
125
  crc32(0, Z_NULL, 0);
126
])
127
AS_IF([test x$ac_cv_libz = xno],
917.1.5 by Monty Taylor
Added more verbose failure messages.
128
      AC_MSG_ERROR([libz is required for Drizzle. On Debian this can be found in zlib1g-dev. On RedHat this can be found in zlib-devel.]))
201.2.3 by Monty Taylor
Cleaned up some LIBS bits in the build.
129
612.2.9 by Monty Taylor
Woot. No more extra CFLAGS on the command line!
130
#--------------------------------------------------------------------
182.1.5 by Jim Winstead
Detect and make the Mac OS X libedit readline interface look like the
131
# Check for libreadline or compatible (libedit on Mac OS X)
132
#--------------------------------------------------------------------
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
133
779.2.5 by Monty Taylor
Split out readline.
134
save_LIBS="${LIBS}"
135
LIBS=""
779.2.4 by Monty Taylor
Updated some more build stuff.
136
VL_LIB_READLINE
873.2.4 by Monty Taylor
Fixed some configure errors.
137
AS_IF([test "x$vl_cv_lib_readline" = "xno"],
917.1.5 by Monty Taylor
Added more verbose failure messages.
138
      AC_MSG_ERROR([libreadline is required for Drizzle. On Debian this can be found in libreadline5-dev. On RedHat this can be found in readline-devel.]))
779.2.5 by Monty Taylor
Split out readline.
139
READLINE_LIBS="${LIBS}"
140
LIBS="${save_LIBS}"
141
AC_SUBST(READLINE_LIBS)
207.1.2 by Jim Winstead
Fix test for libreadline to test a function that exists in all usable
142
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
143
DRIZZLE_CHECK_NEW_RL_INTERFACE
287.3.30 by Monty Taylor
Added step one of finding libprotobuf.
144
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
145
#--------------------------------------------------------------------
146
# Check for libpcre
147
#--------------------------------------------------------------------
148
971.5.2 by Eric Day
Fixed more autoconf bugs.
149
AC_LIB_HAVE_LINKFLAGS(pcre,,
150
[#include <pcre.h>],
151
[
152
  pcre *re= NULL;
153
  pcre_version();
154
])
971.5.1 by Eric Day
Fix for bug #372367, pcre header detection.
155
AS_IF([test "x$ac_cv_libpcre" = "xno"],
156
[
914.1.1 by Monty Taylor
Quick OpenSolaris build fix.
157
  unset ac_cv_libpcre
971.5.2 by Eric Day
Fixed more autoconf bugs.
158
  unset HAVE_LIBPCRE
159
  unset LIBPCRE
160
  unset LIBPCRE_PREFIX
161
  unset LTLIBPCRE
162
  AC_LIB_HAVE_LINKFLAGS(pcre,,
163
  [#include <pcre/pcre.h>],
164
  [
165
    pcre *re= NULL;
166
    pcre_version();
167
  ])
914.1.1 by Monty Taylor
Quick OpenSolaris build fix.
168
  AS_IF([test "x$ac_cv_libpcre" = "xno"],
971.5.1 by Eric Day
Fix for bug #372367, pcre header detection.
169
  [
170
    AC_MSG_ERROR([libpcre is required for Drizzle. On Debian this can be found in libpcre3-dev. On RedHat this can be found in pcre-devel.])
171
  ],[
172
    AC_DEFINE(PCRE_HEADER,[<pcre/pcre.h>],[Location of pcre header])
173
  ])
914.1.1 by Monty Taylor
Quick OpenSolaris build fix.
174
],[
175
  AC_DEFINE(PCRE_HEADER,[<pcre.h>],[Location of pcre header])
176
])
779.2.9 by Monty Taylor
Put back in pkg-config check- pcre.h is in /usr/include for older versions and
177
77.1.63 by Monty Taylor
Fail also if we can't find libevent or pthread.h.
178
1 by brian
clean slate
179
AC_PATH_PROG(PERL, perl, no)
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
180
1 by brian
clean slate
181
28.1.39 by Monty Taylor
Made everything use AS_HELP_STRING (except for charsets, which are dying anyway)
182
AC_ARG_WITH([server-suffix],
183
    [AS_HELP_STRING([--with-server-suffix],
184
      [Append value to the version string.])],
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
185
    [ DRIZZLE_SERVER_SUFFIX=`echo "$withval" | sed -e  's/^\(...................................\)..*$/\1/'` ],
186
    [ DRIZZLE_SERVER_SUFFIX= ]
1 by brian
clean slate
187
    )
546 by Monty Taylor
Cleaned up version.h. (And by cleaned, I mean removed)
188
AC_DEFINE_UNQUOTED([DRIZZLE_SERVER_SUFFIX],[$DRIZZLE_SERVER_SUFFIX],
189
                   [Append value to the version string])
1 by brian
clean slate
190
191
# Force use of a curses libs
28.1.39 by Monty Taylor
Made everything use AS_HELP_STRING (except for charsets, which are dying anyway)
192
AC_ARG_WITH([named-curses-libs],
193
    [AS_HELP_STRING([--with-named-curses-libs=ARG],
194
            [Use specified curses libraries instead of those
195
		automatically found by configure.])],
1 by brian
clean slate
196
    [ with_named_curses=$withval ],
197
    [ with_named_curses=no ]
198
    )
199
28.1.39 by Monty Taylor
Made everything use AS_HELP_STRING (except for charsets, which are dying anyway)
200
AC_ARG_WITH([tcp-port],
201
    [AS_HELP_STRING([--with-tcp-port=port-number],
971.3.48 by Eric Day
New Listen interface about done, not quite compiling yet, but need a backup.
202
            [Which port to use for Drizzle TCP services @<:@default=4427@:>@])],
971.3.51 by Eric Day
Finished up new Listen plugin interface.
203
    [ DRIZZLE_TCP_PORT=$withval ],
301 by Brian Aker
Clean up port startup
204
    [ DRIZZLE_TCP_PORT=$DRIZZLE_TCP_PORT_DEFAULT
1 by brian
clean slate
205
      # if we actually defaulted (as opposed to the pathological case of
301 by Brian Aker
Clean up port startup
206
      # --with-tcp-port=<DRIZZLE_TCP_PORT_DEFAULT> which might in theory
1 by brian
clean slate
207
      # happen if whole batch of servers was built from a script), set
208
      # the default to zero to indicate that; we don't lose information
209
      # that way, because 0 obviously indicates that we can get the
301 by Brian Aker
Clean up port startup
210
      # default value from DRIZZLE_TCP_PORT. this seems really evil, but
211
      # testing for DRIZZLE_TCP_PORT==DRIZZLE_TCP_PORT_DEFAULT would make a
212
      # a port of DRIZZLE_TCP_PORT_DEFAULT magic even if the builder did not
1 by brian
clean slate
213
      # intend it to mean "use the default, in fact, look up a good default
165.1.1 by Elliot Murphy
new port number from IANA
214
      # from /etc/services if you can", but really, really meant 4427 when
215
      # they passed in 4427. When they pass in a specific value, let them
1 by brian
clean slate
216
      # have it; don't second guess user and think we know better, this will
217
      # just make people cross.  this makes the the logic work like this
218
      # (which is complicated enough):
219
      #
220
      # - if a port was set during build, use that as a default.
221
      #
222
      # - otherwise, try to look up a port in /etc/services; if that fails,
301 by Brian Aker
Clean up port startup
223
      #   use DRIZZLE_TCP_PORT_DEFAULT (at the time of this writing 4427)
1 by brian
clean slate
224
      #
301 by Brian Aker
Clean up port startup
225
      # - allow the DRIZZLE_TCP_PORT environment variable to override that.
1 by brian
clean slate
226
      #
227
      # - allow command-line parameters to override all of the above.
228
      #
301 by Brian Aker
Clean up port startup
229
      # the top-most DRIZZLE_TCP_PORT_DEFAULT is read from win/configure.js,
1 by brian
clean slate
230
      # so don't mess with that.
301 by Brian Aker
Clean up port startup
231
      DRIZZLE_TCP_PORT_DEFAULT=0 ]
1 by brian
clean slate
232
    )
971.3.48 by Eric Day
New Listen interface about done, not quite compiling yet, but need a backup.
233
301 by Brian Aker
Clean up port startup
234
AC_SUBST(DRIZZLE_TCP_PORT)
235
AC_SUBST(DRIZZLE_TCP_PORT_DEFAULT)
971.3.48 by Eric Day
New Listen interface about done, not quite compiling yet, but need a backup.
236
AC_DEFINE_UNQUOTED([DRIZZLE_TCP_PORT],[$DRIZZLE_TCP_PORT],
546 by Monty Taylor
Cleaned up version.h. (And by cleaned, I mean removed)
237
                   [Drizzle port to use])
971.3.48 by Eric Day
New Listen interface about done, not quite compiling yet, but need a backup.
238
AC_DEFINE_UNQUOTED([DRIZZLE_TCP_PORT_DEFAULT],[$DRIZZLE_TCP_PORT_DEFAULT],
239
                   [If we defaulted to DRIZZLE_PORT, then this will be zero])
240
1 by brian
clean slate
241
242
# Use this to set the place used for unix socket used to local communication.
572.2.1 by ysano
Replace --with-mysqld-user configure option with --with-drizzled-user.
243
AC_ARG_WITH([drizzled-user],
244
    [AS_HELP_STRING([--with-drizzled-user=username],
245
            [What user the drizzled daemon shall be run as.
246
		@<:@default=drizzle@:>@])],
247
    [ DRIZZLED_USER=$withval ],
248
    [ DRIZZLED_USER=drizzle ]
1 by brian
clean slate
249
    )
572.2.1 by ysano
Replace --with-mysqld-user configure option with --with-drizzled-user.
250
AC_SUBST(DRIZZLED_USER)
1 by brian
clean slate
251
252
# If we should allow LOAD DATA LOCAL
253
AC_MSG_CHECKING(If we should should enable LOAD DATA LOCAL by default)
254
AC_ARG_ENABLE(local-infile,
255
    [  --enable-local-infile   Enable LOAD DATA LOCAL INFILE (default: disabled)],
256
    [ ENABLED_LOCAL_INFILE=$enableval ],
257
    [ ENABLED_LOCAL_INFILE=no ]
258
    )
259
if test "$ENABLED_LOCAL_INFILE" = "yes"
260
then
261
  AC_MSG_RESULT([yes])
262
  AC_DEFINE([ENABLED_LOCAL_INFILE], [1],
263
            [If LOAD DATA LOCAL INFILE should be enabled by default])
264
else
265
  AC_MSG_RESULT([no])
266
fi
267
268
#--------------------------------------------------------------------
269
# Check for system header files
270
#--------------------------------------------------------------------
271
272
AC_HEADER_DIRENT
273
AC_HEADER_STDC
274
AC_HEADER_SYS_WAIT
53.2.2 by Monty Taylor
Updated everything that needs updating to compile with -std=gnu99 -pedantic
275
AC_HEADER_STDBOOL
77.1.22 by Monty Taylor
Removed refs to floatingpoint.h (which we only used for fconvert) and fconvert
276
AC_CHECK_HEADERS(fcntl.h float.h fpu_control.h ieeefp.h)
53.2.29 by Monty Taylor
Cleaned up headers a little more.
277
AC_CHECK_HEADERS(limits.h pwd.h select.h linux/config.h)
278
AC_CHECK_HEADERS(sys/fpu.h utime.h sys/utime.h )
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
279
AC_CHECK_HEADERS(synch.h sys/mman.h sys/socket.h)
520.4.41 by mordred
Fixed configure.ac to work cleanly on Solaris - and define some good compile flags.
280
AC_CHECK_HEADERS([curses.h term.h],[],[],
281
[[#ifdef HAVE_CURSES_H
282
# include <curses.h>
283
#endif
284
]])
202.1.4 by Monty Taylor
Removed openssl refs.
285
AC_CHECK_HEADERS(termio.h termios.h sched.h alloca.h)
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
286
AC_CHECK_HEADERS(sys/prctl.h ieeefp.h)
53.2.29 by Monty Taylor
Cleaned up headers a little more.
287
AC_CHECK_HEADERS(execinfo.h)
1 by brian
clean slate
288
77.1.31 by Monty Taylor
Replaced regex lib with pcre. Reworked mysqltest to use it.
289
#--------------------------------------------------------------------
1 by brian
clean slate
290
# Check for system libraries. Adds the library to $LIBS
291
# and defines HAVE_LIBM etc
292
#--------------------------------------------------------------------
293
294
AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity))
295
236.1.39 by Monty Taylor
autoconf warning cleanups.
296
AC_CHECK_FUNC(setsockopt, [], [AC_CHECK_LIB(socket, setsockopt)])
297
AC_CHECK_FUNC(yp_get_default_domain, [],
298
  [AC_CHECK_LIB(nsl, yp_get_default_domain)])
299
AC_CHECK_FUNC(p2open, [], [AC_CHECK_LIB(gen, p2open)])
1 by brian
clean slate
300
# This may get things to compile even if bind-8 is installed
236.1.39 by Monty Taylor
autoconf warning cleanups.
301
AC_CHECK_FUNC(bind, [], [AC_CHECK_LIB(bind, bind)])
1 by brian
clean slate
302
# Check if crypt() exists in libc or libcrypt, sets LIBS if needed
303
AC_SEARCH_LIBS(crypt, crypt, AC_DEFINE(HAVE_CRYPT, 1, [crypt]))
304
305
# Check rt for aio_read
306
AC_CHECK_LIB(rt, aio_read)
307
308
# For the sched_yield() function on Solaris
236.1.39 by Monty Taylor
autoconf warning cleanups.
309
AC_CHECK_FUNC(sched_yield, [],
310
  [AC_CHECK_LIB(posix4, [sched_yield],
997.2.8 by Monty Taylor
Fixed a few loose ends.
311
    [AC_DEFINE(HAVE_SCHED_YIELD, 1, [Have sched_yield function]) LIBS="$LIBS -lposix4"])])
1 by brian
clean slate
312
313
if test "$ac_cv_header_termio_h" = "no" -a "$ac_cv_header_termios_h" = "no"
314
then
236.1.39 by Monty Taylor
autoconf warning cleanups.
315
  AC_CHECK_FUNC(gtty, [], [AC_CHECK_LIB(compat, gtty)])
1 by brian
clean slate
316
fi
317
318
AC_CHECK_TYPES([fp_except], [], [], [
319
#include <sys/types.h>
320
#include <ieeefp.h>
321
])
322
25 by Brian Aker
Clean up of configure.in
323
my_save_LIBS="$LIBS"
324
LIBS=""
325
AC_CHECK_LIB(dl,dlopen)
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
326
AC_CHECK_FUNCS(dlopen)
177.3.1 by mark
remove ifdef HAVE_DLOPEN, make configure require dlopen()
327
if test "$ac_cv_func_dlopen" != "yes"
328
then
329
  AC_MSG_ERROR([Drizzle requires dlopen])
330
fi
201.2.3 by Monty Taylor
Cleaned up some LIBS bits in the build.
331
LIBDL_LIBS="$LIBS"
25 by Brian Aker
Clean up of configure.in
332
LIBS="$my_save_LIBS"
201.2.3 by Monty Taylor
Cleaned up some LIBS bits in the build.
333
AC_SUBST(LIBDL_LIBS)
25 by Brian Aker
Clean up of configure.in
334
201.2.4 by Monty Taylor
Re-enabled optimizations for the normal build, and added back the --with-debug option to turn them off.
335
840.1.6 by Monty Taylor
Added back atomic builtins check.
336
AC_ARG_WITH([atomic-ops],
840.1.12 by Monty Taylor
Updated AC_HELP_STRING to AS_HELP_STRING
337
    [AS_HELP_STRING([--with-atomic-ops=rwlocks|smp|up],
338
       [Implement atomic operations using pthread rwlocks or atomic CPU
339
        instructions for multi-processor or uniprocessor
340
        configuration. By default gcc built-in sync functions are used,
341
        if available and 'smp' configuration otherwise.])],
342
    [with_atomic_ops="$withval"],
343
    [with_atomic_ops=smp])
840.1.6 by Monty Taylor
Added back atomic builtins check.
344
345
case "$with_atomic_ops" in
346
  "up") AC_DEFINE([MY_ATOMIC_MODE_DUMMY], [1],
347
                  [Assume single-CPU mode, no concurrency]) ;;
348
  "rwlocks") AC_DEFINE([MY_ATOMIC_MODE_RWLOCKS], [1],
349
                  [Use pthread rwlocks for atomic ops]) ;;
910.5.2 by Monty Taylor
Applied atomic patch to current tree.
350
  "smp") 
840.1.6 by Monty Taylor
Added back atomic builtins check.
351
    AC_CACHE_CHECK(
352
      [whether the compiler provides atomic builtins],
353
      [ac_cv_gcc_atomic_builtins],
942.1.5 by Monty Taylor
Replace AC_TRY_* with AC_*_IFELSE
354
      [AC_RUN_IFELSE(
355
        [AC_LANG_PROGRAM([],[[
840.1.6 by Monty Taylor
Added back atomic builtins check.
356
          int foo= -10; int bar= 10;
357
          if (!__sync_fetch_and_add(&foo, bar) || foo)
358
            return -1;
359
          bar= __sync_lock_test_and_set(&foo, bar);
360
          if (bar || foo != 10)
361
            return -1;
362
          bar= __sync_val_compare_and_swap(&bar, foo, 15);
363
          if (bar)
364
            return -1;
365
          return 0;
942.1.5 by Monty Taylor
Replace AC_TRY_* with AC_*_IFELSE
366
        ]])],
840.1.6 by Monty Taylor
Added back atomic builtins check.
367
       [ac_cv_gcc_atomic_builtins=yes],
368
       [ac_cv_gcc_atomic_builtins=no])])
369
370
    if test "x$ac_cv_gcc_atomic_builtins" = "xyes"; then
371
      AC_DEFINE(HAVE_GCC_ATOMIC_BUILTINS, 1,
372
                [Define to 1 if compiler provides atomic builtins.])
373
    fi
374
   ;;
375
   *) AC_MSG_ERROR(["$with_atomic_ops" is not a valid value for --with-atomic-ops]) ;;
376
esac
377
378
28.1.39 by Monty Taylor
Made everything use AS_HELP_STRING (except for charsets, which are dying anyway)
379
AC_ARG_WITH([comment],
380
    [AS_HELP_STRING([--with-comment],
381
            [Comment about compilation environment. @<:@default=off@:>@])],
1 by brian
clean slate
382
    [with_comment=$withval],
383
    [with_comment=no])
384
if test "$with_comment" != "no"
385
then
386
  COMPILATION_COMMENT=$with_comment
387
else
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
388
  COMPILATION_COMMENT="Source distribution (RELEASE_COMMENT)"
1 by brian
clean slate
389
fi
546 by Monty Taylor
Cleaned up version.h. (And by cleaned, I mean removed)
390
AC_DEFINE_UNQUOTED([COMPILATION_COMMENT],["$COMPILATION_COMMENT"],
391
                   [Comment about compilation environment])
1 by brian
clean slate
392
393
dnl Checks for typedefs, structures, and compiler characteristics.
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
394
1 by brian
clean slate
395
AC_STRUCT_TM
396
# off_t is not a builtin type
397
AC_CHECK_SIZEOF(off_t, 4)
398
if test "$ac_cv_sizeof_off_t" -eq 0
399
then
91 by Brian Aker
Main binary now named drizzled
400
  AC_MSG_ERROR("Drizzle needs a off_t type.")
1 by brian
clean slate
401
fi
968.2.1 by Monty Taylor
Build fix making 64-bit atomic<> work on 32-bit systems.
402
AC_CHECK_SIZEOF(size_t)
403
AC_DEFINE_UNQUOTED([SIZEOF_SIZE_T],[$ac_cv_sizeof_size_t],[Size of size_t as computed by sizeof()])
404
AC_CHECK_SIZEOF(long long)
405
AC_DEFINE_UNQUOTED(SIZEOF_LONG_LONG,[$ac_cv_sizeof_long_long],[Size of long long as computed by sizeof()])
1 by brian
clean slate
406
407
dnl
408
dnl check if time_t is unsigned
409
dnl
410
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
411
DRIZZLE_CHECK_TIME_T
1 by brian
clean slate
412
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
413
DRIZZLE_STACK_DIRECTION
942.1.8 by Monty Taylor
Removed more unused macros/things we don't need to check because they are posix.
414
1 by brian
clean slate
415
AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>])
520.4.43 by mordred
A set of Solaris fixes.
416
AC_CHECK_TYPES([uint, ulong])
1 by brian
clean slate
417
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
418
DRIZZLE_PTHREAD_YIELD
1 by brian
clean slate
419
134.2.1 by Antony Curtis
Changes for proper detection of libraries
420
1 by brian
clean slate
421
dnl Checks for header files.
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
422
AC_CHECK_HEADERS(malloc.h)
1 by brian
clean slate
423
424
dnl Checks for library functions.
425
AC_FUNC_ALLOCA
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
426
1 by brian
clean slate
427
AC_CHECK_FUNCS(issetugid)
428
429
# Already-done: stdlib.h string.h unistd.h termios.h
398.1.9 by Monty Taylor
Cleaned up stuff out of global.h.
430
AC_CHECK_HEADERS(stdarg.h dirent.h locale.h ndir.h sys/dir.h \
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
431
 sys/ndir.h sys/select.h \
432
 sys/mman.h termcap.h termio.h asm/termbits.h grp.h \
433
 paths.h)
1 by brian
clean slate
434
435
# Already-done: strcasecmp
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
436
AC_CHECK_FUNCS(lstat select)
1 by brian
clean slate
437
28.1.33 by Monty Taylor
Added -Wall
438
AC_HEADER_STAT
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
439
DRIZZLE_HAVE_TIOCGWINSZ
440
DRIZZLE_HAVE_TIOCSTAT
1 by brian
clean slate
441
442
#########################################################################
443
444
dnl Checks for library functions.
445
446
AC_FUNC_UTIME_NULL
447
AC_FUNC_VPRINTF
448
77.1.24 by Monty Taylor
Removed non-fcntl code and made it a fatal configure error if it's not there.
449
AC_CHECK_FUNCS(fcntl)
450
if test "x$ac_cv_func_fcntl" != "xyes"
451
then
452
  AC_MSG_ERROR("Drizzle requires fcntl.")
453
fi
454
815.1.6 by Monty Taylor
Some tweaks to get timegm working on Solaris.
455
AC_CONFIG_LIBOBJ_DIR([gnulib])
236.1.50 by Monty Taylor
Added automake conditional compilation of distributed system replacement functions.
456
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
457
AC_CHECK_FUNCS( \
77.1.24 by Monty Taylor
Removed non-fcntl code and made it a fatal configure error if it's not there.
458
  cuserid fchmod \
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
459
  fdatasync fpresetsticky fpsetmask fsync \
575.4.6 by Monty Taylor
Removed my_getwd.
460
  getpassphrase getpwnam \
461
  getpwuid getrlimit getrusage index initgroups isnan \
1099.2.1 by rm
get things compiling on FreeBSD (7.1)
462
  localtime_r log log2 gethrtime gmtime_r \
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
463
  madvise \
464
  mkstemp mlockall poll pread pthread_attr_create mmap mmap64 \
1 by brian
clean slate
465
  pthread_attr_getstacksize pthread_attr_setprio pthread_attr_setschedparam \
466
  pthread_attr_setstacksize pthread_condattr_create pthread_getsequence_np \
467
  pthread_key_delete pthread_rwlock_rdlock pthread_setprio \
468
  pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \
449 by Monty Taylor
Removed rint check - rint is part of C99.
469
  realpath rename rwlock_init setupterm \
572.1.4 by Monty Taylor
Removed a bunch of unusued tests and defines from autoconf.
470
  sigaction \
471
  sigthreadmask \
472
  snprintf strpbrk \
473
  tell tempnam \
474
  backtrace backtrace_symbols backtrace_symbols_fd)
1 by brian
clean slate
475
287.3.18 by Monty Taylor
Put -fno-exceptions flag in selectively. Add back HAVE_DECL_MADVISE check so
476
AC_LANG_PUSH(C++)
477
# Test whether madvise() is declared in C++ code -- it is not on some
478
# systems, such as Solaris
373.1.3 by Monty Taylor
Fixed test for HAVE_DECL_MADVISE to actually work.
479
AC_CHECK_DECLS([madvise], [], [], [AC_INCLUDES_DEFAULT[
480
#if HAVE_SYS_MMAN_H
287.3.18 by Monty Taylor
Put -fno-exceptions flag in selectively. Add back HAVE_DECL_MADVISE check so
481
#include <sys/types.h>
482
#include <sys/mman.h>
373.1.3 by Monty Taylor
Fixed test for HAVE_DECL_MADVISE to actually work.
483
#endif
484
]])
287.3.18 by Monty Taylor
Put -fno-exceptions flag in selectively. Add back HAVE_DECL_MADVISE check so
485
AC_LANG_POP()
486
487
236.1.59 by Monty Taylor
Turn thr_rwlock.c into a conditionally built source file.
488
AM_CONDITIONAL(BUILD_THR_RWLOCK,[test "$ac_cv_func_rwlock_init" -a "$ac_cv_funn_pthread_rwlock_rdlock"])
489
28.1.33 by Monty Taylor
Added -Wall
490
1 by brian
clean slate
491
# Sanity check: We chould not have any fseeko symbol unless
492
# large_file_support=yes
493
AC_CHECK_FUNC(fseeko,
520.4.41 by mordred
Fixed configure.ac to work cleanly on Solaris - and define some good compile flags.
494
[if test "$large_file_support" = no -a "x$TARGET_LINUX" = "xtrue";
1 by brian
clean slate
495
then
496
  AC_MSG_ERROR("Found fseeko symbol but large_file_support is not enabled!")
497
fi]
498
)
499
500
# Check definition of pthread_getspecific
236.1.39 by Monty Taylor
autoconf warning cleanups.
501
AC_CACHE_CHECK([args to pthread_getspecific], [mysql_cv_getspecific_args],
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
502
  [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
503
#if !defined(_REENTRANT)
1 by brian
clean slate
504
#define _REENTRANT
505
#endif
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
506
#ifndef _POSIX_PTHREAD_SEMANTICS 
1 by brian
clean slate
507
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
508
#endif
942.1.5 by Monty Taylor
Replace AC_TRY_* with AC_*_IFELSE
509
#include <pthread.h>
510
   ]], [[
511
void *pthread_getspecific(pthread_key_t key);
512
pthread_getspecific((pthread_key_t) NULL);
513
   ]])],
236.1.39 by Monty Taylor
autoconf warning cleanups.
514
    [mysql_cv_getspecific_args=POSIX],
515
    [mysql_cv_getspecific_args=other])])
1 by brian
clean slate
516
  if test "$mysql_cv_getspecific_args" = "other"
517
  then
518
    AC_DEFINE([HAVE_NONPOSIX_PTHREAD_GETSPECIFIC], [1],
519
              [For some non posix threads])
520
  fi
521
522
  # Check definition of pthread_mutex_init
236.1.39 by Monty Taylor
autoconf warning cleanups.
523
  AC_CACHE_CHECK([args to pthread_mutex_init], [mysql_cv_mutex_init_args],
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
524
    [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
525
#ifndef _REENTRANT
526
#define _REENTRANT
527
#endif
528
#ifndef _POSIX_PTHREAD_SEMANTICS
1 by brian
clean slate
529
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
530
#endif
28.1.33 by Monty Taylor
Added -Wall
531
#include <pthread.h> ]], [[ 
1 by brian
clean slate
532
  pthread_mutexattr_t attr;
533
  pthread_mutex_t mp;
236.1.39 by Monty Taylor
autoconf warning cleanups.
534
  pthread_mutex_init(&mp,&attr); ]])],
535
      [mysql_cv_mutex_init_args=POSIX],
536
      [mysql_cv_mutex_init_args=other])])
1 by brian
clean slate
537
  if test "$mysql_cv_mutex_init_args" = "other"
538
  then
539
    AC_DEFINE([HAVE_NONPOSIX_PTHREAD_MUTEX_INIT], [1],
540
              [For some non posix threads])
541
  fi
542
#---END:
543
544
#---START: Used in for client configure
545
# Check definition of readdir_r
236.1.39 by Monty Taylor
autoconf warning cleanups.
546
AC_CACHE_CHECK([args to readdir_r], [mysql_cv_readdir_r],
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
547
  [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
548
#ifndef _REENTRANT
549
#define _REENTRANT
550
#endif
551
#ifndef _POSIX_PTHREAD_SEMANTICS 
1 by brian
clean slate
552
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
553
#endif
1 by brian
clean slate
554
#include <pthread.h>
28.1.33 by Monty Taylor
Added -Wall
555
#include <dirent.h>]], [[ int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);
236.1.39 by Monty Taylor
autoconf warning cleanups.
556
readdir_r((DIR *) NULL, (struct dirent *) NULL, (struct dirent **) NULL); ]])],
557
    [mysql_cv_readdir_r=POSIX],
558
    [mysql_cv_readdir_r=other])])
1 by brian
clean slate
559
if test "$mysql_cv_readdir_r" = "POSIX"
560
then
561
  AC_DEFINE([HAVE_READDIR_R], [1], [POSIX readdir_r])
562
fi
563
564
# Check definition of posix sigwait()
236.1.39 by Monty Taylor
autoconf warning cleanups.
565
AC_CACHE_CHECK([style of sigwait], [mysql_cv_sigwait],
566
  [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
567
#ifndef _REENTRANT
236.1.39 by Monty Taylor
autoconf warning cleanups.
568
#define _REENTRANT
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
569
#endif
570
#ifndef _POSIX_PTHREAD_SEMANTICS
1 by brian
clean slate
571
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
572
#endif
1 by brian
clean slate
573
#include <pthread.h>
236.1.39 by Monty Taylor
autoconf warning cleanups.
574
#include <signal.h>
575
      ]], [[
576
#ifndef _AIX
1 by brian
clean slate
577
sigset_t set;
578
int sig;
579
sigwait(&set,&sig);
236.1.39 by Monty Taylor
autoconf warning cleanups.
580
#endif
581
      ]])],
582
    [mysql_cv_sigwait=POSIX],
583
    [mysql_cv_sigwait=other])])
1 by brian
clean slate
584
if test "$mysql_cv_sigwait" = "POSIX"
585
then
586
  AC_DEFINE([HAVE_SIGWAIT], [1], [POSIX sigwait])
587
fi
588
589
if test "$mysql_cv_sigwait" != "POSIX"
590
then
591
unset mysql_cv_sigwait
592
# Check definition of posix sigwait()
236.1.39 by Monty Taylor
autoconf warning cleanups.
593
AC_CACHE_CHECK([style of sigwait], [mysql_cv_sigwait],
594
  [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
595
#ifndef _REENTRANT
236.1.39 by Monty Taylor
autoconf warning cleanups.
596
#define _REENTRANT
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
597
#endif
598
#ifndef _POSIX_PTHREAD_SEMANTICS
1 by brian
clean slate
599
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
600
#endif
1 by brian
clean slate
601
#include <pthread.h>
236.1.39 by Monty Taylor
autoconf warning cleanups.
602
#include <signal.h>
603
      ]], [[
604
sigset_t set;
1 by brian
clean slate
605
int sig;
236.1.39 by Monty Taylor
autoconf warning cleanups.
606
sigwait(&set);
607
      ]])],
608
    [mysql_cv_sigwait=NONPOSIX],
609
    [mysql_cv_sigwait=other])])
1 by brian
clean slate
610
if test "$mysql_cv_sigwait" = "NONPOSIX"
611
then
612
  AC_DEFINE([HAVE_NONPOSIX_SIGWAIT], [1], [sigwait with one argument])
613
fi
614
fi
615
#---END:
616
617
# Check if pthread_attr_setscope() exists
236.1.39 by Monty Taylor
autoconf warning cleanups.
618
AC_CACHE_CHECK([for pthread_attr_setscope], [mysql_cv_pthread_attr_setscope],
619
  [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
620
#ifndef _REENTRANT
236.1.39 by Monty Taylor
autoconf warning cleanups.
621
#define _REENTRANT
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
622
#endif
623
#ifndef _POSIX_PTHREAD_SEMANTICS
1 by brian
clean slate
624
#define _POSIX_PTHREAD_SEMANTICS 
632.1.11 by Monty Taylor
Fixed Sun Studio warnings in mysys.
625
#endif
236.1.39 by Monty Taylor
autoconf warning cleanups.
626
#include <pthread.h>
627
      ]], [[
628
pthread_attr_t thr_attr;
629
pthread_attr_setscope(&thr_attr,0);
630
      ]])],
631
    [mysql_cv_pthread_attr_setscope=yes],
632
    [mysql_cv_pthread_attr_setscope=no])])
1 by brian
clean slate
633
if test "$mysql_cv_pthread_attr_setscope" = "yes"
634
then
635
  AC_DEFINE([HAVE_PTHREAD_ATTR_SETSCOPE], [1], [pthread_attr_setscope])
636
fi
637
28.1.33 by Monty Taylor
Added -Wall
638
AC_LANG_PUSH([C++])
1 by brian
clean slate
639
AC_CHECK_HEADERS(cxxabi.h)
640
AC_CACHE_CHECK([checking for abi::__cxa_demangle], mysql_cv_cxa_demangle,
28.1.33 by Monty Taylor
Added -Wall
641
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <cxxabi.h>]], [[
1 by brian
clean slate
642
  char *foo= 0; int bar= 0;
643
  foo= abi::__cxa_demangle(foo, foo, 0, &bar);
28.1.33 by Monty Taylor
Added -Wall
644
]])],[mysql_cv_cxa_demangle=yes],[mysql_cv_cxa_demangle=no])])
645
AC_LANG_POP([])
1 by brian
clean slate
646
647
if test "x$mysql_cv_cxa_demangle" = xyes; then
648
  AC_DEFINE(HAVE_ABI_CXA_DEMANGLE, 1,
649
            [Define to 1 if you have the `abi::__cxa_demangle' function.])
650
fi
651
652
#--------------------------------------------------------------------
653
# Check for requested features
654
#--------------------------------------------------------------------
655
319.1.1 by Grant Limberg
renamed all instances of MYSQL_ to DRIZZLE_
656
DRIZZLE_CHECK_MAX_INDEXES
1 by brian
clean slate
657
658
#--------------------------------------------------------------------
659
# Declare our plugin modules
660
# Has to be done late, as the plugin may need to check for existence of
661
# functions tested above
662
#--------------------------------------------------------------------
663
992.1.21 by Monty Taylor
First pass at replacing plugin.m4.
664
m4_include(config/plugin.ac)
665
dnl Add code here to read set plugin lists and  set drizzled_default_plugin_list
666
AC_DEFINE_UNQUOTED([DRIZZLED_PLUGIN_LIST],[$drizzled_default_plugin_list],
667
                   [List of plugins that should be loaded on startup if no
668
                    value is given for --plugin-load])
1 by brian
clean slate
669
992.1.22 by Monty Taylor
Moved towards having register_plugins.py make builtin plugins, so we can have a first step.
670
drizzled_builtin_list=`echo $drizzled_builtin_list | sed 's/, *$//'`
671
AC_DEFINE_UNQUOTED([DRIZZLED_BUILTIN_LIST],[$drizzled_builtin_list],
672
                   [List of plugins to be loaded in sql_builtin.cc])
1099.1.16 by Monty Taylor
Added support for conditionally building plugin's test suite if the plugin is built.
673
AC_SUBST(drizzled_plugin_test_list)
997.2.19 by Monty Taylor
Reverted back to building drizzled in drizzled.
674
AC_SUBST(drizzled_plugin_libs)
675
676
AC_SUBST(mysql_plugin_dirs)
677
AC_SUBST(mysql_plugin_libs)
678
drizzled_plugin_defs=`echo $drizzled_plugin_defs | sed 's/, *$//'`
679
AC_SUBST(drizzled_plugin_defs)
680
AC_SUBST(DRIZZLED_PLUGIN_DEP_LIBS)
992.1.22 by Monty Taylor
Moved towards having register_plugins.py make builtin plugins, so we can have a first step.
681
992.1.4 by Monty Taylor
Fixed quick configure bug. /* isn't a valid comment in shell script, thanks.
682
dnl Must be done once we turn on warnings and such
971.4.1 by Monty Taylor
GCC on Solaris build fixes.
683
AC_CACHE_CHECK(
684
  [whether __attribute__ visibility "hidden" is supported],
992.1.4 by Monty Taylor
Fixed quick configure bug. /* isn't a valid comment in shell script, thanks.
685
  [ac_cv_can_use_hidden_],[
686
    AC_LANG_PUSH(C++)
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
687
    save_CXXFLAGS="${CXXFLAGS}"
688
    CXXFLAGS="${AM_CXXFLAGS}"
992.1.7 by Monty Taylor
Sometimes it helps to actually set -Werror before the check you've marked as needing to happen after -Werror.
689
    AC_LINK_IFELSE([
992.1.4 by Monty Taylor
Fixed quick configure bug. /* isn't a valid comment in shell script, thanks.
690
      AC_LANG_PROGRAM(
691
        [[
971.4.1 by Monty Taylor
GCC on Solaris build fixes.
692
__attribute__((visibility ("hidden")))
992.1.21 by Monty Taylor
First pass at replacing plugin.m4.
693
void testme() {  }
992.1.18 by Monty Taylor
Moved client build into root Makefile.
694
        ]],[[testme()]]
992.1.4 by Monty Taylor
Fixed quick configure bug. /* isn't a valid comment in shell script, thanks.
695
      )],  
696
      [ac_cv_can_use_hidden_=yes],
697
      [ac_cv_can_use_hidden_=no])
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
698
    CXXFLAGS="${save_CXXFLAGS}"
992.1.4 by Monty Taylor
Fixed quick configure bug. /* isn't a valid comment in shell script, thanks.
699
    AC_LANG_POP()])
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
700
AS_IF([test "$ac_cv_can_use_hidden_" = "yes"],[
971.4.1 by Monty Taylor
GCC on Solaris build fixes.
701
  AC_DEFINE(HAVE_ATTR_HIDDEN, 1,
702
  [Define to 1 if you have support for __attribute__((visibility("hidden")))])
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
703
])
202.1.23 by Monty Taylor
Moved the includes we use everywhere to to GLOBAL_CPPFLAGS and added AM_CPPFLAGS to an AC_SUBST, so that we could take out the redundant declaration from most fof the Makefiles.
704
1 by brian
clean slate
705
722.1.4 by Monty Taylor
Removed all the setting of DEFS everywhere. Use configmake.h to get the values
706
AC_SUBST(pkgplugindir,"\$(pkglibdir)/plugin")
707
492.1.7 by Monty Taylor
Moved test() to its own file.
708
dnl GCC Precompiled Header Support
584.4.3 by Monty Taylor
Disabled pre-compiled headers for now.
709
dnl re-enable later
632.1.25 by Monty Taylor
Removed AM_CONDITIONAL from SEARCH_FOR_LIB. Aligned naming of AM_CONDITIONALS.
710
dnl AM_CONDITIONAL([BUILD_GCC_PCH],[test "$GCC" = "yes"])
711
AM_CONDITIONAL([BUILD_GCC_PCH],[test "no" = "yes"])
492.1.7 by Monty Taylor
Moved test() to its own file.
712
992.1.17 by Monty Taylor
Moved extra/ into root Makefile.am
713
AC_CONFIG_FILES(Makefile dnl
815.1.1 by Monty Taylor
Add timegm which is missing on Solaris.
714
 gnulib/Makefile dnl
575.2.2 by Monty Taylor
Moved vio stuff into libdrizzle.
715
 po/Makefile.in dnl
988.1.1 by Jay Pipes
Changes libserialize to libdrizzledmessage per ML discussion. All GPB messages are now in the drizzled::message namespace.
716
 drizzled/message/Makefile dnl
997.2.19 by Monty Taylor
Reverted back to building drizzled in drizzled.
717
 drizzled/Makefile dnl
28.1.31 by Monty Taylor
Deleted tons of pointless garbage from scripts.
718
 support-files/Makefile dnl
77.1.47 by Monty Taylor
Moved test to tests...
719
 tests/Makefile tests/install_test_db dnl
1025.1.1 by Trond Norbye
Add configuration files to integrate to Solaris SMF
720
 support-files/drizzle.server support-files/drizzle-log-rotate
721
 support-files/smf/Makefile dnl
722
 support-files/smf/install.sh dnl
723
 support-files/smf/drizzle.xml dnl
724
 support-files/smf/drizzle)
1 by brian
clean slate
725
512.2.2 by C.J. Adams-Collier
added checks to determine which threading plugins have been enabled on
726
scheduling_plugins_available="
727
  pool_of_threads 
728
  single_thread
729
"
730
731
for sched_plugin in $scheduling_plugins_available
732
do
733
  varname="\${with_plugin_${sched_plugin}}"
734
  result=`eval "echo $varname"`
735
  if test "x$result" = "xyes"
736
  then
737
    scheduling_plugins="$sched_plugin $scheduling_plugins"
738
  fi
739
done
740
1 by brian
clean slate
741
AC_OUTPUT
489.2.1 by C.J. Adams-Collier
2008-10-07T1437 C.J. Adams-Collier <cjac@colliertech.org>
742
743
echo "---"
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
744
echo "Configuration summary for $PACKAGE_NAME version $VERSION RELEASE_COMMENT"
489.2.1 by C.J. Adams-Collier
2008-10-07T1437 C.J. Adams-Collier <cjac@colliertech.org>
745
echo ""
746
echo "   * Installation prefix:       $prefix"
1081.1.1 by Monty Taylor
Whole boat-load of build fixes.
747
echo "   * System type:               $host_vendor-$host_os"
492.2.1 by C.J. Adams-Collier
* fixed --disable-assert code (thanks Monty)
748
echo "   * Host CPU:                  $host_cpu"
489.2.1 by C.J. Adams-Collier
2008-10-07T1437 C.J. Adams-Collier <cjac@colliertech.org>
749
echo "   * C Compiler:                $CC_VERSION"
632.1.21 by Monty Taylor
Cleaned up compiler version checking.
750
echo "   * C++ Compiler:              $CXX_VERSION"
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
751
echo "   * Build auth_pam:            $ac_cv_libpam"
492.2.1 by C.J. Adams-Collier
* fixed --disable-assert code (thanks Monty)
752
echo "   * Assertions enabled:        $ac_cv_assert"
489.2.1 by C.J. Adams-Collier
2008-10-07T1437 C.J. Adams-Collier <cjac@colliertech.org>
753
echo "   * Debug enabled:             $with_debug"
754
echo "   * Profiling enabled:         $ac_profiling"
755
echo "   * Coverage enabled:          $ac_coverage"
1085.1.3 by Monty Taylor
Split out warnings - start using the pandora build system.
756
echo "   * Warnings as failure:       $ac_cv_warnings_as_errors"
492.2.1 by C.J. Adams-Collier
* fixed --disable-assert code (thanks Monty)
757
echo "   * C++ cstdint location:      $ac_cv_cxx_cstdint"
758
echo "   * C++ hash_map location:     $ac_cv_cxx_hash_map"
759
echo "   * C++ hash namespace:        $ac_cv_cxx_hash_namespace"
919.2.19 by Monty Taylor
Added check for shared_ptr in advance of actually thinking about using it. I think this should cover all platforms we care about... but let's doublecheck.
760
echo "   * C++ shared_ptr namespace:  $ac_cv_shared_ptr_namespace"
489.2.1 by C.J. Adams-Collier
2008-10-07T1437 C.J. Adams-Collier <cjac@colliertech.org>
761
echo ""
762
echo "---"
908.1.4 by Monty Taylor
Fix to fake-out libtoolize, since AC_INIT is in bzr_version.m4 now.
763
764
dnl libtoolize scans configure.ac  and needs to see some text
765
m4_define([LIBTOOLIZE_AC_INIT], [])