Skip to content

Instantly share code, notes, and snippets.

@kitattyor
Forked from peterspackman/mingw-w64-x86_64.cmake
Last active November 15, 2020 14:43
Show Gist options
  • Save kitattyor/3350c304101f510d7525feb9c81dccc6 to your computer and use it in GitHub Desktop.
Save kitattyor/3350c304101f510d7525feb9c81dccc6 to your computer and use it in GitHub Desktop.
cmake toolchain file for mingw-w64 x86_64 builds on Fedora Docker/Podman container
# Sample toolchain file for building for Windows from an Fedora container System (base image fedora).
#
# Typical usage:
# *) install cross compiler: `dnf install mingw64-gcc mingw64-gcc-c++`
# *) cd build
# *) cmake -DCMAKE_TOOLCHAIN_FILE=/usr/share/mingw/toolchain-mingw64.cmake ..
# ... best to check the path with a `find . -name "*cmake" | grep mingw
set(CMAKE_SYSTEM_NAME Windows)
set(TOOLCHAIN_PREFIX x86_64-w64-mingw32)
# cross compilers to use for C, C++ and Fortran
set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++)
set(CMAKE_Fortran_COMPILER ${TOOLCHAIN_PREFIX}-gfortran)
set(CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres)
# target environment on the build host system
set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX})
# modify default behavior of FIND_XXX() commands
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment