got --with-other-libc to work, finally

configure.in:
  updates for --with-other-libc
heap/Makefile.am:
  --with-other-libc
libmysql/Makefile.shared:
  --with-other-libc
mysys/Makefile.am:
  --with-other-libc
regex/Makefile.am:
  --with-other-libc
sql/Makefile.am:
  --with-other-libc
strings/Makefile.am:
  --with-other-libc
This commit is contained in:
unknown 2001-04-02 19:01:15 -06:00
commit ae5b950c4d
7 changed files with 59 additions and 15 deletions

View file

@ -4,7 +4,7 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT(sql/mysqld.cc)
AC_CANONICAL_SYSTEM
# The Docs Makefile.am parses this line!
AM_INIT_AUTOMAKE(mysql, 3.23.36)
AM_INIT_AUTOMAKE(mysql, 3.23.37)
AM_CONFIG_HEADER(config.h)
PROTOCOL_VERSION=10
@ -390,6 +390,38 @@ then
AC_MSG_ERROR([MySQL requiers a ANSI C compiler (and a C++ compiler). Try gcc. See the Installation chapter in the Reference Manual.])
fi
NOINST_LDFLAGS=
AC_ARG_WITH(other-libc,
[ --with-other-libc=/path/to/other/libc/dir Link against libc and other standard libraries installed in the specified non-standard location overriding default. Originally added to be able to link against glibc 2.2 without making the user upgrade the standard libc installation ],
[
other_libc_include="$withval/include"
other_libc_lib="$withval/lib"
with_other_libc="yes"
enable_shared="no"
all_is_static="yes"
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
#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
LDFLAGS="$LDFLAGS -static -L$other_libc_lib "
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=
other_libc_lib=
with_other_libc="no"
]
)
AC_SUBST(NOINST_LDFLAGS)
AC_ARG_WITH(server-suffix,
[ --with-server-suffix Append value to the version string.],
# I heard that 'cut' isn't portable. Isn't there a better way?
@ -1162,7 +1194,7 @@ fi
AC_SUBST(COMPILATION_COMMENT)
AC_MSG_CHECKING("need of special linking flags")
if test "$IS_LINUX" = "true"
if test "$IS_LINUX" = "true" -a "$all_is_static" != "yes"
then
LDFLAGS="$LDFLAGS -rdynamic"
AC_MSG_RESULT("-rdynamic")
@ -1317,7 +1349,10 @@ ac_save_CXXFLAGS="$CXXFLAGS"
AC_CACHE_CHECK([style of gethost* routines], mysql_cv_gethost_style,
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
if test "$ac_cv_prog_gxx" = "yes"
#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"
fi
@ -1349,7 +1384,7 @@ ac_save_CXXFLAGS="$CXXFLAGS"
AC_CACHE_CHECK([style of gethostname_r routines], mysql_cv_gethostname_style,
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
if test "$ac_cv_prog_gxx" = "yes"
if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
then
CXXFLAGS="$CXXFLAGS -Werror"
fi
@ -1380,7 +1415,7 @@ ac_save_CXXFLAGS="$CXXFLAGS"
AC_CACHE_CHECK([3 argument to gethostname_r routines], mysql_cv_gethostname_arg,
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
if test "$ac_cv_prog_gxx" = "yes"
if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
then
CXXFLAGS="$CXXFLAGS -Werror"
fi