Commit 0636b67c authored by Sergei Golubchik's avatar Sergei Golubchik

new "./configure --disable-distribution" option

parent 206a8c32
...@@ -40,23 +40,44 @@ AC_DEFUN([MYSQL_CHECK_LIBEDIT_INTERFACE], [ ...@@ -40,23 +40,44 @@ AC_DEFUN([MYSQL_CHECK_LIBEDIT_INTERFACE], [
]) ])
AC_DEFUN([MYSQL_CHECK_NEW_RL_INTERFACE], [ AC_DEFUN([MYSQL_CHECK_NEW_RL_INTERFACE], [
AC_CACHE_CHECK([defined rl_compentry_func_t and rl_completion_func_t], mysql_cv_new_rl_interface, AC_CACHE_CHECK([for system libreadline], mysql_cv_new_rl_interface,
AC_TRY_COMPILE( AC_COMPILE_IFELSE(
[ [AC_LANG_SOURCE([
#include "stdio.h" #include "stdio.h"
#include "readline/readline.h" #include "readline/readline.h"
],
[
rl_completion_func_t *func1= (rl_completion_func_t*)0; rl_completion_func_t *func1= (rl_completion_func_t*)0;
rl_compentry_func_t *func2= (rl_compentry_func_t*)0; rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
], ])],
[ [
AC_PREPROC_IFELSE(
[AC_LANG_SOURCE([
#include "stdio.h"
#include "readline/readline.h"
#if RL_VERSION_MAJOR > 5
#error
#endif
])], [ rl_v5=yes ], [ rl_v5=no ],
)
if [test "$rl_v5" = "yes"]
then
mysql_cv_new_rl_interface=yes mysql_cv_new_rl_interface=yes
AC_DEFINE_UNQUOTED([USE_NEW_READLINE_INTERFACE], [1], else
[used new readline interface (are rl_completion_func_t and rl_compentry_func_t defined)]) if [test "$enable_distribution" = "yes"]
then
mysql_cv_new_rl_interface=no
else
mysql_cv_new_rl_interface=yes
enable_distribution=warn
fi
fi
], ],
[mysql_cv_new_rl_interface=no] [mysql_cv_new_rl_interface=no]
) )
if [test "$mysql_cv_new_rl_interface" = yes]
then
AC_DEFINE_UNQUOTED([USE_NEW_READLINE_INTERFACE], [1],
[used new readline interface (are rl_completion_func_t and rl_compentry_func_t defined)])
fi
) )
]) ])
......
...@@ -632,6 +632,14 @@ AC_ARG_WITH(other-libc, ...@@ -632,6 +632,14 @@ AC_ARG_WITH(other-libc,
) )
AC_SUBST(NOINST_LDFLAGS) AC_SUBST(NOINST_LDFLAGS)
AC_ARG_ENABLE(distribution,
AC_HELP_STRING(
[--disable-distribution],
[Allow linking with system GPLv3 libraries. It may result in a binary that can not be legally distributed.]),
[ enable_distribution=$enableval ],
[ enable_distribution=yes ]
)
# #
# Check if we are using Linux and a glibc compiled with static nss # Check if we are using Linux and a glibc compiled with static nss
# (this is true on the MySQL build machines to avoid NSS problems) # (this is true on the MySQL build machines to avoid NSS problems)
...@@ -1573,7 +1581,7 @@ fi ...@@ -1573,7 +1581,7 @@ fi
AC_MSG_CHECKING([for OpenSolaris Bug 6611808]) AC_MSG_CHECKING([for OpenSolaris Bug 6611808])
save_CFLAGS="$CFLAGS" save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror" CFLAGS="$CFLAGS -Werror"
AC_COMPILE_IFELSE([ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
#include <pthread.h> #include <pthread.h>
void dummy() {} void dummy() {}
int main() int main()
...@@ -1582,7 +1590,7 @@ AC_COMPILE_IFELSE([ ...@@ -1582,7 +1590,7 @@ AC_COMPILE_IFELSE([
pthread_once(&once_control, dummy); pthread_once(&once_control, dummy);
return 0; return 0;
} }
], [ ])], [
AC_DEFINE([PTHREAD_ONCE_INITIALIZER], [{PTHREAD_ONCE_INIT}], AC_DEFINE([PTHREAD_ONCE_INITIALIZER], [{PTHREAD_ONCE_INIT}],
[See OpenSolaris Bug 6611808]) [See OpenSolaris Bug 6611808])
AC_MSG_RESULT([yes]) AC_MSG_RESULT([yes])
...@@ -2712,6 +2720,8 @@ case $SYSTEM_TYPE in ...@@ -2712,6 +2720,8 @@ case $SYSTEM_TYPE in
compile_libedit=yes compile_libedit=yes
AC_DEFINE_UNQUOTED(HAVE_HIST_ENTRY, 1) AC_DEFINE_UNQUOTED(HAVE_HIST_ENTRY, 1)
AC_DEFINE_UNQUOTED(USE_LIBEDIT_INTERFACE, 1) AC_DEFINE_UNQUOTED(USE_LIBEDIT_INTERFACE, 1)
AC_MSG_CHECKING([for libedit/readline])
AC_MSG_RESULT([libedit bundled])
elif test "$with_readline" = "yes" elif test "$with_readline" = "yes"
then then
readline_topdir="cmd-line-utils" readline_topdir="cmd-line-utils"
...@@ -2722,6 +2732,8 @@ case $SYSTEM_TYPE in ...@@ -2722,6 +2732,8 @@ case $SYSTEM_TYPE in
compile_readline=yes compile_readline=yes
want_to_use_readline="yes" want_to_use_readline="yes"
AC_DEFINE_UNQUOTED(USE_NEW_READLINE_INTERFACE, 1) AC_DEFINE_UNQUOTED(USE_NEW_READLINE_INTERFACE, 1)
AC_MSG_CHECKING([for libedit/readline])
AC_MSG_RESULT([readline bundled])
else else
# Use system readline library # Use system readline library
AC_LANG_SAVE AC_LANG_SAVE
...@@ -2736,12 +2748,16 @@ case $SYSTEM_TYPE in ...@@ -2736,12 +2748,16 @@ case $SYSTEM_TYPE in
# this way we avoid linking commercial source with GPL readline # this way we avoid linking commercial source with GPL readline
readline_link="-lreadline" readline_link="-lreadline"
want_to_use_readline="yes" want_to_use_readline="yes"
AC_MSG_CHECKING([for libedit/readline])
AC_MSG_RESULT([readline system])
elif [test "$mysql_cv_libedit_interface" = "yes"] elif [test "$mysql_cv_libedit_interface" = "yes"]
then then
# Use libedit # Use libedit
readline_link="-ledit" readline_link="-ledit"
AC_MSG_CHECKING([for libedit/readline])
AC_MSG_RESULT([libedit system])
else else
AC_MSG_ERROR([Could not find system readline or libedit libraries AC_MSG_ERROR([Could not find usable system readline or libedit libraries
Use --with-readline or --with-libedit to use the bundled Use --with-readline or --with-libedit to use the bundled
versions of libedit or readline]) versions of libedit or readline])
fi fi
...@@ -2987,6 +3003,13 @@ if test X"$with_plugin_ndbcluster" = Xyes ; then ...@@ -2987,6 +3003,13 @@ if test X"$with_plugin_ndbcluster" = Xyes ; then
echo for more details. echo for more details.
fi fi
if test "$enable_distribution" = "warn"
then
echo "You have linked MariaDB with GPLv3 libraries!"
echo "You may not distribute the resulting binary. If you do, you will "
echo "put yourself into a legal problem with Free Software Foundation."
fi
# The first line "Thank you ..." is checked in ./Do-compile to verify that configure # The first line "Thank you ..." is checked in ./Do-compile to verify that configure
# ended sucessfully - don't remove it. # ended sucessfully - don't remove it.
echo echo
......
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