summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--00000_index.txt6
-rw-r--r--01050_all_mysql_config_cleanup-5.6.patch58
2 files changed, 64 insertions, 0 deletions
diff --git a/00000_index.txt b/00000_index.txt
index 610392e..0027586 100644
--- a/00000_index.txt
+++ b/00000_index.txt
@@ -251,6 +251,12 @@
@pn mysql
@@ fix bug #156301 mysql_config wrongly retains too much info from CFLAGS
+@patch 01050_all_mysql_config_cleanup-5.6.patch
+@ver 5.06.00.00 to 5.06.99.99
+@pn mysql
+@pn percona-server
+@@ fix bug #156301 mysql_config wrongly retains too much info from CFLAGS
+
@patch 02000_all_query-logging-bypass-4.1.19.patch
@ver 4.01.14.00 to 4.01.99.99
@pn mysql
diff --git a/01050_all_mysql_config_cleanup-5.6.patch b/01050_all_mysql_config_cleanup-5.6.patch
new file mode 100644
index 0000000..183f164
--- /dev/null
+++ b/01050_all_mysql_config_cleanup-5.6.patch
@@ -0,0 +1,58 @@
+diff -aurN mysql.orig/scripts/mysql_config.sh mysql/scripts/mysql_config.sh
+--- mysql.orig/scripts/mysql_config.sh 2014-10-17 19:37:06.511549907 -0400
++++ mysql/scripts/mysql_config.sh 2014-10-17 19:53:44.458132867 -0400
+@@ -125,22 +125,42 @@
+ cxxflags="-I$pkgincludedir @CXXFLAGS@ " #note: end space!
+ include="-I$pkgincludedir"
+
+-# Remove some options that a client doesn't have to care about
+-for remove in DDBUG_OFF DSAFE_MUTEX DFORCE_INIT_OF_VARS \
+- DEXTRA_DEBUG DHAVE_purify O 'O[0-9]' 'xO[0-9]' 'W[-A-Za-z]*' \
+- 'mtune=[-A-Za-z0-9]*' 'mcpu=[-A-Za-z0-9]*' 'march=[-A-Za-z0-9]*' \
+- unroll2 ip mp restrict
++tmpcflags=""
++for f in $cflags
+ do
+- # The first option we might strip will always have a space before it because
+- # we set -I$pkgincludedir as the first option
+- cflags=`echo "$cflags"|sed -e "s/ -$remove */ /g"`
+- cxxflags=`echo "$cxxflags"|sed -e "s/ -$remove */ /g"`
++ case "${f}" in
++ -DDBUG_OFF) f="" ;;
++ -DSAFE_MUTEX) f="" ;;
++ -DUNIV_MUST_NOT_INLINE) f="" ;;
++ -DFORCE_INIT_OF_VARS) f="" ;;
++ -DEXTRA_DEBUG) f="" ;;
++ -DHAVE_purify) f="" ;;
++ -[ID]*) tmpcflags="${tmpcflags} ${f}" ;;
++ -[Ll]*)
++ libs="${libs} ${f}"
++ libs_r="${libs_r} ${f}"
++ embedded_libs="${embedded_libs} ${f}"
++ ;;
++ esac
+ done
+-cflags=`echo "$cflags"|sed -e 's/ *\$//'`
+-cxxflags=`echo "$cxxflags"|sed -e 's/ *\$//'`
++cflags="${tmpcflags# }"
++tmpcxxflags=""
++for f in $cxxflags
++do
++ case "${f}" in
++ -DDBUG_OFF) f="" ;;
++ -DSAFE_MUTEX) f="" ;;
++ -DUNIV_MUST_NOT_INLINE) f="" ;;
++ -DFORCE_INIT_OF_VARS) f="" ;;
++ -DEXTRA_DEBUG) f="" ;;
++ -DHAVE_purify) f="" ;;
++ -[ID]*) tmpcxxflags="${tmpcxxflags} ${f}" ;;
++ esac
++done
++cxxflags="${tmpcxxflags# }"
+
+ # Same for --libs(_r)
+-for remove in lmtmalloc static-libcxa i-static static-intel
++for remove in lmtmalloc static-libcxa i-static static-intel lprobes_mysql
+ do
+ # We know the strings starts with a space
+ libs=`echo "$libs"|sed -e "s/ -$remove */ /g"`