mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Manual merge from mysql-trunk.
Conflicts: - scripts/CMakeLists.txt
This commit is contained in:
@ -90,16 +90,14 @@ IF(MALLOC_LIB)
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_GENERATOR MATCHES "Makefiles")
|
||||
# No multiconfig build - use CMAKE_C_FLAGS
|
||||
# Strip maintainer mode options if necessary
|
||||
STRING(REPLACE "${MY_MAINTAINER_C_WARNINGS}" "" CFLAGS "${CMAKE_C_FLAGS}")
|
||||
STRING(REPLACE "${MY_MAINTAINER_CXX_WARNINGS}" "" CXXFLAGS "${CMAKE_CXX_FLAGS}")
|
||||
STRING(REPLACE "${MY_MAINTAINER_C_WARNINGS}" "" CFLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_RELWITHDEBINFO}")
|
||||
STRING(REPLACE "${MY_MAINTAINER_CXX_WARNINGS}" "" CXXFLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
||||
FOREACH(ARCH ${CMAKE_OSX_ARCHITECTURES})
|
||||
SET(CFLAGS "${CFLAGS} -arch ${ARCH}")
|
||||
SET(CXXFLAGS "${CXXFLAGS} -arch ${ARCH}")
|
||||
ENDFOREACH()
|
||||
ELSE()
|
||||
# Multiconfig build - use CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||
# Strip maintainer mode options if necessary
|
||||
STRING(REPLACE "${MY_MAINTAINER_C_WARNINGS}" "" CFLAGS "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
|
||||
STRING(REPLACE "${MY_MAINTAINER_CXX_WARNINGS}" "" CXXFLAGS "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
||||
@ -142,6 +140,43 @@ ENDIF()
|
||||
|
||||
SET(HOSTNAME "hostname")
|
||||
|
||||
# Required for mysqlbug until autotools are deprecated, once done remove these
|
||||
# and expand default cmake variables
|
||||
SET(CC ${CMAKE_C_COMPILER})
|
||||
SET(CXX ${CMAKE_CXX_COMPILER})
|
||||
SET(SAVE_CC ${CMAKE_C_COMPILER})
|
||||
SET(SAVE_CXX ${CMAKE_CXX_COMPILER})
|
||||
SET(SAVE_CFLAGS ${CFLAGS})
|
||||
SET(SAVE_CXXFLAGS ${CXXFLAGS})
|
||||
# XXX no cmake equivalent for this, just make one up
|
||||
SET(CONFIGURE_LINE "Built using CMake")
|
||||
|
||||
# Also required for mysqlbug, autoconf only supports --version so for now we
|
||||
# just explicitly require GNU
|
||||
IF(CMAKE_COMPILER_IS_GNUCC)
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1} --version
|
||||
COMMAND sed 1q
|
||||
OUTPUT_VARIABLE CC_VERSION)
|
||||
ELSE()
|
||||
SET(CC_VERSION "")
|
||||
ENDIF()
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} --version
|
||||
COMMAND sed 1q
|
||||
OUTPUT_VARIABLE CXX_VERSION)
|
||||
ELSE()
|
||||
SET(CXX_VERSION "")
|
||||
ENDIF()
|
||||
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysqlbug.sh
|
||||
${CMAKE_CURRENT_BINARY_DIR}/mysqlbug ESCAPE_QUOTES @ONLY)
|
||||
INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DIR}/mysqlbug
|
||||
DESTINATION ${INSTALL_BINDIR}
|
||||
COMPONENT Server
|
||||
)
|
||||
|
||||
ENDIF(UNIX)
|
||||
|
||||
# Really ugly, one script, "mysql_install_db", needs prefix set to ".",
|
||||
@ -198,9 +233,9 @@ SET(localstatedir ${MYSQL_DATADIR})
|
||||
|
||||
# some scripts use @TARGET_LINUX@
|
||||
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
SET(TARGET_LINUX 1)
|
||||
SET(TARGET_LINUX "true")
|
||||
ELSE()
|
||||
SET(TARGET_LINUX 0)
|
||||
SET(TARGET_LINUX "false")
|
||||
ENDIF()
|
||||
|
||||
# Use cmake variables to inspect dependencies for
|
||||
@ -294,7 +329,6 @@ ELSE()
|
||||
mysql_zap
|
||||
mysqlaccess
|
||||
mysqlaccess.conf
|
||||
mysqlbug
|
||||
mysql_convert_table_format
|
||||
mysql_find_rows
|
||||
mysqlhotcopy
|
||||
|
@ -88,6 +88,8 @@ pkglibdir_rel=`echo $pkglibdir | sed -e "s;^$basedir/;;"`
|
||||
fix_path pkglibdir $pkglibdir_rel lib/mysql lib
|
||||
|
||||
plugindir='@pkgplugindir@'
|
||||
plugindir_rel=`echo $plugindir | sed -e "s;^$basedir/;;"`
|
||||
fix_path plugindir $plugindir_rel lib/mysql/plugin lib/plugin
|
||||
|
||||
pkgincludedir='@pkgincludedir@'
|
||||
fix_path pkgincludedir include/mysql include
|
||||
|
@ -413,6 +413,29 @@ else
|
||||
DATADIR=@localstatedir@
|
||||
fi
|
||||
|
||||
#
|
||||
# Try to find the plugin directory
|
||||
#
|
||||
|
||||
# Use user-supplied argument
|
||||
if [ -n "${PLUGIN_DIR}" ]; then
|
||||
plugin_dir="${PLUGIN_DIR}"
|
||||
else
|
||||
# Try to find plugin dir relative to basedir
|
||||
for dir in lib/mysql/plugin lib/plugin
|
||||
do
|
||||
if [ -d "${MY_BASEDIR_VERSION}/${dir}" ]; then
|
||||
plugin_dir="${MY_BASEDIR_VERSION}/${dir}"
|
||||
break
|
||||
fi
|
||||
done
|
||||
# Give up and use compiled-in default
|
||||
if [ -z "${plugin_dir}" ]; then
|
||||
plugin_dir='@pkgplugindir@'
|
||||
fi
|
||||
fi
|
||||
plugin_dir="${plugin_dir}${PLUGIN_VARIANT}"
|
||||
|
||||
if test -z "$MYSQL_HOME"
|
||||
then
|
||||
if test -r "$MY_BASEDIR_VERSION/my.cnf" && test -r "$DATADIR/my.cnf"
|
||||
@ -704,8 +727,6 @@ fi
|
||||
|
||||
cmd="`mysqld_ld_preload_text`$NOHUP_NICENESS"
|
||||
|
||||
plugin_dir="${PLUGIN_DIR:-$MY_BASEDIR_VERSION/lib/mysql/plugin}${PLUGIN_VARIANT}"
|
||||
|
||||
for i in "$ledir/$MYSQLD" "$defaults" "--basedir=$MY_BASEDIR_VERSION" \
|
||||
"--datadir=$DATADIR" "--plugin-dir=$plugin_dir" "$USER_OPTION"
|
||||
do
|
||||
|
Reference in New Issue
Block a user