Jonathan,
Can you please comment on the following patch, since you modified the
file before me. It unbreaks mysql_install_db for out-of-directory builds
in 5.1, e.g. make distcheck.
Daniel
Daniel Fischer wrote:
> Below is the list of changes that have just been committed into a local
> 5.1 repository of df. When df does a push these changes will
> be propagated to the main repository and, within 24 hours after the
> push, to the public repository.
> For information on how to access the public repository
> see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
>
> ChangeSet@stripped, 2007-11-23 13:38:59+01:00, df@stripped +1 -0
> Fix make distcheck.
>
> scripts/mysql_install_db.sh@stripped, 2007-11-23 13:38:54+01:00,
> df@stripped +19 -15
> Give precedence to basedir if both basedir and srcdir are specified, but set
> mysqld_opt, pkgdatadir and scriptdir always from srcdir if it is specified. This is to
> unbreak out-of-directory builds like make distcheck does, where we don't have binaries in
> srcdir.
>
> diff -Nrup a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh
> --- a/scripts/mysql_install_db.sh 2007-11-08 13:42:01 +01:00
> +++ b/scripts/mysql_install_db.sh 2007-11-23 13:38:54 +01:00
> @@ -189,12 +189,12 @@ parse_arguments PICK-ARGS-FROM-ARGV "$@"
> #
> # or default to compiled-in locations.
> #
> -if test -n "$srcdir"
> -then
> - print_defaults="$srcdir/extra/my_print_defaults"
> -elif test -n "$basedir"
> +if test -n "$basedir"
> then
> print_defaults=`find_in_basedir my_print_defaults bin extra`
> +elif test -n "$srcdir"
> +then
> + print_defaults="$srcdir/extra/my_print_defaults"
> else
> print_defaults="@bindir@/my_print_defaults"
> fi
> @@ -211,22 +211,19 @@ parse_arguments `$print_defaults $defaul
> parse_arguments PICK-ARGS-FROM-ARGV "$@"
>
> # Configure paths to support files
> -if test -n "$srcdir"
> -then
> - basedir="$srcdir"
> - bindir="$srcdir/client"
> - extra_bindir="$srcdir/extra"
> - mysqld="$srcdir/sql/mysqld"
> - mysqld_opt="--language=$srcdir/sql/share/english"
> - pkgdatadir="$srcdir/scripts"
> - scriptdir="$srcdir/scripts"
> -elif test -n "$basedir"
> +if test -n "$basedir"
> then
> bindir="$basedir/bin"
> extra_bindir="$bindir"
> - mysqld=`find_in_basedir mysqld libexec sbin bin`
> + mysqld=`find_in_basedir mysqld libexec sbin bin sql`
> pkgdatadir=`find_in_basedir --dir fill_help_tables.sql share share/mysql`
> scriptdir="$basedir/scripts"
> +elif test -n "$srcdir"
> +then
> + basedir="$srcdir"
> + bindir="$srcdir/client"
> + extra_bindir="$srcdir/extra"
> + mysqld="$srcdir/sql/mysqld"
> else
> basedir="@prefix@"
> bindir="@bindir@"
> @@ -234,6 +231,13 @@ else
> mysqld="@libexecdir@/mysqld"
> pkgdatadir="@pkgdatadir@"
> scriptdir="@scriptdir@"
> +fi
> +
> +if test -n "$srcdir"
> +then
> + mysqld_opt="--language=$srcdir/sql/share/english"
> + pkgdatadir="$srcdir/scripts"
> + scriptdir="$srcdir/scripts"
> fi
>
> # Set up paths to SQL scripts required for bootstrap
>
--
Daniel Fischer, Team Lead, Build +46 18174400 ext. 4537
MySQL GmbH, Dachauer Strasse 37, D-80335 Muenchen - www.mysql.com
Geschaeftsfuehrer: Kaj Arnoe HRB Muenchen 162140
Are you MySQL certified? mysql.com/certification 49.010, 8.375