mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
MDEV-16662 CMake warnings: CMP0026
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@ -94,7 +94,6 @@ packaging/rpm-oel/mysql.spec
|
||||
packaging/rpm-uln/mysql.10.0.11.spec
|
||||
packaging/solaris/postinstall-solaris
|
||||
pcre/config.h
|
||||
pcre/pcre*test.sh
|
||||
pcre/pcre.h
|
||||
pcre/pcre_chartables.c
|
||||
pcre/pcregrep
|
||||
|
@ -19,16 +19,12 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7)
|
||||
IF(POLICY CMP0022)
|
||||
CMAKE_POLICY(SET CMP0022 NEW)
|
||||
ENDIF()
|
||||
|
||||
# We use the LOCATION target property (CMP0026)
|
||||
# and get_target_property() for non-existent targets (CMP0045)
|
||||
# and INSTALL_NAME_DIR (CMP0042)
|
||||
IF(CMAKE_VERSION VERSION_EQUAL "3.0.0" OR
|
||||
CMAKE_VERSION VERSION_GREATER "3.0.0")
|
||||
CMAKE_POLICY(SET CMP0026 OLD)
|
||||
CMAKE_POLICY(SET CMP0045 OLD)
|
||||
IF(POLICY CMP0042)
|
||||
CMAKE_POLICY(SET CMP0042 OLD)
|
||||
ENDIF()
|
||||
IF(POLICY CMP0045)
|
||||
CMAKE_POLICY(SET CMP0045 OLD)
|
||||
ENDIF()
|
||||
IF(POLICY CMP0054)
|
||||
CMAKE_POLICY(SET CMP0054 NEW)
|
||||
ENDIF()
|
||||
|
@ -14,11 +14,6 @@
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# This script creates initial database for packaging on Windows
|
||||
SET(CMAKE_SOURCE_DIR "@CMAKE_SOURCE_DIR@")
|
||||
SET(CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@")
|
||||
SET(MYSQLD_EXECUTABLE "@MYSQLD_EXECUTABLE@")
|
||||
SET(CMAKE_CFG_INTDIR "@CMAKE_CFG_INTDIR@")
|
||||
SET(WIN32 "@WIN32@")
|
||||
# Force Visual Studio to output to stdout
|
||||
IF(ENV{VS_UNICODE_OUTPUT})
|
||||
SET ($ENV{VS_UNICODE_OUTPUT})
|
||||
@ -32,30 +27,27 @@ ENDIF()
|
||||
# Create bootstrapper SQL script
|
||||
FILE(WRITE bootstrap.sql "use mysql;\n" )
|
||||
FOREACH(FILENAME mysql_system_tables.sql mysql_system_tables_data.sql mysql_performance_tables.sql)
|
||||
FILE(STRINGS ${CMAKE_SOURCE_DIR}/scripts/${FILENAME} CONTENTS)
|
||||
FILE(STRINGS ${TOP_SRCDIR}/scripts/${FILENAME} CONTENTS)
|
||||
FOREACH(STR ${CONTENTS})
|
||||
IF(NOT STR MATCHES "@current_hostname")
|
||||
FILE(APPEND bootstrap.sql "${STR}\n")
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
ENDFOREACH()
|
||||
FILE(READ ${CMAKE_SOURCE_DIR}/scripts/fill_help_tables.sql CONTENTS)
|
||||
FILE(READ ${TOP_SRCDIR}/scripts/fill_help_tables.sql CONTENTS)
|
||||
FILE(APPEND bootstrap.sql "${CONTENTS}")
|
||||
|
||||
FILE(REMOVE_RECURSE mysql performance_schema)
|
||||
FILE(REMOVE ibdata1 ib_logfile0 ib_logfile1)
|
||||
|
||||
MAKE_DIRECTORY(mysql)
|
||||
IF(WIN32)
|
||||
SET(CONSOLE --console)
|
||||
ENDIF()
|
||||
|
||||
SET(BOOTSTRAP_COMMAND
|
||||
${MYSQLD_EXECUTABLE}
|
||||
--no-defaults
|
||||
${CONSOLE}
|
||||
--console
|
||||
--bootstrap
|
||||
--lc-messages-dir=${CMAKE_CURRENT_BINARY_DIR}/share
|
||||
--lc-messages-dir=${BINDIR}/share
|
||||
--basedir=.
|
||||
--datadir=.
|
||||
--default-storage-engine=MyISAM
|
||||
@ -65,10 +57,10 @@ SET(BOOTSTRAP_COMMAND
|
||||
|
||||
GET_FILENAME_COMPONENT(CWD . ABSOLUTE)
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND "@CMAKE_COMMAND@" -E echo Executing ${BOOTSTRAP_COMMAND}
|
||||
COMMAND "${CMAKE_COMMAND}" -E echo Executing ${BOOTSTRAP_COMMAND}
|
||||
)
|
||||
EXECUTE_PROCESS (
|
||||
COMMAND "@CMAKE_COMMAND@" -E
|
||||
COMMAND "${CMAKE_COMMAND}" -E
|
||||
echo input file bootstrap.sql, current directory ${CWD}
|
||||
)
|
||||
EXECUTE_PROCESS (
|
@ -159,21 +159,17 @@ ENDFUNCTION()
|
||||
|
||||
|
||||
# Install symbolic link to CMake target.
|
||||
# the link is created in the same directory as target
|
||||
# the link is created in the current build directory
|
||||
# and extension will be the same as for target file.
|
||||
MACRO(INSTALL_SYMLINK linkname target destination component)
|
||||
IF(UNIX)
|
||||
GET_TARGET_PROPERTY(location ${target} LOCATION)
|
||||
GET_FILENAME_COMPONENT(path ${location} PATH)
|
||||
GET_FILENAME_COMPONENT(name ${location} NAME)
|
||||
SET(output ${path}/${linkname})
|
||||
SET(output ${CMAKE_CURRENT_BINARY_DIR}/${linkname})
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${output}
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f ${output}
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f ${linkname}
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink
|
||||
${name}
|
||||
$<TARGET_FILE_NAME:${target}>
|
||||
${linkname}
|
||||
WORKING_DIRECTORY ${path}
|
||||
DEPENDS ${target}
|
||||
)
|
||||
|
||||
@ -259,8 +255,7 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
|
||||
ENDIF()
|
||||
# Install man pages on Unix
|
||||
IF(UNIX)
|
||||
GET_TARGET_PROPERTY(target_location ${target} LOCATION)
|
||||
INSTALL_MANPAGE(${target_location})
|
||||
INSTALL_MANPAGE($<TARGET_FILE:${target}>)
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
|
||||
@ -277,6 +272,7 @@ SET(DEBUGBUILDDIR "${BINARY_PARENTDIR}/debug" CACHE INTERNAL "Directory of debug
|
||||
|
||||
|
||||
FUNCTION(INSTALL_DEBUG_TARGET target)
|
||||
RETURN() # XXX unused?
|
||||
CMAKE_PARSE_ARGUMENTS(ARG
|
||||
""
|
||||
"DESTINATION;RENAME;PDB_DESTINATION;COMPONENT"
|
||||
|
@ -139,17 +139,17 @@ MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NAME LIBS_TO_MERGE)
|
||||
|
||||
SET(OSLIBS)
|
||||
FOREACH(LIB ${LIBS_TO_MERGE})
|
||||
GET_TARGET_PROPERTY(LIB_LOCATION ${LIB} LOCATION)
|
||||
GET_TARGET_PROPERTY(LIB_TYPE ${LIB} TYPE)
|
||||
IF(NOT LIB_LOCATION)
|
||||
IF(NOT TARGET ${LIB})
|
||||
# 3rd party library like libz.so. Make sure that everything
|
||||
# that links to our library links to this one as well.
|
||||
LIST(APPEND OSLIBS ${LIB})
|
||||
ELSE()
|
||||
GET_TARGET_PROPERTY(LIB_TYPE ${LIB} TYPE)
|
||||
# This is a target in current project
|
||||
# (can be a static or shared lib)
|
||||
IF(LIB_TYPE STREQUAL "STATIC_LIBRARY")
|
||||
SET(STATIC_LIBS ${STATIC_LIBS} ${LIB_LOCATION})
|
||||
SET(STATIC_TGTS ${STATIC_TGTS} ${LIB})
|
||||
SET(STATIC_LIBS ${STATIC_LIBS} $<TARGET_FILE:${LIB}>)
|
||||
ADD_DEPENDENCIES(${TARGET} ${LIB})
|
||||
# Extract dependent OS libraries
|
||||
GET_DEPENDEND_OS_LIBS(${LIB} LIB_OSLIBS)
|
||||
@ -171,7 +171,7 @@ MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NAME LIBS_TO_MERGE)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${SOURCE_FILE}
|
||||
COMMAND ${CMAKE_COMMAND} -E touch ${SOURCE_FILE}
|
||||
DEPENDS ${STATIC_LIBS})
|
||||
DEPENDS ${STATIC_TGTS})
|
||||
|
||||
IF(MSVC)
|
||||
# To merge libs, just pass them to lib.exe command line.
|
||||
@ -182,29 +182,27 @@ MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NAME LIBS_TO_MERGE)
|
||||
SET_TARGET_PROPERTIES(${TARGET} PROPERTIES STATIC_LIBRARY_FLAGS
|
||||
"${LINKER_EXTRA_FLAGS}")
|
||||
ELSE()
|
||||
GET_TARGET_PROPERTY(TARGET_LOCATION ${TARGET} LOCATION)
|
||||
IF(APPLE)
|
||||
# Use OSX's libtool to merge archives (ihandles universal
|
||||
# binaries properly)
|
||||
ADD_CUSTOM_COMMAND(TARGET ${TARGET} POST_BUILD
|
||||
COMMAND rm ${TARGET_LOCATION}
|
||||
COMMAND libtool -static -o ${TARGET_LOCATION}
|
||||
COMMAND rm $<TARGET_FILE:${TARGET}>
|
||||
COMMAND libtool -static -o $<TARGET_FILE:${TARGET}>
|
||||
${STATIC_LIBS}
|
||||
)
|
||||
ELSE()
|
||||
# Generic Unix, Cygwin or MinGW. In post-build step, call
|
||||
# script, that extracts objects from archives with "ar x"
|
||||
# and repacks them with "ar r"
|
||||
SET(TARGET ${TARGET})
|
||||
CONFIGURE_FILE(
|
||||
${MYSQL_CMAKE_SCRIPT_DIR}/merge_archives_unix.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/merge_archives_${TARGET}.cmake
|
||||
@ONLY
|
||||
)
|
||||
ADD_CUSTOM_COMMAND(TARGET ${TARGET} POST_BUILD
|
||||
COMMAND rm ${TARGET_LOCATION}
|
||||
COMMAND ${CMAKE_COMMAND} -P
|
||||
${CMAKE_CURRENT_BINARY_DIR}/merge_archives_${TARGET}.cmake
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-DTARGET_LOCATION="$<TARGET_FILE:${TARGET}>"
|
||||
-DTARGET="${TARGET}"
|
||||
-DSTATIC_LIBS="${STATIC_LIBS}"
|
||||
-DCMAKE_CURRENT_BINARY_DIR="${CMAKE_CURRENT_BINARY_DIR}"
|
||||
-DCMAKE_AR="${CMAKE_AR}"
|
||||
-DCMAKE_RANLIB="${CMAKE_RANLIB}"
|
||||
-P "${MYSQL_CMAKE_SCRIPT_DIR}/merge_archives_unix.cmake"
|
||||
)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
@ -294,18 +292,11 @@ MACRO(MERGE_LIBRARIES)
|
||||
ENDMACRO()
|
||||
|
||||
FUNCTION(GET_DEPENDEND_OS_LIBS target result)
|
||||
SET(deps ${${target}_LIB_DEPENDS})
|
||||
IF(deps)
|
||||
FOREACH(lib ${deps})
|
||||
# Filter out keywords for used for debug vs optimized builds
|
||||
IF(NOT lib MATCHES "general" AND NOT lib MATCHES "debug" AND NOT lib MATCHES "optimized")
|
||||
GET_TARGET_PROPERTY(lib_location ${lib} LOCATION)
|
||||
IF(NOT lib_location)
|
||||
FOREACH(lib ${${target}_LIB_DEPENDS})
|
||||
IF(NOT TARGET ${lib})
|
||||
SET(ret ${ret} ${lib})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
ENDIF()
|
||||
SET(${result} ${ret} PARENT_SCOPE)
|
||||
ENDFUNCTION()
|
||||
|
||||
|
@ -14,19 +14,12 @@
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
# This script merges many static libraries into
|
||||
# one big library on Unix.
|
||||
SET(TARGET_LOCATION "@TARGET_LOCATION@")
|
||||
SET(TARGET "@TARGET@")
|
||||
SET(STATIC_LIBS "@STATIC_LIBS@")
|
||||
SET(CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@")
|
||||
SET(CMAKE_AR "@CMAKE_AR@")
|
||||
SET(CMAKE_RANLIB "@CMAKE_RANLIB@")
|
||||
|
||||
FILE(REMOVE "${TARGET_LOCATION}")
|
||||
|
||||
SET(TEMP_DIR ${CMAKE_CURRENT_BINARY_DIR}/merge_archives_${TARGET})
|
||||
MAKE_DIRECTORY(${TEMP_DIR})
|
||||
# Extract each archive to its own subdirectory(avoid object filename clashes)
|
||||
SEPARATE_ARGUMENTS(STATIC_LIBS UNIX_COMMAND "${STATIC_LIBS}")
|
||||
FOREACH(LIB ${STATIC_LIBS})
|
||||
GET_FILENAME_COMPONENT(NAME_NO_EXT ${LIB} NAME_WE)
|
||||
SET(TEMP_SUBDIR ${TEMP_DIR}/${NAME_NO_EXT})
|
Submodule libmariadb updated: ebf5db6cd0...ed5921ed4f
@ -155,8 +155,7 @@ SET(LIBS
|
||||
# (with corresponding target ${engine}_embedded)
|
||||
SET(EMBEDDED_LIBS)
|
||||
FOREACH(LIB ${LIBS})
|
||||
GET_TARGET_PROPERTY(EMBEDDED_LOCATION ${LIB}_embedded LOCATION)
|
||||
IF(EMBEDDED_LOCATION)
|
||||
IF(TARGET ${LIB}_embedded)
|
||||
LIST(APPEND EMBEDDED_LIBS ${LIB}_embedded)
|
||||
ELSE()
|
||||
LIST(APPEND EMBEDDED_LIBS ${LIB})
|
||||
|
@ -364,12 +364,6 @@ IF(PCRE_BUILD_TESTS)
|
||||
|
||||
# exes in Debug location tested by the RunTest shell script
|
||||
# via "make test"
|
||||
IF(PCRE_BUILD_PCREGREP)
|
||||
GET_TARGET_PROPERTY(PCREGREP_EXE pcregrep DEBUG_LOCATION)
|
||||
ENDIF(PCRE_BUILD_PCREGREP)
|
||||
|
||||
GET_TARGET_PROPERTY(PCRETEST_EXE pcretest DEBUG_LOCATION)
|
||||
STRING(REGEX REPLACE "[^/]+$" "" PCRETEST_DIR ${PCRETEST_EXE})
|
||||
|
||||
# =================================================
|
||||
# Write out a CTest configuration file
|
||||
@ -379,38 +373,26 @@ IF(PCRE_BUILD_TESTS)
|
||||
MESSAGE(\"When testing is complete, review test output in the
|
||||
\\\"${PROJECT_BINARY_DIR}/Testing/Temporary\\\" folder.\")
|
||||
MESSAGE(\" \")
|
||||
")
|
||||
|
||||
FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.sh
|
||||
"#! /bin/sh
|
||||
# This is a generated file.
|
||||
srcdir=${PROJECT_SOURCE_DIR}
|
||||
pcretest=${PCRETEST_EXE}
|
||||
cd ${PCRETEST_DIR}
|
||||
. ${PROJECT_SOURCE_DIR}/RunTest
|
||||
if test \"$?\" != \"0\"; then exit 1; fi
|
||||
# End
|
||||
")
|
||||
|
||||
IF(UNIX)
|
||||
ADD_TEST(pcre_test sh ${PROJECT_BINARY_DIR}/pcre_test.sh)
|
||||
ADD_TEST(NAME pcre_test
|
||||
COMMAND sh pcre_test.sh
|
||||
${PROJECT_SOURCE_DIR}
|
||||
$<TARGET_FILE:pcretest>
|
||||
$<TARGET_FILE_DIR:pcretest>
|
||||
)
|
||||
ENDIF(UNIX)
|
||||
|
||||
IF(PCRE_BUILD_PCREGREP)
|
||||
FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_grep_test.sh
|
||||
"#! /bin/sh
|
||||
# This is a generated file.
|
||||
srcdir=${PROJECT_SOURCE_DIR}
|
||||
pcregrep=${PCREGREP_EXE}
|
||||
pcretest=${PCRETEST_EXE}
|
||||
cd ${PCRETEST_DIR}
|
||||
. ${PROJECT_SOURCE_DIR}/RunGrepTest
|
||||
if test \"$?\" != \"0\"; then exit 1; fi
|
||||
# End
|
||||
")
|
||||
|
||||
IF(UNIX)
|
||||
ADD_TEST(pcre_grep_test sh ${PROJECT_BINARY_DIR}/pcre_grep_test.sh)
|
||||
ADD_TEST(NAME pcre_grep_test
|
||||
COMMAND sh pcre_grep_test.sh
|
||||
${PROJECT_SOURCE_DIR}
|
||||
$<TARGET_FILE:pcregrep>
|
||||
$<TARGET_FILE:pcretest>
|
||||
$<TARGET_FILE_DIR:pcretest>
|
||||
)
|
||||
ENDIF(UNIX)
|
||||
ENDIF(PCRE_BUILD_PCREGREP)
|
||||
|
||||
@ -418,22 +400,13 @@ if test \"$?\" != \"0\"; then exit 1; fi
|
||||
# Provide environment for executing the bat file version of RunTest
|
||||
FILE(TO_NATIVE_PATH ${PROJECT_SOURCE_DIR} winsrc)
|
||||
FILE(TO_NATIVE_PATH ${PROJECT_BINARY_DIR} winbin)
|
||||
FILE(TO_NATIVE_PATH ${PCRETEST_EXE} winexe)
|
||||
|
||||
FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.bat
|
||||
"\@REM This is a generated file.
|
||||
\@echo off
|
||||
setlocal
|
||||
SET srcdir=\"${winsrc}\"
|
||||
SET pcretest=\"${winexe}\"
|
||||
if not [%CMAKE_CONFIG_TYPE%]==[] SET pcretest=\"${winbin}\\%CMAKE_CONFIG_TYPE%\\pcretest.exe\"
|
||||
call %srcdir%\\RunTest.Bat
|
||||
if errorlevel 1 exit /b 1
|
||||
echo RunTest.bat tests successfully completed
|
||||
")
|
||||
|
||||
ADD_TEST(NAME pcre_test_bat
|
||||
COMMAND pcre_test.bat)
|
||||
COMMAND pcre_test.bat
|
||||
${winsrc}
|
||||
${winbin}
|
||||
$<TARGET_FILE:pcretest>
|
||||
)
|
||||
SET_TESTS_PROPERTIES(pcre_test_bat PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "RunTest\\.bat tests successfully completed")
|
||||
|
||||
|
13
pcre/pcre_grep_test.sh
Normal file
13
pcre/pcre_grep_test.sh
Normal file
@ -0,0 +1,13 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
srcdir="$1"
|
||||
pcregrep="$2"
|
||||
pcretest="$3"
|
||||
cd "$4"
|
||||
shift
|
||||
shift
|
||||
shift
|
||||
shift
|
||||
. "$srcdir"/RunGrepTest
|
||||
if test "$?" != "0"; then exit 1; fi
|
||||
# End
|
9
pcre/pcre_test.bat
Normal file
9
pcre/pcre_test.bat
Normal file
@ -0,0 +1,9 @@
|
||||
@echo off
|
||||
setlocal
|
||||
SET srcdir="%1"
|
||||
SET bindir="%1"
|
||||
SET pcretest="%3"
|
||||
if not [%CMAKE_CONFIG_TYPE%]==[] SET pcretest="%bindir%\%CMAKE_CONFIG_TYPE%\pcretest.exe"
|
||||
call %srcdir%\RunTest.Bat
|
||||
if errorlevel 1 exit /b 1
|
||||
echo RunTest.bat tests successfully completed
|
11
pcre/pcre_test.sh
Normal file
11
pcre/pcre_test.sh
Normal file
@ -0,0 +1,11 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
srcdir="$1"
|
||||
pcretest="$2"
|
||||
cd "$3"
|
||||
shift
|
||||
shift
|
||||
shift
|
||||
. "$srcdir"/RunTest
|
||||
if test "$?" != "0"; then exit 1; fi
|
||||
# End
|
@ -203,9 +203,7 @@ IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS)
|
||||
SET(MYSQLD_LIB ${CMAKE_CURRENT_BINARY_DIR}/mysqld_lib.lib)
|
||||
SET(MYSQLD_CORELIBS sql mysys dbug strings)
|
||||
FOREACH (CORELIB ${MYSQLD_CORELIBS})
|
||||
GET_TARGET_PROPERTY(LOC ${CORELIB} LOCATION)
|
||||
FILE(TO_NATIVE_PATH ${LOC} LOC)
|
||||
SET (LIB_LOCATIONS ${LIB_LOCATIONS} ${LOC})
|
||||
SET (LIB_LOCATIONS ${LIB_LOCATIONS} $<TARGET_FILE:${CORELIB}>)
|
||||
ENDFOREACH (CORELIB)
|
||||
|
||||
SET(_PLATFORM x86)
|
||||
@ -420,15 +418,7 @@ SET(DBOPT_FILE ${CMAKE_SOURCE_DIR}/support-files/db.opt )
|
||||
INSTALL(FILES ${DBOPT_FILE} DESTINATION data/test COMPONENT DataFiles)
|
||||
|
||||
# Install initial database on windows
|
||||
IF(NOT CMAKE_CROSSCOMPILING)
|
||||
GET_TARGET_PROPERTY(MYSQLD_EXECUTABLE mysqld LOCATION)
|
||||
ENDIF()
|
||||
IF(WIN32 AND MYSQLD_EXECUTABLE)
|
||||
CONFIGURE_FILE(
|
||||
${CMAKE_SOURCE_DIR}/cmake/create_initial_db.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/create_initial_db.cmake
|
||||
@ONLY
|
||||
)
|
||||
IF(WIN32 AND TARGET mysqld AND NOT CMAKE_CROSSCOMPILING)
|
||||
|
||||
IF(MSVC_IDE OR CMAKE_GENERATOR MATCHES "Xcode")
|
||||
SET (CONFIG_PARAM -DCONFIG=${CMAKE_CFG_INTDIR})
|
||||
@ -436,7 +426,12 @@ IF(WIN32 AND MYSQLD_EXECUTABLE)
|
||||
MAKE_DIRECTORY(${CMAKE_CURRENT_BINARY_DIR}/data)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/initdb.dep
|
||||
COMMAND ${CMAKE_COMMAND} ${CONFIG_PARAM} -P ${CMAKE_CURRENT_BINARY_DIR}/create_initial_db.cmake
|
||||
COMMAND ${CMAKE_COMMAND} ${CONFIG_PARAM}
|
||||
-DTOP_SRCDIR="${CMAKE_SOURCE_DIR}"
|
||||
-DBINDIR="${CMAKE_CURRENT_BINARY_DIR}"
|
||||
-DMYSQLD_EXECUTABLE="$<TARGET_FILE:mysqld>"
|
||||
-DCMAKE_CFG_INTDIR="${CMAKE_CFG_INTDIR}"
|
||||
-P ${CMAKE_SOURCE_DIR}/cmake/create_initial_db.cmake
|
||||
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_CURRENT_BINARY_DIR}/initdb.dep
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/data
|
||||
DEPENDS mysqld
|
||||
@ -454,7 +449,7 @@ IF(WIN32 AND MYSQLD_EXECUTABLE)
|
||||
ELSE()
|
||||
# Not windows or cross compiling, just install an empty directory
|
||||
INSTALL(FILES ${DUMMY_FILE} DESTINATION data/mysql COMPONENT DataFiles)
|
||||
ENDIF(WIN32 AND MYSQLD_EXECUTABLE)
|
||||
ENDIF(WIN32 AND TARGET mysqld AND NOT CMAKE_CROSSCOMPILING)
|
||||
ENDIF(INSTALL_LAYOUT STREQUAL "STANDALONE")
|
||||
|
||||
IF(WIN32)
|
||||
|
@ -338,14 +338,7 @@ IF(WIN32)
|
||||
|
||||
# Install some extra files that belong to connect engine
|
||||
|
||||
# install ha_connect.lib
|
||||
GET_TARGET_PROPERTY(CONNECT_LOCATION connect LOCATION)
|
||||
STRING(REPLACE "dll" "lib" CONNECT_LIB ${CONNECT_LOCATION})
|
||||
IF(CMAKE_CONFIGURATION_TYPES)
|
||||
STRING(REPLACE "${CMAKE_CFG_INTDIR}" "\${CMAKE_INSTALL_CONFIG_NAME}"
|
||||
CONNECT_LIB ${CONNECT_LIB})
|
||||
ENDIF()
|
||||
INSTALL(FILES ${CONNECT_LIB}
|
||||
INSTALL(FILES "$<TARGET_FILE_DIR:connect>/ha_connect.lib"
|
||||
DESTINATION ${INSTALL_PLUGINDIR} COMPONENT connect-engine)
|
||||
ENDIF(WIN32)
|
||||
|
||||
|
@ -3,17 +3,11 @@
|
||||
# We use it in MySQL to merge mysys,dbug,vio etc into mysqlclient
|
||||
FUNCTION(TOKU_GET_DEPENDEND_OS_LIBS target result)
|
||||
SET(deps ${${target}_LIB_DEPENDS})
|
||||
IF(deps)
|
||||
FOREACH(lib ${deps})
|
||||
# Filter out keywords for used for debug vs optimized builds
|
||||
IF(NOT lib MATCHES "general" AND NOT lib MATCHES "debug" AND NOT lib MATCHES "optimized")
|
||||
GET_TARGET_PROPERTY(lib_location ${lib} LOCATION)
|
||||
IF(NOT lib_location)
|
||||
IF(TARGET ${lib})
|
||||
SET(ret ${ret} ${lib})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
ENDIF()
|
||||
SET(${result} ${ret} PARENT_SCOPE)
|
||||
ENDFUNCTION(TOKU_GET_DEPENDEND_OS_LIBS)
|
||||
|
||||
|
@ -123,11 +123,9 @@ ELSE()
|
||||
FILE(APPEND "${CMAKE_CURRENT_BINARY_DIR}/COPYING.rtf" "\n}\n")
|
||||
SET(COPYING_RTF "${CMAKE_CURRENT_BINARY_DIR}/COPYING.rtf")
|
||||
ENDIF()
|
||||
GET_TARGET_PROPERTY(WIXCA_LOCATION wixca LOCATION)
|
||||
SET(CPACK_WIX_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/CPackWixConfig.cmake)
|
||||
|
||||
GET_TARGET_PROPERTY(upgrade_wizard_location mysql_upgrade_wizard LOCATION)
|
||||
IF(NOT upgrade_wizard_location)
|
||||
IF(NOT TARGET mysql_upgrade_wizard)
|
||||
SET(EXTRA_WIX_PREPROCESSOR_FLAGS "-dHaveUpgradeWizard=0")
|
||||
ENDIF()
|
||||
IF(WITH_INNOBASE_STORAGE_ENGINE)
|
||||
@ -145,7 +143,6 @@ IF(WITH_THIRD_PARTY)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
GET_TARGET_PROPERTY(LIBMYSQL_LOCATION libmysql LOCATION)
|
||||
FOREACH(third_party ${WITH_THIRD_PARTY})
|
||||
SET(third_party_install_plugin ${CMAKE_CURRENT_SOURCE_DIR}/${third_party}.cmake)
|
||||
IF(NOT EXISTS ${third_party_install_plugin})
|
||||
@ -169,10 +166,6 @@ ENDIF()
|
||||
IF(NOT CPACK_WIX_UI)
|
||||
SET(CPACK_WIX_UI "MyWixUI_Mondo")
|
||||
ENDIF()
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/create_msi.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/create_msi.cmake
|
||||
@ONLY)
|
||||
|
||||
|
||||
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
SET(WixWin64 " Win64='yes'")
|
||||
@ -188,17 +181,69 @@ ENDIF()
|
||||
|
||||
ADD_CUSTOM_TARGET(
|
||||
MSI
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
${CONFIG_PARAM}
|
||||
-P ${CMAKE_CURRENT_BINARY_DIR}/create_msi.cmake
|
||||
COMMAND ${CMAKE_COMMAND} ${CONFIG_PARAM}
|
||||
-DCANDLE_EXECUTABLE="${CANDLE_EXECUTABLE}"
|
||||
-DCMAKE_CFG_INTDIR="${CMAKE_CFG_INTDIR}"
|
||||
-DCMAKE_FULL_VER="${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}"
|
||||
-DCMAKE_SIZEOF_VOID_P=${CMAKE_SIZEOF_VOID_P}
|
||||
-DCOPYING_RTF="${COPYING_RTF}"
|
||||
-DCPACK_WIX_CONFIG="${CPACK_WIX_CONFIG}"
|
||||
-DCPACK_WIX_INCLUDE="${CPACK_WIX_INCLUDE}"
|
||||
-DCPACK_WIX_PACKAGE_BASE_NAME="${CPACK_WIX_PACKAGE_BASE_NAME}"
|
||||
-DCPACK_WIX_PACKAGE_NAME="${CPACK_WIX_PACKAGE_NAME}"
|
||||
-DCPACK_WIX_UPGRADE_CODE="${CPACK_WIX_UPGRADE_CODE}"
|
||||
-DEXTRA_WIX_PREPROCESSOR_FLAGS="${EXTRA_WIX_PREPROCESSOR_FLAGS}"
|
||||
-DLIGHT_EXECUTABLE="${LIGHT_EXECUTABLE}"
|
||||
-DMAJOR_VERSION="${MAJOR_VERSION}"
|
||||
-DMANUFACTURER="${MANUFACTURER}"
|
||||
-DMINOR_VERSION="${MINOR_VERSION}"
|
||||
-DPATCH_VERSION="${PATCH_VERSION}"
|
||||
-DSIGNCODE="${SIGNCODE}"
|
||||
-DSIGNTOOL_EXECUTABLE="${SIGNTOOL_EXECUTABLE}"
|
||||
-DSIGNTOOL_PARAMETERS="${SIGNTOOL_PARAMETERS}"
|
||||
-DSRCDIR="${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
-DTHIRD_PARTY_DOWNLOAD_LOCATION="${THIRD_PARTY_DOWNLOAD_LOCATION}"
|
||||
-DTHIRD_PARTY_FEATURE_CONDITION="${THIRD_PARTY_FEATURE_CONDITION}"
|
||||
-DTINY_VERSION="${TINY_VERSION}"
|
||||
-DTOP_BINDIR="${CMAKE_BINARY_DIR}"
|
||||
-DVERSION="${VERSION}"
|
||||
-DWITH_THIRD_PARTY="${WITH_THIRD_PARTY}"
|
||||
-DWIXCA_LOCATION="$<TARGET_FILE:wixca>"
|
||||
-P ${CMAKE_CURRENT_SOURCE_DIR}/create_msi.cmake
|
||||
)
|
||||
ADD_DEPENDENCIES(MSI wixca)
|
||||
|
||||
ADD_CUSTOM_TARGET(
|
||||
MSI_ESSENTIALS
|
||||
COMMAND ${CMAKE_COMMAND} -DESSENTIALS=1
|
||||
${CONFIG_PARAM}
|
||||
-P ${CMAKE_CURRENT_BINARY_DIR}/create_msi.cmake
|
||||
COMMAND ${CMAKE_COMMAND} ${CONFIG_PARAM} -DESSENTIALS=1
|
||||
-DCANDLE_EXECUTABLE="${CANDLE_EXECUTABLE}"
|
||||
-DCMAKE_CFG_INTDIR="${CMAKE_CFG_INTDIR}"
|
||||
-DCMAKE_FULL_VER="${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}"
|
||||
-DCMAKE_SIZEOF_VOID_P=${CMAKE_SIZEOF_VOID_P}
|
||||
-DCOPYING_RTF="${COPYING_RTF}"
|
||||
-DCPACK_WIX_CONFIG="${CPACK_WIX_CONFIG}"
|
||||
-DCPACK_WIX_INCLUDE="${CPACK_WIX_INCLUDE}"
|
||||
-DCPACK_WIX_PACKAGE_BASE_NAME="${CPACK_WIX_PACKAGE_BASE_NAME}"
|
||||
-DCPACK_WIX_PACKAGE_NAME="${CPACK_WIX_PACKAGE_NAME}"
|
||||
-DCPACK_WIX_UPGRADE_CODE="${CPACK_WIX_UPGRADE_CODE}"
|
||||
-DEXTRA_WIX_PREPROCESSOR_FLAGS="${EXTRA_WIX_PREPROCESSOR_FLAGS}"
|
||||
-DLIGHT_EXECUTABLE="${LIGHT_EXECUTABLE}"
|
||||
-DMAJOR_VERSION="${MAJOR_VERSION}"
|
||||
-DMANUFACTURER="${MANUFACTURER}"
|
||||
-DMINOR_VERSION="${MINOR_VERSION}"
|
||||
-DPATCH_VERSION="${PATCH_VERSION}"
|
||||
-DSIGNCODE="${SIGNCODE}"
|
||||
-DSIGNTOOL_EXECUTABLE="${SIGNTOOL_EXECUTABLE}"
|
||||
-DSIGNTOOL_PARAMETERS="${SIGNTOOL_PARAMETERS}"
|
||||
-DSRCDIR="${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
-DTHIRD_PARTY_DOWNLOAD_LOCATION="${THIRD_PARTY_DOWNLOAD_LOCATION}"
|
||||
-DTHIRD_PARTY_FEATURE_CONDITION="${THIRD_PARTY_FEATURE_CONDITION}"
|
||||
-DTINY_VERSION="${TINY_VERSION}"
|
||||
-DTOP_BINDIR="${CMAKE_BINARY_DIR}"
|
||||
-DVERSION="${VERSION}"
|
||||
-DWITH_THIRD_PARTY="${WITH_THIRD_PARTY}"
|
||||
-DWIXCA_LOCATION="$<TARGET_FILE:wixca>"
|
||||
-P ${CMAKE_CURRENT_SOURCE_DIR}/create_msi.cmake
|
||||
)
|
||||
ADD_DEPENDENCIES(MSI_ESSENTIALS wixca)
|
||||
|
||||
|
@ -1,35 +1,3 @@
|
||||
SET(CMAKE_BINARY_DIR "@CMAKE_BINARY_DIR@")
|
||||
SET(CMAKE_CURRENT_SOURCE_DIR "@CMAKE_CURRENT_SOURCE_DIR@")
|
||||
SET(CANDLE_EXECUTABLE "@CANDLE_EXECUTABLE@")
|
||||
SET(LIGHT_EXECUTABLE "@LIGHT_EXECUTABLE@")
|
||||
SET(CMAKE_COMMAND "@CMAKE_COMMAND@")
|
||||
SET(CMAKE_CFG_INTDIR "@CMAKE_CFG_INTDIR@")
|
||||
SET(VERSION "@VERSION@")
|
||||
SET(MAJOR_VERSION "@MAJOR_VERSION@")
|
||||
SET(MINOR_VERSION "@MINOR_VERSION@")
|
||||
SET(PATCH_VERSION "@PATCH_VERSION@")
|
||||
SET(TINY_VERSION "@TINY_VERSION@")
|
||||
SET(CMAKE_SIZEOF_VOID_P @CMAKE_SIZEOF_VOID_P@)
|
||||
SET(MANUFACTURER "@MANUFACTURER@")
|
||||
SET(WIXCA_LOCATION "@WIXCA_LOCATION@")
|
||||
SET(COPYING_RTF "@COPYING_RTF@")
|
||||
SET(CPACK_WIX_CONFIG "@CPACK_WIX_CONFIG@")
|
||||
SET(CPACK_WIX_INCLUDE "@CPACK_WIX_INCLUDE@")
|
||||
SET(CPACK_WIX_UPGRADE_CODE "@CPACK_WIX_UPGRADE_CODE@")
|
||||
SET(CPACK_WIX_PACKAGE_NAME "@CPACK_WIX_PACKAGE_NAME@")
|
||||
SET(CPACK_WIX_PACKAGE_BASE_NAME "@CPACK_WIX_PACKAGE_BASE_NAME@")
|
||||
SET(SIGNCODE "@SIGNCODE@")
|
||||
SET(SIGNTOOL_EXECUTABLE "@SIGNTOOL_EXECUTABLE@")
|
||||
SET(SIGNTOOL_PARAMETERS "@SIGNTOOL_PARAMETERS@")
|
||||
SET(CMAKE_FULL_VER
|
||||
"@CMAKE_MAJOR_VERSION@.@CMAKE_MINOR_VERSION@.@CMAKE_PATCH_VERSION@")
|
||||
SET(EXTRA_WIX_PREPROCESSOR_FLAGS "@EXTRA_WIX_PREPROCESSOR_FLAGS@")
|
||||
SET(WITH_THIRD_PARTY "@WITH_THIRD_PARTY@")
|
||||
SET(THIRD_PARTY_DOWNLOAD_LOCATION "@THIRD_PARTY_DOWNLOAD_LOCATION@")
|
||||
SET(THIRD_PARTY_FEATURE_CONDITION "@THIRD_PARTY_FEATURE_CONDITION@")
|
||||
SET(LIBMYSQL_LOCATION "@LIBMYSQL_LOCATION@")
|
||||
|
||||
|
||||
MACRO(MAKE_WIX_IDENTIFIER str varname)
|
||||
STRING(REPLACE "/" "." ${varname} "${str}")
|
||||
STRING(REGEX REPLACE "[^a-zA-Z_0-9.]" "_" ${varname} "${${varname}}")
|
||||
@ -45,19 +13,15 @@ MACRO(MAKE_WIX_IDENTIFIER str varname)
|
||||
ENDMACRO()
|
||||
|
||||
SET($ENV{VS_UNICODE_OUTPUT} "")
|
||||
IF(LIBMYSQL_LOCATION AND CMAKE_CFG_INTDIR)
|
||||
# resolve libmysql full path
|
||||
STRING(REPLACE "${CMAKE_CFG_INTDIR}" "${CMAKE_INSTALL_CONFIG_NAME}" LIBMYSQL_LOCATION "${LIBMYSQL_LOCATION}")
|
||||
ENDIF()
|
||||
|
||||
FOREACH(third_party ${WITH_THIRD_PARTY})
|
||||
INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/${third_party}.cmake)
|
||||
INCLUDE(${SRCDIR}/${third_party}.cmake)
|
||||
|
||||
# Check than above script produced ${third_party}.wxi and ${third_party}_feature.wxi
|
||||
FOREACH(outfile ${third_party}.wxi ${third_party}_feature.wxi)
|
||||
IF(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/${outfile})
|
||||
MESSAGE(FATAL_ERROR
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${third_party}.cmake did not produce "
|
||||
"${SRCDIR}/${third_party}.cmake did not produce "
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/${outfile}"
|
||||
)
|
||||
ENDIF()
|
||||
@ -79,7 +43,7 @@ ENDIF()
|
||||
|
||||
SET(ENV{VS_UNICODE_OUTPUT})
|
||||
|
||||
INCLUDE(${CMAKE_BINARY_DIR}/CPackConfig.cmake)
|
||||
INCLUDE(${TOP_BINDIR}/CPackConfig.cmake)
|
||||
|
||||
IF(CPACK_WIX_CONFIG)
|
||||
INCLUDE(${CPACK_WIX_CONFIG})
|
||||
@ -101,13 +65,13 @@ FOREACH(comp ${COMPONENTS_ALL})
|
||||
SET(ENV{DESTDIR} testinstall/${comp})
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_COMMAND} ${CONFIG_PARAM} -DCMAKE_INSTALL_COMPONENT=${comp}
|
||||
-DCMAKE_INSTALL_PREFIX= -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
|
||||
-DCMAKE_INSTALL_PREFIX= -P ${TOP_BINDIR}/cmake_install.cmake
|
||||
OUTPUT_QUIET
|
||||
|
||||
)
|
||||
# Exclude empty install components
|
||||
SET(INCLUDE_THIS_COMPONENT 1)
|
||||
SET(MANIFEST_FILENAME "${CMAKE_BINARY_DIR}/install_manifest_${comp}.txt")
|
||||
SET(MANIFEST_FILENAME "${TOP_BINDIR}/install_manifest_${comp}.txt")
|
||||
IF(EXISTS ${MANIFEST_FILENAME})
|
||||
FILE(READ ${MANIFEST_FILENAME} content)
|
||||
STRING(LENGTH "${content}" content_length)
|
||||
@ -385,9 +349,9 @@ SET(CPACK_WIX_INCLUDES
|
||||
ENDFOREACH()
|
||||
|
||||
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_server.wxs.in
|
||||
CONFIGURE_FILE(${SRCDIR}/mysql_server.wxs.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/mysql_server.wxs)
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/extra.wxs.in
|
||||
CONFIGURE_FILE(${SRCDIR}/extra.wxs.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/extra.wxs)
|
||||
|
||||
SET(EXTRA_CANDLE_ARGS "$ENV{EXTRA_CANDLE_ARGS}")
|
||||
@ -432,6 +396,6 @@ IF(SIGNCODE)
|
||||
)
|
||||
ENDIF()
|
||||
CONFIGURE_FILE(${CPACK_PACKAGE_FILE_NAME}.msi
|
||||
${CMAKE_BINARY_DIR}/${CPACK_PACKAGE_FILE_NAME}.msi
|
||||
${TOP_BINDIR}/${CPACK_PACKAGE_FILE_NAME}.msi
|
||||
COPYONLY)
|
||||
|
@ -71,8 +71,8 @@
|
||||
<!--
|
||||
User interface dialogs
|
||||
-->
|
||||
<WixVariable Id='WixUIBannerBmp' Value='@CMAKE_CURRENT_SOURCE_DIR@\WixUIBannerBmp.jpg' />
|
||||
<WixVariable Id='WixUIDialogBmp' Value='@CMAKE_CURRENT_SOURCE_DIR@\WixUIDialogBmp.jpg' />
|
||||
<WixVariable Id='WixUIBannerBmp' Value='@SRCDIR@\WixUIBannerBmp.jpg' />
|
||||
<WixVariable Id='WixUIDialogBmp' Value='@SRCDIR@\WixUIDialogBmp.jpg' />
|
||||
<UI>
|
||||
|
||||
<!-- Dialog on uninstall of the database -->
|
||||
|
@ -13,11 +13,5 @@ IF(NOT EXISTS ${HEIDISQL_DOWNLOAD_DIR}/${HEIDISQL_ZIP})
|
||||
ENDIF()
|
||||
|
||||
SET(LIBMYSQLDLL_SOURCE ${HEIDISQL_DOWNLOAD_DIR}/libmysql.dll)
|
||||
IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
# Use our libmysql if it is 32 bit.
|
||||
IF(LIBMYSQL_LOCATION)
|
||||
SET(LIBMYSQLDLL_SOURCE "${LIBMYSQL_LOCATION}")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/heidisql.wxi.in ${CMAKE_CURRENT_BINARY_DIR}/heidisql.wxi)
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/heidisql_feature.wxi.in ${CMAKE_CURRENT_BINARY_DIR}/heidisql_feature.wxi)
|
||||
|
@ -46,9 +46,8 @@ SET_TARGET_PROPERTIES(mysql_upgrade_wizard PROPERTIES WIN32_EXECUTABLE 1)
|
||||
# to change service configuration. Due to a CMake bug http://www.vtk.org/Bug/view.php?id=11171
|
||||
# it is not possible currenly to do it with linker flags. Work around is to use
|
||||
# manifest tool mt.exe and embed the manifest post-build.
|
||||
GET_TARGET_PROPERTY(upgrade_wizard_location mysql_upgrade_wizard LOCATION)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
TARGET mysql_upgrade_wizard POST_BUILD
|
||||
COMMAND mt.exe -manifest ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_wizard.exe.manifest
|
||||
"-outputresource:${upgrade_wizard_location};#1"
|
||||
"-outputresource:$<TARGET_FILE:mysql_upgrade_wizard>;#1"
|
||||
)
|
||||
|
Reference in New Issue
Block a user