]> git.vomp.tv Git - vompclient.git/commitdiff
Use cmake CMAKE_<LANG>_COMPILER_LAUNCHER variables
authorChris Tallon <chris@vomp.tv>
Wed, 15 Oct 2025 18:48:11 +0000 (19:48 +0100)
committerChris Tallon <chris@vomp.tv>
Wed, 15 Oct 2025 18:48:11 +0000 (19:48 +0100)
CMakeLists.txt
CMakeToolChainRPiClang.txt
CMakeToolChainRPiGCC.txt
cmake.config.sample

index 6b06dbeb78b1c5785815d58b13e692b43189460b..97edaf4febba4e31d290de0b40dca774b0b0eb66 100644 (file)
@@ -21,7 +21,10 @@ if(CONFIG_CROSS_COMPILE)
        endif()
 endif()
 
-
+if(CONFIG_COMPILER_LAUNCHER)
+  set(CMAKE_C_COMPILER_LAUNCHER ${CONFIG_COMPILER_LAUNCHER})
+  set(CMAKE_CXX_COMPILER_LAUNCHER ${CONFIG_COMPILER_LAUNCHER})
+endif()
 
 set (VOMP_OBJ_COMMON
        src/gitinfo.cc
@@ -189,8 +192,6 @@ set (PNG_FILES
 project(vomp)
 add_executable(vomp ${VOMP_OBJ_COMMON} ${VOMP_OBJ_RASPBERRY} pngs.o)
 
-# set(CMAKE_CXX_COMPILER_LAUNCHER "distcc") - not until cmake 3.17!
-
 list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
 include(gitinfo)
 GitInfo(${CMAKE_SOURCE_DIR})
index 733904e6bea62633417a690b9853e87978b8de80..ff6e44179e13af1b4ae3c507eefab8b1b3a4a535 100644 (file)
@@ -1,19 +1,27 @@
 set(CMAKE_SYSTEM_NAME Linux)
 
-set(CMAKE_FIND_ROOT_PATH /pi-root)
-set(CMAKE_SYSROOT /pi-root)
+set(CMAKE_FIND_ROOT_PATH /opt/piroot10)
+set(CMAKE_SYSROOT /opt/piroot10)
 
 # Clang
-#set(CMAKE_C_COMPILER "/usr/bin/clang-11")
-#set(CMAKE_CXX_COMPILER "/usr/bin/clang++-11")
-set(CMAKE_C_COMPILER "${CMAKE_BINARY_DIR}/../compiler")
-set(CMAKE_CXX_COMPILER "${CMAKE_BINARY_DIR}/../compiler")
+
+# System cross compiler
+set(CMAKE_C_COMPILER "/usr/bin/clang-11")
+set(CMAKE_CXX_COMPILER "/usr/bin/clang++-11")
 set(CMAKE_LINKER /usr/bin/arm-linux-gnueabihf-ld)
-set(CMAKE_C_FLAGS "-target arm-linux-gnueabihf -mfloat-abi=hard -mcpu=cortex-a7")
+
+# CT-NG cross compiler
+#set(CMAKE_C_COMPILER ?)
+#set(CMAKE_CXX_COMPILER ?)
+#set(CMAKE_LINKER ?)
+
+
+# Pi1: -mtune=arm1176jzf-s  Pi2: -mtune=cortex-a7  Pi3: -mtune=cortex-a53
+
+set(CMAKE_C_FLAGS   "-target arm-linux-gnueabihf -mfloat-abi=hard -mcpu=cortex-a7")
 set(CMAKE_CXX_FLAGS "-target arm-linux-gnueabihf -mfloat-abi=hard -mcpu=cortex-a7")
 
 
 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
-
 set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
index 4a14672d2ee3c50466b7e5f6db663d5832136e8b..e13e47ee29d3dd26b0b403d110b86a3ed153d69d 100644 (file)
@@ -1,16 +1,27 @@
 set(CMAKE_SYSTEM_NAME Linux)
 
-set(CMAKE_FIND_ROOT_PATH /pi-root)
-set(CMAKE_SYSROOT /pi-root)
+set(CMAKE_FIND_ROOT_PATH /opt/piroot10)
+set(CMAKE_SYSROOT /opt/piroot10)
 
 # GCC
-set(CMAKE_C_COMPILER /usr/bin/arm-linux-gnueabihf-gcc)
-set(CMAKE_CXX_COMPILER /usr/bin/arm-linux-gnueabihf-g++)
-set(CMAKE_C_FLAGS "-Wno-psabi -mtune=cortex-a7 -mfloat-abi=hard -fopenmp")
-set(CMAKE_CXX_FLAGS "-Wno-psabi -mtune=cortex-a7 -mfloat-abi=hard -fopenmp")
+
+# System cross compiler
+#set(CMAKE_C_COMPILER /usr/bin/arm-linux-gnueabihf-gcc)
+#set(CMAKE_CXX_COMPILER /usr/bin/arm-linux-gnueabihf-g++)
+#set(CMAKE_LINKER /usr/bin/arm-linux-gnueabihf-ld)
+
+# CT-NG cross compiler
+set(CMAKE_C_COMPILER /opt/xcomp-pi3-ros10/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-gcc)
+set(CMAKE_CXX_COMPILER /opt/xcomp-pi3-ros10/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-g++)
+set(CMAKE_LINKER /opt/xcomp-pi3-ros10/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-ld)
+
 
 # Pi1: -mtune=arm1176jzf-s  Pi2: -mtune=cortex-a7  Pi3: -mtune=cortex-a53
 
+set(CMAKE_C_FLAGS   "-Wno-psabi -mtune=cortex-a53 -mfloat-abi=hard -fopenmp")
+set(CMAKE_CXX_FLAGS "-Wno-psabi -mtune=cortex-a53 -mfloat-abi=hard -fopenmp")
+
+
 
 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
 set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
index 3fd4903411e15235c95e4ed710a8b9b3f39c0eba..f285c43a25ac48f29b5879c8c8084948554451af 100644 (file)
@@ -4,6 +4,9 @@ set(CONFIG_CROSS_COMPILE no)
 # Set cross compiler. Options: gcc clang
 set(CONFIG_CROSS_COMPILER gcc)
 
+# Set compiler launcher e.g. for distcc or ccache
+# set(CONFIG_COMPILER_LAUNCHER /usr/bin/distcc)
+
 # Use mold for linker? (Only possible if compiler is clang)
 set(CONFIG_ENABLE_MOLD no)
 set(CONFIG_MOLD_BIN /opt/mold/bin/mold)