yuzu-mirror

Форк
0
/
MinGWClangCross.cmake 
58 строк · 2.4 Кб
1
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
2
# SPDX-License-Identifier: GPL-3.0-or-later
3

4
set(MINGW_PREFIX                /usr/x86_64-w64-mingw32/)
5
set(CMAKE_SYSTEM_NAME           Windows)
6
set(CMAKE_SYSTEM_PROCESSOR      x86_64)
7

8
set(CMAKE_FIND_ROOT_PATH        ${MINGW_PREFIX})
9
set(SDL2_PATH                   ${MINGW_PREFIX})
10
set(MINGW_TOOL_PREFIX           ${CMAKE_SYSTEM_PROCESSOR}-w64-mingw32-)
11

12
# Specify the cross compiler
13
set(CMAKE_C_COMPILER            ${MINGW_TOOL_PREFIX}clang)
14
set(CMAKE_CXX_COMPILER          ${MINGW_TOOL_PREFIX}clang++)
15
set(CMAKE_RC_COMPILER           ${MINGW_TOOL_PREFIX}windres)
16
set(CMAKE_C_COMPILER_AR         ${MINGW_TOOL_PREFIX}ar)
17
set(CMAKE_CXX_COMPILER_AR       ${MINGW_TOOL_PREFIX}ar)
18
set(CMAKE_C_COMPILER_RANLIB     ${MINGW_TOOL_PREFIX}ranlib)
19
set(CMAKE_CXX_COMPILER_RANLIB   ${MINGW_TOOL_PREFIX}ranlib)
20

21
# Mingw tools
22
set(STRIP                       ${MINGW_TOOL_PREFIX}strip)
23
set(WINDRES                     ${MINGW_TOOL_PREFIX}windres)
24
set(ENV{PKG_CONFIG}             ${MINGW_TOOL_PREFIX}pkg-config)
25

26
# ccache wrapper
27
option(USE_CCACHE "Use ccache for compilation" OFF)
28
if(USE_CCACHE)
29
    find_program(CCACHE ccache)
30
    if(CCACHE)
31
        message(STATUS "Using ccache found in PATH")
32
        set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ${CCACHE})
33
        set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ${CCACHE})
34
    else(CCACHE)
35
        message(WARNING "USE_CCACHE enabled, but no ccache found")
36
    endif(CCACHE)
37
endif(USE_CCACHE)
38

39
# Search for programs in the build host directories
40
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
41

42

43
# Echo modified cmake vars to screen for debugging purposes
44
if(NOT DEFINED ENV{MINGW_DEBUG_INFO})
45
        message("")
46
        message("Custom cmake vars: (blank = system default)")
47
        message("-----------------------------------------")
48
        message("* CMAKE_C_COMPILER                     : ${CMAKE_C_COMPILER}")
49
        message("* CMAKE_CXX_COMPILER                   : ${CMAKE_CXX_COMPILER}")
50
        message("* CMAKE_RC_COMPILER                    : ${CMAKE_RC_COMPILER}")
51
        message("* WINDRES                              : ${WINDRES}")
52
        message("* ENV{PKG_CONFIG}                      : $ENV{PKG_CONFIG}")
53
        message("* STRIP                                : ${STRIP}")
54
        message("* USE_CCACHE                           : ${USE_CCACHE}")
55
        message("")
56
        # So that the debug info only appears once
57
        set(ENV{MINGW_DEBUG_INFO} SHOWN)
58
endif()
59

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.