diff options
author | Sergei Golubchik <sergii@pisem.net> | 2014-10-08 09:35:00 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2014-10-08 09:35:00 +0200 |
commit | dbda20caffbb22115b6f30069b716bc505c49d11 (patch) | |
tree | 5bc65ef535e3fbde4e5cef4115054d70465d8ed6 /scripts/mysql_config.sh | |
parent | 9329467e7941c6cc4b3a266ac2fc6ec4254eaf46 (diff) | |
download | mariadb-git-dbda20caffbb22115b6f30069b716bc505c49d11.tar.gz |
remove mariadb.pc file again, it cannot be added in a GA versionmariadb-5.5.40
Diffstat (limited to 'scripts/mysql_config.sh')
-rw-r--r-- | scripts/mysql_config.sh | 55 |
1 files changed, 50 insertions, 5 deletions
diff --git a/scripts/mysql_config.sh b/scripts/mysql_config.sh index b742b28484d..e4640961b34 100644 --- a/scripts/mysql_config.sh +++ b/scripts/mysql_config.sh @@ -97,6 +97,7 @@ fix_path pkgincludedir include/mysql version='@VERSION@' socket='@MYSQL_UNIX_ADDR@' +ldflags='@LDFLAGS@' if [ @MYSQL_TCP_PORT_DEFAULT@ -eq 0 ]; then port=0 @@ -105,14 +106,58 @@ else fi # Create options -libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@" -embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@" +# We intentionally add a space to the beginning and end of lib strings, simplifies replace later +libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@" +libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ " +libs_r=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient_r @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ " +embedded_libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ " + +if [ -r "$pkglibdir/libmygcc.a" ]; then + # When linking against the static library with a different version of GCC + # from what was used to compile the library, some symbols may not be defined + # automatically. We package the libmygcc.a from the build host, to provide + # definitions for those. Bugs 4921, 19561, 19817, 21158, etc. + libs="$libs -lmygcc " + libs_r="$libs_r -lmygcc " + embedded_libs="$embedded_libs -lmygcc " +fi include="-I$pkgincludedir" if [ "$basedir" != "/usr" ]; then include="$include -I$pkgincludedir/.." fi -cflags="$include @CFLAGS_FOR_CLIENTS@" +cflags="$include @CFLAGS@ " #note: end space! + +# Remove some options that a client doesn't have to care about +# FIXME until we have a --cxxflags, we need to remove -Xa +# and -xstrconst to make --cflags usable for Sun Forte C++ +# FIXME until we have a --cxxflags, we need to remove -AC99 +# to make --cflags usable for HP C++ (aCC) +for remove in DDBUG_OFF DSAFE_MUTEX DUNIV_MUST_NOT_INLINE DFORCE_INIT_OF_VARS \ + DEXTRA_DEBUG DHAVE_valgrind 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]*' \ + Xa xstrconst "xc99=none" AC99 \ + unroll2 ip mp restrict +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"` +done +cflags=`echo "$cflags"|sed -e 's/ *\$//'` + +# Same for --libs(_r) +for remove in lmtmalloc static-libcxa i-static static-intel +do + # We know the strings starts with a space + libs=`echo "$libs"|sed -e "s/ -$remove */ /g"` + libs_r=`echo "$libs_r"|sed -e "s/ -$remove */ /g"` + embedded_libs=`echo "$embedded_libs"|sed -e "s/ -$remove */ /g"` +done + +# Strip trailing and ending space if any, and '+' (FIXME why?) +libs=`echo "$libs" | sed -e 's; \+; ;g' | sed -e 's;^ *;;' | sed -e 's; *\$;;'` +libs_r=`echo "$libs_r" | sed -e 's; \+; ;g' | sed -e 's;^ *;;' | sed -e 's; *\$;;'` +embedded_libs=`echo "$embedded_libs" | sed -e 's; \+; ;g' | sed -e 's;^ *;;' | sed -e 's; *\$;;'` usage () { cat <<EOF @@ -121,7 +166,7 @@ Options: --cflags [$cflags] --include [$include] --libs [$libs] - --libs_r [$libs] + --libs_r [$libs_r] --plugindir [$plugindir] --socket [$socket] --port [$port] @@ -142,7 +187,7 @@ while test $# -gt 0; do --cflags) echo "$cflags" ;; --include) echo "$include" ;; --libs) echo "$libs" ;; - --libs_r) echo "$libs" ;; + --libs_r) echo "$libs_r" ;; --plugindir) echo "$plugindir" ;; --socket) echo "$socket" ;; --port) echo "$port" ;; |