diff options
-rwxr-xr-x | Build-tools/Do-compile | 2 | ||||
-rwxr-xr-x | Build-tools/Do-rpm | 2 | ||||
-rw-r--r-- | Docs/manual.texi | 2 | ||||
-rw-r--r-- | configure.in | 27 | ||||
-rw-r--r-- | support-files/mysql.spec.sh | 14 |
5 files changed, 28 insertions, 19 deletions
diff --git a/Build-tools/Do-compile b/Build-tools/Do-compile index 1e20cb35ed7..ffd8815fdb1 100755 --- a/Build-tools/Do-compile +++ b/Build-tools/Do-compile @@ -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"); diff --git a/Build-tools/Do-rpm b/Build-tools/Do-rpm index 815eda86009..4072d575088 100755 --- a/Build-tools/Do-rpm +++ b/Build-tools/Do-rpm @@ -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" diff --git a/Docs/manual.texi b/Docs/manual.texi index 600ad5efe5a..c03ca5462a5 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -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) diff --git a/configure.in b/configure.in index c6cda3c157f..48c12d3b471 100644 --- a/configure.in +++ b/configure.in @@ -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 diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index 81ee0c52eea..1409b8905b4 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -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 |