mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Bug #58241
Please exclude make_binary_distribution from the distribution With cmake (5.5 and up), "make package" will do it, or cpack. The (generated) "scripts/make_binary_distribution" is just a wrapper around a "cpack" call, with path names set at build time. Similar, "make_win_bin_dist" is not needed any more.
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
#
|
||||
# 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
|
||||
@ -65,7 +65,7 @@ ADD_CUSTOM_TARGET(GenFixPrivs
|
||||
|
||||
IF(UNIX)
|
||||
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_binary_distribution
|
||||
"cd ${CMAKE_BINARY_DIR} && '${CMAKE_CPACK_COMMAND}' -G TGZ --config CPackConfig.cmake" )
|
||||
"cd ${CMAKE_BINARY_DIR} && '${CMAKE_CPACK_COMMAND}' -G TGZ --config CPackConfig.cmake\n" )
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/make_binary_distribution
|
||||
)
|
||||
|
@ -1,342 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
#
|
||||
# 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
|
||||
# the Free Software Foundation; version 2 of the License.
|
||||
#
|
||||
# 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# This is a script to create a TAR or ZIP binary distribution out of a
|
||||
# built source tree. The output file will be put at the top level of
|
||||
# the source tree, as "mysql-<vsn>....{tar.gz,zip}"
|
||||
#
|
||||
# Note that the structure created by this script is slightly different from
|
||||
# what a normal "make install" would produce. No extra "mysql" sub directory
|
||||
# will be created, i.e. no "$prefix/include/mysql", "$prefix/lib/mysql" or
|
||||
# "$prefix/share/mysql". This is because the build system explicitly calls
|
||||
# make with pkgdatadir=<datadir>, etc.
|
||||
#
|
||||
# In GNU make/automake terms
|
||||
#
|
||||
# "pkglibdir" is set to the same as "libdir"
|
||||
# "pkgincludedir" is set to the same as "includedir"
|
||||
# "pkgdatadir" is set to the same as "datadir"
|
||||
# "pkgplugindir" is set to "$pkglibdir/plugin"
|
||||
# "pkgsuppdir" is set to "@prefix@/support-files",
|
||||
# normally the same as "datadir"
|
||||
#
|
||||
# The temporary directory path given to "--tmp=<path>" has to be
|
||||
# absolute and with no spaces.
|
||||
#
|
||||
# Note that for best result, the original "make" should be done with
|
||||
# the same arguments as used for "make install" below, especially the
|
||||
# 'pkglibdir', as the RPATH should to be set correctly.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# Read the command line arguments that control this script
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
machine=@MACHINE_TYPE@
|
||||
system=@SYSTEM_TYPE@
|
||||
SOURCE=`pwd`
|
||||
CP="cp -p"
|
||||
MV="mv"
|
||||
|
||||
# There are platforms, notably OS X on Intel (x86 + x86_64),
|
||||
# for which "uname" does not provide sufficient information.
|
||||
# The value of CFLAGS as used during compilation is the most exact info
|
||||
# we can get - after all, we care about _what_ we built, not _where_ we did it.
|
||||
cflags="@CFLAGS@"
|
||||
|
||||
STRIP=1 # Option ignored
|
||||
SILENT=0
|
||||
MALLOC_LIB=
|
||||
PLATFORM=""
|
||||
TMP=/tmp
|
||||
NEW_NAME="" # Final top directory and TAR package name
|
||||
SUFFIX=""
|
||||
SHORT_PRODUCT_TAG="" # If don't want server suffix in package name
|
||||
NDBCLUSTER="" # Option ignored
|
||||
|
||||
for arg do
|
||||
case "$arg" in
|
||||
--tmp=*) TMP=`echo "$arg" | sed -e "s;--tmp=;;"` ;;
|
||||
--suffix=*) SUFFIX=`echo "$arg" | sed -e "s;--suffix=;;"` ;;
|
||||
--short-product-tag=*) SHORT_PRODUCT_TAG=`echo "$arg" | sed -e "s;--short-product-tag=;;"` ;;
|
||||
--inject-malloc-lib=*) MALLOC_LIB=`echo "$arg" | sed -e 's;^[^=]*=;;'` ;;
|
||||
--no-strip) STRIP=0 ;;
|
||||
--machine=*) machine=`echo "$arg" | sed -e "s;--machine=;;"` ;;
|
||||
--platform=*) PLATFORM=`echo "$arg" | sed -e "s;--platform=;;"` ;;
|
||||
--silent) SILENT=1 ;;
|
||||
--with-ndbcluster) NDBCLUSTER=1 ;;
|
||||
*)
|
||||
echo "Unknown argument '$arg'"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Adjust "system" output from "uname" to be more human readable
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
if [ x"$PLATFORM" = x"" ] ; then
|
||||
# FIXME move this to the build tools
|
||||
# Remove vendor from $system
|
||||
system=`echo $system | sed -e 's/[a-z]*-\(.*\)/\1/g'`
|
||||
|
||||
# Map OS names to "our" OS names (eg. darwin6.8 -> osx10.2)
|
||||
system=`echo $system | sed -e 's/darwin6.*/osx10.2/g'`
|
||||
system=`echo $system | sed -e 's/darwin7.*/osx10.3/g'`
|
||||
system=`echo $system | sed -e 's/darwin8.*/osx10.4/g'`
|
||||
system=`echo $system | sed -e 's/darwin9.*/osx10.5/g'`
|
||||
system=`echo $system | sed -e 's/\(aix4.3\).*/\1/g'`
|
||||
system=`echo $system | sed -e 's/\(aix5.1\).*/\1/g'`
|
||||
system=`echo $system | sed -e 's/\(aix5.2\).*/\1/g'`
|
||||
system=`echo $system | sed -e 's/\(aix5.3\).*/\1/g'`
|
||||
system=`echo $system | sed -e 's/osf5.1b/tru64/g'`
|
||||
system=`echo $system | sed -e 's/linux-gnu/linux/g'`
|
||||
system=`echo $system | sed -e 's/solaris2.\([0-9]*\)/solaris\1/g'`
|
||||
system=`echo $system | sed -e 's/sco3.2v\(.*\)/openserver\1/g'`
|
||||
fi
|
||||
|
||||
# Get the "machine", which really is the CPU architecture (including the size).
|
||||
# The precedence is:
|
||||
# 1) use an explicit argument, if given;
|
||||
# 2) use platform-specific fixes, if there are any (see bug#37808);
|
||||
# 3) stay with the default (determined during "configure", using predefined macros).
|
||||
|
||||
if [ x"$MACHINE" != x"" ] ; then
|
||||
machine=$MACHINE
|
||||
else
|
||||
case $system in
|
||||
osx* )
|
||||
# Extract "XYZ" from CFLAGS "... -arch XYZ ...", or empty!
|
||||
cflag_arch=`echo "$cflags" | sed -n -e 's=.* -arch \([^ ]*\) .*=\1=p'`
|
||||
case "$cflag_arch" in
|
||||
i386 ) case $system in
|
||||
osx10.4 ) machine=i686 ;; # Used a different naming
|
||||
* ) machine=x86 ;;
|
||||
esac ;;
|
||||
x86_64 ) machine=x86_64 ;;
|
||||
ppc ) ;; # No treatment needed with PPC
|
||||
ppc64 ) ;;
|
||||
* ) # No matching compiler flag? "--platform" is needed
|
||||
if [ x"$PLATFORM" != x"" ] ; then
|
||||
: # See below: "$PLATFORM" will take precedence anyway
|
||||
elif [ "$system" = "osx10.3" -a -z "$cflag_arch" ] ; then
|
||||
: # Special case of OS X 10.3, which is PPC-32 only and doesn't use "-arch"
|
||||
else
|
||||
echo "On system '$system' only specific '-arch' values are expected."
|
||||
echo "It is taken from the 'CFLAGS' whose value is:"
|
||||
echo "$cflags"
|
||||
echo "'-arch $cflag_arch' is unexpected, and no '--platform' was given: ABORT"
|
||||
exit 1
|
||||
fi ;;
|
||||
esac # "$cflag_arch"
|
||||
;;
|
||||
esac # $system
|
||||
fi
|
||||
|
||||
# Combine OS and CPU to the "platform". Again, an explicit argument takes precedence.
|
||||
if [ x"$PLATFORM" != x"" ] ; then
|
||||
:
|
||||
else
|
||||
PLATFORM="$system-$machine"
|
||||
fi
|
||||
|
||||
# Print the platform name for build logs
|
||||
echo "PLATFORM NAME: $PLATFORM"
|
||||
|
||||
# Change the distribution to a long descriptive name
|
||||
# For the cluster product, concentrate on the second part
|
||||
VERSION_NAME=@VERSION@
|
||||
case $VERSION_NAME in
|
||||
*-ndb-* ) VERSION_NAME=`echo $VERSION_NAME | sed -e 's/[.0-9]*-ndb-//'` ;;
|
||||
esac
|
||||
if [ x"$SHORT_PRODUCT_TAG" != x"" ] ; then
|
||||
NEW_NAME=mysql-$SHORT_PRODUCT_TAG-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
else
|
||||
NEW_NAME=mysql@MYSQL_SERVER_SUFFIX@-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Define BASE, and remove the old BASE directory if any
|
||||
# ----------------------------------------------------------------------
|
||||
BASE=$TMP/my_dist$SUFFIX
|
||||
if [ -d $BASE ] ; then
|
||||
rm -rf $BASE
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Find the TAR to use
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
# This is needed to prefer GNU tar over platform tar because that can't
|
||||
# always handle long filenames
|
||||
|
||||
PATH_DIRS=`echo $PATH | \
|
||||
sed -e 's/^:/. /' -e 's/:$/ ./' -e 's/::/ . /g' -e 's/:/ /g' `
|
||||
|
||||
which_1 ()
|
||||
{
|
||||
for cmd
|
||||
do
|
||||
for d in $PATH_DIRS
|
||||
do
|
||||
for file in $d/$cmd
|
||||
do
|
||||
if [ -x $file -a ! -d $file ] ; then
|
||||
echo $file
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
done
|
||||
done
|
||||
exit 1
|
||||
}
|
||||
|
||||
tar=`which_1 gnutar gtar`
|
||||
if [ $? -ne 0 -o x"$tar" = x"" ] ; then
|
||||
tar=tar
|
||||
fi
|
||||
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# Handle the Unix/Linux packaging using "make install"
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Terminate on any base level error
|
||||
# ----------------------------------------------------------------------
|
||||
set -e
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Really ugly, one script, "mysql_install_db", needs prefix set to ".",
|
||||
# i.e. makes access relative the current directory. This matches
|
||||
# the documentation, so better not change this. And for another script,
|
||||
# "mysql.server", we make some relative, others not.
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
cd scripts
|
||||
rm -f mysql_install_db
|
||||
@MAKE@ mysql_install_db \
|
||||
prefix=. \
|
||||
bindir=./bin \
|
||||
sbindir=./bin \
|
||||
scriptdir=./bin \
|
||||
libexecdir=./bin \
|
||||
pkgdatadir=./share \
|
||||
localstatedir=./data
|
||||
cd ..
|
||||
|
||||
cd support-files
|
||||
rm -f mysql.server
|
||||
@MAKE@ mysql.server \
|
||||
bindir=./bin \
|
||||
sbindir=./bin \
|
||||
scriptdir=./bin \
|
||||
libexecdir=./bin \
|
||||
pkgdatadir=@pkgdatadir@
|
||||
cd ..
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Do a install that we later are to pack. Use the same paths as in
|
||||
# the build for the relevant directories.
|
||||
# ----------------------------------------------------------------------
|
||||
@MAKE@ DESTDIR=$BASE install \
|
||||
pkglibdir=@pkglibdir@ \
|
||||
pkgincludedir=@pkgincludedir@ \
|
||||
pkgdatadir=@pkgdatadir@ \
|
||||
pkgplugindir=@pkgplugindir@ \
|
||||
pkgsuppdir=@pkgsuppdir@ \
|
||||
mandir=@mandir@ \
|
||||
infodir=@infodir@
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Rename top directory, and set DEST to the new directory
|
||||
# ----------------------------------------------------------------------
|
||||
mv $BASE@prefix@ $BASE/$NEW_NAME
|
||||
DEST=$BASE/$NEW_NAME
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# If we compiled with gcc, copy libgcc.a to the dist as libmygcc.a
|
||||
# ----------------------------------------------------------------------
|
||||
if [ x"@GXX@" = x"yes" ] ; then
|
||||
gcclib=`@CC@ @CFLAGS@ --print-libgcc-file 2>/dev/null` || true
|
||||
if [ -z "$gcclib" ] ; then
|
||||
echo "Warning: Compiler doesn't tell libgcc.a!"
|
||||
elif [ -f "$gcclib" ] ; then
|
||||
$CP $gcclib $DEST/lib/libmygcc.a
|
||||
else
|
||||
echo "Warning: Compiler result '$gcclib' not found / no file!"
|
||||
fi
|
||||
fi
|
||||
|
||||
# If requested, add a malloc library .so into pkglibdir for use
|
||||
# by mysqld_safe
|
||||
if [ -n "$MALLOC_LIB" ]; then
|
||||
cp "$MALLOC_LIB" "$DEST/lib/"
|
||||
fi
|
||||
|
||||
# FIXME let this script be in "bin/", where it is in the RPMs?
|
||||
# http://dev.mysql.com/doc/refman/5.1/en/mysql-install-db-problems.html
|
||||
mkdir $DEST/scripts
|
||||
mv $DEST/bin/mysql_install_db $DEST/scripts/
|
||||
|
||||
# Note, no legacy "safe_mysqld" link to "mysqld_safe" in 5.1
|
||||
|
||||
# Copy readme and license files
|
||||
cp README Docs/INSTALL-BINARY $DEST/
|
||||
if [ -f COPYING ] ; then
|
||||
cp COPYING $DEST/
|
||||
elif [ -f LICENSE.mysql ] ; then
|
||||
cp LICENSE.mysql $DEST/
|
||||
else
|
||||
echo "ERROR: no license files found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# FIXME should be handled by make file, and to other dir
|
||||
mkdir -p $DEST/bin $DEST/support-files
|
||||
cp scripts/mysqlaccess.conf $DEST/bin/
|
||||
cp support-files/magic $DEST/support-files/
|
||||
|
||||
# Create empty data directories, set permission (FIXME why?)
|
||||
mkdir $DEST/data $DEST/data/mysql $DEST/data/test
|
||||
chmod o-rwx $DEST/data $DEST/data/mysql $DEST/data/test
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Create the result tar file
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
echo "Using $tar to create archive"
|
||||
OPT=cvf
|
||||
if [ x$SILENT = x1 ] ; then
|
||||
OPT=cf
|
||||
fi
|
||||
|
||||
echo "Creating and compressing archive"
|
||||
rm -f $NEW_NAME.tar.gz
|
||||
(cd $BASE ; $tar $OPT - $NEW_NAME) | gzip -9 > $NEW_NAME.tar.gz
|
||||
echo "$NEW_NAME.tar.gz created"
|
||||
|
||||
echo "Removing temporary directory"
|
||||
rm -rf $BASE
|
||||
exit 0
|
@ -1,425 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
#
|
||||
# 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
|
||||
# the Free Software Foundation; version 2 of the License.
|
||||
#
|
||||
# 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# Exit if failing to copy, we want exact specifications, not
|
||||
# just "what happen to be built".
|
||||
set -e
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Read first argument that is the base name of the resulting TAR file.
|
||||
# See usage() function below for a description on the arguments.
|
||||
#
|
||||
# NOTE: We will read the rest of the command line later on.
|
||||
# NOTE: Pattern matching with "{..,..}" can't be used, not portable.
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
# FIXME why "libmysql.dll" installed both in "bin" and "lib/opt"?
|
||||
|
||||
usage()
|
||||
{
|
||||
echo <<EOF
|
||||
Usage: make_win_bin_dist [ options ] package-base-name [ copy-defs... ]
|
||||
|
||||
This is a script to run from the top of a source tree built on Windows.
|
||||
The "package-base-name" argument should be something like
|
||||
|
||||
mysql-noinstall-5.0.25-win32 (or winx64)
|
||||
|
||||
and will become the name of the directory of the unpacked ZIP (stripping
|
||||
away the "noinstall" part of the ZIP file name if any) and the base
|
||||
for the resulting package name.
|
||||
|
||||
Options are
|
||||
|
||||
--embedded Pack the embedded server and give error if not built.
|
||||
The default is to pack it if it is built.
|
||||
|
||||
--no-embedded Don't pack the embedded server even if built
|
||||
|
||||
--debug Pack the debug binaries and give error if not built.
|
||||
The default is to pack them if they are built.
|
||||
|
||||
--no-debug Don't pack the debug binaries even if built
|
||||
|
||||
--only-debug The target for this build was "Debug", and we just
|
||||
want to replace the normal binaries with debug
|
||||
versions, i.e. no separate "debug" directories.
|
||||
|
||||
--exe-suffix=SUF Add a suffix to the filename part of the "mysqld" binary.
|
||||
|
||||
As you might want to include files of directories from other builds
|
||||
(like a "mysqld-max.exe" server), you can instruct this script to copy
|
||||
them in for you. This is the "copy-def" arguments, and they are of the
|
||||
form
|
||||
|
||||
relative-dest-name=source-name .....
|
||||
|
||||
i.e. can be something like
|
||||
|
||||
bin/mysqld-max.exe=../my-max-build/sql/release/mysqld.exe
|
||||
|
||||
If you specify a directory the whole directory will be copied.
|
||||
|
||||
EOF
|
||||
exit 1
|
||||
}
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# We need to be at the top of a source tree, check that we are
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
if [ ! -d "sql" ] ; then
|
||||
echo "You need to run this script from inside the source tree"
|
||||
usage
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Actual argument processing, first part
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
NOINST_NAME=""
|
||||
TARGET="release"
|
||||
PACK_EMBEDDED="" # Could be "no", "yes" or empty
|
||||
PACK_DEBUG="" # Could be "no", "yes" or empty
|
||||
EXE_SUFFIX=""
|
||||
|
||||
for arg do
|
||||
shift
|
||||
case "$arg" in
|
||||
--embedded) PACK_EMBEDDED="yes" ;;
|
||||
--no-embedded) PACK_EMBEDDED="no" ;;
|
||||
--debug) PACK_DEBUG="yes" ;;
|
||||
--no-debug) PACK_DEBUG="no" ;;
|
||||
--only-debug) TARGET="debug" ; PACK_DEBUG="no" ;;
|
||||
--exe-suffix=*) EXE_SUFFIX=`echo "$arg" | sed -e "s,--exe-suffix=,,"` ;;
|
||||
-*)
|
||||
echo "Unknown argument '$arg'"
|
||||
usage
|
||||
;;
|
||||
*)
|
||||
NOINST_NAME="$arg"
|
||||
break
|
||||
esac
|
||||
done
|
||||
|
||||
if [ x"$NOINST_NAME" = x"" ] ; then
|
||||
echo "No base package name given"
|
||||
usage
|
||||
fi
|
||||
DESTDIR=`echo $NOINST_NAME | sed 's/-noinstall-/-/'`
|
||||
|
||||
if [ -e $DESTDIR ] ; then
|
||||
echo "Please remove the old $DESTDIR before running this script"
|
||||
usage
|
||||
fi
|
||||
|
||||
trap 'echo "Cleaning up and exiting..." ; rm -fr $DESTDIR; exit 1' ERR
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Adjust target name if needed, release with debug info has another name
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
if [ x"$TARGET" = x"release" -a -f "client/relwithdebinfo/mysql.exe" ]
|
||||
then
|
||||
TARGET="relwithdebinfo"
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Copy executables, and client DLL
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mkdir $DESTDIR
|
||||
mkdir $DESTDIR/bin
|
||||
cp client/$TARGET/*.exe $DESTDIR/bin/
|
||||
cp extra/$TARGET/*.exe $DESTDIR/bin/
|
||||
cp storage/myisam/$TARGET/*.exe $DESTDIR/bin/
|
||||
if [ x"$TARGET" != x"release" ] ; then
|
||||
cp client/$TARGET/mysql.pdb $DESTDIR/bin/
|
||||
cp client/$TARGET/mysqladmin.pdb $DESTDIR/bin/
|
||||
cp client/$TARGET/mysqlbinlog.pdb $DESTDIR/bin/
|
||||
cp client/$TARGET/mysqldump.pdb $DESTDIR/bin/
|
||||
cp client/$TARGET/mysqlimport.pdb $DESTDIR/bin/
|
||||
cp client/$TARGET/mysqlshow.pdb $DESTDIR/bin/
|
||||
fi
|
||||
cp tests/$TARGET/*.exe $DESTDIR/bin/
|
||||
cp libmysql/$TARGET/libmysql.dll $DESTDIR/bin/
|
||||
|
||||
cp sql/$TARGET/mysqld.exe $DESTDIR/bin/mysqld$EXE_SUFFIX.exe
|
||||
if [ x"$TARGET" != x"release" ] ; then
|
||||
cp sql/$TARGET/mysqld.pdb $DESTDIR/bin/mysqld$EXE_SUFFIX.pdb
|
||||
fi
|
||||
|
||||
if [ x"$PACK_DEBUG" = x"" -a -f "sql/debug/mysqld.exe" -o \
|
||||
x"$PACK_DEBUG" = x"yes" ] ; then
|
||||
cp sql/debug/mysqld.exe $DESTDIR/bin/mysqld-debug.exe
|
||||
cp sql/debug/mysqld.pdb $DESTDIR/bin/mysqld-debug.pdb
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Copy data directory, readme files etc
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
if [ -d win/data ] ; then
|
||||
cp -pR win/data $DESTDIR/
|
||||
fi
|
||||
|
||||
mkdir $DESTDIR/Docs
|
||||
cp Docs/INSTALL-BINARY $DESTDIR/Docs/
|
||||
cp Docs/manual.chm $DESTDIR/Docs/ || /bin/true
|
||||
cp ChangeLog $DESTDIR/Docs/ || /bin/true
|
||||
cp support-files/my-*.ini $DESTDIR/
|
||||
cp README $DESTDIR/
|
||||
|
||||
if [ -f COPYING ] ; then
|
||||
cp COPYING $DESTDIR/
|
||||
cp COPYING $DESTDIR/Docs/
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# These will be filled in when we enable embedded. Note that if no
|
||||
# argument is given, it is copied if exists, else a check is done.
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
copy_embedded()
|
||||
{
|
||||
mkdir -p $DESTDIR/Embedded/DLL/release \
|
||||
$DESTDIR/Embedded/static/release \
|
||||
$DESTDIR/include
|
||||
cp libmysqld/libmysqld.def $DESTDIR/include/
|
||||
cp libmysqld/$TARGET/mysqlserver.lib $DESTDIR/Embedded/static/release/
|
||||
cp libmysqld/$TARGET/libmysqld.dll $DESTDIR/Embedded/DLL/release/
|
||||
cp libmysqld/$TARGET/libmysqld.exp $DESTDIR/Embedded/DLL/release/
|
||||
cp libmysqld/$TARGET/libmysqld.lib $DESTDIR/Embedded/DLL/release/
|
||||
if [ x"$TARGET" != x"release" ] ; then
|
||||
cp libmysqld/$TARGET/mysqlserver.pdb $DESTDIR/Embedded/static/release/
|
||||
cp libmysqld/$TARGET/libmysqld.pdb $DESTDIR/Embedded/DLL/release/
|
||||
fi
|
||||
|
||||
if [ x"$PACK_DEBUG" = x"" -a -f "libmysqld/debug/libmysqld.lib" -o \
|
||||
x"$PACK_DEBUG" = x"yes" ] ; then
|
||||
mkdir -p $DESTDIR/Embedded/DLL/debug \
|
||||
$DESTDIR/Embedded/static/debug
|
||||
cp libmysqld/debug/mysqlserver.lib $DESTDIR/Embedded/static/debug/
|
||||
cp libmysqld/debug/mysqlserver.pdb $DESTDIR/Embedded/static/debug/
|
||||
cp libmysqld/debug/libmysqld.dll $DESTDIR/Embedded/DLL/debug/
|
||||
cp libmysqld/debug/libmysqld.exp $DESTDIR/Embedded/DLL/debug/
|
||||
cp libmysqld/debug/libmysqld.lib $DESTDIR/Embedded/DLL/debug/
|
||||
cp libmysqld/debug/libmysqld.pdb $DESTDIR/Embedded/DLL/debug/
|
||||
fi
|
||||
}
|
||||
|
||||
if [ x"$PACK_EMBEDDED" = x"" -a \
|
||||
-f "libmysqld/$TARGET/mysqlserver.lib" -a \
|
||||
-f "libmysqld/$TARGET/libmysqld.lib" -o \
|
||||
x"$PACK_EMBEDDED" = x"yes" ] ; then
|
||||
copy_embedded
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Note: Make sure to sync with include/Makefile.am and WiX installer
|
||||
# XML specifications
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mkdir -p $DESTDIR/include
|
||||
cp include/mysql.h \
|
||||
include/mysql_com.h \
|
||||
include/mysql_time.h \
|
||||
include/my_list.h \
|
||||
include/my_alloc.h \
|
||||
include/typelib.h \
|
||||
include/my_dbug.h \
|
||||
include/m_string.h \
|
||||
include/my_sys.h \
|
||||
include/my_xml.h \
|
||||
include/mysql_embed.h \
|
||||
include/my_pthread.h \
|
||||
include/my_no_pthread.h \
|
||||
include/decimal.h \
|
||||
include/errmsg.h \
|
||||
include/my_global.h \
|
||||
include/my_config.h \
|
||||
include/my_net.h \
|
||||
include/my_getopt.h \
|
||||
include/sslopt-longopts.h \
|
||||
include/my_dir.h \
|
||||
include/sslopt-vars.h \
|
||||
include/sslopt-case.h \
|
||||
include/sql_common.h \
|
||||
include/keycache.h \
|
||||
include/m_ctype.h \
|
||||
include/my_attribute.h \
|
||||
include/my_compiler.h \
|
||||
include/mysqld_error.h \
|
||||
include/sql_state.h \
|
||||
include/mysqld_ername.h \
|
||||
include/mysql_version.h \
|
||||
libmysql/libmysql.def \
|
||||
$DESTDIR/include/
|
||||
|
||||
mkdir -p $DESTDIR/include/mysql
|
||||
cp include/mysql/plugin.h $DESTDIR/include/mysql/
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Client libraries, and other libraries
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mkdir -p $DESTDIR/lib/opt
|
||||
mkdir -p $DESTDIR/lib/plugin
|
||||
cp sql/$TARGET/mysqld.lib $DESTDIR/lib/
|
||||
cp libmysql/$TARGET/libmysql.dll \
|
||||
libmysql/$TARGET/libmysql.lib \
|
||||
libmysql/$TARGET/mysqlclient.lib \
|
||||
mysys/$TARGET/mysys.lib \
|
||||
regex/$TARGET/regex.lib \
|
||||
strings/$TARGET/strings.lib \
|
||||
zlib/$TARGET/zlib.lib $DESTDIR/lib/opt/
|
||||
if [ -d storage/innodb_plugin ]; then
|
||||
cp storage/innodb_plugin/$TARGET/ha_innodb_plugin.dll \
|
||||
$DESTDIR/lib/plugin/
|
||||
fi
|
||||
if [ -d plugin/semisync ]; then
|
||||
cp plugin/semisync/$TARGET/semisync_master.dll \
|
||||
plugin/semisync/$TARGET/semisync_slave.dll \
|
||||
$DESTDIR/lib/plugin/
|
||||
fi
|
||||
|
||||
if [ x"$TARGET" != x"release" ] ; then
|
||||
cp libmysql/$TARGET/libmysql.pdb \
|
||||
libmysql/$TARGET/mysqlclient.pdb \
|
||||
mysys/$TARGET/mysys.pdb \
|
||||
regex/$TARGET/regex.pdb \
|
||||
strings/$TARGET/strings.pdb \
|
||||
zlib/$TARGET/zlib.pdb $DESTDIR/lib/opt/
|
||||
if [ -d storage/innodb_plugin ]; then
|
||||
cp storage/innodb_plugin/$TARGET/ha_innodb_plugin.pdb \
|
||||
$DESTDIR/lib/plugin/
|
||||
fi
|
||||
if [ -d plugin/semisync ]; then
|
||||
cp plugin/semisync/$TARGET/semisync_master.pdb \
|
||||
plugin/semisync/$TARGET/semisync_slave.pdb \
|
||||
$DESTDIR/lib/plugin/
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if [ x"$PACK_DEBUG" = x"" -a -f "libmysql/debug/libmysql.lib" -o \
|
||||
x"$PACK_DEBUG" = x"yes" ] ; then
|
||||
mkdir -p $DESTDIR/lib/debug
|
||||
mkdir -p $DESTDIR/lib/plugin/debug
|
||||
cp libmysql/debug/libmysql.dll \
|
||||
libmysql/debug/libmysql.lib \
|
||||
libmysql/debug/libmysql.pdb \
|
||||
libmysql/debug/mysqlclient.lib \
|
||||
libmysql/debug/mysqlclient.pdb \
|
||||
mysys/debug/mysys.lib \
|
||||
mysys/debug/mysys.pdb \
|
||||
regex/debug/regex.lib \
|
||||
regex/debug/regex.pdb \
|
||||
strings/debug/strings.lib \
|
||||
strings/debug/strings.pdb \
|
||||
zlib/debug/zlib.lib \
|
||||
zlib/debug/zlib.pdb $DESTDIR/lib/debug/
|
||||
if [ -d storage/innodb_plugin ]; then
|
||||
cp storage/innodb_plugin/debug/ha_innodb_plugin.dll \
|
||||
storage/innodb_plugin/debug/ha_innodb_plugin.lib \
|
||||
storage/innodb_plugin/debug/ha_innodb_plugin.pdb \
|
||||
$DESTDIR/lib/plugin/debug/
|
||||
fi
|
||||
if [ -d plugin/semisync ]; then
|
||||
cp plugin/semisync/debug/semisync_master.dll \
|
||||
plugin/semisync/debug/semisync_master.lib \
|
||||
plugin/semisync/debug/semisync_master.pdb \
|
||||
plugin/semisync/debug/semisync_slave.dll \
|
||||
plugin/semisync/debug/semisync_slave.lib \
|
||||
plugin/semisync/debug/semisync_slave.pdb \
|
||||
$DESTDIR/lib/plugin/debug/
|
||||
fi
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Copy the test directory
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mkdir $DESTDIR/mysql-test
|
||||
cp mysql-test/mysql-test-run.pl $DESTDIR/mysql-test/
|
||||
cp mysql-test/mysql-stress-test.pl $DESTDIR/mysql-test/
|
||||
cp mysql-test/README $DESTDIR/mysql-test/
|
||||
cp -R mysql-test/{t,r,include,suite,std_data,lib,collections} $DESTDIR/mysql-test/
|
||||
|
||||
# Note that this will not copy "extra" if a soft link
|
||||
if [ -d mysql-test/extra ] ; then
|
||||
mkdir $DESTDIR/mysql-test/extra
|
||||
cp -pR mysql-test/extra/* $DESTDIR/mysql-test/extra/
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Copy what could be usable in the "scripts" directory
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mysql_scripts="\
|
||||
mysql_config.pl \
|
||||
mysql_convert_table_format.pl \
|
||||
mysql_install_db.pl \
|
||||
mysql_secure_installation.pl \
|
||||
mysqld_multi.pl \
|
||||
mysqldumpslow.pl \
|
||||
mysqlhotcopy.pl \
|
||||
"
|
||||
|
||||
mkdir -p $DESTDIR/scripts
|
||||
|
||||
for i in $mysql_scripts
|
||||
do
|
||||
cp scripts/$i $DESTDIR/scripts/$i
|
||||
done
|
||||
|
||||
cp -pR sql/share $DESTDIR/
|
||||
cp -pR sql-bench $DESTDIR/
|
||||
rm -f $DESTDIR/sql-bench/*.sh $DESTDIR/sql-bench/Makefile*
|
||||
|
||||
# The SQL initialisation code is to be in "share"
|
||||
cp scripts/*.sql $DESTDIR/share/
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Clean up from possibly copied SCCS directories
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
rm -rf `find $DESTDIR -type d -name SCCS -print`
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Copy other files specified on command line DEST=SOURCE
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
for arg do
|
||||
dst=`echo $arg | sed -n 's/=.*$//p'`
|
||||
src=`echo $arg | sed -n 's/^.*=//p'`
|
||||
|
||||
if [ x"$dst" = x"" -o x"$src" = x"" ] ; then
|
||||
echo "Invalid specification of what to copy"
|
||||
usage
|
||||
fi
|
||||
|
||||
mkdir -p `dirname $DESTDIR/$dst`
|
||||
cp -pR "$src" $DESTDIR/$dst
|
||||
done
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Finally create the ZIP archive
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
rm -f $NOINST_NAME.zip
|
||||
zip -r $NOINST_NAME.zip $DESTDIR
|
||||
rm -Rf $DESTDIR
|
@ -535,7 +535,7 @@ install -m 644 "%{malloc_lib_source}" \
|
||||
|
||||
# Remove man pages we explicitly do not want to package, avoids 'unpackaged
|
||||
# files' warning.
|
||||
rm -f $RBR%{_mandir}/man1/make_win_bin_dist.1*
|
||||
# This has become obsolete: rm -f $RBR%{_mandir}/man1/make_win_bin_dist.1*
|
||||
|
||||
##############################################################################
|
||||
# Post processing actions, i.e. when installed
|
||||
@ -1153,6 +1153,10 @@ echo "=====" >> $STATUS_HISTORY
|
||||
# merging BK trees)
|
||||
##############################################################################
|
||||
%changelog
|
||||
* Tue Sep 13 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
|
||||
|
||||
- "make_win_bin_dist" and its manual are dropped, cmake does it different.
|
||||
|
||||
* Tue Aug 30 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
|
||||
|
||||
- Add the manual page for "mysql_plugin" to the server package.
|
||||
|
Reference in New Issue
Block a user