mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
Fixed that RPM can be recompiled even if there is not another glibc in /usr/local/mysql-glibc
Build-tools/Do-compile: Fix to build mysqlcom Build-tools/Do-rpm: Fixes for building with gcc 3.0.4 Docs/manual.texi: Small bug fix configure.in: Cleanup
This commit is contained in:
@@ -92,7 +92,7 @@ if ($opt_stage == 0)
|
|||||||
{
|
{
|
||||||
system("mkdir $host") if (! -d $host);
|
system("mkdir $host") if (! -d $host);
|
||||||
system("touch $host/mysql-fix-for-glob");
|
system("touch $host/mysql-fix-for-glob");
|
||||||
rm_all(<$host/mysql-*>);
|
rm_all(<$host/mysql*>);
|
||||||
system("mkdir $host/bin") if (! -d "$host/bin");
|
system("mkdir $host/bin") if (! -d "$host/bin");
|
||||||
}
|
}
|
||||||
rm_all("$host/test");
|
rm_all("$host/test");
|
||||||
|
@@ -152,7 +152,7 @@ cat > $logdir/$TMP_SCRIPT_MYSQL <<END
|
|||||||
set -x
|
set -x
|
||||||
|
|
||||||
# Check environment
|
# Check environment
|
||||||
export MYSQL_BUILD_PATH="/usr/cygnus/redhat-980810/H-i386-pc-linux-gnu/bin/:/usr/bin:/bin"
|
export MYSQL_BUILD_PATH="/usr/local/bin:/my/gnu/bin:/usr/bin:/bin"
|
||||||
export MYSQL_BUILD_CFLAGS="-O6 -fno-omit-frame-pointer -mpentium"
|
export MYSQL_BUILD_CFLAGS="-O6 -fno-omit-frame-pointer -mpentium"
|
||||||
export MYSQL_BUILD_CXXFLAGS="-O6 -fno-omit-frame-pointer \
|
export MYSQL_BUILD_CXXFLAGS="-O6 -fno-omit-frame-pointer \
|
||||||
-felide-constructors -fno-exceptions -fno-rtti -mpentium"
|
-felide-constructors -fno-exceptions -fno-rtti -mpentium"
|
||||||
|
@@ -32044,7 +32044,7 @@ mysql> select INET_ATON("209.207.224.40");
|
|||||||
@end example
|
@end example
|
||||||
|
|
||||||
The generated number is always in network byte order; For example the
|
The generated number is always in network byte order; For example the
|
||||||
above number is calculated as @code{209*255^3 + 207*255^2 + 224*255 +40}.
|
above number is calculated as @code{209*256^3 + 207*256^2 + 224*256 +40}.
|
||||||
|
|
||||||
@findex MASTER_POS_WAIT()
|
@findex MASTER_POS_WAIT()
|
||||||
@item MASTER_POS_WAIT(log_name, log_pos)
|
@item MASTER_POS_WAIT(log_name, log_pos)
|
||||||
|
15
configure.in
15
configure.in
@@ -436,11 +436,12 @@ AC_ARG_WITH(other-libc,
|
|||||||
enable_shared="no"
|
enable_shared="no"
|
||||||
all_is_static="yes"
|
all_is_static="yes"
|
||||||
CFLAGS="$CFLAGS -I$other_libc_include"
|
CFLAGS="$CFLAGS -I$other_libc_include"
|
||||||
CXXFLAGS="$CXXFLAGS -fpermissive -I$other_libc_include"
|
|
||||||
# There seems to be a feature in gcc that treats system and libc headers
|
# There seems to be a feature in gcc that treats system and libc headers
|
||||||
#leniently when they violatate ANSI C++ standard, but it is strict otherwise
|
# silently when they violatate ANSI C++ standard, but it is strict otherwise
|
||||||
# since gcc cannot now recognize that our headers are libc, we work around
|
# since gcc cannot now recognize that our headers are libc, we work around
|
||||||
#by telling it to be permissive
|
# by telling it to be permissive. Note that this option only works with
|
||||||
|
# new versions of gcc (2.95.x and above)
|
||||||
|
CXXFLAGS="$CXXFLAGS -fpermissive -I$other_libc_include"
|
||||||
static_nss=
|
static_nss=
|
||||||
if test -f "$other_libc_lib/libnss_files.a"
|
if test -f "$other_libc_lib/libnss_files.a"
|
||||||
then
|
then
|
||||||
@@ -461,12 +462,12 @@ AC_ARG_WITH(other-libc,
|
|||||||
LDFLAGS="$LDFLAGS -static -L$other_libc_lib "
|
LDFLAGS="$LDFLAGS -static -L$other_libc_lib "
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# When linking against custom libc installed separately, we want to force
|
||||||
|
# all binary builds to be static, including the build done by configure
|
||||||
|
# itself to test for system features.
|
||||||
with_mysqld_ldflags="-all-static"
|
with_mysqld_ldflags="-all-static"
|
||||||
with_client_ldflags="-all-static"
|
with_client_ldflags="-all-static"
|
||||||
NOINST_LDFLAGS="-all-static"
|
NOINST_LDFLAGS="-all-static"
|
||||||
#when linking against custom libc installed separately, we want to force all
|
|
||||||
#binary builds to be static, including the build done by configure itself
|
|
||||||
#to test for system features
|
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
other_libc_include=
|
other_libc_include=
|
||||||
@@ -1512,7 +1513,7 @@ ac_save_CXXFLAGS="$CXXFLAGS"
|
|||||||
AC_CACHE_CHECK([style of gethost* routines], mysql_cv_gethost_style,
|
AC_CACHE_CHECK([style of gethost* routines], mysql_cv_gethost_style,
|
||||||
AC_LANG_SAVE
|
AC_LANG_SAVE
|
||||||
AC_LANG_CPLUSPLUS
|
AC_LANG_CPLUSPLUS
|
||||||
#do not treat warnings as errors if we are linking agaist other libc
|
# Do not treat warnings as errors if we are linking agaist other libc
|
||||||
# this is to work around gcc not being permissive on non-system includes
|
# this is to work around gcc not being permissive on non-system includes
|
||||||
# with respect to ANSI C++
|
# with respect to ANSI C++
|
||||||
if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
|
if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
|
||||||
|
@@ -188,9 +188,17 @@ sh -c "PATH=\"${MYSQL_BUILD_PATH:-/bin:/usr/bin}\" \
|
|||||||
make benchdir_root=$RPM_BUILD_ROOT/usr/share/
|
make benchdir_root=$RPM_BUILD_ROOT/usr/share/
|
||||||
}
|
}
|
||||||
|
|
||||||
# Use the build root for temporary storage of the shared libraries.
|
# Use our own copy of glibc
|
||||||
|
|
||||||
OTHER_LIBC_DIR=/usr/local/mysql-glibc
|
OTHER_LIBC_DIR=/usr/local/mysql-glibc
|
||||||
|
USE_OTHER_LIBC_DIR=""
|
||||||
|
if test -d "OTHER_LIBC_DIR"
|
||||||
|
then
|
||||||
|
USE_OTHER_LIBC_DIR="--with-other-libc=$OTHER_LIBC_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Use the build root for temporary storage of the shared libraries.
|
||||||
|
|
||||||
RBR=$RPM_BUILD_ROOT
|
RBR=$RPM_BUILD_ROOT
|
||||||
MBD=$RPM_BUILD_DIR/mysql-%{mysql_version}
|
MBD=$RPM_BUILD_DIR/mysql-%{mysql_version}
|
||||||
if test -z "$RBR" -o "$RBR" = "/"
|
if test -z "$RBR" -o "$RBR" = "/"
|
||||||
@@ -204,7 +212,7 @@ mkdir -p $RBR
|
|||||||
# We need to build shared libraries separate from mysqld-max because we
|
# We need to build shared libraries separate from mysqld-max because we
|
||||||
# are using --with-other-libc
|
# are using --with-other-libc
|
||||||
|
|
||||||
BuildMySQL "--disable-shared --with-other-libc=$OTHER_LIBC_DIR --with-berkeley-db --with-innodb --with-mysqld-ldflags='-all-static' --with-server-suffix='-Max'"
|
BuildMySQL "--disable-shared $USE_OTHER_LIBC_DIR --with-berkeley-db --with-innodb --with-mysqld-ldflags='-all-static' --with-server-suffix='-Max'"
|
||||||
|
|
||||||
# Save everything for debug
|
# Save everything for debug
|
||||||
# tar cf $RBR/all.tar .
|
# tar cf $RBR/all.tar .
|
||||||
@@ -234,7 +242,7 @@ automake
|
|||||||
BuildMySQL "--disable-shared" \
|
BuildMySQL "--disable-shared" \
|
||||||
"--with-mysqld-ldflags='-all-static'" \
|
"--with-mysqld-ldflags='-all-static'" \
|
||||||
"--with-client-ldflags='-all-static'" \
|
"--with-client-ldflags='-all-static'" \
|
||||||
"--with-other-libc=$OTHER_LIBC_DIR" \
|
"$USE_OTHER_LIBC_DIR" \
|
||||||
"--without-berkeley-db --without-innodb"
|
"--without-berkeley-db --without-innodb"
|
||||||
nm --numeric-sort sql/mysqld > sql/mysqld.sym
|
nm --numeric-sort sql/mysqld > sql/mysqld.sym
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user