|
4 | 4 | cmake_minimum_required(VERSION 3.20) |
5 | 5 |
|
6 | 6 | # Tell CMake we target Linux |
7 | | -set(CMAKE_SYSTEM_NAME Linux) |
8 | | - |
9 | | -# Allow caller to choose architecture; default to x86_64 |
10 | | -set(CMAKE_SYSTEM_PROCESSOR "x86_64" CACHE STRING "Speedgoat Linux target arch (aarch64|x86_64)") |
| 7 | +set(CMAKE_SYSTEM_NAME Linux CACHE STRING "") |
| 8 | + |
| 9 | +# Set target processor |
| 10 | +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") |
| 11 | + set(CMAKE_SYSTEM_PROCESSOR x86_64 CACHE STRING "") |
| 12 | +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") |
| 13 | + set(CMAKE_SYSTEM_PROCESSOR i686 CACHE STRING "") |
| 14 | + string(APPEND VCPKG_C_FLAGS " -m32") |
| 15 | + string(APPEND VCPKG_CXX_FLAGS " -m32") |
| 16 | + string(APPEND VCPKG_LINKER_FLAGS " -m32") |
| 17 | +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") |
| 18 | + set(CMAKE_SYSTEM_PROCESSOR armv7l CACHE STRING "") |
| 19 | +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") |
| 20 | + set(CMAKE_SYSTEM_PROCESSOR aarch64 CACHE STRING "") |
| 21 | +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "riscv64") |
| 22 | + set(CMAKE_SYSTEM_PROCESSOR riscv64 CACHE STRING "") |
| 23 | +endif() |
11 | 24 |
|
12 | 25 | # Compilers |
13 | 26 | set(CMAKE_C_COMPILER ${CMAKE_SYSTEM_PROCESSOR}-speedgoat-linux-gcc) |
14 | 27 | set(CMAKE_CXX_COMPILER ${CMAKE_SYSTEM_PROCESSOR}-speedgoat-linux-g++) |
15 | 28 |
|
16 | 29 | # Sysroot |
17 | | -set(CMAKE_SYSROOT "$ENV{SDKTARGETSYSROOT}") |
| 30 | +string(REPLACE "\"" "" SDKTARGETSYSROOT "$ENV{SDKTARGETSYSROOT}") |
| 31 | +set(CMAKE_SYSROOT "${SDKTARGETSYSROOT}") |
18 | 32 |
|
19 | 33 | # Optimize for target architecture |
20 | 34 | if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64") |
|
0 commit comments