2006-12-31 01:02:27 +01:00
|
|
|
# Copyright (C) 2000-2006 MySQL AB
|
2000-07-31 21:29:14 +02:00
|
|
|
#
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License as published by
|
2006-12-23 20:17:15 +01:00
|
|
|
# the Free Software Foundation; version 2 of the License.
|
2000-07-31 21:29:14 +02:00
|
|
|
#
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
# along with this program; if not, write to the Free Software
|
|
|
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
|
|
|
|
#called from the top level Makefile
|
|
|
|
|
|
|
|
MYSQLDATAdir = $(localstatedir)
|
|
|
|
MYSQLSHAREdir = $(pkgdatadir)
|
|
|
|
MYSQLBASEdir= $(prefix)
|
2005-11-06 13:13:06 +01:00
|
|
|
MYSQLLIBdir= $(pkglibdir)
|
2005-03-17 01:22:56 +01:00
|
|
|
INCLUDES = @ZLIB_INCLUDES@ \
|
2005-07-05 23:24:48 +02:00
|
|
|
-I$(top_builddir)/include -I$(top_srcdir)/include \
|
2007-04-03 18:39:11 +02:00
|
|
|
-I$(top_srcdir)/regex -I$(srcdir) $(openssl_includes)
|
2000-07-31 21:29:14 +02:00
|
|
|
WRAPLIBS= @WRAPLIBS@
|
|
|
|
SUBDIRS = share
|
|
|
|
libexec_PROGRAMS = mysqld
|
2007-02-15 15:44:56 +01:00
|
|
|
EXTRA_PROGRAMS = gen_lex_hash
|
2004-06-23 11:07:00 +02:00
|
|
|
bin_PROGRAMS = mysql_tzinfo_to_sql
|
2007-06-22 17:58:27 +02:00
|
|
|
|
|
|
|
noinst_LTLIBRARIES= libndb.la \
|
|
|
|
udf_example.la
|
|
|
|
|
2007-04-04 12:42:52 +02:00
|
|
|
SUPPORTING_LIBS = $(top_builddir)/vio/libvio.a \
|
WL#1518, "make bundled zlib usable for unix builds":
required autotools macro written and deployed in all apropriate Makefile.ams.
Use cases checked:
- linux, standard location of zlib, no ndb
- linux, standard locatoin of zlib, with ndb
- linux, non-standard location of zlib, no ndb
- hpux11, use of bundled zlib, no ndb
The only non-checked case is non-standard location of zlib (or use of bundled
zlib) + ndb. I wasn't able to check it as ndb/ just won't compile on beasts
like AIX52 or HPUX11, where such a check is possible. It didn't compile
there before as these systems dont't have installed zlib, so nothing got broken ;)
2004-07-24 12:30:11 +02:00
|
|
|
$(top_builddir)/mysys/libmysys.a \
|
|
|
|
$(top_builddir)/dbug/libdbug.a \
|
|
|
|
$(top_builddir)/regex/libregex.a \
|
2006-11-02 20:26:54 +01:00
|
|
|
$(top_builddir)/strings/libmystrings.a
|
2007-06-29 21:52:43 +02:00
|
|
|
mysqld_DEPENDENCIES= @mysql_plugin_libs@ $(SUPPORTING_LIBS) libndb.la
|
2007-05-07 15:46:29 +02:00
|
|
|
LDADD = $(SUPPORTING_LIBS) @ZLIB_LIBS@ @NDB_SCI_LIBS@
|
2007-06-22 17:58:27 +02:00
|
|
|
mysqld_LDADD = libndb.la \
|
|
|
|
@MYSQLD_EXTRA_LDFLAGS@ \
|
2005-11-07 16:25:06 +01:00
|
|
|
@pstack_libs@ \
|
2006-04-13 22:49:29 +02:00
|
|
|
@mysql_plugin_libs@ \
|
2005-10-18 15:43:59 +02:00
|
|
|
$(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) @LIBDL@ \
|
2007-06-28 11:13:18 +02:00
|
|
|
$(yassl_libs) $(openssl_libs) @MYSQLD_EXTRA_LIBS@
|
2007-02-07 15:11:03 +01:00
|
|
|
|
2000-07-31 21:29:14 +02:00
|
|
|
noinst_HEADERS = item.h item_func.h item_sum.h item_cmpfunc.h \
|
Bug#22687 (Functions UNIQUE_USERS, GROUP_UNIQUE_USERS)
According to some internal communication, these two functions are place
holders for future enhancements. Because they use a variable number of
parameters, the implementation defined a reserved keyword for them in the
parser grammar.
Unfortunately, doing so creates a bug similar to Bug 21114 reported for the
function FORMAT.
In the 5.1 code base, due to improvements in the code implemented with bug
21114, having a reserved keyword for functions with a variable number of
arguments is not needed any more by the implementation.
As a result, this fix removes the place-holder implementation, and removes
the unnecessary reserved keywords. Should the functions UNIQUE_USERS and
GROUP_UNIQUE_USERS be finally implemented in a later release, the
implementation should sub class Create_native_func in sql/item_create.cc.
For example, see the class Create_func_concat.
2007-01-11 22:58:05 +01:00
|
|
|
item_strfunc.h item_timefunc.h \
|
2005-12-21 14:13:52 +01:00
|
|
|
item_xmlfunc.h \
|
2002-11-15 19:32:09 +01:00
|
|
|
item_create.h item_subselect.h item_row.h \
|
2003-11-12 12:32:51 +01:00
|
|
|
mysql_priv.h item_geofunc.h sql_bitmap.h \
|
2000-07-31 21:29:14 +02:00
|
|
|
procedure.h sql_class.h sql_lex.h sql_list.h \
|
2006-08-11 03:29:25 +02:00
|
|
|
sql_map.h sql_string.h unireg.h \
|
2005-04-01 14:04:50 +02:00
|
|
|
sql_error.h field.h handler.h mysqld_suffix.h \
|
2007-04-24 14:24:06 +02:00
|
|
|
ha_ndbcluster.h ha_ndbcluster_cond.h \
|
2007-04-24 17:42:16 +02:00
|
|
|
ha_ndbcluster_binlog.h ha_ndbcluster_tables.h \
|
2007-04-24 14:24:06 +02:00
|
|
|
ha_partition.h rpl_constants.h \
|
2006-05-03 15:00:38 +02:00
|
|
|
opt_range.h protocol.h rpl_tblmap.h rpl_utility.h \
|
2007-06-09 07:19:37 +02:00
|
|
|
rpl_reporting.h \
|
2006-10-31 16:51:51 +01:00
|
|
|
log.h sql_show.h rpl_rli.h rpl_mi.h \
|
2006-04-29 18:33:34 +02:00
|
|
|
sql_select.h structs.h table.h sql_udf.h hash_filo.h \
|
2001-09-19 22:30:43 +02:00
|
|
|
lex.h lex_symbol.h sql_acl.h sql_crypt.h \
|
2007-04-13 14:55:28 +02:00
|
|
|
sql_repl.h slave.h rpl_filter.h rpl_injector.h \
|
|
|
|
log_event.h rpl_record.h \
|
2007-04-12 15:50:54 +02:00
|
|
|
log_event_old.h rpl_record_old.h \
|
2002-08-30 11:40:40 +02:00
|
|
|
stacktrace.h sql_sort.h sql_cache.h set_var.h \
|
2004-06-18 08:11:31 +02:00
|
|
|
spatial.h gstream.h client_settings.h tzfile.h \
|
2006-04-13 22:49:29 +02:00
|
|
|
tztime.h my_decimal.h\
|
2004-05-11 22:23:49 +02:00
|
|
|
sp_head.h sp_pcontext.h sp_rcontext.h sp.h sp_cache.h \
|
2004-09-09 17:52:10 +02:00
|
|
|
parse_file.h sql_view.h sql_trigger.h \
|
2007-02-23 12:13:55 +01:00
|
|
|
sql_array.h sql_cursor.h events.h scheduler.h \
|
2006-07-13 16:24:55 +02:00
|
|
|
event_db_repository.h event_queue.h \
|
2007-02-23 12:13:55 +01:00
|
|
|
sql_plugin.h authors.h \
|
|
|
|
event_data_objects.h event_scheduler.h \
|
|
|
|
sql_partition.h partition_info.h partition_element.h \
|
2006-12-02 01:47:45 +01:00
|
|
|
contributors.h sql_servers.h
|
2007-04-04 12:42:52 +02:00
|
|
|
|
2005-11-07 16:25:06 +01:00
|
|
|
mysqld_SOURCES = sql_lex.cc sql_handler.cc sql_partition.cc \
|
2000-07-31 21:29:14 +02:00
|
|
|
item.cc item_sum.cc item_buff.cc item_func.cc \
|
|
|
|
item_cmpfunc.cc item_strfunc.cc item_timefunc.cc \
|
2002-11-15 19:32:09 +01:00
|
|
|
thr_malloc.cc item_create.cc item_subselect.cc \
|
2005-12-21 14:13:52 +01:00
|
|
|
item_row.cc item_geofunc.cc item_xmlfunc.cc \
|
2003-11-03 13:01:59 +01:00
|
|
|
field.cc strfunc.cc key.cc sql_class.cc sql_list.cc \
|
2003-06-04 17:28:51 +02:00
|
|
|
net_serv.cc protocol.cc sql_state.c \
|
|
|
|
lock.cc my_lock.c \
|
2000-11-28 00:14:49 +01:00
|
|
|
sql_string.cc sql_manager.cc sql_map.cc \
|
2000-07-31 21:29:14 +02:00
|
|
|
mysqld.cc password.c hash_filo.cc hostname.cc \
|
2007-02-23 12:13:55 +01:00
|
|
|
sql_connect.cc scheduler.cc sql_parse.cc \
|
|
|
|
set_var.cc sql_yacc.yy \
|
2000-07-31 21:29:14 +02:00
|
|
|
sql_base.cc table.cc sql_select.cc sql_insert.cc \
|
2006-07-26 21:33:25 +02:00
|
|
|
sql_prepare.cc sql_error.cc sql_locale.cc \
|
2001-12-17 19:47:20 +01:00
|
|
|
sql_update.cc sql_delete.cc uniques.cc sql_do.cc \
|
Bug#22687 (Functions UNIQUE_USERS, GROUP_UNIQUE_USERS)
According to some internal communication, these two functions are place
holders for future enhancements. Because they use a variable number of
parameters, the implementation defined a reserved keyword for them in the
parser grammar.
Unfortunately, doing so creates a bug similar to Bug 21114 reported for the
function FORMAT.
In the 5.1 code base, due to improvements in the code implemented with bug
21114, having a reserved keyword for functions with a variable number of
arguments is not needed any more by the implementation.
As a result, this fix removes the place-holder implementation, and removes
the unnecessary reserved keywords. Should the functions UNIQUE_USERS and
GROUP_UNIQUE_USERS be finally implemented in a later release, the
implementation should sub class Create_native_func in sql/item_create.cc.
For example, see the class Create_func_concat.
2007-01-11 22:58:05 +01:00
|
|
|
procedure.cc sql_test.cc \
|
2007-04-13 14:55:28 +02:00
|
|
|
log.cc init.cc derror.cc sql_acl.cc \
|
2001-12-10 10:02:26 +01:00
|
|
|
unireg.cc des_key_file.cc \
|
2007-04-13 14:55:28 +02:00
|
|
|
log_event.cc rpl_record.cc \
|
2007-04-12 15:50:54 +02:00
|
|
|
log_event_old.cc rpl_record_old.cc \
|
2004-04-15 09:14:14 +02:00
|
|
|
discover.cc time.cc opt_range.cc opt_sum.cc \
|
2000-07-31 21:29:14 +02:00
|
|
|
records.cc filesort.cc handler.cc \
|
2007-06-22 17:58:27 +02:00
|
|
|
ha_partition.cc \
|
2000-08-21 02:00:52 +02:00
|
|
|
sql_db.cc sql_table.cc sql_rename.cc sql_crypt.cc \
|
2000-07-31 21:29:14 +02:00
|
|
|
sql_load.cc mf_iocache.cc field_conv.cc sql_show.cc \
|
|
|
|
sql_udf.cc sql_analyse.cc sql_analyse.h sql_cache.cc \
|
2005-12-22 06:39:02 +01:00
|
|
|
slave.cc sql_repl.cc rpl_filter.cc rpl_tblmap.cc \
|
2006-10-31 16:51:51 +01:00
|
|
|
rpl_utility.cc rpl_injector.cc rpl_rli.cc rpl_mi.cc \
|
2007-06-09 07:19:37 +02:00
|
|
|
rpl_reporting.cc \
|
2005-03-21 22:09:42 +01:00
|
|
|
sql_union.cc sql_derived.cc \
|
2007-09-26 18:47:55 +02:00
|
|
|
sql_client.cc \
|
2004-05-19 23:54:52 +02:00
|
|
|
stacktrace.c repl_failsafe.h repl_failsafe.cc \
|
2004-07-16 00:15:55 +02:00
|
|
|
sql_olap.cc sql_view.cc \
|
2005-09-22 00:11:21 +02:00
|
|
|
gstream.cc spatial.cc sql_help.cc sql_cursor.cc \
|
2007-09-26 18:47:55 +02:00
|
|
|
tztime.cc my_decimal.cc\
|
2003-09-16 14:26:08 +02:00
|
|
|
sp_head.cc sp_pcontext.cc sp_rcontext.cc sp.cc \
|
2004-09-09 17:52:10 +02:00
|
|
|
sp_cache.cc parse_file.cc sql_trigger.cc \
|
2006-08-17 14:22:59 +02:00
|
|
|
event_scheduler.cc event_data_objects.cc \
|
|
|
|
event_queue.cc event_db_repository.cc events.cc \
|
2005-12-22 06:39:02 +01:00
|
|
|
sql_plugin.cc sql_binlog.cc \
|
2006-12-02 01:47:45 +01:00
|
|
|
sql_builtin.cc sql_tablespace.cc partition_info.cc \
|
|
|
|
sql_servers.cc
|
2006-04-13 22:49:29 +02:00
|
|
|
|
2007-09-26 18:47:55 +02:00
|
|
|
nodist_mysqld_SOURCES = mini_client_errors.c pack.c client.c my_time.c my_user.c
|
|
|
|
|
2007-06-22 17:58:27 +02:00
|
|
|
libndb_la_CPPFLAGS= @ndbcluster_includes@
|
|
|
|
libndb_la_SOURCES= ha_ndbcluster.cc \
|
|
|
|
ha_ndbcluster_binlog.cc \
|
|
|
|
ha_ndbcluster_cond.cc
|
|
|
|
|
2000-07-31 21:29:14 +02:00
|
|
|
gen_lex_hash_SOURCES = gen_lex_hash.cc
|
2007-04-04 12:42:52 +02:00
|
|
|
gen_lex_hash_LDFLAGS = @NOINST_LDFLAGS@
|
|
|
|
|
|
|
|
mysql_tzinfo_to_sql_SOURCES = tztime.cc
|
|
|
|
mysql_tzinfo_to_sql_CXXFLAGS= -DTZINFO2SQL
|
2000-07-31 21:29:14 +02:00
|
|
|
|
|
|
|
DEFS = -DMYSQL_SERVER \
|
|
|
|
-DDEFAULT_MYSQL_HOME="\"$(MYSQLBASEdir)\"" \
|
|
|
|
-DDATADIR="\"$(MYSQLDATAdir)\"" \
|
|
|
|
-DSHAREDIR="\"$(MYSQLSHAREdir)\"" \
|
2005-11-06 13:13:06 +01:00
|
|
|
-DLIBDIR="\"$(MYSQLLIBdir)\"" \
|
2000-07-31 21:29:14 +02:00
|
|
|
@DEFS@
|
2005-06-20 18:03:30 +02:00
|
|
|
|
Bug#21029 (Dependencies between sql_yacc.cc and dependent headers not detected)
The build scripts in general, using automake, autoconf, etc, contain several
special commands and work around all related to the way the bison code in the
parser is built, for sql/sql_yacc.yy. These work arounds, accumulated over
time during development, ultimately cause the build scripts to be unstable
and cause build defects by not enforcing dependencies.
This fix simplifies the build process and aligns it with the automake tooling,
which provides native support for bison and *.yy files.
In particular, the following problem have been fixed:
- dependencies with sql_yacc.cc were not honored (Bug 21029), leading to
corrupted builds,
- the work around introduced by Bug 24557, to cleanup the generated files
sql_yacc.h and sql_yacc.cc, has been removed,
- the generated makefile, in a source distribution, used to destroy the files
sql_yacc.h and sql_yacc.cc on a 'make clean' target. This has been fixed:
these files are now removed by make maintainer-clean.
- The root cause of the problem found with gcc 4.1 (see Bug 24619) has been
clearly documented, and the "sed" hack has been replaced by a cleaner
work around, when building the code with bison 1.875.
- Removed the file sql/sql_yacc.yy.bak, added by WL 3031 by accident.
- Removed the unnecessary AM_YFLAG= --debug introduced by WL 3432, since
the compiling option DBUG_OFF takes precedence when setting YYDEBUG.
2007-01-24 22:40:39 +01:00
|
|
|
BUILT_MAINT_SRC = sql_yacc.cc sql_yacc.h
|
2007-03-27 23:56:48 +02:00
|
|
|
BUILT_SOURCES = $(BUILT_MAINT_SRC) lex_hash.h link_sources
|
Bug#21029 (Dependencies between sql_yacc.cc and dependent headers not detected)
The build scripts in general, using automake, autoconf, etc, contain several
special commands and work around all related to the way the bison code in the
parser is built, for sql/sql_yacc.yy. These work arounds, accumulated over
time during development, ultimately cause the build scripts to be unstable
and cause build defects by not enforcing dependencies.
This fix simplifies the build process and aligns it with the automake tooling,
which provides native support for bison and *.yy files.
In particular, the following problem have been fixed:
- dependencies with sql_yacc.cc were not honored (Bug 21029), leading to
corrupted builds,
- the work around introduced by Bug 24557, to cleanup the generated files
sql_yacc.h and sql_yacc.cc, has been removed,
- the generated makefile, in a source distribution, used to destroy the files
sql_yacc.h and sql_yacc.cc on a 'make clean' target. This has been fixed:
these files are now removed by make maintainer-clean.
- The root cause of the problem found with gcc 4.1 (see Bug 24619) has been
clearly documented, and the "sed" hack has been replaced by a cleaner
work around, when building the code with bison 1.875.
- Removed the file sql/sql_yacc.yy.bak, added by WL 3031 by accident.
- Removed the unnecessary AM_YFLAG= --debug introduced by WL 3432, since
the compiling option DBUG_OFF takes precedence when setting YYDEBUG.
2007-01-24 22:40:39 +01:00
|
|
|
EXTRA_DIST = udf_example.c udf_example.def $(BUILT_MAINT_SRC) \
|
2006-09-23 07:54:40 +02:00
|
|
|
nt_servc.cc nt_servc.h message.mc CMakeLists.txt \
|
2006-09-22 14:42:43 +02:00
|
|
|
udf_example.c udf_example.def
|
2007-03-27 23:56:48 +02:00
|
|
|
CLEANFILES = lex_hash.h sql_yacc.output link_sources
|
2007-02-19 12:25:25 +01:00
|
|
|
DISTCLEANFILES = $(EXTRA_PROGRAMS)
|
Bug#21029 (Dependencies between sql_yacc.cc and dependent headers not detected)
The build scripts in general, using automake, autoconf, etc, contain several
special commands and work around all related to the way the bison code in the
parser is built, for sql/sql_yacc.yy. These work arounds, accumulated over
time during development, ultimately cause the build scripts to be unstable
and cause build defects by not enforcing dependencies.
This fix simplifies the build process and aligns it with the automake tooling,
which provides native support for bison and *.yy files.
In particular, the following problem have been fixed:
- dependencies with sql_yacc.cc were not honored (Bug 21029), leading to
corrupted builds,
- the work around introduced by Bug 24557, to cleanup the generated files
sql_yacc.h and sql_yacc.cc, has been removed,
- the generated makefile, in a source distribution, used to destroy the files
sql_yacc.h and sql_yacc.cc on a 'make clean' target. This has been fixed:
these files are now removed by make maintainer-clean.
- The root cause of the problem found with gcc 4.1 (see Bug 24619) has been
clearly documented, and the "sed" hack has been replaced by a cleaner
work around, when building the code with bison 1.875.
- Removed the file sql/sql_yacc.yy.bak, added by WL 3031 by accident.
- Removed the unnecessary AM_YFLAG= --debug introduced by WL 3432, since
the compiling option DBUG_OFF takes precedence when setting YYDEBUG.
2007-01-24 22:40:39 +01:00
|
|
|
MAINTAINERCLEANFILES = $(BUILT_MAINT_SRC)
|
|
|
|
AM_YFLAGS = -d --verbose
|
2000-07-31 21:29:14 +02:00
|
|
|
|
2007-09-26 18:47:55 +02:00
|
|
|
# These are listed in 'nodist_mysqld_SOURCES'
|
2007-04-04 12:42:52 +02:00
|
|
|
link_sources:
|
2000-07-31 21:29:14 +02:00
|
|
|
rm -f mini_client_errors.c
|
2005-09-24 15:51:45 +02:00
|
|
|
@LN_CP_F@ $(top_srcdir)/libmysql/errmsg.c mini_client_errors.c
|
2003-04-23 16:37:33 +02:00
|
|
|
rm -f pack.c
|
2005-09-24 15:51:45 +02:00
|
|
|
@LN_CP_F@ $(top_srcdir)/sql-common/pack.c pack.c
|
2003-05-31 12:15:46 +02:00
|
|
|
rm -f client.c
|
2005-09-24 15:51:45 +02:00
|
|
|
@LN_CP_F@ $(top_srcdir)/sql-common/client.c client.c
|
2004-06-24 17:08:36 +02:00
|
|
|
rm -f my_time.c
|
2005-09-24 15:51:45 +02:00
|
|
|
@LN_CP_F@ $(top_srcdir)/sql-common/my_time.c my_time.c
|
2006-01-11 00:07:40 +01:00
|
|
|
rm -f my_user.c
|
|
|
|
@LN_CP_F@ $(top_srcdir)/sql-common/my_user.c my_user.c
|
2000-07-31 21:29:14 +02:00
|
|
|
|
2007-02-15 15:44:56 +01:00
|
|
|
# This generates lex_hash.h
|
|
|
|
# NOTE Built sources should depend on their sources not the tool
|
|
|
|
# this avoid the rebuild of the built files in a source dist
|
|
|
|
lex_hash.h: gen_lex_hash.cc lex.h
|
|
|
|
$(MAKE) $(AM_MAKEFLAGS) gen_lex_hash$(EXEEXT)
|
2007-02-07 09:46:20 +01:00
|
|
|
./gen_lex_hash$(EXEEXT) > $@-t
|
|
|
|
$(MV) $@-t $@
|
2000-07-31 21:29:14 +02:00
|
|
|
|
2006-03-10 10:41:04 +01:00
|
|
|
# For testing of udf_example.so
|
2006-07-29 04:41:50 +02:00
|
|
|
udf_example_la_SOURCES= udf_example.c
|
2006-03-10 10:41:04 +01:00
|
|
|
udf_example_la_LDFLAGS= -module -rpath $(pkglibdir)
|
|
|
|
|
2002-09-05 15:17:08 +02:00
|
|
|
|
2000-08-16 04:14:02 +02:00
|
|
|
# Don't update the files from bitkeeper
|
|
|
|
%::SCCS/s.%
|