diff options
-rw-r--r-- | Makefile.am | 24 | ||||
-rw-r--r-- | include/Makefile.am | 23 | ||||
-rw-r--r-- | scripts/mysql_install_db.sh | 36 |
3 files changed, 49 insertions, 34 deletions
diff --git a/Makefile.am b/Makefile.am index 9752075fe78..6038825c928 100644 --- a/Makefile.am +++ b/Makefile.am @@ -49,6 +49,14 @@ BUILT_SOURCES = linked_client_sources linked_server_sources \ CLEANFILES = $(BUILT_SOURCES) bdb/build_unix/db.h DISTCLEANFILES = ac_available_languages_fragment +# Our current filtering of "sql_yacc.cc" in "sql/Makefile.am" creates +# a problem, if a VPATH build and "sql_yacc.cc" was part of the source +# distribution we end up with one "sql_yacc.cc" in the source tree, +# and one in the build tree. This breaks "distcleancheck", until this +# is sorted out we redefine the find that scans for files not removed + +distcleancheck_listfiles = find . -name sql_yacc.cc -o -type f -print + linked_include_sources: cd include; $(MAKE) link_sources echo timestamp > linked_include_sources @@ -93,17 +101,11 @@ bin-dist: all dist-hook: rm -rf `find $(distdir) -type d -name SCCS -print` rm -f `find $(distdir) -type l -print` - if echo "$(distdir)" | grep -q '^/' ; then \ - mkdir -p "$(distdir)/win" ; \ - scripts/mysql_install_db --no-defaults --windows \ - --basedir=$(top_srcdir) \ - --datadir="$(distdir)/win/data"; \ - else \ - mkdir -p "$$(pwd)/$(distdir)/win" ; \ - scripts/mysql_install_db --no-defaults --windows \ - --basedir=$(top_srcdir) \ - --datadir="$$(pwd)/$(distdir)/win/data"; \ - fi + mkdir -p $(distdir)/win + scripts/mysql_install_db --no-defaults --windows \ + --basedir=$(top_builddir) \ + --datadir=$(distdir)/win/data \ + --srcdir=$(top_srcdir) tags: support-files/build-tags diff --git a/include/Makefile.am b/include/Makefile.am index 3500503207c..8a4799149d0 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -15,14 +15,17 @@ # Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, # MA 02111-1307, USA -BUILT_SOURCES = mysql_version.h my_config.h -pkginclude_HEADERS = my_dbug.h m_string.h my_sys.h my_list.h my_xml.h \ - mysql.h mysql_com.h mysql_embed.h \ - my_semaphore.h my_pthread.h my_no_pthread.h raid.h \ - errmsg.h my_global.h my_net.h my_alloc.h \ - my_getopt.h sslopt-longopts.h my_dir.h typelib.h \ +BUILT_SOURCES = $(HEADERS_GEN) abi_check +HEADERS_GEN = mysql_version.h my_config.h +HEADERS_ABI = mysql.h mysql_com.h mysql_time.h \ + my_list.h my_alloc.h typelib.h +pkginclude_HEADERS = $(HEADERS_ABI) my_dbug.h m_string.h my_sys.h \ + my_xml.h mysql_embed.h \ + my_semaphore.h my_pthread.h my_no_pthread.h raid.h \ + errmsg.h my_global.h my_net.h \ + my_getopt.h sslopt-longopts.h my_dir.h \ sslopt-vars.h sslopt-case.h sql_common.h keycache.h \ - mysql_time.h m_ctype.h $(BUILT_SOURCES) + m_ctype.h $(HEADERS_GEN) noinst_HEADERS = config-win.h config-os2.h config-netware.h \ heap.h my_bitmap.h\ myisam.h myisampack.h myisammrg.h ft_global.h\ @@ -59,8 +62,7 @@ dist-hook: # # Create a icheck file and compare it to the reference -abi_check: mysql.h mysql_version.h mysql_com.h mysql_time.h my_list.h \ - my_alloc.h typelib.h mysql_h.ic +abi_check: $(HEADERS_ABI) mysql_version.h mysql_h.ic @set -ex; \ if [ @ICHECK@ != no ] ; then \ @ICHECK@ --canonify --skip-from-re /usr/ -o $@.ic mysql.h; \ @@ -68,8 +70,5 @@ abi_check: mysql.h mysql_version.h mysql_com.h mysql_time.h my_list.h \ fi; \ touch abi_check; -all: abi_check - - # Don't update the files from bitkeeper %::SCCS/s.% diff --git a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh index 5d7933e5277..e43b586054e 100644 --- a/scripts/mysql_install_db.sh +++ b/scripts/mysql_install_db.sh @@ -33,6 +33,7 @@ parse_arguments() { case "$arg" in --force) force=1 ;; --basedir=*) basedir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;; + --srcdir=*) srcdir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;; --ldata=*|--datadir=*) ldata=`echo "$arg" | sed -e 's/^[^=]*=//'` ;; --user=*) # Note that the user will be passed to mysqld so that it runs @@ -78,6 +79,7 @@ ldata= execdir= bindir= basedir= +srcdir= force=0 verbose=0 fill_help_tables="" @@ -106,18 +108,24 @@ else fi # find fill_help_tables.sh -for i in $basedir/support-files $basedir/share $basedir/share/mysql $basedir/scripts `pwd` `pwd`/scripts @pkgdatadir@ -do - if test -f $i/fill_help_tables.sql - then - pkgdatadir=$i - fi -done - -if test -f $pkgdatadir/fill_help_tables.sql +if test -n "$srcdir" then - fill_help_tables=$pkgdatadir/fill_help_tables.sql + fill_help_tables=$srcdir/scripts/fill_help_tables.sql else + for i in $basedir/support-files $basedir/share $basedir/share/mysql \ + $basedir/scripts `pwd` `pwd`/scripts @pkgdatadir@ + do + if test -f $i/fill_help_tables.sql + then + pkgdatadir=$i + fi + done + + fill_help_tables=$pkgdatadir/fill_help_tables.sql +fi + +if test ! -f $fill_help_tables +then echo "Could not find help file 'fill_help_tables.sql' in @pkgdatadir@ or inside $basedir". exit 1; fi @@ -130,7 +138,13 @@ scriptdir=$bindir if test "$windows" = 1 then mysqld="./sql/mysqld" - mysqld_opt="--language=./sql/share/english" + if test -n "$srcdir" -a -f $srcdir/sql/share/english/errmsg.sys + then + langdir=$srcdir/sql/share/english + else + langdir=./sql/share/english + fi + mysqld_opt="--language=$langdir" scriptdir="./scripts" fi |