summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt19
1 files changed, 13 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 199232f84..a210c682b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-# SPDX-FileCopyrightText: 2025 Citron Homebrew Emulator Project & vampiric_x 2025
+# SPDX-FileCopyrightText: 2025 Citron Homebrew Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later
cmake_minimum_required(VERSION 3.22)
@@ -655,10 +655,17 @@ if(ENABLE_QT AND UNIX AND NOT APPLE)
DESTINATION "share/metainfo")
endif()
-# Set default x86-64-v2 instruction set for better compatibility
+# Set CPU architecture compatibility flags
if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64|AMD64")
- # Ensure quotes are preserved and flags are set for both main build and vcpkg
- set(ISA_FLAGS "-march=x86-64-v2")
+ # Default to x86-64 baseline for maximum compatibility
+ set(ISA_FLAGS "-march=x86-64")
+
+ # Allow override via CMake option
+ option(CITRON_USE_X86_64_V2 "Enable x86-64-v2 instruction set" OFF)
+
+ if(CITRON_USE_X86_64_V2)
+ set(ISA_FLAGS "-march=x86-64-v2")
+ endif()
# Set for main project
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ISA_FLAGS}")
@@ -668,8 +675,8 @@ if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64|AMD64")
set(VCPKG_CXX_FLAGS "${ISA_FLAGS}")
set(VCPKG_C_FLAGS "${ISA_FLAGS}")
- # Set toolchain options for vcpkg
- set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/x86-64-v2-toolchain.cmake")
+ # Set toolchain options for vcpkg
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/x86-64-toolchain.cmake")
# Ensure we're not getting overridden by system defaults
add_compile_options(${ISA_FLAGS})