mirror of
https://github.com/Kitware/CMake.git
synced 2026-03-17 09:11:36 -05:00
Utilities/Release: Build static executables on Windows
Switch to the MSVC static runtime library (and static UCRT). Link Qt statically, including the Windows platform plugin. Disable the Qt tests because they are incompatible with a Qt using a static runtime library.
This commit is contained in:
@@ -1,13 +1,20 @@
|
|||||||
set(CMAKE_RELEASE_DIRECTORY "c:/msys64/home/dashboard/CMakeReleaseDirectory")
|
set(CMAKE_RELEASE_DIRECTORY "c:/msys64/home/dashboard/CMakeReleaseDirectory32")
|
||||||
set(CONFIGURE_WITH_CMAKE TRUE)
|
set(CONFIGURE_WITH_CMAKE TRUE)
|
||||||
set(CMAKE_CONFIGURE_PATH "c:/Program\\ Files/CMake/bin/cmake.exe")
|
set(CMAKE_CONFIGURE_PATH "c:/Program\\ Files/CMake/bin/cmake.exe")
|
||||||
set(PROCESSORS 8)
|
set(PROCESSORS 16)
|
||||||
set(HOST dash3win7)
|
set(HOST win32)
|
||||||
set(RUN_LAUNCHER ~/rel/run)
|
set(RUN_LAUNCHER ~/rel/run)
|
||||||
set(CPACK_BINARY_GENERATORS "WIX ZIP")
|
set(CPACK_BINARY_GENERATORS "WIX ZIP")
|
||||||
set(CPACK_SOURCE_GENERATORS "ZIP")
|
set(CPACK_SOURCE_GENERATORS "ZIP")
|
||||||
set(MAKE_PROGRAM "ninja")
|
set(MAKE_PROGRAM "ninja")
|
||||||
set(MAKE "${MAKE_PROGRAM} -j8")
|
set(MAKE "${MAKE_PROGRAM} -j16")
|
||||||
|
set(qt_prefix "c:/Qt/5.6.3/msvc2017-32-xp-mt")
|
||||||
|
set(qt_win_libs
|
||||||
|
${qt_prefix}/plugins/platforms/qwindows.lib
|
||||||
|
${qt_prefix}/lib/Qt5PlatformSupport.lib
|
||||||
|
${qt_prefix}/lib/qtfreetype.lib
|
||||||
|
imm32.lib
|
||||||
|
)
|
||||||
set(INITIAL_CACHE "CMAKE_BUILD_TYPE:STRING=Release
|
set(INITIAL_CACHE "CMAKE_BUILD_TYPE:STRING=Release
|
||||||
CMAKE_DOC_DIR:STRING=doc/cmake
|
CMAKE_DOC_DIR:STRING=doc/cmake
|
||||||
CMAKE_USE_OPENSSL:BOOL=OFF
|
CMAKE_USE_OPENSSL:BOOL=OFF
|
||||||
@@ -16,17 +23,22 @@ CMAKE_Fortran_COMPILER:FILEPATH=FALSE
|
|||||||
CMAKE_GENERATOR:INTERNAL=Ninja
|
CMAKE_GENERATOR:INTERNAL=Ninja
|
||||||
BUILD_QtDialog:BOOL:=TRUE
|
BUILD_QtDialog:BOOL:=TRUE
|
||||||
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL:STRING=3
|
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL:STRING=3
|
||||||
CMake_INSTALL_DEPENDENCIES:BOOL=ON
|
CMAKE_C_FLAGS_RELEASE:STRING=-MT -O2 -Ob2 -DNDEBUG
|
||||||
|
CMAKE_CXX_FLAGS_RELEASE:STRING=-MT -O2 -Ob2 -DNDEBUG
|
||||||
CMAKE_EXE_LINKER_FLAGS:STRING=-machine:x86 -subsystem:console,5.01
|
CMAKE_EXE_LINKER_FLAGS:STRING=-machine:x86 -subsystem:console,5.01
|
||||||
|
CMake_QT_STATIC_QWindowsIntegrationPlugin_LIBRARIES:STRING=${qt_win_libs}
|
||||||
|
CMAKE_PREFIX_PATH:STRING=${qt_prefix}
|
||||||
|
CMake_TEST_Qt4:BOOL=OFF
|
||||||
|
CMake_TEST_Qt5:BOOL=OFF
|
||||||
")
|
")
|
||||||
set(ppflags "-D_WIN32_WINNT=0x501 -DNTDDI_VERSION=0x05010000 -D_USING_V110_SDK71_")
|
set(ppflags "-D_WIN32_WINNT=0x501 -DNTDDI_VERSION=0x05010000 -D_USING_V110_SDK71_")
|
||||||
set(CFLAGS "${ppflags}")
|
set(CFLAGS "${ppflags}")
|
||||||
set(CXXFLAGS "${ppflags}")
|
set(CXXFLAGS "${ppflags}")
|
||||||
set(ENV ". ~/rel/env")
|
set(ENV ". ~/rel/env32")
|
||||||
get_filename_component(path "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
get_filename_component(path "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||||
set(GIT_EXTRA "git config core.autocrlf true")
|
set(GIT_EXTRA "git config core.autocrlf true")
|
||||||
if(CMAKE_CREATE_VERSION STREQUAL "nightly")
|
if(CMAKE_CREATE_VERSION STREQUAL "nightly")
|
||||||
# Some tests fail spuriously too often.
|
# Some tests fail spuriously too often.
|
||||||
set(EXTRA_CTEST_ARGS "-E 'Qt5Autogen|ConsoleBuf'")
|
set(EXTRA_CTEST_ARGS "-E 'ConsoleBuf'")
|
||||||
endif()
|
endif()
|
||||||
include(${path}/release_cmake.cmake)
|
include(${path}/release_cmake.cmake)
|
||||||
|
|||||||
@@ -1,14 +1,20 @@
|
|||||||
set(CMAKE_RELEASE_DIRECTORY "c:/msys64/home/dashboard/CMakeReleaseDirectory64")
|
set(CMAKE_RELEASE_DIRECTORY "c:/msys64/home/dashboard/CMakeReleaseDirectory64")
|
||||||
set(CONFIGURE_WITH_CMAKE TRUE)
|
set(CONFIGURE_WITH_CMAKE TRUE)
|
||||||
set(CMAKE_CONFIGURE_PATH "c:/Program\\ Files/CMake/bin/cmake.exe")
|
set(CMAKE_CONFIGURE_PATH "c:/Program\\ Files/CMake/bin/cmake.exe")
|
||||||
set(PROCESSORS 8)
|
set(PROCESSORS 16)
|
||||||
set(HOST dash3win7)
|
set(HOST win64)
|
||||||
set(SCRIPT_NAME dash3win7x64)
|
|
||||||
set(RUN_LAUNCHER ~/rel/run)
|
set(RUN_LAUNCHER ~/rel/run)
|
||||||
set(CPACK_BINARY_GENERATORS "WIX ZIP")
|
set(CPACK_BINARY_GENERATORS "WIX ZIP")
|
||||||
set(CPACK_SOURCE_GENERATORS "")
|
set(CPACK_SOURCE_GENERATORS "")
|
||||||
set(MAKE_PROGRAM "ninja")
|
set(MAKE_PROGRAM "ninja")
|
||||||
set(MAKE "${MAKE_PROGRAM} -j8")
|
set(MAKE "${MAKE_PROGRAM} -j16")
|
||||||
|
set(qt_prefix "c:/Qt/5.6.3/msvc2017-64-xp-mt")
|
||||||
|
set(qt_win_libs
|
||||||
|
${qt_prefix}/plugins/platforms/qwindows.lib
|
||||||
|
${qt_prefix}/lib/Qt5PlatformSupport.lib
|
||||||
|
${qt_prefix}/lib/qtfreetype.lib
|
||||||
|
imm32.lib
|
||||||
|
)
|
||||||
set(INITIAL_CACHE "CMAKE_BUILD_TYPE:STRING=Release
|
set(INITIAL_CACHE "CMAKE_BUILD_TYPE:STRING=Release
|
||||||
CMAKE_DOC_DIR:STRING=doc/cmake
|
CMAKE_DOC_DIR:STRING=doc/cmake
|
||||||
CMAKE_USE_OPENSSL:BOOL=OFF
|
CMAKE_USE_OPENSSL:BOOL=OFF
|
||||||
@@ -17,8 +23,13 @@ CMAKE_Fortran_COMPILER:FILEPATH=FALSE
|
|||||||
CMAKE_GENERATOR:INTERNAL=Ninja
|
CMAKE_GENERATOR:INTERNAL=Ninja
|
||||||
BUILD_QtDialog:BOOL:=TRUE
|
BUILD_QtDialog:BOOL:=TRUE
|
||||||
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL:STRING=3
|
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL:STRING=3
|
||||||
CMake_INSTALL_DEPENDENCIES:BOOL=ON
|
CMAKE_C_FLAGS_RELEASE:STRING=-MT -O2 -Ob2 -DNDEBUG
|
||||||
|
CMAKE_CXX_FLAGS_RELEASE:STRING=-MT -O2 -Ob2 -DNDEBUG
|
||||||
CMAKE_EXE_LINKER_FLAGS:STRING=-machine:x64 -subsystem:console,5.02
|
CMAKE_EXE_LINKER_FLAGS:STRING=-machine:x64 -subsystem:console,5.02
|
||||||
|
CMake_QT_STATIC_QWindowsIntegrationPlugin_LIBRARIES:STRING=${qt_win_libs}
|
||||||
|
CMAKE_PREFIX_PATH:STRING=${qt_prefix}
|
||||||
|
CMake_TEST_Qt4:BOOL=OFF
|
||||||
|
CMake_TEST_Qt5:BOOL=OFF
|
||||||
")
|
")
|
||||||
set(ppflags "-D_WIN32_WINNT=0x502 -DNTDDI_VERSION=0x05020000 -D_USING_V110_SDK71_")
|
set(ppflags "-D_WIN32_WINNT=0x502 -DNTDDI_VERSION=0x05020000 -D_USING_V110_SDK71_")
|
||||||
set(CFLAGS "${ppflags}")
|
set(CFLAGS "${ppflags}")
|
||||||
@@ -28,6 +39,6 @@ get_filename_component(path "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|||||||
set(GIT_EXTRA "git config core.autocrlf true")
|
set(GIT_EXTRA "git config core.autocrlf true")
|
||||||
if(CMAKE_CREATE_VERSION STREQUAL "nightly")
|
if(CMAKE_CREATE_VERSION STREQUAL "nightly")
|
||||||
# Some tests fail spuriously too often.
|
# Some tests fail spuriously too often.
|
||||||
set(EXTRA_CTEST_ARGS "-E 'Qt5Autogen|ConsoleBuf'")
|
set(EXTRA_CTEST_ARGS "-E 'ConsoleBuf'")
|
||||||
endif()
|
endif()
|
||||||
include(${path}/release_cmake.cmake)
|
include(${path}/release_cmake.cmake)
|
||||||
|
|||||||
Reference in New Issue
Block a user