From b06e9693c56c628204acf0be710e156f3d270f65 Mon Sep 17 00:00:00 2001 From: Latent Prion Date: Fri, 17 Oct 2025 14:07:30 -0400 Subject: [PATCH] CMake: toolchain file updates --- cmake/x86_64-linux-gnu.cmake | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/cmake/x86_64-linux-gnu.cmake b/cmake/x86_64-linux-gnu.cmake index ddf2354..4bebac4 100644 --- a/cmake/x86_64-linux-gnu.cmake +++ b/cmake/x86_64-linux-gnu.cmake @@ -12,24 +12,29 @@ if(NOT DEFINED TARGET_SYSROOT) set(TARGET_SYSROOT "/usr/lib/x86_64-linux-gnu") message(STATUS "TARGET_SYSROOT not explicitly defined. Defaulting to ${TARGET_SYSROOT}") endif() +message(STATUS "Using TARGET_SYSROOT: ${TARGET_SYSROOT}") + +set(TARGET_TRIPLE x86_64-linux-gnu) # Standard Debian/Ubuntu triple # ---------------------------------------------------------------------------------- # SYSROOT and COMPILER CONFIGURATION # ---------------------------------------------------------------------------------- set(CMAKE_CROSSCOMPILING TRUE) -# 1. Architecture and Platform Identification -set(CMAKE_SYSTEM_NAME Linux) -set(CMAKE_SYSTEM_PROCESSOR x86_64) -set(TARGET_TRIPLE x86_64-linux-gnu) # Standard Debian/Ubuntu triple - -# 2. Set the CMAKE_SYSROOT using the user-defined variable set(CMAKE_SYSROOT ${TARGET_SYSROOT}) message(STATUS "Using CMAKE_SYSROOT: ${CMAKE_SYSROOT}") -# 3. Specify the Cross Compilers -# These binaries must be installed on your RPi: -# sudo apt install g++-x86-64-linux-gnu gcc-x86-64-linux-gnu +# The CMAKE_FIND_ROOT_PATH tells CMake where to look for programs, libraries, etc. +set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) + +# 1. Architecture and Platform Identification +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR x86_64) + set(CMAKE_C_COMPILER ${TARGET_TRIPLE}-gcc) set(CMAKE_CXX_COMPILER ${TARGET_TRIPLE}-g++) @@ -63,12 +68,3 @@ message(STATUS "PKG_CONFIG_LIBDIR set to: ${PKG_CONFIG_LIBDIR_STRING}") # CMAkE FIND BEHAVIOR # ---------------------------------------------------------------------------------- -# The CMAKE_FIND_ROOT_PATH tells CMake where to look for programs, libraries, etc. -set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) - -# Restrict search to the sysroot, not in the RPi's native locations, -# but allow programs (like pkg-config itself) to be found on the RPi. -set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) -set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) -set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)