On 2026/09/09 04:59, Anthony J. Bentley wrote:
> There are probably still several ports with hidden deps on ccache.
> This should catch them.
> 
> If upstream has a knob to turn off ccache, the port should use it.
> If there isn't one, we can at least add an explicit build dependency.

I agree with poisoning and have done a test build on i386 that way.
At least these need to go in first though (there may be some !i386
ports that need it too).

Index: editors/neovim/patches/patch-cmake_Deps_cmake
===================================================================
RCS file: editors/neovim/patches/patch-cmake_Deps_cmake
diff -N editors/neovim/patches/patch-cmake_Deps_cmake
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ editors/neovim/patches/patch-cmake_Deps_cmake       9 Sep 2026 13:37:18 
-0000
@@ -0,0 +1,20 @@
+don't pick up ccache; ports is capable of using ccache by itself, and doing
+it this way breaks PORTS_PRIVSEP
+
+Index: cmake/Deps.cmake
+--- cmake/Deps.cmake.orig
++++ cmake/Deps.cmake
+@@ -17,13 +17,6 @@ if(APPLE)
+   list(APPEND DEPS_CMAKE_ARGS -D CMAKE_FIND_FRAMEWORK=${CMAKE_FIND_FRAMEWORK})
+ endif()
+
+-find_program(CACHE_PRG NAMES ccache sccache)
+-mark_as_advanced(CACHE_PRG)
+-if(CACHE_PRG)
+-  set(CMAKE_C_COMPILER_LAUNCHER ${CMAKE_COMMAND} -E env 
CCACHE_SLOPPINESS=pch_defines,time_macros ${CACHE_PRG})
+-  list(APPEND DEPS_CMAKE_CACHE_ARGS 
-DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER})
+-endif()
+-
+ # MAKE_PRG
+ if(UNIX)
+   find_program(MAKE_PRG NAMES gmake make)
Index: games/devilutionx/Makefile
===================================================================
RCS file: /cvs/ports/games/devilutionx/Makefile,v
diff -u -p -r1.21 Makefile
--- games/devilutionx/Makefile  23 Jul 2026 10:18:01 -0000      1.21
+++ games/devilutionx/Makefile  9 Sep 2026 13:37:18 -0000
@@ -11,7 +11,7 @@ SITES =               ${SITES_GITHUB}
 SITES.a =      
https://github.com/diasurgical/devilutionX/releases/download/${GH_TAGNAME}/

 DISTFILES =    ${GH_DISTFILE}
-DISTFILES.a =  devilutionx-src-${GH_TAGNAME}{devilutionx-src}.tar.xz
+DISTFILES.a =  devilutionx-src-${GH_TAGNAME}{devilutionx-src}.tar.xz

 # Sustainable Use License 1.0
 PERMIT_PACKAGE =       Yes
@@ -54,7 +54,8 @@ CONFIGURE_ARGS =      -DCMAKE_BUILD_TYPE=Rele

 NO_TEST =      Yes

-FIX_CRLF_FILES =       3rdParty/libsmackerdec/CMakeLists.txt \
+FIX_CRLF_FILES =       CMakeLists.txt \
+                       3rdParty/libsmackerdec/CMakeLists.txt \
                        3rdParty/simpleini/CMakeLists.txt \
                        CMake/Dependencies.cmake \
                        Source/CMakeLists.txt \
Index: games/devilutionx/patches/patch-CMakeLists_txt
===================================================================
RCS file: games/devilutionx/patches/patch-CMakeLists_txt
diff -N games/devilutionx/patches/patch-CMakeLists_txt
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ games/devilutionx/patches/patch-CMakeLists_txt      9 Sep 2026 13:37:18 
-0000
@@ -0,0 +1,16 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -219,12 +219,6 @@ if(PIE)
+   set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
+ endif()
+
+-find_program(CCACHE_PROGRAM ccache)
+-if(CCACHE_PROGRAM)
+-  set(CMAKE_C_COMPILER_LAUNCHER "${CCACHE_PROGRAM}")
+-  set(CMAKE_CXX_COMPILER_LAUNCHER "${CCACHE_PROGRAM}")
+-endif()
+-
+ if(DEVILUTIONX_DISABLE_RTTI)
+   if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
+     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
Index: textproc/libunicode/Makefile
===================================================================
RCS file: /cvs/ports/textproc/libunicode/Makefile,v
diff -u -p -r1.5 Makefile
--- textproc/libunicode/Makefile        13 Sep 2025 17:07:36 -0000      1.5
+++ textproc/libunicode/Makefile        9 Sep 2026 13:37:18 -0000
@@ -30,7 +30,8 @@ CONFIGURE_STYLE =     cmake
 # to avoid "Can not find target to add properties to: Catch2" error,
 # set LIBUNICODE_TESTING=OFF (and Catch2 is not used)

