1# This file has a lot of CACHE STRING "" FORCE because cmake likes caching
2# things and won't use what we do in here unless we CACHE FORCE it.
3#
4# See: https://cmake.org/pipermail/cmake/2012-January/048429.html
5#      http://stackoverflow.com/a/30217088
6
7# the name of the target operating system
8set(CMAKE_SYSTEM_NAME Windows)
9
10set(COMPILER_PREFIX  "i686-w64-mingw32")
11set(CMAKE_C_COMPILER  i686-w64-mingw32-gcc )
12set(CMAKE_RC_COMPILER i686-w64-mingw32-windres )
13
14# Required to prevent duplication of flags from this file.
15UNSET(CMAKE_C_FLAGS CACHE)
16UNSET(CMAKE_C_FLAGS_DEBUG CACHE)
17UNSET(CMAKE_C_FLAGS_RELWITHDEBINFO CACHE)
18
19# Windows only compiles statically.
20set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DAL_LIBTYPE_STATIC" CACHE STRING "" FORCE)
21set(STATIC_ALL ON CACHE STRING "" FORCE)
22
23# Required for line numbers in gdb on Windows.
24set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g3" CACHE STRING "" FORCE)
25set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -g3" CACHE STRING "" FORCE)
26
27include_directories(SYSTEM /usr/share/mingw-w64/include/)
28
29# adjust the default behaviour of the FIND_XXX() commands:
30# search headers and libraries in the target environment, search
31# programs in the host environment
32set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
33set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
34set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
35
36set(WIN32 TRUE) # This is for cmake
37
38set(UNIX FALSE)
39set(CROSS_COMPILING TRUE)
40
41if(NOT CMAKE_PREFIX_PATH)
42    set(CMAKE_PREFIX_PATH ${CMAKE_SOURCE_DIR}/libs/windows-x32)
43endif()
44