1 # Sample toolchain file for building for Windows from an Ubuntu Linux system.
4 # *) install cross compiler: `sudo apt-get install mingw-w64`
6 # *) CROSS=x86_64 TOOLCHAIN_ROOT=/opt DEP_ROOT=./mingw64_deps cmake -DCMAKE_TOOLCHAIN_FILE=~/mingw-w64.cmake ..
8 set(CMAKE_SYSTEM_NAME Windows)
9 set(TOOLCHAIN_PREFIX $ENV{CROSS}-w64-mingw32)
11 # cross compilers to use for C, C++ and Fortran
12 set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc)
13 set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++)
14 set(CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres)
16 # target environment on the build host system
17 set(CMAKE_FIND_ROOT_PATH
18 $ENV{TOOLCHAIN_ROOT}/${TOOLCHAIN_PREFIX}
19 $ENV{DEP_ROOT}/boost/${TOOLCHAIN_PREFIX}
20 $ENV{DEP_ROOT}/db/${TOOLCHAIN_PREFIX}
21 $ENV{DEP_ROOT}/openssl/${TOOLCHAIN_PREFIX}
22 $ENV{DEP_ROOT}/qt/${TOOLCHAIN_PREFIX}
23 $ENV{DEP_ROOT}/zlib/${TOOLCHAIN_PREFIX}
26 set(BerkeleyDB_INC $ENV{DEP_ROOT}/db/${TOOLCHAIN_PREFIX}/include)
27 set(BerkeleyDB_LIBS $ENV{DEP_ROOT}/db/${TOOLCHAIN_PREFIX}/lib)
29 # modify default behavior of FIND_XXX() commands
30 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
31 set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
32 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)