-CONFIGURE_ARGS =       -DLIBUNICODE_TESTING=OFF \
+CONFIGURE_ARGS =       -DCCACHE=OFF \
+                       -DLIBUNICODE_TESTING=OFF \
                        -DLIBUNICODE_UCD_DIR=${LOCALBASE}/share/unicode/ucd

 .if ${MACHINE_ARCH} != "amd64" && ${MACHINE_ARCH} != "aarch64"
Index: games/commandergenius/patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/games/commandergenius/patches/patch-CMakeLists_txt,v
diff -u -p -r1.1.1.1 patch-CMakeLists_txt
--- games/commandergenius/patches/patch-CMakeLists_txt  13 Jul 2026 20:32:22 
-0000      1.1.1.1
+++ games/commandergenius/patches/patch-CMakeLists_txt  9 Sep 2026 13:37:18 
-0000
@@ -17,7 +17,21 @@ Index: CMakeLists.txt
  SET(DOCDIR ${DATADIR} CACHE PATH "Docs destination")
  SET(ICONDIR "${SHAREDIR}/icons/hicolor" CACHE PATH "Standard icon 
installation dir")
  SET(DESKTOPFILESDIR "${SHAREDIR}/applications" CACHE PATH "Application 
installation dir")
-@@ -230,7 +232,7 @@ endif(GIT_FOUND)
+@@ -202,13 +204,6 @@ IF (DUMP_MTCS)
+     ADD_DEFINITIONS(-DDUMP_MTCS)
+ endif(DUMP_MTCS)
+
+-find_program(CCACHE_FOUND ccache)
+-if(CCACHE_FOUND)
+-    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
+-    set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) # Less useful to do 
it for linking, see edit2
+-    message(STATUS "Using ccache for faster builds")
+-endif(CCACHE_FOUND)
+-
+ # Will pass the SHA and branch strings to the executable
+ find_program(GIT_FOUND git)
+ if(GIT_FOUND)
+@@ -230,7 +225,7 @@ endif(GIT_FOUND)

  # Pass correct definition for SYSTEM_DATA_DIR so packager or distributors can 
decide where the app should land in
  if(UNIX AND NOT IOS)
Index: games/returntotheroots/patches/patch-CMakeLists_txt
===================================================================
RCS file: games/returntotheroots/patches/patch-CMakeLists_txt
diff -N games/returntotheroots/patches/patch-CMakeLists_txt
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ games/returntotheroots/patches/patch-CMakeLists_txt 9 Sep 2026 13:37:18 
-0000
@@ -0,0 +1,12 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -27,8 +27,6 @@ if(CMAKE_VERSION VERSION_LESS 3.14)
+     list(APPEND CMAKE_MODULE_PATH 
"${CMAKE_SOURCE_DIR}/external/libutil/cmake/cmake_3.14")
+ endif()
+
+-include(EnableCCache)
+-
+ set(checkSubmodules FALSE)
+ # Figure out RTTR_REVISION (git hash) and RTTR_VERSION (date)
+ # Those can be manually set to override the default values
Index: geo/sfcgal/Makefile
===================================================================
RCS file: /cvs/ports/geo/sfcgal/Makefile,v
diff -u -p -r1.7 Makefile
--- geo/sfcgal/Makefile 10 May 2026 15:17:00 -0000      1.7
+++ geo/sfcgal/Makefile 9 Sep 2026 13:37:18 -0000
@@ -33,6 +33,7 @@ WANTLIB += boost_program_options-mt boos
 WANTLIB += boost_timer-mt boost_unit_test_framework-mt gmp gmpxx
 WANTLIB += m mpfr

-CONFIGURE_ARGS +=      -DSFCGAL_BUILD_TESTS:BOOL=ON
+CONFIGURE_ARGS +=      -DSFCGAL_BUILD_TESTS:BOOL=ON \
+                       -DUSE_CCACHE=OFF

 .include <bsd.port.mk>


Reply via email to