summaryrefslogtreecommitdiffstats
path: root/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt')
-rw-r--r--project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt33
1 files changed, 33 insertions, 0 deletions
diff --git a/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt b/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt
new file mode 100644
index 0000000..2c2c4b8
--- /dev/null
+++ b/project/cmake/addons/depends/windows/cmake/mingw/CMakeLists.txt
@@ -0,0 +1,33 @@
1cmake_minimum_required(VERSION 3.1)
2project(mingw)
3
4function(generate_mingw32_wrapper cmd)
5 set(CMD ${cmd})
6 configure_file(${PROJECT_SOURCE_DIR}/mingw32-cmd.bat.in ${MINGW_PATH}/bin/${CMD}.bat @ONLY)
7endfunction()
8
9get_filename_component(CORE_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../../../.. REALPATH)
10
11set(MSYS_PATH "${CORE_SOURCE_DIR}/project/BuildDependencies/msys64")
12set(MINGW_PATH "${MSYS_PATH}/mingw32")
13
14# configure the MinGW toolchain file
15configure_file(${PROJECT_SOURCE_DIR}/Toolchain_mingw32.cmake.in ${CMAKE_INSTALL_PREFIX}/Toolchain_mingw32.cmake @ONLY)
16
17# configure MinGWConfig.cmake
18configure_file(${PROJECT_SOURCE_DIR}/MinGWConfig.cmake.in ${CMAKE_INSTALL_PREFIX}/MinGWConfig.cmake)
19
20# TODO: MinGW GCC 5.3.0-1 comes without cc.exe, Remove this once package is bumped to 5.3.0-p2
21# See https://github.com/Alexpux/MINGW-packages/pull/1034
22if(NOT EXISTS ${MINGW_PATH}/bin/cc.exe)
23 execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${MINGW_PATH}/bin/gcc.exe ${MINGW_PATH}/bin/cc.exe)
24endif()
25
26# configure the MinGW wrapper batch scripts
27generate_mingw32_wrapper("make")
28generate_mingw32_wrapper("gcc")
29generate_mingw32_wrapper("cc")
30generate_mingw32_wrapper("g++")
31generate_mingw32_wrapper("ar")
32generate_mingw32_wrapper("ld")
33generate_mingw32_wrapper("windres")