yuzu-mirror
57 строк · 2.3 Кб
1# SPDX-FileCopyrightText: 2018 tech4me <guiwanglong@gmail.com>
2# SPDX-License-Identifier: GPL-2.0-or-later
3
4set(MINGW_PREFIX /usr/x86_64-w64-mingw32/)
5set(CMAKE_SYSTEM_NAME Windows)
6set(CMAKE_SYSTEM_PROCESSOR x86_64)
7# Actually a hack, w/o this will cause some strange errors
8set(CMAKE_HOST_WIN32 TRUE)
9
10
11set(CMAKE_FIND_ROOT_PATH ${MINGW_PREFIX})
12set(SDL2_PATH ${MINGW_PREFIX})
13set(MINGW_TOOL_PREFIX ${CMAKE_SYSTEM_PROCESSOR}-w64-mingw32-)
14
15# Specify the cross compiler
16set(CMAKE_C_COMPILER ${MINGW_TOOL_PREFIX}gcc)
17set(CMAKE_CXX_COMPILER ${MINGW_TOOL_PREFIX}g++)
18set(CMAKE_RC_COMPILER ${MINGW_TOOL_PREFIX}windres)
19
20# Mingw tools
21set(STRIP ${MINGW_TOOL_PREFIX}strip)
22set(WINDRES ${MINGW_TOOL_PREFIX}windres)
23set(ENV{PKG_CONFIG} ${MINGW_TOOL_PREFIX}pkg-config)
24
25# ccache wrapper
26option(USE_CCACHE "Use ccache for compilation" OFF)
27if(USE_CCACHE)
28find_program(CCACHE ccache)
29if(CCACHE)
30message(STATUS "Using ccache found in PATH")
31set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ${CCACHE})
32set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ${CCACHE})
33else(CCACHE)
34message(WARNING "USE_CCACHE enabled, but no ccache found")
35endif(CCACHE)
36endif(USE_CCACHE)
37
38# Search for programs in the build host directories
39set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
40
41
42# Echo modified cmake vars to screen for debugging purposes
43if(NOT DEFINED ENV{MINGW_DEBUG_INFO})
44message("")
45message("Custom cmake vars: (blank = system default)")
46message("-----------------------------------------")
47message("* CMAKE_C_COMPILER : ${CMAKE_C_COMPILER}")
48message("* CMAKE_CXX_COMPILER : ${CMAKE_CXX_COMPILER}")
49message("* CMAKE_RC_COMPILER : ${CMAKE_RC_COMPILER}")
50message("* WINDRES : ${WINDRES}")
51message("* ENV{PKG_CONFIG} : $ENV{PKG_CONFIG}")
52message("* STRIP : ${STRIP}")
53message("* USE_CCACHE : ${USE_CCACHE}")
54message("")
55# So that the debug info only appears once
56set(ENV{MINGW_DEBUG_INFO} SHOWN)
57endif()
58