blob: 264e1a5975282159b83f7101ca5428dc4a5d30f2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#
# Allow the user to specify a MinGW prefix, but fill in
# most likely default if none given.
#
set(CMAKE_SYSTEM_NAME Windows)
if(NOT DEFINED MINGW_PREFIX)
set(POSSIBLE_PREFIXES
i586-mingw32msvc
i686-pc-mingw32
x86_64-pc-mingw32
i686-w64-mingw32
x86_64-w64-mingw32
)
set(MINGW_FOUND 0)
foreach(prefix ${POSSIBLE_PREFIXES})
if(EXISTS /usr/${prefix})
set(MINGW_PREFIX ${prefix})
set(MINGW_FOUND 1)
break()
endif(EXISTS /usr/${prefix})
endforeach(prefix ${POSSIBLE_PREFIXES})
if(NOT MINGW_FOUND)
message(FATAL_ERROR "No MinGW type specified, but none detected in the usual locations.")
endif(NOT MINGW_FOUND)
endif(NOT DEFINED MINGW_PREFIX)
set(MINGW_PREFIX ${MINGW_PREFIX} CACHE STRING "MinGW prefix")
set(CMAKE_C_COMPILER ${MINGW_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${MINGW_PREFIX}-g++)
set(CMAKE_RC_COMPILER ${MINGW_PREFIX}-windres)
if(NOT DEFINED CMAKE_FIND_ROOT_PATH)
set(CMAKE_FIND_ROOT_PATH /usr/${MINGW_PREFIX})
endif(NOT DEFINED CMAKE_FIND_ROOT_PATH)
set(CMAKE_INCLUDE_PATH
${CMAKE_FIND_ROOT_PATH}/local/include
${CMAKE_FIND_ROOT_PATH}/include
)
set(CMAKE_LIBRARY_PATH
${CMAKE_FIND_ROOT_PATH}/local/lib
${CMAKE_FIND_ROOT_PATH}/lib
)
# Adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
# programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# Tell pkg-config not to look at the target environment's .pc files.
# Setting PKG_CONFIG_LIBDIR sets the default search directory, but we have to
# set PKG_CONFIG_PATH as well to prevent pkg-config falling back to the host's
# path.
set(ENV{PKG_CONFIG_LIBDIR} ${CMAKE_FIND_ROOT_PATH}/lib/pkgconfig)
set(ENV{PKG_CONFIG_PATH} ${CMAKE_FIND_ROOT_PATH}/lib/pkgconfig)
set(ENV{MINGDIR} ${CMAKE_FIND_ROOT_PATH})
|