diff --git a/linux-mingw-w64-x86_64.cmake b/linux-mingw-w64-x86_64.cmake index c6ca56d..a61457a 100644 --- a/linux-mingw-w64-x86_64.cmake +++ b/linux-mingw-w64-x86_64.cmake @@ -1 +1,22 @@ -# TODO: Toolchain file for Debian's MingW32 cross-compiler \ No newline at end of file +# Usage: +# *) Install cross-compiler: `sudo apt install mingw-w64` +# *) cmake -DCMAKE_TOOLCHAIN_FILE=macos-mingw-w64-x86_64.cmake -B build -S . +# *) make -C build + +set(CMAKE_SYSTEM_NAME Windows) +set(TOOLCHAIN_PREFIX x86_64-w64-mingw32) + +# Cross-compilers to use for C and C++ +set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) +set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) + +# Target environment on the build host system (with Homebrew) +set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}) + +# Search for programs in the build host directories (modifying default behavior of FIND_XXX()) +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static -Os") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static -Os") diff --git a/macos-mingw-w64-x86_64.cmake b/macos-mingw-w64-x86_64.cmake index 991c7a3..fdf10af 100644 --- a/macos-mingw-w64-x86_64.cmake +++ b/macos-mingw-w64-x86_64.cmake @@ -13,10 +13,10 @@ set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) # Target environment on the build host system (with Homebrew) set(CMAKE_FIND_ROOT_PATH /opt/homebrew/Cellar/mingw-w64/11.0.1/toolchain-x86_64/${TOOLCHAIN_PREFIX}) -# Search for programs in the build host directories +# Search for programs in the build host directories (modifying default behavior of FIND_XXX()) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -set(CMAKE_C_FLAGS "{CMAKE_C_FLAGS}" -static -Os) -set(CMAKE_CXX_FLAGS "{CMAKE_CXX_FLAGS}" -static -Os) \ No newline at end of file +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static -Os") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static -Os")