Commit 9ee0658a authored by unknown's avatar unknown

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
parent 9ed83bda
......@@ -92,7 +92,7 @@ if ($opt_stage == 0)
{
system("mkdir $host") if (! -d $host);
system("touch $host/mysql-fix-for-glob");
rm_all(<$host/mysql-*>);
rm_all(<$host/mysql*>);
system("mkdir $host/bin") if (! -d "$host/bin");
}
rm_all("$host/test");
......
......@@ -152,7 +152,7 @@ cat > $logdir/$TMP_SCRIPT_MYSQL <<END
set -x
# 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_CXXFLAGS="-O6 -fno-omit-frame-pointer \
-felide-constructors -fno-exceptions -fno-rtti -mpentium"
......
......@@ -32044,7 +32044,7 @@ mysql> select INET_ATON("209.207.224.40");
@end example
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()
@item MASTER_POS_WAIT(log_name, log_pos)
......@@ -436,16 +436,17 @@ AC_ARG_WITH(other-libc,
enable_shared="no"
all_is_static="yes"
CFLAGS="$CFLAGS -I$other_libc_include"
# There seems to be a feature in gcc that treats system and libc headers
# 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
# 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"
#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
#since gcc cannot now recognize that our headers are libc, we work around
#by telling it to be permissive
static_nss=
if test -f "$other_libc_lib/libnss_files.a"
then
# libc has been compiled with --enable-static-nss
# we need special flags, but we will have to add those later
# libc has been compiled with --enable-static-nss
# we need special flags, but we will have to add those later
STATIC_NSS_FLAGS="-Wl,--start-group -lc -lnss_files -lnss_dns -lresolv \
-Wl,--end-group"
static_nss=1
......@@ -461,12 +462,12 @@ AC_ARG_WITH(other-libc,
LDFLAGS="$LDFLAGS -static -L$other_libc_lib "
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_client_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=
......@@ -1512,9 +1513,9 @@ ac_save_CXXFLAGS="$CXXFLAGS"
AC_CACHE_CHECK([style of gethost* routines], mysql_cv_gethost_style,
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
#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
#with respect to ANSI C++
# 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
# with respect to ANSI C++
if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
then
CXXFLAGS="$CXXFLAGS -Werror"
......@@ -2204,7 +2205,7 @@ then
fi
fi
#IMPORTANT - do not modify LIBS past this line - this hack is the only way
# IMPORTANT - do not modify LIBS past this line - this hack is the only way
# I know to add the static NSS magic if we have static NSS libraries with
# glibc - Sasha
......
......@@ -188,9 +188,17 @@ sh -c "PATH=\"${MYSQL_BUILD_PATH:-/bin:/usr/bin}\" \
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
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
MBD=$RPM_BUILD_DIR/mysql-%{mysql_version}
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
# 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
# tar cf $RBR/all.tar .
......@@ -234,7 +242,7 @@ automake
BuildMySQL "--disable-shared" \
"--with-mysqld-ldflags='-all-static'" \
"--with-client-ldflags='-all-static'" \
"--with-other-libc=$OTHER_LIBC_DIR" \
"$USE_OTHER_LIBC_DIR" \
"--without-berkeley-db --without-innodb"
nm --numeric-sort sql/mysqld > sql/mysqld.sym
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment