diff options
-rw-r--r-- | source/CMakePresets.json | 37 | ||||
-rw-r--r-- | triplets/arm64-linux-mixed-clang.cmake | 21 | ||||
-rw-r--r-- | triplets/arm64-linux-mixed.cmake | 20 |
3 files changed, 78 insertions, 0 deletions
diff --git a/source/CMakePresets.json b/source/CMakePresets.json index 0d4eec2..800387a 100644 --- a/source/CMakePresets.json +++ b/source/CMakePresets.json @@ -73,6 +73,18 @@ }, { "inherits": "linux-release", + "name": "linux-arm-release", + "displayName": "Linux ARM", + "binaryDir": "${sourceParentDir}/build/linux-arm-release", + "architecture": { "value": "arm64", "strategy": "external" }, + "cacheVariables": { + "VCPKG_TARGET_TRIPLET": "arm64-linux-mixed", + "STAR_ENABLE_STEAM_INTEGRATION": false, + "STAR_ENABLE_DISCORD_INTEGRATION": false + } + }, + { + "inherits": "linux-release", "name": "linux-release-clang", "displayName": "Linux Clang x64", "binaryDir": "${sourceParentDir}/build/linux-release-clang", @@ -85,6 +97,18 @@ } }, { + "inherits": "linux-arm-release", + "name": "linux-arm-release-clang", + "displayName": "Linux Clang ARM", + "binaryDir": "${sourceParentDir}/build/linux-arm-release-clang", + "cacheVariables": { + "CMAKE_C_COMPILER": "clang", + "CMAKE_CXX_COMPILER": "clang++", + "VCPKG_TARGET_TRIPLET": "arm64-linux-mixed-clang", + "STAR_USE_JEMALLOC": true + } + }, + { "inherits": "base", "name": "macos-release", "displayName": "macOS x64", @@ -144,10 +168,18 @@ "configurePreset": "linux-release" }, { + "name": "linux-arm-release", + "configurePreset": "linux-arm-release" + }, + { "name": "linux-release-clang", "configurePreset": "linux-release-clang" }, { + "name": "linux-arm-release-clang", + "configurePreset": "linux-arm-release-clang" + }, + { "name": "macos-release", "configurePreset": "macos-release" }, @@ -176,6 +208,11 @@ }, { "inherits": "base", + "name": "linux-arm-release", + "configurePreset": "linux-arm-release" + }, + { + "inherits": "base", "name": "macos-release", "configurePreset": "macos-release" }, diff --git a/triplets/arm64-linux-mixed-clang.cmake b/triplets/arm64-linux-mixed-clang.cmake new file mode 100644 index 0000000..47c6697 --- /dev/null +++ b/triplets/arm64-linux-mixed-clang.cmake @@ -0,0 +1,21 @@ +set(VCPKG_TARGET_ARCHITECTURE arm64) +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) +set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE ${CMAKE_CURRENT_LIST_DIR}/../toolchains/linux-clang.cmake) + +if(PORT MATCHES "opus") + string(CONCAT VCPKG_CMAKE_CONFIGURE_OPTIONS + "-DOPUS_INSTALL_PKG_CONFIG_MODULE=OFF" + "-DOPUS_INSTALL_CMAKE_CONFIG_MODULE=OFF" + "-DOPUS_ARM_MAY_HAVE_NEON=ON" + "-DOPUS_ARM_MAY_HAVE_NEON_INTR=ON" + "-DOPUS_ENABLE_FLOAT_API=ON" + "-DOPUS_FLOAT_APPROX=ON" + "-DOPUS_STACK_PROTECTOR=OFF" + "-DOPUS_NONTHREADSAFE_PSEUDOSTACK=OFF" + "-DOPUS_USE_ALLOCA=ON" + "-DBUILD_TESTING=OFF" + ) +endif() diff --git a/triplets/arm64-linux-mixed.cmake b/triplets/arm64-linux-mixed.cmake new file mode 100644 index 0000000..1885af2 --- /dev/null +++ b/triplets/arm64-linux-mixed.cmake @@ -0,0 +1,20 @@ +set(VCPKG_TARGET_ARCHITECTURE arm64) +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) + +if(PORT MATCHES "opus") + string(CONCAT VCPKG_CMAKE_CONFIGURE_OPTIONS + "-DOPUS_INSTALL_PKG_CONFIG_MODULE=OFF" + "-DOPUS_INSTALL_CMAKE_CONFIG_MODULE=OFF" + "-DOPUS_ARM_MAY_HAVE_NEON=ON" + "-DOPUS_ARM_MAY_HAVE_NEON_INTR=ON" + "-DOPUS_ENABLE_FLOAT_API=ON" + "-DOPUS_FLOAT_APPROX=ON" + "-DOPUS_STACK_PROTECTOR=OFF" + "-DOPUS_NONTHREADSAFE_PSEUDOSTACK=OFF" + "-DOPUS_USE_ALLOCA=ON" + "-DBUILD_TESTING=OFF" + ) +endif() |