Index | Thread | Search

From:
Rafael Sadowski <rafael@sizeofvoid.org>
Subject:
HEADS UP UPDATE: devel/cmake from 3.x to 4.x
To:
ports@openbsd.org
Date:
Wed, 11 Feb 2026 22:11:18 +0100

Download raw body.

Thread
On Fri Oct 10, 2025 at 10:15:22PM +0200, Rafael Sadowski wrote:
> Here is a diff to update CMake to 4.1.2 and modernise our cmake port.
> Get rid of a lot of old legacy stuff and patches as they are no
> longer needed.
> 
> As you can see from the diff, CMake expected version >=3.5. (This
> version must be specified for every CMake project.) Since we build
> projects that are quite old - we still have many 2.x projects.
> 
> A simple -DCMAKE_POLICY_VERSION_MINIMUM=3.5 is usually enough.
> Unless there are any bundled CMake projects with older cmake
> versions.
> 
> For this such ports, I have such a helper sed (better solution welcome):
> 
> +#	find ${WRKSRC} -name "CMakeLists.txt" -type f -exec sed -i \
> +#	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
> +#	{} \;
> 
> What I can't fix at the moment is: "audio/ncspot". Somehow, it's not
> a CMake port, but it uses cmake(1), and when I changed the rust cargo stuff
> with the sed patch, I get a message saying that the file has been
> changed -- cargo protection works ;)
> 

I would like to commit this gigantic diff. It went throw a amr64 bulk
build. If some errors still occur, can we fix them in the tree?
Otherwise, I always work against rebase+rebuild.

Objections?

Rafael

diff --git a/archivers/blosc/Makefile b/archivers/blosc/Makefile
index ac411ea46fe..0480e656fa5 100644
--- a/archivers/blosc/Makefile
+++ b/archivers/blosc/Makefile
@@ -32,4 +32,6 @@ CONFIGURE_ARGS =	-DPREFER_EXTERNAL_LZ4=ON \
 			-DPREFER_EXTERNAL_ZLIB=ON \
 			-DPREFER_EXTERNAL_ZSTD=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/archivers/innoextract/Makefile b/archivers/innoextract/Makefile
index ae707aee032..de59ba0b97f 100644
--- a/archivers/innoextract/Makefile
+++ b/archivers/innoextract/Makefile
@@ -33,6 +33,8 @@ CONFIGURE_ARGS+=-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
 		-DCMAKE_INSTALL_MANDIR="man" \
 		-DDOXYGEN_EXECUTABLE="false"
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=	Yes
 
 .include <bsd.port.arch.mk>
diff --git a/archivers/innoextract/patches/patch-cmake_VersionScript_cmake b/archivers/innoextract/patches/patch-cmake_VersionScript_cmake
new file mode 100644
index 00000000000..c7714b4fdc0
--- /dev/null
+++ b/archivers/innoextract/patches/patch-cmake_VersionScript_cmake
@@ -0,0 +1,12 @@
+Index: cmake/VersionScript.cmake
+--- cmake/VersionScript.cmake.orig
++++ cmake/VersionScript.cmake
+@@ -17,7 +17,7 @@
+ #    misrepresented as being the original software.
+ # 3. This notice may not be removed or altered from any source distribution.
+ 
+-cmake_minimum_required(VERSION 2.8)
++cmake_minimum_required(VERSION 3.5)
+ 
+ # CMake script that reads a VERSION file and the current git history and the calls configure_file().
+ # This is used by version_file() in VersionString.cmake
diff --git a/archivers/libzip/Makefile b/archivers/libzip/Makefile
index 7049c0b0af4..a5452fa984a 100644
--- a/archivers/libzip/Makefile
+++ b/archivers/libzip/Makefile
@@ -25,4 +25,6 @@ CONFIGURE_ARGS =	-DENABLE_COMMONCRYPTO=OFF \
 			-DENABLE_GNUTLS=OFF \
 			-DENABLE_MBEDTLS=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/archivers/snappy/Makefile b/archivers/snappy/Makefile
index 900593d975e..467d4eaa936 100644
--- a/archivers/snappy/Makefile
+++ b/archivers/snappy/Makefile
@@ -25,6 +25,8 @@ CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS=ON \
 			-DINSTALL_GTEST=OFF \
 			-DSNAPPY_BUILD_BENCHMARKS=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .if ${MACHINE_ARCH:Marm}
 CONFIGURE_ARGS +=	-DSNAPPY_HAVE_NEON=OFF \
 			-DSNAPPY_HAVE_NEON_CRC32=OFF
diff --git a/archivers/unarr/Makefile b/archivers/unarr/Makefile
index 4d600593752..6dd8e406d60 100644
--- a/archivers/unarr/Makefile
+++ b/archivers/unarr/Makefile
@@ -25,6 +25,8 @@ EXTRACT_SUFX =	.tar.xz
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS =	archivers/bzip2 \
 		archivers/xz
 
diff --git a/archivers/unshield/Makefile b/archivers/unshield/Makefile
index c06df2efa81..7c01f245d4e 100644
--- a/archivers/unshield/Makefile
+++ b/archivers/unshield/Makefile
@@ -17,6 +17,8 @@ WANTLIB=	c crypto z
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=	Yes
 
 .include <bsd.port.mk>
diff --git a/archivers/woff2/Makefile b/archivers/woff2/Makefile
index 75fc3fcfa1e..ebce6b2b8e0 100644
--- a/archivers/woff2/Makefile
+++ b/archivers/woff2/Makefile
@@ -20,6 +20,8 @@ WANTLIB += ${COMPILER_LIBCXX} brotlidec brotlienc c m
 COMPILER=		base-clang ports-gcc base-gcc
 MODULES=		devel/cmake
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS=		archivers/brotli
 
 NO_TEST=		Yes
diff --git a/archivers/zipios/Makefile b/archivers/zipios/Makefile
index 0fd261ddc70..e6dedcdbf14 100644
--- a/archivers/zipios/Makefile
+++ b/archivers/zipios/Makefile
@@ -25,4 +25,6 @@ MODULES =	devel/cmake
 CONFIGURE_ARGS +=	-DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON \
 			-DBUILD_ZIPIOS_TESTS=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/archivers/zopfli/Makefile b/archivers/zopfli/Makefile
index e4a7901d6d0..1ffa8fe9deb 100644
--- a/archivers/zopfli/Makefile
+++ b/archivers/zopfli/Makefile
@@ -18,6 +18,7 @@ WANTLIB += ${COMPILER_LIBCXX} c m
 MODULES =		devel/cmake
 COMPILER =		base-clang ports-gcc base-gcc
 CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=yes
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 NO_TEST =		Yes
 
 .include <bsd.port.mk>
diff --git a/archivers/zziplib/Makefile b/archivers/zziplib/Makefile
index 872ae14f249..4c95914d782 100644
--- a/archivers/zziplib/Makefile
+++ b/archivers/zziplib/Makefile
@@ -30,6 +30,7 @@ MODULES =		devel/cmake \
 MODPY_RUNDEP =		No
 
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 TEST_TARGET =		tests
 
diff --git a/astro/stellarsolver/Makefile b/astro/stellarsolver/Makefile
index f223267d080..36c20f58812 100644
--- a/astro/stellarsolver/Makefile
+++ b/astro/stellarsolver/Makefile
@@ -28,5 +28,6 @@ LIB_DEPENDS =	astro/wcslib \
 		math/cfitsio
 
 CONFIGURE_ARGS =	-DUSE_QT5=OFF
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .include <bsd.port.mk>
diff --git a/audio/audiality2/Makefile b/audio/audiality2/Makefile
index 7338a1a45d7..c7a2361b34e 100644
--- a/audio/audiality2/Makefile
+++ b/audio/audiality2/Makefile
@@ -23,6 +23,8 @@ LIB_DEPENDS =		devel/sdl2
 
 CONFIGURE_ARGS =	-DUSE_JACK=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 .include <bsd.port.mk>
diff --git a/audio/chromaprint/Makefile b/audio/chromaprint/Makefile
index c535b68aa7b..5ef284dff08 100644
--- a/audio/chromaprint/Makefile
+++ b/audio/chromaprint/Makefile
@@ -31,6 +31,8 @@ CONFIGURE_ARGS =	-DBUILD_TOOLS=ON \
 CXXFLAGS +=		-I${LOCALBASE}/include
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-test:
 	${WRKBUILD}/tests/all_tests
 
diff --git a/audio/clementine/Makefile b/audio/clementine/Makefile
index da419a2a9c3..a162cf5deea 100644
--- a/audio/clementine/Makefile
+++ b/audio/clementine/Makefile
@@ -97,6 +97,8 @@ CONFIGURE_ARGS +=	-DBUNDLE_PROJECTM_PRESETS=ON
 
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 #CXXFLAGS+=" -Wno-error=cpp"
 
 post-extract:
diff --git a/audio/clementine/patches/patch-3rdparty_libprojectm_CMakeLists_txt b/audio/clementine/patches/patch-3rdparty_libprojectm_CMakeLists_txt
index 0fc4440be97..9e499193487 100644
--- a/audio/clementine/patches/patch-3rdparty_libprojectm_CMakeLists_txt
+++ b/audio/clementine/patches/patch-3rdparty_libprojectm_CMakeLists_txt
@@ -1,15 +1,21 @@
 Index: 3rdparty/libprojectm/CMakeLists.txt
 --- 3rdparty/libprojectm/CMakeLists.txt.orig
 +++ 3rdparty/libprojectm/CMakeLists.txt
-@@ -11,13 +11,15 @@ if (CMAKE_VERSION VERSION_GREATER "2.8.3")
-   cmake_policy(SET CMP0017 OLD)
- endif (CMAKE_VERSION VERSION_GREATER "2.8.3")
+@@ -4,12 +4,8 @@ SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The projectM co
  
+ include(CheckCXXCompilerFlag)
+ 
+-cmake_policy(SET CMP0005 OLD)
+ 
+-# This policy was only added in cmake 2.8.4
+-if (CMAKE_VERSION VERSION_GREATER "2.8.3")
+-  cmake_policy(SET CMP0017 OLD)
+-endif (CMAKE_VERSION VERSION_GREATER "2.8.3")
 +set(CMAKE_CXX_STANDARD 14)
  
-+
+ 
  set(USE_DEVIL OFF)
- set(USE_FBO ON)
+@@ -17,7 +13,7 @@ set(USE_FBO ON)
  set(USE_FTGL OFF)
  set(USE_GLES1 OFF)
  set(USE_THREADS OFF)
@@ -18,7 +24,7 @@ Index: 3rdparty/libprojectm/CMakeLists.txt
  set(USE_NATIVE_GLEW OFF)
  set(USE_CG OFF)
  set(BUILD_PROJECTM_STATIC ON)
-@@ -166,7 +168,7 @@ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libproject
+@@ -166,7 +162,7 @@ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libproject
  CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/config.inp.in" "${CMAKE_CURRENT_SOURCE_DIR}/config.inp" @ONLY)
  
  if(BUNDLE_PROJECTM_PRESETS)
diff --git a/audio/clementine/patches/patch-CMakeLists_txt b/audio/clementine/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..d9e9f0e7cf1
--- /dev/null
+++ b/audio/clementine/patches/patch-CMakeLists_txt
@@ -0,0 +1,12 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -1,8 +1,6 @@
+ cmake_minimum_required(VERSION 3.13.0)
+ project(clementine)
+ 
+-cmake_policy(SET CMP0053 OLD)
+-
+ include(CheckCXXCompilerFlag)
+ include(FindPkgConfig)
+ include(cmake/C++11Compat.cmake)
diff --git a/audio/glyr/Makefile b/audio/glyr/Makefile
index 6614f930cae..9e81c9cd35d 100644
--- a/audio/glyr/Makefile
+++ b/audio/glyr/Makefile
@@ -18,6 +18,8 @@ LIB_DEPENDS +=	net/curl \
 		databases/sqlite3 \
 		devel/glib2
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 .include <bsd.port.mk>
diff --git a/audio/gogglesmm/Makefile b/audio/gogglesmm/Makefile
index 6ae89dc1bad..ac79c6d1c1c 100644
--- a/audio/gogglesmm/Makefile
+++ b/audio/gogglesmm/Makefile
@@ -45,4 +45,6 @@ MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib -L${X11BASE}/lib
 
 NO_TEST =		Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/hydrogen/Makefile b/audio/hydrogen/Makefile
index cbd77e895ff..a6edf1c9b14 100644
--- a/audio/hydrogen/Makefile
+++ b/audio/hydrogen/Makefile
@@ -51,12 +51,19 @@ CONFIGURE_ARGS=		-DWANT_ALSA=OFF \
 # Disable Doxygen
 CONFIGURE_ARGS +=	-DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-extract:
 	cp ${FILESDIR}/Sndio{Audio,Midi}Driver.h \
 		${WRKSRC}/src/core/include/hydrogen/IO
 	cp ${FILESDIR}/sndio_{audio,midi}_driver.cpp \
 		${WRKSRC}/src/core/src/IO
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/CMAKE_MINIMUM_REQUIRED\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 post-install:
 	cp -rp ${WRKSRC}/data/doc ${PREFIX}/share/doc/hydrogen
 
diff --git a/audio/libcue/Makefile b/audio/libcue/Makefile
index 55155d92ba9..b8751fc10aa 100644
--- a/audio/libcue/Makefile
+++ b/audio/libcue/Makefile
@@ -16,6 +16,7 @@ MODULES =		devel/cmake
 BUILD_DEPENDS =		devel/bison
 
 CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=ON
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
diff --git a/audio/libebur128/Makefile b/audio/libebur128/Makefile
index 1d499cb0924..88d4795d6e2 100644
--- a/audio/libebur128/Makefile
+++ b/audio/libebur128/Makefile
@@ -16,6 +16,8 @@ WANTLIB += m
 MODULES = devel/cmake
 DEBUG_PACKAGES = ${BUILD_PACKAGES}
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # enabling tests is somewhat useless: extra build dependency on
 # libsndfile, plus the test requires a wav file to be useful,
 # and it's definitely interactive
diff --git a/audio/liblastfm/Makefile b/audio/liblastfm/Makefile
index 086657b0557..080d492d997 100644
--- a/audio/liblastfm/Makefile
+++ b/audio/liblastfm/Makefile
@@ -31,4 +31,6 @@ LIB_DEPENDS =	audio/libsamplerate \
 # network access
 TEST_IS_INTERACTIVE =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/libmusicbrainz5/Makefile b/audio/libmusicbrainz5/Makefile
index d1c1e6a69d3..985bd9358ce 100644
--- a/audio/libmusicbrainz5/Makefile
+++ b/audio/libmusicbrainz5/Makefile
@@ -31,6 +31,8 @@ LIB_DEPENDS=		net/neon \
 
 CXXFLAGS +=	-I${LOCALBASE}/include
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-configure:
 	sed -i 's,/usr/local,${LOCALBASE},g' \
 		${WRKSRC}/cmake/modules/FindNeon.cmake
diff --git a/audio/libmusicbrainz5/patches/patch-src_CMakeLists_txt b/audio/libmusicbrainz5/patches/patch-src_CMakeLists_txt
new file mode 100644
index 00000000000..3e04d942ecd
--- /dev/null
+++ b/audio/libmusicbrainz5/patches/patch-src_CMakeLists_txt
@@ -0,0 +1,13 @@
+Index: src/CMakeLists.txt
+--- src/CMakeLists.txt.orig
++++ src/CMakeLists.txt
+@@ -36,7 +36,8 @@ ADD_CUSTOM_COMMAND(
+ 	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/mb5_c.cc ${CMAKE_CURRENT_BINARY_DIR}/mb5_c.h ${CMAKE_CURRENT_BINARY_DIR}/../include/musicbrainz5/mb5_c.h
+ 	COMMAND make-c-interface ${CMAKE_CURRENT_SOURCE_DIR} cinterface.xml ${CMAKE_CURRENT_BINARY_DIR} mb5_c.cc mb5_c.h
+ 	COMMAND ${CMAKE_COMMAND} -E copy_if_different 	${CMAKE_CURRENT_BINARY_DIR}/mb5_c.h ${CMAKE_CURRENT_BINARY_DIR}/../include/musicbrainz5/mb5_c.h
+-	DEPENDS make-c-interface cinterface.xml *.inc
++	DEPENDS make-c-interface cinterface.xml c-int-medium-defines.inc c-int-query-source.inc c-int-source-funcs.inc
++                c-int-medium-source.inc c-int-release-defines.inc c-int-query-defines.inc c-int-release-source.inc
+ )
+ 
+ ADD_CUSTOM_TARGET(src_gen DEPENDS mb5_c.h)
diff --git a/audio/libsndfile/Makefile b/audio/libsndfile/Makefile
index 09e4befc53c..1739372375f 100644
--- a/audio/libsndfile/Makefile
+++ b/audio/libsndfile/Makefile
@@ -27,6 +27,8 @@ CONFIGURE_ARGS=	-DBUILD_SHARED_LIBS:BOOL=ON \
 		-DCMAKE_DISABLE_FIND_PACKAGE_Speex:BOOL=True \
 		-DCMAKE_DISABLE_FIND_PACKAGE_SQLite3:BOOL=True
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS=	audio/flac \
 		audio/lame \
 		audio/libogg \
diff --git a/audio/libsoxr/Makefile b/audio/libsoxr/Makefile
index 377db039c35..a9914ad5a42 100644
--- a/audio/libsoxr/Makefile
+++ b/audio/libsoxr/Makefile
@@ -21,4 +21,7 @@ SITES=		${SITE_SOURCEFORGE:=soxr/}
 
 MODULES=	devel/cmake
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/lmms/Makefile b/audio/lmms/Makefile
index 3baea1eda17..b66409260dd 100644
--- a/audio/lmms/Makefile
+++ b/audio/lmms/Makefile
@@ -59,6 +59,8 @@ CONFIGURE_ARGS +=	-DWANT_CALF=OFF \
 			-DWANT_TAP=OFF \
 			-DWANT_VST=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 .include <bsd.port.mk>
diff --git a/audio/lmms/patches/patch-CMakeLists_txt b/audio/lmms/patches/patch-CMakeLists_txt
index 216fd4608ac..9608fb1f635 100644
--- a/audio/lmms/patches/patch-CMakeLists_txt
+++ b/audio/lmms/patches/patch-CMakeLists_txt
@@ -3,6 +3,18 @@ don't link deprecated ossaudio on OpenBSD
 Index: CMakeLists.txt
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
+@@ -8,9 +8,9 @@ IF(COMMAND CMAKE_POLICY)
+ 	CMAKE_POLICY(SET CMP0005 NEW)
+ 	CMAKE_POLICY(SET CMP0003 NEW)
+ 	IF (CMAKE_MAJOR_VERSION GREATER 2)
+-		CMAKE_POLICY(SET CMP0026 OLD)
++		CMAKE_POLICY(SET CMP0026 NEW)
+ 		CMAKE_POLICY(SET CMP0045 NEW)
+-		CMAKE_POLICY(SET CMP0050 OLD)
++		CMAKE_POLICY(SET CMP0050 NEW)
+ 	ENDIF()
+ ENDIF(COMMAND CMAKE_POLICY)
+ 
 @@ -366,12 +366,12 @@ ENDIF(WANT_OGGVORBIS)
  
  
@@ -18,3 +30,12 @@ Index: CMakeLists.txt
  
  
  # check for ALSA
+@@ -539,7 +539,7 @@ IF(WIN32 OR WIN64)
+ 	ADD_CUSTOM_TARGET(bin2res COMMAND g++ "\"${BIN2RES_CPP}\"" -o "\"${BIN2RES}\"" DEPENDS "${BIN2RES_CPP}")
+ ELSE(WIN32 OR WIN64)
+ 	ADD_EXECUTABLE(bin2res buildtools/bin2res.cpp)
+-	GET_TARGET_PROPERTY(BIN2RES bin2res LOCATION)
++	set(BIN2RES $<TARGET_FILE:bin2res>)
+ ENDIF(WIN32 OR WIN64)
+ 
+ # we somehow have to make LMMS-binary depend on MOC-files
diff --git a/audio/mac/Makefile b/audio/mac/Makefile
index 7a09c4513e6..7b98baf8e5e 100644
--- a/audio/mac/Makefile
+++ b/audio/mac/Makefile
@@ -24,6 +24,8 @@ SITES=		https://monkeysaudio.com/files/
 WRKDIST=	${WRKDIR}/mac-${VERSION}
 FIX_CRLF_FILES=	Shared/*.h
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-extract:
 	mkdir ${WRKSRC}
 	mv ${WRKDIR}/!(mac-${VERSION}|bin) ${WRKSRC}
diff --git a/audio/milkytracker/Makefile b/audio/milkytracker/Makefile
index 638e02059f9..f58c51e32c5 100644
--- a/audio/milkytracker/Makefile
+++ b/audio/milkytracker/Makefile
@@ -34,6 +34,8 @@ LIB_DEPENDS =	archivers/lhasa \
 
 CONFIGURE_ARGS = -DCMAKE_INSTALL_DOCDIR=${PREFIX}/share/doc/milkytracker
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CXXFLAGS +=	-Wno-narrowing
 
 NO_TEST =	Yes
@@ -46,4 +48,7 @@ post-install:
 	${INSTALL_DATA} ${WRKSRC}/resources/pictures/carton.png \
 		${PREFIX}/share/icons/hicolor/128x128/apps/milkytracker.png
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/milkytracker/patches/patch-CMakeLists_txt b/audio/milkytracker/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..b9a4a0351a2
--- /dev/null
+++ b/audio/milkytracker/patches/patch-CMakeLists_txt
@@ -0,0 +1,12 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -164,7 +164,7 @@ elseif(HAIKU)
+ else()
+     # Workaround for SDL bug #3295, which occurs in SDL2 <2.0.5
+     # https://bugzilla.libsdl.org/show_bug.cgi?id=3295
+-    cmake_policy(SET CMP0004 OLD)
++    cmake_policy(SET CMP0004 NEW)
+ 
+     find_package(SDL2 REQUIRED)
+ endif()
diff --git a/audio/mscore/Makefile b/audio/mscore/Makefile
index f1ae01791bf..24cbd826322 100644
--- a/audio/mscore/Makefile
+++ b/audio/mscore/Makefile
@@ -53,6 +53,8 @@ CONFIGURE_ARGS =-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
 		-DBUILD_TELEMETRY_MODULE=OFF \
 		-DMUSESCORE_BUILD_CONFIG=release
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CXXFLAGS +=	-Wno-inconsistent-missing-override
 CXXFLAGS +=	-I${LOCALBASE}/include -I${X11BASE}/include
 MODCMAKE_LDFLAGS =	-L${X11BASE}/lib -L${LOCALBASE}/lib
diff --git a/audio/musepack/Makefile b/audio/musepack/Makefile
index 76c0bbf6da4..4524ddbe70f 100644
--- a/audio/musepack/Makefile
+++ b/audio/musepack/Makefile
@@ -20,6 +20,8 @@ WANTLIB += c cue m
 
 MODULES =		devel/cmake
 
+CONFIGURE_ARGS =	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS =		audio/libcue
 
 NO_TEST =		Yes
diff --git a/audio/ncspot/Makefile b/audio/ncspot/Makefile
index f0e65468406..8bc56affd65 100644
--- a/audio/ncspot/Makefile
+++ b/audio/ncspot/Makefile
@@ -31,6 +31,8 @@ MODCARGO_FEATURES =	cursive/termion-backend \
 			mpris \
 			portaudio_backend
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DOCDIR =	${PREFIX}/share/doc/ncspot/
 
 post-install:
diff --git a/audio/ncspot/Makefile.rej b/audio/ncspot/Makefile.rej
new file mode 100644
index 00000000000..112f61d7f1d
--- /dev/null
+++ b/audio/ncspot/Makefile.rej
@@ -0,0 +1,13 @@
+@@ -47,6 +47,12 @@
+ 
+ .include "crates.inc"
+ 
++pre-configure:
++	find ${WRKSRC} -name "CMakeLists.txt" -type f -exec sed -i \
++	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
++	{} \;
++	sed -i 's/"files":{[^}]*}/"files":{}/' ${WRKSRC}/modcargo-crates/aws-lc-sys-0.22.0/.cargo-checksum.json
++
+ post-patch:
+ 	cp ${FILESDIR}/cpu_aarch64_openbsd.c ${MODCARGO_VENDOR_DIR}/aws-lc-sys-0.22.0/aws-lc/crypto/fipsmodule/cpucap/
+ 
diff --git a/audio/openal/Makefile b/audio/openal/Makefile
index c0d6f495c5a..5c84c9aa49c 100644
--- a/audio/openal/Makefile
+++ b/audio/openal/Makefile
@@ -39,6 +39,8 @@ CONFIGURE_ARGS =-DALSOFT_BACKEND_PIPEWIRE=Off \
 		-DCMAKE_DISABLE_FIND_PACKAGE_SDL2:Bool=Yes \
 		-DCMAKE_DISABLE_FIND_PACKAGE_SndFile:Bool=Yes
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .if ${MACHINE_ARCH} == "arm"
 CONFIGURE_ARGS +=-DALSOFT_CPUEXT_NEON=Off
 .endif
diff --git a/audio/soundtouch/Makefile b/audio/soundtouch/Makefile
index 121b350ad99..0d37e37f57b 100644
--- a/audio/soundtouch/Makefile
+++ b/audio/soundtouch/Makefile
@@ -21,6 +21,7 @@ COMPILER=	base-clang ports-gcc base-gcc
 MODULES=	devel/cmake
 
 CONFIGURE_ARGS=	-DBUILD_SHARED_LIBS=ON
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .if ${MACHINE_ARCH} == "i386"
 CXXFLAGS +=	-DSOUNDTOUCH_DISABLE_X86_OPTIMIZATIONS
diff --git a/audio/umurmur/Makefile b/audio/umurmur/Makefile
index e24f9467348..3a67205c080 100644
--- a/audio/umurmur/Makefile
+++ b/audio/umurmur/Makefile
@@ -20,6 +20,7 @@ LIB_DEPENDS =		devel/libconfig \
 			devel/protobuf-c>=1.0.1
 
 CONFIGURE_ARGS =	-DSSL=openssl
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
diff --git a/audio/ympd/Makefile b/audio/ympd/Makefile
index 7309ffee76e..72a31236a27 100644
--- a/audio/ympd/Makefile
+++ b/audio/ympd/Makefile
@@ -15,4 +15,6 @@ MODULES =	devel/cmake
 LIB_DEPENDS =	audio/libmpdclient
 WANTLIB +=	c crypto mpdclient pthread ssl
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/zynaddsubfx/Makefile b/audio/zynaddsubfx/Makefile
index 7c79d0f2a7b..8775f4d74dc 100644
--- a/audio/zynaddsubfx/Makefile
+++ b/audio/zynaddsubfx/Makefile
@@ -38,6 +38,8 @@ CONFIGURE_ARGS=	-DGuiModule=zest \
 		-DPaEnable=OFF \
 		-DSndioEnable=ON
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-patch:
 	sed -i s,/usr/X11R6,${X11BASE}, ${WRKSRC}/src/CMakeLists.txt
 	sed -i s,/usr/local,${TRUEPREFIX}, ${WRKSRC}/src/main.cpp \
diff --git a/cad/abc/Makefile b/cad/abc/Makefile
index 154d67ddd0a..c0cb83e830b 100644
--- a/cad/abc/Makefile
+++ b/cad/abc/Makefile
@@ -18,6 +18,8 @@ COMPILER =	base-clang ports-gcc base-gcc
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 USE_GMAKE =	Yes
 
 NO_TEST =	Yes
diff --git a/cad/graywolf/Makefile b/cad/graywolf/Makefile
index 18216db1401..db78de37a87 100644
--- a/cad/graywolf/Makefile
+++ b/cad/graywolf/Makefile
@@ -18,6 +18,8 @@ WANTLIB +=	ICE SM X11 Xext c gsl gslcblas m
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS =	devel/gsl
 
 # Really really not C99
diff --git a/cad/horizon-eda/Makefile b/cad/horizon-eda/Makefile
index 05c1edcc539..3bca3be67dd 100644
--- a/cad/horizon-eda/Makefile
+++ b/cad/horizon-eda/Makefile
@@ -46,4 +46,9 @@ LIB_DEPENDS =		archivers/libarchive \
 
 DEBUG_PACKAGES = ${BUILD_PACKAGES}
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/cad/lib3mf/Makefile b/cad/lib3mf/Makefile
index 4ba8683f409..945fc82d7b2 100644
--- a/cad/lib3mf/Makefile
+++ b/cad/lib3mf/Makefile
@@ -26,6 +26,8 @@ CONFIGURE_ARGS =	-DUSE_INCLUDED_ZLIB=OFF \
 			-DUSE_INCLUDED_LIBZIP=OFF \
 			-DUSE_INCLUDED_SSL=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	${MODPY_COMPILEALL} ${PREFIX}/include/Bindings/Python/Lib3MF.py
 
diff --git a/cad/prusaslicer/Makefile b/cad/prusaslicer/Makefile
index 06e7ee25c21..a73d9d7493d 100644
--- a/cad/prusaslicer/Makefile
+++ b/cad/prusaslicer/Makefile
@@ -78,4 +78,6 @@ CONFIGURE_ARGS +=	-DCMAKE_BUILD_TYPE=RelWithDebInfo \
 			-DSLIC3R_GTK=3 \
 			-DSLIC3R_PCH=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/solvespace/Makefile b/cad/solvespace/Makefile
index 3532a5b06a4..480c651ea56 100644
--- a/cad/solvespace/Makefile
+++ b/cad/solvespace/Makefile
@@ -53,6 +53,8 @@ CONFIGURE_ARGS+= -DENABLE_GUI=ON \
 		 -DMI_BUILD_SHARED=OFF \
 		 -DMI_BUILD_OBJECT=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # testsuite broken as is
 NO_TEST =	YES
 
diff --git a/cad/xtrkcad/Makefile b/cad/xtrkcad/Makefile
index 63d4177e07c..283997fdb72 100644
--- a/cad/xtrkcad/Makefile
+++ b/cad/xtrkcad/Makefile
@@ -46,6 +46,9 @@ RUN_DEPENDS +=	graphics/inkscape
 post-extract:
 	rm -f ${WRKSRC}/app/tools/lib/linux/libzip.a
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CONFIGURE_ARGS +=	-DXTRKCAD_USE_GETTEXT=on
 CONFIGURE_ENV +=	CFLAGS=-I${PREFIX}/include \
 		LDFLAGS="-pthread -L/usr/X11R6/lib -L${PREFIX}/lib -liconv -lintl"
diff --git a/comms/gammu/Makefile b/comms/gammu/Makefile
index 093801d9a91..8a5d35ebf6f 100644
--- a/comms/gammu/Makefile
+++ b/comms/gammu/Makefile
@@ -36,6 +36,8 @@ CONFIGURE_ARGS +=	-DINSTALL_MAN_DIR:STRING=man \
 			-DINSTALL_BASH_COMPLETION=OFF \
 			-Wno-dev
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CFLAGS +=		-I${LOCALBASE}/include
 LDFLAGS =		-L${LOCALBASE}/lib -liconv -lintl
 
diff --git a/comms/hackrf/Makefile b/comms/hackrf/Makefile
index 2638e0d8f41..e5242d07a4f 100644
--- a/comms/hackrf/Makefile
+++ b/comms/hackrf/Makefile
@@ -35,4 +35,6 @@ NO_TEST =		Yes
 
 WRKSRC =		${WRKDIST}/host
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/comms/libhidapi/Makefile b/comms/libhidapi/Makefile
index 612a4a5bdc3..c12a069e030 100644
--- a/comms/libhidapi/Makefile
+++ b/comms/libhidapi/Makefile
@@ -27,6 +27,8 @@ LIB_DEPENDS =	converters/libiconv \
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DOCDIR =	${PREFIX}/share/doc/hidapi
 
 NO_TEST =	Yes
diff --git a/comms/sigrok/pulseview/Makefile b/comms/sigrok/pulseview/Makefile
index 89d0f2d2940..7158a7623e1 100644
--- a/comms/sigrok/pulseview/Makefile
+++ b/comms/sigrok/pulseview/Makefile
@@ -31,4 +31,6 @@ NO_TEST =		Yes
 
 DEBUG_PACKAGES =	${BUILD_PACKAGES}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/converters/k2pdfopt/Makefile b/converters/k2pdfopt/Makefile
index 46c79e0a835..3c3e05bb560 100644
--- a/converters/k2pdfopt/Makefile
+++ b/converters/k2pdfopt/Makefile
@@ -46,4 +46,7 @@ FIX_CRLF_FILES =	`find . -type f \( -name '*.txt' -o -name '*.[ch]' \)`
 post-install:
 	${INSTALL_MAN} ${WRKDIR}/debian/k2pdfopt.1 ${PREFIX}/man/man1
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/converters/lastools/Makefile b/converters/lastools/Makefile
index 794ec95e62e..070694e4371 100644
--- a/converters/lastools/Makefile
+++ b/converters/lastools/Makefile
@@ -15,6 +15,8 @@ MODULES =	devel/cmake
 #c++11
 COMPILER =	base-clang ports-gcc
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 PROGS =	laszip lasinfo lasprecision las2txt txt2las las2las lasdiff lasmerge lasindex
 post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/doc/lastools/
diff --git a/converters/wv2/Makefile b/converters/wv2/Makefile
index 10d6ed3616d..d366e47d789 100644
--- a/converters/wv2/Makefile
+++ b/converters/wv2/Makefile
@@ -26,4 +26,6 @@ LIB_DEPENDS+=	converters/libiconv \
 
 CONFIGURE_ARGS +=-DLIBwv2_VERSION=${LIBwv2_VERSION}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/converters/wv2/patches/patch-cmake_MacroCreateLibtoolFile_cmake b/converters/wv2/patches/patch-cmake_MacroCreateLibtoolFile_cmake
index 4d0096b6d27..c49bc85481c 100644
--- a/converters/wv2/patches/patch-cmake_MacroCreateLibtoolFile_cmake
+++ b/converters/wv2/patches/patch-cmake_MacroCreateLibtoolFile_cmake
@@ -1,27 +1,151 @@
---- cmake/MacroCreateLibtoolFile.cmake.orig	Sat Oct 31 19:22:43 2009
-+++ cmake/MacroCreateLibtoolFile.cmake	Fri Jul 13 11:07:39 2012
-@@ -16,19 +16,19 @@ MACRO(CREATE_LIBTOOL_FILE _target _install_DIR)
-   GET_TARGET_PROPERTY_WITH_DEFAULT(_target_age ${_target} LT_VERSION_AGE 0)
-   GET_TARGET_PROPERTY_WITH_DEFAULT(_target_revision ${_target} LT_VERSION_REVISION 0)
-   GET_TARGET_PROPERTY_WITH_DEFAULT(_target_installed ${_target} LT_INSTALLED yes)
+Index: cmake/MacroCreateLibtoolFile.cmake
+--- cmake/MacroCreateLibtoolFile.cmake.orig
++++ cmake/MacroCreateLibtoolFile.cmake
+@@ -8,46 +8,104 @@ MACRO(GET_TARGET_PROPERTY_WITH_DEFAULT _variable _targ
+   ENDIF (${_variable} MATCHES NOTFOUND)
+ ENDMACRO (GET_TARGET_PROPERTY_WITH_DEFAULT)
+ 
+-MACRO(CREATE_LIBTOOL_FILE _target _install_DIR)
+-  GET_TARGET_PROPERTY(_target_location ${_target} LOCATION)
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_static_lib ${_target} STATIC_LIB "")
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dependency_libs ${_target} LT_DEPENDENCY_LIBS "")
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_current ${_target} LT_VERSION_CURRENT 0)
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_age ${_target} LT_VERSION_AGE 0)
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_revision ${_target} LT_VERSION_REVISION 0)
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_installed ${_target} LT_INSTALLED yes)
 -  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_shouldnotlink ${_target} LT_SHOULDNOTLINK yes)
-+  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_shouldnotlink ${_target} LT_SHOULDNOTLINK no)
-   GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlopen ${_target} LT_DLOPEN "")
-   GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlpreopen ${_target} LT_DLPREOPEN "")
-   GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE)
-   GET_FILENAME_COMPONENT(_soname ${_target_location} NAME)
-   SET(_laname ${PROJECT_BINARY_DIR}/${_laname}.la)
-   FILE(WRITE ${_laname} "# ${_laname} - a libtool library file\n")
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlopen ${_target} LT_DLOPEN "")
+-  GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlpreopen ${_target} LT_DLPREOPEN "")
+-  GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE)
+-  GET_FILENAME_COMPONENT(_soname ${_target_location} NAME)
+-  SET(_laname ${PROJECT_BINARY_DIR}/${_laname}.la)
+-  FILE(WRITE ${_laname} "# ${_laname} - a libtool library file\n")
 -  FILE(WRITE ${_laname} "# Generated by CMake ${CMAKE_VERSION} (like GNU libtool)\n")
 -  FILE(WRITE ${_laname} "\n# Please DO NOT delete this file!\n# It is necessary for linking the library with libtool.\n\n" )
-+  FILE(APPEND ${_laname} "# Generated by CMake ${CMAKE_VERSION} (like GNU libtool)\n")
-+  FILE(APPEND ${_laname} "\n# Please DO NOT delete this file!\n# It is necessary for linking the library with libtool.\n\n" )
-   FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n")
+-  FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n")
 -  FILE(APPEND ${_laname} "dlname='${_soname}'\n\n")
-+  FILE(APPEND ${_laname} "dlname='${_soname}.${LIBwv2_VERSION}'\n\n")
-   FILE(APPEND ${_laname} "# Names of this library.\n")
+-  FILE(APPEND ${_laname} "# Names of this library.\n")
 -  FILE(APPEND ${_laname} "library_names='${_soname}.${_target_current}.${_target_age}.${_target_revision} ${_soname}.${_target_current} ${_soname}'\n\n")
-+  FILE(APPEND ${_laname} "library_names='${_soname}.${LIBwv2_VERSION} ${_soname}.${LIBwv2_VERSION} ${_soname}.${LIBwv2_VERSION}'\n\n")
-   FILE(APPEND ${_laname} "# The name of the static archive.\n")
-   FILE(APPEND ${_laname} "old_library='${_target_static_lib}'\n\n")
-   FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n")
+-  FILE(APPEND ${_laname} "# The name of the static archive.\n")
+-  FILE(APPEND ${_laname} "old_library='${_target_static_lib}'\n\n")
+-  FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n")
+-  FILE(APPEND ${_laname} "dependency_libs='${_target_dependency_libs}'\n\n")
+-  FILE(APPEND ${_laname} "# Names of additional weak libraries provided by this library\n")
+-  FILE(APPEND ${_laname} "weak_library_names=''\n\n")
+-  FILE(APPEND ${_laname} "# Version information for ${_laname}.\n")
+-  FILE(APPEND ${_laname} "current=${_target_current}\n")
+-  FILE(APPEND ${_laname} "age=${_target_age}\n")
+-  FILE(APPEND ${_laname} "revision=${_target_revision}\n\n")
+-  FILE(APPEND ${_laname} "# Is this an already installed library?\n")
+-  FILE(APPEND ${_laname} "installed=${_target_installed}\n\n")
+-  FILE(APPEND ${_laname} "# Should we warn about portability when linking against -modules?\n")
+-  FILE(APPEND ${_laname} "shouldnotlink=${_target_shouldnotlink}\n\n")
+-  FILE(APPEND ${_laname} "# Files to dlopen/dlpreopen\n")
+-  FILE(APPEND ${_laname} "dlopen='${_target_dlopen}'\n")
+-  FILE(APPEND ${_laname} "dlpreopen='${_target_dlpreopen}'\n\n")
+-  FILE(APPEND ${_laname} "# Directory that this library needs to be installed in:\n")
+-  FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}${_install_DIR}'\n")
+-#  INSTALL( FILES ${_laname} ${_soname}  DESTINATION ${CMAKE_INSTALL_PREFIX}${_install_DIR})
+-  INSTALL( FILES ${_laname} DESTINATION ${CMAKE_INSTALL_PREFIX}${_install_DIR})
+-ENDMACRO(CREATE_LIBTOOL_FILE)
++macro(CREATE_LIBTOOL_FILE _target _install_DIR)
++  get_target_property(_target_static_lib ${_target} STATIC_LIB)
++  if(NOT _target_static_lib)
++    set(_target_static_lib "")
++  endif()
++
++  get_target_property(_target_dependency_libs ${_target} LT_DEPENDENCY_LIBS)
++  if(NOT _target_dependency_libs)
++    set(_target_dependency_libs "")
++  endif()
++
++  get_target_property(_target_current ${_target} LT_VERSION_CURRENT)
++  if(NOT _target_current)
++    set(_target_current 0)
++  endif()
++
++  get_target_property(_target_age ${_target} LT_VERSION_AGE)
++  if(NOT _target_age)
++    set(_target_age 0)
++  endif()
++
++  get_target_property(_target_revision ${_target} LT_VERSION_REVISION)
++  if(NOT _target_revision)
++    set(_target_revision 0)
++  endif()
++
++  get_target_property(_target_installed ${_target} LT_INSTALLED)
++  if(NOT _target_installed)
++    set(_target_installed yes)
++  endif()
++
++  get_target_property(_target_shouldnotlink ${_target} LT_SHOULDNOTLINK)
++  if(NOT _target_shouldnotlink)
++    set(_target_shouldnotlink no)
++  endif()
++
++  get_target_property(_target_dlopen ${_target} LT_DLOPEN)
++  if(NOT _target_dlopen)
++    set(_target_dlopen "")
++  endif()
++
++  get_target_property(_target_dlpreopen ${_target} LT_DLPREOPEN)
++  if(NOT _target_dlpreopen)
++    set(_target_dlpreopen "")
++  endif()
++
++  # Verwende Output-Name statt LOCATION
++  get_target_property(_target_output_name ${_target} OUTPUT_NAME)
++  if(NOT _target_output_name)
++    set(_target_output_name ${_target})
++  endif()
++
++  # .la Dateiname erstellen
++  set(_laname ${PROJECT_BINARY_DIR}/lib${_target_output_name}.la)
++  set(_soname lib${_target_output_name}.so)
++
++  # .la Datei mit file(GENERATE) erstellen - wird zur Build-Zeit ausgewertet
++  set(_la_content "# lib${_target_output_name}.la - a libtool library file
++# Generated by CMake ${CMAKE_VERSION} (like GNU libtool)
++
++# Please DO NOT delete this file!
++# It is necessary for linking the library with libtool.
++
++# The name that we can dlopen(3).
++dlname='${_soname}.${LIBwv2_VERSION}'
++
++# Names of this library.
++library_names='${_soname}.${LIBwv2_VERSION} ${_soname}.${LIBwv2_VERSION} ${_soname}.${LIBwv2_VERSION}'
++
++# The name of the static archive.
++old_library='${_target_static_lib}'
++
++# Libraries that this one depends upon.
++dependency_libs='${_target_dependency_libs}'
++
++# Names of additional weak libraries provided by this library
++weak_library_names=''
++
++# Version information for lib${_target_output_name}.la.
++current=${_target_current}
++age=${_target_age}
++revision=${_target_revision}
++
++# Is this an already installed library?
++installed=${_target_installed}
++
++# Should we warn about portability when linking against -modules?
++shouldnotlink=${_target_shouldnotlink}
++
++# Files to dlopen/dlpreopen
++dlopen='${_target_dlopen}'
++dlpreopen='${_target_dlpreopen}'
++
++# Directory that this library needs to be installed in:
++libdir='${CMAKE_INSTALL_PREFIX}${_install_DIR}'
++")
++
++  file(GENERATE OUTPUT ${_laname} CONTENT "${_la_content}")
++
++  install(FILES ${_laname} DESTINATION ${CMAKE_INSTALL_PREFIX}${_install_DIR})
++endmacro()
diff --git a/databases/galera/Makefile b/databases/galera/Makefile
index 71080375a75..21d1d0b3613 100644
--- a/databases/galera/Makefile
+++ b/databases/galera/Makefile
@@ -33,7 +33,8 @@ WANTLIB += ${COMPILER_LIBCXX} boost_program_options-mt c crypto m ssl
 
 CONFIGURE_ARGS+=-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
 		-DGALERA_VERSION=${GH_TAGNAME} \
-		-DGALERA_SYSTEM_LIBS=pthread
+		-DGALERA_SYSTEM_LIBS=pthread \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 CFLAGS+=	-I${LOCALBASE}/include
 CXXFLAGS+=	-I${LOCALBASE}/include
diff --git a/databases/kexi/Makefile b/databases/kexi/Makefile
index 114a775bc91..0d4c909bbaf 100644
--- a/databases/kexi/Makefile
+++ b/databases/kexi/Makefile
@@ -74,7 +74,7 @@ LIB_DEPENDS =		databases/kdb>=3.2.0 \
 			devel/kreport>=3.2.0 \
 			databases/mariadb
 
-CONFIGURE_ARGS =	-DBUILD_TESTING=On \
+CONFIGURE_ARGS =	-DBUILD_TESTING=OFF \
 			-DBUILD_EXAMPLES=On \
 			-DKEXI_QTGUI_RUNTIME_AVAILABLE=On \
 			-DKEXI_ENABLE_QTGUI_FOR_TESTS=Off
@@ -86,4 +86,10 @@ CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 TEST_IS_INTERACTIVE =	X11
 
+#pre-configure:
+#	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+#	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+#	{} \;
+
+
 .include <bsd.port.mk>
diff --git a/databases/kexi/patches/patch-cmake_modules_SetKexiCMakePolicies_cmake b/databases/kexi/patches/patch-cmake_modules_SetKexiCMakePolicies_cmake
new file mode 100644
index 00000000000..f5339f4a50e
--- /dev/null
+++ b/databases/kexi/patches/patch-cmake_modules_SetKexiCMakePolicies_cmake
@@ -0,0 +1,12 @@
+Index: cmake/modules/SetKexiCMakePolicies.cmake
+--- cmake/modules/SetKexiCMakePolicies.cmake.orig
++++ cmake/modules/SetKexiCMakePolicies.cmake
+@@ -9,7 +9,7 @@ cmake_policy(SET CMP0053 NEW) # TODO remove, temporary
+                               # "Simplify variable reference and escape sequence evaluation"
+ 
+ if(POLICY CMP0059) # Don’t treat DEFINITIONS as a built-in directory property.
+-    cmake_policy(SET CMP0059 OLD)
++    cmake_policy(SET CMP0059 NEW)
+ endif()
+ if(POLICY CMP0063) # Honor visibility properties for all target types (since cmake 3.3)
+     cmake_policy(SET CMP0063 NEW)
diff --git a/databases/mariadb/Makefile b/databases/mariadb/Makefile
index 1b473642077..cc7905fc530 100644
--- a/databases/mariadb/Makefile
+++ b/databases/mariadb/Makefile
@@ -112,6 +112,8 @@ CONFIGURE_ARGS+=-DHAVE_PAM_APPL_H=0
 # buildable on X86.
 CONFIGURE_ARGS+=-DPLUGIN_COLUMNSTORE=NO
 
+CONFIGURE_ARGS+= -DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.arch.mk>
 
 .if !${PROPERTIES:Mlp64} || ${PROPERTIES:Mbe}
diff --git a/databases/mydumper/Makefile b/databases/mydumper/Makefile
index 4e151b346ec..122970c1d2d 100644
--- a/databases/mydumper/Makefile
+++ b/databases/mydumper/Makefile
@@ -23,4 +23,7 @@ LIB_DEPENDS =	databases/mariadb \
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/databases/sqlitebrowser/Makefile b/databases/sqlitebrowser/Makefile
index 157e6e62e29..08a11ed1f90 100644
--- a/databases/sqlitebrowser/Makefile
+++ b/databases/sqlitebrowser/Makefile
@@ -30,4 +30,6 @@ SEPARATE_BUILD = Yes
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/armips/Makefile b/devel/armips/Makefile
index 2e9ff4085e8..08785558477 100644
--- a/devel/armips/Makefile
+++ b/devel/armips/Makefile
@@ -18,6 +18,8 @@ COMPILER =	base-clang ports-gcc
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 do-install:
diff --git a/devel/bullet/Makefile b/devel/bullet/Makefile
index adf680db693..8d3dee55dfb 100644
--- a/devel/bullet/Makefile
+++ b/devel/bullet/Makefile
@@ -53,6 +53,8 @@ CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS=ON \
 			-DINSTALL_LIBS=ON \
 			-DUSE_DOUBLE_PRECISION=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CFLAGS +=		-I${X11BASE}/include
 CXXFLAGS +=		-I${X11BASE}/include
 MODCMAKE_LDFLAGS =		-L${X11BASE}/lib
diff --git a/devel/cjson/Makefile b/devel/cjson/Makefile
index 4ede48ee412..590c3a84e4a 100644
--- a/devel/cjson/Makefile
+++ b/devel/cjson/Makefile
@@ -19,6 +19,8 @@ WANTLIB +=	m
 MODULES =	devel/cmake
 DEBUG_PACKAGES = ${BUILD_PACKAGES}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # everything except tests (needs changing or removing if building cJSON_Utils)
 ALL_TARGET =	cjson
 
diff --git a/devel/cmake/Makefile.inc b/devel/cmake/Makefile.inc
index 95e3f6f5b68..72042f80a78 100644
--- a/devel/cmake/Makefile.inc
+++ b/devel/cmake/Makefile.inc
@@ -1,4 +1,4 @@
-VER =		3.31.8
+VER =		4.1.2
 DISTNAME =	cmake-${VER}
 CATEGORIES ?=	devel
 
diff --git a/devel/cmake/core/Makefile b/devel/cmake/core/Makefile
index 8be125d967a..f67fdb36141 100644
--- a/devel/cmake/core/Makefile
+++ b/devel/cmake/core/Makefile
@@ -3,7 +3,6 @@ DPB_PROPERTIES =	parallel
 PKGNAME =	cmake-core-${VER}
 PKGNAME-main =	cmake-core-${VER}
 PKGNAME-help =	cmake-help-${VER}
-REVISION-main = 0
 
 COMMENT-main =	portable build system
 COMMENT-help =	files for CMake --help
diff --git a/devel/cmake/core/pkg/PLIST-help b/devel/cmake/core/pkg/PLIST-help
index 040d4a7d4ff..b43f618b0a5 100644
--- a/devel/cmake/core/pkg/PLIST-help
+++ b/devel/cmake/core/pkg/PLIST-help
@@ -1,17 +1,6 @@
 @conflict cmake-<3.31.2p0v1
 share/cmake/Help/
 share/cmake/Help/command/
-share/cmake/Help/command/DEPRECATED_POLICY_VERSIONS.txt
-share/cmake/Help/command/DEVICE_LINK_OPTIONS.txt
-share/cmake/Help/command/FIND_XXX.txt
-share/cmake/Help/command/FIND_XXX_ORDER.txt
-share/cmake/Help/command/FIND_XXX_REGISTRY_VIEW.txt
-share/cmake/Help/command/FIND_XXX_ROOT.txt
-share/cmake/Help/command/GENEX_NOTE.txt
-share/cmake/Help/command/LINK_OPTIONS_LINKER.txt
-share/cmake/Help/command/OPTIONS_SHELL.txt
-share/cmake/Help/command/SUPPORTED_LANGUAGES.txt
-share/cmake/Help/command/UNSET_NOTE.txt
 share/cmake/Help/command/add_compile_definitions.rst
 share/cmake/Help/command/add_compile_options.rst
 share/cmake/Help/command/add_custom_command.rst
@@ -213,7 +202,6 @@ share/cmake/Help/envvar/CXX.rst
 share/cmake/Help/envvar/CXXFLAGS.rst
 share/cmake/Help/envvar/DASHBOARD_TEST_FROM_CTEST.rst
 share/cmake/Help/envvar/DESTDIR.rst
-share/cmake/Help/envvar/ENV_VAR.txt
 share/cmake/Help/envvar/FC.rst
 share/cmake/Help/envvar/FFLAGS.rst
 share/cmake/Help/envvar/HIPCXX.rst
@@ -221,7 +209,6 @@ share/cmake/Help/envvar/HIPFLAGS.rst
 share/cmake/Help/envvar/HIPHOSTCXX.rst
 share/cmake/Help/envvar/ISPC.rst
 share/cmake/Help/envvar/ISPCFLAGS.rst
-share/cmake/Help/envvar/LANG_FLAGS.txt
 share/cmake/Help/envvar/LDFLAGS.rst
 share/cmake/Help/envvar/MACOSX_DEPLOYMENT_TARGET.rst
 share/cmake/Help/envvar/OBJC.rst
@@ -250,8 +237,6 @@ share/cmake/Help/generator/Ninja Multi-Config.rst
 share/cmake/Help/generator/Ninja.rst
 share/cmake/Help/generator/Sublime Text 2.rst
 share/cmake/Help/generator/Unix Makefiles.rst
-share/cmake/Help/generator/VS_TOOLSET_HOST_ARCH.txt
-share/cmake/Help/generator/VS_TOOLSET_HOST_ARCH_LEGACY.txt
 share/cmake/Help/generator/Visual Studio 10 2010.rst
 share/cmake/Help/generator/Visual Studio 11 2012.rst
 share/cmake/Help/generator/Visual Studio 12 2013.rst
@@ -267,16 +252,9 @@ share/cmake/Help/generator/Visual Studio 9 2008.rst
 share/cmake/Help/generator/Watcom WMake.rst
 share/cmake/Help/generator/Xcode.rst
 share/cmake/Help/include/
-share/cmake/Help/include/COMPILE_DEFINITIONS_DISCLAIMER.txt
-share/cmake/Help/include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt
-share/cmake/Help/include/INTERFACE_LINK_LIBRARIES_WARNING.txt
 share/cmake/Help/index.rst
 share/cmake/Help/manual/
 share/cmake/Help/manual/CTEST_EXAMPLE_MAKEFILE_JOB_SERVER.make
-share/cmake/Help/manual/ID_RESERVE.txt
-share/cmake/Help/manual/LINKS.txt
-share/cmake/Help/manual/OPTIONS_BUILD.txt
-share/cmake/Help/manual/OPTIONS_HELP.txt
 share/cmake/Help/manual/ccmake.1.rst
 share/cmake/Help/manual/cmake-buildsystem.7.rst
 share/cmake/Help/manual/cmake-commands.7.rst
@@ -310,13 +288,6 @@ share/cmake/Help/module/
 share/cmake/Help/module/AddFileDependencies.rst
 share/cmake/Help/module/AndroidTestUtilities.rst
 share/cmake/Help/module/BundleUtilities.rst
-share/cmake/Help/module/CMAKE_REQUIRED_DEFINITIONS.txt
-share/cmake/Help/module/CMAKE_REQUIRED_FLAGS.txt
-share/cmake/Help/module/CMAKE_REQUIRED_INCLUDES.txt
-share/cmake/Help/module/CMAKE_REQUIRED_LIBRARIES.txt
-share/cmake/Help/module/CMAKE_REQUIRED_LINK_DIRECTORIES.txt
-share/cmake/Help/module/CMAKE_REQUIRED_LINK_OPTIONS.txt
-share/cmake/Help/module/CMAKE_REQUIRED_QUIET.txt
 share/cmake/Help/module/CMakeAddFortranSubdirectory.rst
 share/cmake/Help/module/CMakeBackwardCompatibilityCXX.rst
 share/cmake/Help/module/CMakeDependentOption.rst
@@ -765,9 +736,6 @@ share/cmake/Help/policy/CMP0177.rst
 share/cmake/Help/policy/CMP0178.rst
 share/cmake/Help/policy/CMP0179.rst
 share/cmake/Help/policy/CMP0180.rst
-share/cmake/Help/policy/DEPRECATED.txt
-share/cmake/Help/policy/DISALLOWED_COMMAND.txt
-share/cmake/Help/policy/STANDARD_ADVICE.txt
 share/cmake/Help/prop_cache/
 share/cmake/Help/prop_cache/ADVANCED.rst
 share/cmake/Help/prop_cache/HELPSTRING.rst
@@ -825,7 +793,6 @@ share/cmake/Help/prop_gbl/CMAKE_CUDA_KNOWN_FEATURES.rst
 share/cmake/Help/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.rst
 share/cmake/Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst
 share/cmake/Help/prop_gbl/CMAKE_HIP_KNOWN_FEATURES.rst
-share/cmake/Help/prop_gbl/CMAKE_LANG_STD_FLAGS.txt
 share/cmake/Help/prop_gbl/CMAKE_ROLE.rst
 share/cmake/Help/prop_gbl/DEBUG_CONFIGURATIONS.rst
 share/cmake/Help/prop_gbl/DISABLED_FEATURES.rst
@@ -1016,7 +983,6 @@ share/cmake/Help/prop_tgt/COMPILE_FLAGS.rst
 share/cmake/Help/prop_tgt/COMPILE_OPTIONS.rst
 share/cmake/Help/prop_tgt/COMPILE_PDB_NAME.rst
 share/cmake/Help/prop_tgt/COMPILE_PDB_NAME_CONFIG.rst
-share/cmake/Help/prop_tgt/COMPILE_PDB_NOTE.txt
 share/cmake/Help/prop_tgt/COMPILE_PDB_OUTPUT_DIRECTORY.rst
 share/cmake/Help/prop_tgt/COMPILE_PDB_OUTPUT_DIRECTORY_CONFIG.rst
 share/cmake/Help/prop_tgt/COMPILE_WARNING_AS_ERROR.rst
@@ -1030,7 +996,6 @@ share/cmake/Help/prop_tgt/CUDA_FATBIN_COMPILATION.rst
 share/cmake/Help/prop_tgt/CUDA_OPTIX_COMPILATION.rst
 share/cmake/Help/prop_tgt/CUDA_PTX_COMPILATION.rst
 share/cmake/Help/prop_tgt/CUDA_RESOLVE_DEVICE_SYMBOLS.rst
-share/cmake/Help/prop_tgt/CUDA_RUNTIME_LIBRARY-VALUES.txt
 share/cmake/Help/prop_tgt/CUDA_RUNTIME_LIBRARY.rst
 share/cmake/Help/prop_tgt/CUDA_SEPARABLE_COMPILATION.rst
 share/cmake/Help/prop_tgt/CUDA_STANDARD.rst
@@ -1131,7 +1096,6 @@ share/cmake/Help/prop_tgt/INSTALL_RPATH.rst
 share/cmake/Help/prop_tgt/INSTALL_RPATH_USE_LINK_PATH.rst
 share/cmake/Help/prop_tgt/INTERFACE_AUTOMOC_MACRO_NAMES.rst
 share/cmake/Help/prop_tgt/INTERFACE_AUTOUIC_OPTIONS.rst
-share/cmake/Help/prop_tgt/INTERFACE_BUILD_PROPERTY.txt
 share/cmake/Help/prop_tgt/INTERFACE_COMPILE_DEFINITIONS.rst
 share/cmake/Help/prop_tgt/INTERFACE_COMPILE_FEATURES.rst
 share/cmake/Help/prop_tgt/INTERFACE_COMPILE_OPTIONS.rst
@@ -1143,7 +1107,6 @@ share/cmake/Help/prop_tgt/INTERFACE_LINK_DEPENDS.rst
 share/cmake/Help/prop_tgt/INTERFACE_LINK_DIRECTORIES.rst
 share/cmake/Help/prop_tgt/INTERFACE_LINK_LIBRARIES.rst
 share/cmake/Help/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT.rst
-share/cmake/Help/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT.txt
 share/cmake/Help/prop_tgt/INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE.rst
 share/cmake/Help/prop_tgt/INTERFACE_LINK_OPTIONS.rst
 share/cmake/Help/prop_tgt/INTERFACE_POSITION_INDEPENDENT_CODE.rst
@@ -1187,7 +1150,6 @@ share/cmake/Help/prop_tgt/LINK_INTERFACE_LIBRARIES_CONFIG.rst
 share/cmake/Help/prop_tgt/LINK_INTERFACE_MULTIPLICITY.rst
 share/cmake/Help/prop_tgt/LINK_INTERFACE_MULTIPLICITY_CONFIG.rst
 share/cmake/Help/prop_tgt/LINK_LIBRARIES.rst
-share/cmake/Help/prop_tgt/LINK_LIBRARIES_INDIRECTION.txt
 share/cmake/Help/prop_tgt/LINK_LIBRARIES_ONLY_TARGETS.rst
 share/cmake/Help/prop_tgt/LINK_LIBRARIES_STRATEGY.rst
 share/cmake/Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst
@@ -1204,12 +1166,9 @@ share/cmake/Help/prop_tgt/MACOSX_BUNDLE.rst
 share/cmake/Help/prop_tgt/MACOSX_BUNDLE_INFO_PLIST.rst
 share/cmake/Help/prop_tgt/MACOSX_FRAMEWORK_INFO_PLIST.rst
 share/cmake/Help/prop_tgt/MACOSX_RPATH.rst
-share/cmake/Help/prop_tgt/MACOS_IMPORT_FILES.txt
 share/cmake/Help/prop_tgt/MANUALLY_ADDED_DEPENDENCIES.rst
 share/cmake/Help/prop_tgt/MAP_IMPORTED_CONFIG_CONFIG.rst
-share/cmake/Help/prop_tgt/MSVC_DEBUG_INFORMATION_FORMAT-VALUES.txt
 share/cmake/Help/prop_tgt/MSVC_DEBUG_INFORMATION_FORMAT.rst
-share/cmake/Help/prop_tgt/MSVC_RUNTIME_LIBRARY-VALUES.txt
 share/cmake/Help/prop_tgt/MSVC_RUNTIME_LIBRARY.rst
 share/cmake/Help/prop_tgt/NAME.rst
 share/cmake/Help/prop_tgt/NO_SONAME.rst
@@ -1229,7 +1188,6 @@ share/cmake/Help/prop_tgt/PCH_INSTANTIATE_TEMPLATES.rst
 share/cmake/Help/prop_tgt/PCH_WARN_INVALID.rst
 share/cmake/Help/prop_tgt/PDB_NAME.rst
 share/cmake/Help/prop_tgt/PDB_NAME_CONFIG.rst
-share/cmake/Help/prop_tgt/PDB_NOTE.txt
 share/cmake/Help/prop_tgt/PDB_OUTPUT_DIRECTORY.rst
 share/cmake/Help/prop_tgt/PDB_OUTPUT_DIRECTORY_CONFIG.rst
 share/cmake/Help/prop_tgt/POSITION_INDEPENDENT_CODE.rst
@@ -1258,7 +1216,6 @@ share/cmake/Help/prop_tgt/STATIC_LIBRARY_FLAGS_CONFIG.rst
 share/cmake/Help/prop_tgt/STATIC_LIBRARY_OPTIONS.rst
 share/cmake/Help/prop_tgt/SUFFIX.rst
 share/cmake/Help/prop_tgt/SYSTEM.rst
-share/cmake/Help/prop_tgt/Swift_COMPILATION_MODE-VALUES.txt
 share/cmake/Help/prop_tgt/Swift_COMPILATION_MODE.rst
 share/cmake/Help/prop_tgt/Swift_DEPENDENCIES_FILE.rst
 share/cmake/Help/prop_tgt/Swift_LANGUAGE_VERSION.rst
@@ -1276,7 +1233,6 @@ share/cmake/Help/prop_tgt/UNITY_BUILD_MODE.rst
 share/cmake/Help/prop_tgt/UNITY_BUILD_UNIQUE_ID.rst
 share/cmake/Help/prop_tgt/VERIFY_INTERFACE_HEADER_SETS.rst
 share/cmake/Help/prop_tgt/VERSION.rst
-share/cmake/Help/prop_tgt/VERSION_SOVERSION_EXAMPLE.txt
 share/cmake/Help/prop_tgt/VISIBILITY_INLINES_HIDDEN.rst
 share/cmake/Help/prop_tgt/VS_CONFIGURATION_TYPE.rst
 share/cmake/Help/prop_tgt/VS_DEBUGGER_COMMAND.rst
@@ -1316,13 +1272,11 @@ share/cmake/Help/prop_tgt/VS_SDK_REFERENCES.rst
 share/cmake/Help/prop_tgt/VS_SOLUTION_DEPLOY.rst
 share/cmake/Help/prop_tgt/VS_SOURCE_SETTINGS_tool.rst
 share/cmake/Help/prop_tgt/VS_USER_PROPS.rst
-share/cmake/Help/prop_tgt/VS_USE_DEBUG_LIBRARIES-PURPOSE.txt
 share/cmake/Help/prop_tgt/VS_USE_DEBUG_LIBRARIES.rst
 share/cmake/Help/prop_tgt/VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION.rst
 share/cmake/Help/prop_tgt/VS_WINRT_COMPONENT.rst
 share/cmake/Help/prop_tgt/VS_WINRT_EXTENSIONS.rst
 share/cmake/Help/prop_tgt/VS_WINRT_REFERENCES.rst
-share/cmake/Help/prop_tgt/WATCOM_RUNTIME_LIBRARY-VALUES.txt
 share/cmake/Help/prop_tgt/WATCOM_RUNTIME_LIBRARY.rst
 share/cmake/Help/prop_tgt/WIN32_EXECUTABLE.rst
 share/cmake/Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst
@@ -1365,8 +1319,6 @@ share/cmake/Help/prop_tgt/XCODE_SCHEME_WORKING_DIRECTORY.rst
 share/cmake/Help/prop_tgt/XCODE_SCHEME_ZOMBIE_OBJECTS.rst
 share/cmake/Help/prop_tgt/XCODE_XCCONFIG.rst
 share/cmake/Help/prop_tgt/XCTEST.rst
-share/cmake/Help/prop_tgt/XXX_OUTPUT_DIRECTORY.txt
-share/cmake/Help/prop_tgt/XXX_OUTPUT_NAME.txt
 share/cmake/Help/release/
 share/cmake/Help/release/3.0.rst
 share/cmake/Help/release/3.1.rst
@@ -1596,7 +1548,6 @@ share/cmake/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_INCLUDE.rst
 share/cmake/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_LIBRARY.rst
 share/cmake/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_PACKAGE.rst
 share/cmake/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_PROGRAM.rst
-share/cmake/Help/variable/CMAKE_FIND_ROOT_PATH_MODE_XXX.txt
 share/cmake/Help/variable/CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH.rst
 share/cmake/Help/variable/CMAKE_FIND_USE_CMAKE_PATH.rst
 share/cmake/Help/variable/CMAKE_FIND_USE_CMAKE_SYSTEM_PATH.rst
@@ -1775,7 +1726,6 @@ share/cmake/Help/variable/CMAKE_LINK_DEPENDS_NO_SHARED.rst
 share/cmake/Help/variable/CMAKE_LINK_DEPENDS_USE_LINKER.rst
 share/cmake/Help/variable/CMAKE_LINK_DIRECTORIES_BEFORE.rst
 share/cmake/Help/variable/CMAKE_LINK_GROUP_USING_FEATURE.rst
-share/cmake/Help/variable/CMAKE_LINK_GROUP_USING_FEATURE.txt
 share/cmake/Help/variable/CMAKE_LINK_GROUP_USING_FEATURE_SUPPORTED.rst
 share/cmake/Help/variable/CMAKE_LINK_INTERFACE_LIBRARIES.rst
 share/cmake/Help/variable/CMAKE_LINK_LIBRARIES_ONLY_TARGETS.rst
@@ -1785,7 +1735,6 @@ share/cmake/Help/variable/CMAKE_LINK_LIBRARY_FILE_FLAG.rst
 share/cmake/Help/variable/CMAKE_LINK_LIBRARY_FLAG.rst
 share/cmake/Help/variable/CMAKE_LINK_LIBRARY_SUFFIX.rst
 share/cmake/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst
-share/cmake/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
 share/cmake/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst
 share/cmake/Help/variable/CMAKE_LINK_SEARCH_END_STATIC.rst
 share/cmake/Help/variable/CMAKE_LINK_SEARCH_START_STATIC.rst
@@ -1831,7 +1780,6 @@ share/cmake/Help/variable/CMAKE_OPTIMIZE_DEPENDENCIES.rst
 share/cmake/Help/variable/CMAKE_OSX_ARCHITECTURES.rst
 share/cmake/Help/variable/CMAKE_OSX_DEPLOYMENT_TARGET.rst
 share/cmake/Help/variable/CMAKE_OSX_SYSROOT.rst
-share/cmake/Help/variable/CMAKE_OSX_VARIABLE.txt
 share/cmake/Help/variable/CMAKE_PARENT_LIST_FILE.rst
 share/cmake/Help/variable/CMAKE_PATCH_VERSION.rst
 share/cmake/Help/variable/CMAKE_PCH_INSTANTIATE_TEMPLATES.rst
@@ -1915,7 +1863,6 @@ share/cmake/Help/variable/CMAKE_TASKING_TOOLSET.rst
 share/cmake/Help/variable/CMAKE_TEST_LAUNCHER.rst
 share/cmake/Help/variable/CMAKE_TLS_CAINFO.rst
 share/cmake/Help/variable/CMAKE_TLS_VERIFY.rst
-share/cmake/Help/variable/CMAKE_TLS_VERSION-VALUES.txt
 share/cmake/Help/variable/CMAKE_TLS_VERSION.rst
 share/cmake/Help/variable/CMAKE_TOOLCHAIN_FILE.rst
 share/cmake/Help/variable/CMAKE_TRY_COMPILE_CONFIGURATION.rst
@@ -1967,7 +1914,6 @@ share/cmake/Help/variable/CMAKE_VS_TARGET_FRAMEWORK_TARGETS_VERSION.rst
 share/cmake/Help/variable/CMAKE_VS_TARGET_FRAMEWORK_VERSION.rst
 share/cmake/Help/variable/CMAKE_VS_USE_DEBUG_LIBRARIES.rst
 share/cmake/Help/variable/CMAKE_VS_VERSION_BUILD_NUMBER.rst
-share/cmake/Help/variable/CMAKE_VS_VERSION_BUILD_NUMBER_COMPONENTS.txt
 share/cmake/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION.rst
 share/cmake/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst
 share/cmake/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM.rst
@@ -2047,7 +1993,6 @@ share/cmake/Help/variable/CTEST_CUSTOM_TESTS_IGNORE.rst
 share/cmake/Help/variable/CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION.rst
 share/cmake/Help/variable/CTEST_CUSTOM_WARNING_EXCEPTION.rst
 share/cmake/Help/variable/CTEST_CUSTOM_WARNING_MATCH.rst
-share/cmake/Help/variable/CTEST_CUSTOM_XXX.txt
 share/cmake/Help/variable/CTEST_CVS_CHECKOUT.rst
 share/cmake/Help/variable/CTEST_CVS_COMMAND.rst
 share/cmake/Help/variable/CTEST_CVS_UPDATE_OPTIONS.rst
@@ -2100,16 +2045,8 @@ share/cmake/Help/variable/CYGWIN.rst
 share/cmake/Help/variable/ENV.rst
 share/cmake/Help/variable/EXECUTABLE_OUTPUT_PATH.rst
 share/cmake/Help/variable/GHSMULTI.rst
-share/cmake/Help/variable/IGNORE_SEARCH_LOCATIONS.txt
-share/cmake/Help/variable/IGNORE_SEARCH_NONSYSTEM.txt
-share/cmake/Help/variable/IGNORE_SEARCH_PATH.txt
-share/cmake/Help/variable/IGNORE_SEARCH_PREFIX.txt
-share/cmake/Help/variable/IGNORE_SEARCH_SYSTEM.txt
 share/cmake/Help/variable/IOS.rst
 share/cmake/Help/variable/LIBRARY_OUTPUT_PATH.rst
-share/cmake/Help/variable/LINKER_PREDEFINED_TYPES.txt
-share/cmake/Help/variable/LINK_GROUP_PREDEFINED_FEATURES.txt
-share/cmake/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
 share/cmake/Help/variable/LINUX.rst
 share/cmake/Help/variable/MINGW.rst
 share/cmake/Help/variable/MSVC.rst
diff --git a/devel/cmake/core/pkg/PLIST-main b/devel/cmake/core/pkg/PLIST-main
index 4e6bb59f283..4e1e1c709e7 100644
--- a/devel/cmake/core/pkg/PLIST-main
+++ b/devel/cmake/core/pkg/PLIST-main
@@ -10,6 +10,163 @@ share/bash-completion/completions/cmake
 share/bash-completion/completions/cpack
 share/bash-completion/completions/ctest
 share/cmake/
+share/cmake/Help/command/cmake_instrumentation.rst
+share/cmake/Help/command/include/
+share/cmake/Help/command/include/DEPRECATED_POLICY_VERSIONS.rst
+share/cmake/Help/command/include/DEVICE_LINK_OPTIONS.rst
+share/cmake/Help/command/include/FIND_XXX.rst
+share/cmake/Help/command/include/FIND_XXX_ORDER.rst
+share/cmake/Help/command/include/FIND_XXX_REGISTRY_VIEW.rst
+share/cmake/Help/command/include/FIND_XXX_ROOT.rst
+share/cmake/Help/command/include/GENEX_NOTE.rst
+share/cmake/Help/command/include/LINK_LIBRARIES_LINKER.rst
+share/cmake/Help/command/include/LINK_OPTIONS_LINKER.rst
+share/cmake/Help/command/include/OPTIONS_SHELL.rst
+share/cmake/Help/command/include/POLICY_VERSION.rst
+share/cmake/Help/command/include/SUPPORTED_LANGUAGES.rst
+share/cmake/Help/command/include/UNSET_NOTE.rst
+share/cmake/Help/envvar/CLICOLOR.rst
+share/cmake/Help/envvar/CLICOLOR_FORCE.rst
+share/cmake/Help/envvar/CMAKE_LANG_IMPLICIT_LINK_LIBRARIES_EXCLUDE.rst
+share/cmake/Help/envvar/CMAKE_POLICY_VERSION_MINIMUM.rst
+share/cmake/Help/envvar/CTEST_USE_INSTRUMENTATION.rst
+share/cmake/Help/envvar/CTEST_USE_VERBOSE_INSTRUMENTATION.rst
+share/cmake/Help/envvar/NO_COLOR.rst
+share/cmake/Help/envvar/include/
+share/cmake/Help/envvar/include/ENV_VAR.rst
+share/cmake/Help/envvar/include/LANG_FLAGS.rst
+share/cmake/Help/generator/include/
+share/cmake/Help/generator/include/VS_TOOLSET_HOST_ARCH.rst
+share/cmake/Help/generator/include/VS_TOOLSET_HOST_ARCH_LEGACY.rst
+share/cmake/Help/include/COMPILE_DEFINITIONS_DISCLAIMER.rst
+share/cmake/Help/include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.rst
+share/cmake/Help/include/INTERFACE_LINK_LIBRARIES_WARNING.rst
+share/cmake/Help/manual/cmake-instrumentation.7.rst
+share/cmake/Help/manual/ctest/
+share/cmake/Help/manual/ctest/show-only-schema.json
+share/cmake/Help/manual/include/
+share/cmake/Help/manual/include/ID_RESERVE.rst
+share/cmake/Help/manual/include/LINKS.rst
+share/cmake/Help/manual/include/OPTIONS_BUILD.rst
+share/cmake/Help/manual/include/OPTIONS_HELP.rst
+share/cmake/Help/module/include/
+share/cmake/Help/module/include/CMAKE_REQUIRED_DEFINITIONS.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_FLAGS.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_INCLUDES.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_LIBRARIES.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_LINK_DIRECTORIES.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_LINK_OPTIONS.rst
+share/cmake/Help/module/include/CMAKE_REQUIRED_QUIET.rst
+share/cmake/Help/module/include/CMAKE_TRY_COMPILE_TARGET_TYPE.rst
+share/cmake/Help/policy/CMP0181.rst
+share/cmake/Help/policy/CMP0182.rst
+share/cmake/Help/policy/CMP0183.rst
+share/cmake/Help/policy/CMP0184.rst
+share/cmake/Help/policy/CMP0185.rst
+share/cmake/Help/policy/CMP0186.rst
+share/cmake/Help/policy/CMP0187.rst
+share/cmake/Help/policy/CMP0188.rst
+share/cmake/Help/policy/CMP0189.rst
+share/cmake/Help/policy/CMP0190.rst
+share/cmake/Help/policy/CMP0191.rst
+share/cmake/Help/policy/CMP0192.rst
+share/cmake/Help/policy/CMP0193.rst
+share/cmake/Help/policy/CMP0194.rst
+share/cmake/Help/policy/CMP0195.rst
+share/cmake/Help/policy/CMP0196.rst
+share/cmake/Help/policy/CMP0197.rst
+share/cmake/Help/policy/include/
+share/cmake/Help/policy/include/DEPRECATED.rst
+share/cmake/Help/policy/include/DISALLOWED_COMMAND.rst
+share/cmake/Help/policy/include/REMOVED_COMMAND.rst
+share/cmake/Help/policy/include/REMOVED_EPILOGUE.rst
+share/cmake/Help/policy/include/REMOVED_PROLOGUE.rst
+share/cmake/Help/policy/include/STANDARD_ADVICE.rst
+share/cmake/Help/prop_dir/VS_SOLUTION_ITEMS.rst
+share/cmake/Help/prop_gbl/include/
+share/cmake/Help/prop_gbl/include/CMAKE_LANG_STD_FLAGS.rst
+share/cmake/Help/prop_sf/VS_CUSTOM_COMMAND_DISABLE_PARALLEL_BUILD.rst
+share/cmake/Help/prop_tgt/AUTOMOC_INCLUDE_DIRECTORIES.rst
+share/cmake/Help/prop_tgt/DEBUGGER_WORKING_DIRECTORY.rst
+share/cmake/Help/prop_tgt/Fortran_BUILDING_INTRINSIC_MODULES.rst
+share/cmake/Help/prop_tgt/LANG_ICSTAT.rst
+share/cmake/Help/prop_tgt/LINK_WARNING_AS_ERROR.rst
+share/cmake/Help/prop_tgt/MSVC_RUNTIME_CHECKS.rst
+share/cmake/Help/prop_tgt/SPDX_LICENSE.rst
+share/cmake/Help/prop_tgt/UNITY_BUILD_RELOCATABLE.rst
+share/cmake/Help/prop_tgt/XCODE_SCHEME_LLDB_INIT_FILE.rst
+share/cmake/Help/prop_tgt/XCODE_SCHEME_TEST_CONFIGURATION.rst
+share/cmake/Help/prop_tgt/include/
+share/cmake/Help/prop_tgt/include/COMPILE_PDB_NOTE.rst
+share/cmake/Help/prop_tgt/include/CUDA_RUNTIME_LIBRARY-VALUES.rst
+share/cmake/Help/prop_tgt/include/INTERFACE_BUILD_PROPERTY.rst
+share/cmake/Help/prop_tgt/include/INTERFACE_LINK_LIBRARIES_DIRECT.rst
+share/cmake/Help/prop_tgt/include/LINK_LIBRARIES_INDIRECTION.rst
+share/cmake/Help/prop_tgt/include/MACOS_IMPORT_FILES.rst
+share/cmake/Help/prop_tgt/include/MSVC_DEBUG_INFORMATION_FORMAT-VALUES.rst
+share/cmake/Help/prop_tgt/include/MSVC_RUNTIME_CHECKS-VALUES.rst
+share/cmake/Help/prop_tgt/include/MSVC_RUNTIME_LIBRARY-VALUES.rst
+share/cmake/Help/prop_tgt/include/PDB_NOTE.rst
+share/cmake/Help/prop_tgt/include/STATIC_LIBRARY_OPTIONS_ARCHIVER.rst
+share/cmake/Help/prop_tgt/include/Swift_COMPILATION_MODE-VALUES.rst
+share/cmake/Help/prop_tgt/include/VERSION_SOVERSION_EXAMPLE.rst
+share/cmake/Help/prop_tgt/include/VS_USE_DEBUG_LIBRARIES-PURPOSE.rst
+share/cmake/Help/prop_tgt/include/WATCOM_RUNTIME_LIBRARY-VALUES.rst
+share/cmake/Help/prop_tgt/include/XXX_OUTPUT_DIRECTORY.rst
+share/cmake/Help/prop_tgt/include/XXX_OUTPUT_NAME.rst
+share/cmake/Help/release/4.0.rst
+share/cmake/Help/release/4.1.rst
+share/cmake/Help/variable/AIX.rst
+share/cmake/Help/variable/BUILD_TESTING.rst
+share/cmake/Help/variable/CMAKE_AUTOMOC_INCLUDE_DIRECTORIES.rst
+share/cmake/Help/variable/CMAKE_DEBUGGER_WORKING_DIRECTORY.rst
+share/cmake/Help/variable/CMAKE_EXECUTE_PROCESS_COMMAND_ERROR_IS_FATAL.rst
+share/cmake/Help/variable/CMAKE_EXPORT_SARIF.rst
+share/cmake/Help/variable/CMAKE_FIND_DEBUG_MODE_NO_IMPLICIT_CONFIGURE_LOG.rst
+share/cmake/Help/variable/CMAKE_FIND_REQUIRED.rst
+share/cmake/Help/variable/CMAKE_HOST_AIX.rst
+share/cmake/Help/variable/CMAKE_LANG_ARCHIVER_WRAPPER_FLAG.rst
+share/cmake/Help/variable/CMAKE_LANG_ARCHIVER_WRAPPER_FLAG_SEP.rst
+share/cmake/Help/variable/CMAKE_LANG_DEVICE_LINK_MODE.rst
+share/cmake/Help/variable/CMAKE_LANG_ICSTAT.rst
+share/cmake/Help/variable/CMAKE_LANG_LINK_DEF_FILE_FLAG.rst
+share/cmake/Help/variable/CMAKE_LANG_LINK_MODE.rst
+share/cmake/Help/variable/CMAKE_LINK_WARNING_AS_ERROR.rst
+share/cmake/Help/variable/CMAKE_LIST_FILE_NAME.rst
+share/cmake/Help/variable/CMAKE_MSVC_RUNTIME_CHECKS.rst
+share/cmake/Help/variable/CMAKE_OBJDUMP.rst
+share/cmake/Help/variable/CMAKE_PKG_CONFIG_DISABLE_UNINSTALLED.rst
+share/cmake/Help/variable/CMAKE_PKG_CONFIG_PC_LIB_DIRS.rst
+share/cmake/Help/variable/CMAKE_PKG_CONFIG_PC_PATH.rst
+share/cmake/Help/variable/CMAKE_PKG_CONFIG_SYSROOT_DIR.rst
+share/cmake/Help/variable/CMAKE_PKG_CONFIG_TOP_BUILD_DIR.rst
+share/cmake/Help/variable/CMAKE_POLICY_VERSION_MINIMUM.rst
+share/cmake/Help/variable/CMAKE_PROJECT_COMPAT_VERSION.rst
+share/cmake/Help/variable/CMAKE_UNITY_BUILD_RELOCATABLE.rst
+share/cmake/Help/variable/CMAKE_XCODE_SCHEME_LLDB_INIT_FILE.rst
+share/cmake/Help/variable/CMAKE_XCODE_SCHEME_TEST_CONFIGURATION.rst
+share/cmake/Help/variable/CTEST_EXTRA_SUBMIT_FILES.rst
+share/cmake/Help/variable/CTEST_NOTES_FILES.rst
+share/cmake/Help/variable/PROJECT-NAME_COMPAT_VERSION.rst
+share/cmake/Help/variable/PROJECT_COMPAT_VERSION.rst
+share/cmake/Help/variable/include/
+share/cmake/Help/variable/include/CMAKE_FIND_LIBRARY_VAR.rst
+share/cmake/Help/variable/include/CMAKE_FIND_ROOT_PATH_MODE_XXX.rst
+share/cmake/Help/variable/include/CMAKE_LINK_GROUP_USING_FEATURE.rst
+share/cmake/Help/variable/include/CMAKE_LINK_LIBRARY_USING_FEATURE.rst
+share/cmake/Help/variable/include/CMAKE_OSX_VARIABLE.rst
+share/cmake/Help/variable/include/CMAKE_TLS_VERSION-VALUES.rst
+share/cmake/Help/variable/include/CMAKE_VS_VERSION_BUILD_NUMBER_COMPONENTS.rst
+share/cmake/Help/variable/include/CTEST_CUSTOM_XXX.rst
+share/cmake/Help/variable/include/IGNORE_SEARCH_LOCATIONS.rst
+share/cmake/Help/variable/include/IGNORE_SEARCH_NONSYSTEM.rst
+share/cmake/Help/variable/include/IGNORE_SEARCH_PATH.rst
+share/cmake/Help/variable/include/IGNORE_SEARCH_PREFIX.rst
+share/cmake/Help/variable/include/IGNORE_SEARCH_SYSTEM.rst
+share/cmake/Help/variable/include/LINKER_FLAGS.rst
+share/cmake/Help/variable/include/LINKER_PREDEFINED_TYPES.rst
+share/cmake/Help/variable/include/LINK_GROUP_PREDEFINED_FEATURES.rst
+share/cmake/Help/variable/include/LINK_LIBRARY_PREDEFINED_FEATURES.rst
 share/cmake/Modules/
 share/cmake/Modules/AddFileDependencies.cmake
 share/cmake/Modules/AndroidTestUtilities/
@@ -250,6 +407,7 @@ share/cmake/Modules/Compiler/ARMClang-CXX.cmake
 share/cmake/Modules/Compiler/ARMClang-DetermineCompiler.cmake
 share/cmake/Modules/Compiler/ARMClang.cmake
 share/cmake/Modules/Compiler/Absoft-Fortran.cmake
+share/cmake/Modules/Compiler/Apple-Swift.cmake
 share/cmake/Modules/Compiler/AppleClang-ASM.cmake
 share/cmake/Modules/Compiler/AppleClang-C-FeatureTests.cmake
 share/cmake/Modules/Compiler/AppleClang-C.cmake
@@ -293,6 +451,12 @@ share/cmake/Modules/Compiler/CrayPrgEnv-C.cmake
 share/cmake/Modules/Compiler/CrayPrgEnv-CXX.cmake
 share/cmake/Modules/Compiler/CrayPrgEnv-Fortran.cmake
 share/cmake/Modules/Compiler/CrayPrgEnv.cmake
+share/cmake/Modules/Compiler/Diab-ASM.cmake
+share/cmake/Modules/Compiler/Diab-C.cmake
+share/cmake/Modules/Compiler/Diab-CXX.cmake
+share/cmake/Modules/Compiler/Diab-DetermineCompiler.cmake
+share/cmake/Modules/Compiler/Diab-FindBinUtils.cmake
+share/cmake/Modules/Compiler/Diab.cmake
 share/cmake/Modules/Compiler/Embarcadero-DetermineCompiler.cmake
 share/cmake/Modules/Compiler/Flang-FindBinUtils.cmake
 share/cmake/Modules/Compiler/Flang-Fortran.cmake
@@ -342,6 +506,7 @@ share/cmake/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake
 share/cmake/Modules/Compiler/IBMClang-C.cmake
 share/cmake/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake
 share/cmake/Modules/Compiler/IBMClang-CXX.cmake
+share/cmake/Modules/Compiler/IBMClang-FindBinUtils.cmake
 share/cmake/Modules/Compiler/IBMClang.cmake
 share/cmake/Modules/Compiler/Intel-ASM.cmake
 share/cmake/Modules/Compiler/Intel-C-FeatureTests.cmake
@@ -413,6 +578,12 @@ share/cmake/Modules/Compiler/QCC-C.cmake
 share/cmake/Modules/Compiler/QCC-CXX-FeatureTests.cmake
 share/cmake/Modules/Compiler/QCC-CXX.cmake
 share/cmake/Modules/Compiler/QCC.cmake
+share/cmake/Modules/Compiler/Renesas-ASM.cmake
+share/cmake/Modules/Compiler/Renesas-C-FeatureTests.cmake
+share/cmake/Modules/Compiler/Renesas-C.cmake
+share/cmake/Modules/Compiler/Renesas-CXX.cmake
+share/cmake/Modules/Compiler/Renesas-DetermineCompiler.cmake
+share/cmake/Modules/Compiler/Renesas.cmake
 share/cmake/Modules/Compiler/SCO-C.cmake
 share/cmake/Modules/Compiler/SCO-CXX.cmake
 share/cmake/Modules/Compiler/SCO-DetermineCompiler.cmake
@@ -757,6 +928,7 @@ share/cmake/Modules/Internal/CMakeNVCCFilterImplicitInfo.cmake
 share/cmake/Modules/Internal/CMakeNVCCParseImplicitInfo.cmake
 share/cmake/Modules/Internal/CMakeOBJCLinkerInformation.cmake
 share/cmake/Modules/Internal/CMakeOBJCXXLinkerInformation.cmake
+share/cmake/Modules/Internal/CMakeParseCompilerArchitectureId.cmake
 share/cmake/Modules/Internal/CMakeSwiftLinkerInformation.cmake
 share/cmake/Modules/Internal/CMakeTryCompilerOrLinkerFlag.cmake
 share/cmake/Modules/Internal/CPack/
@@ -839,6 +1011,14 @@ share/cmake/Modules/Linker/MOLD-Fortran.cmake
 share/cmake/Modules/Linker/MOLD-HIP.cmake
 share/cmake/Modules/Linker/MOLD-OBJC.cmake
 share/cmake/Modules/Linker/MOLD-OBJCXX.cmake
+share/cmake/Modules/Linker/MOLD.cmake
+share/cmake/Modules/Linker/MSVC-ASM.cmake
+share/cmake/Modules/Linker/MSVC-C.cmake
+share/cmake/Modules/Linker/MSVC-CUDA.cmake
+share/cmake/Modules/Linker/MSVC-CXX.cmake
+share/cmake/Modules/Linker/MSVC-Fortran.cmake
+share/cmake/Modules/Linker/MSVC-HIP.cmake
+share/cmake/Modules/Linker/MSVC.cmake
 share/cmake/Modules/Linker/Solaris-ASM.cmake
 share/cmake/Modules/Linker/Solaris-C.cmake
 share/cmake/Modules/Linker/Solaris-CXX.cmake
@@ -915,6 +1095,7 @@ share/cmake/Modules/Platform/Android/abi-mips-Clang.cmake
 share/cmake/Modules/Platform/Android/abi-mips-GNU.cmake
 share/cmake/Modules/Platform/Android/abi-mips64-Clang.cmake
 share/cmake/Modules/Platform/Android/abi-mips64-GNU.cmake
+share/cmake/Modules/Platform/Android/abi-riscv64-Clang.cmake
 share/cmake/Modules/Platform/Android/abi-x86-Clang.cmake
 share/cmake/Modules/Platform/Android/abi-x86-GNU.cmake
 share/cmake/Modules/Platform/Android/abi-x86_64-Clang.cmake
@@ -1042,6 +1223,10 @@ share/cmake/Modules/Platform/Fuchsia-Initialize.cmake
 share/cmake/Modules/Platform/Fuchsia.cmake
 share/cmake/Modules/Platform/GHS-MULTI-Determine.cmake
 share/cmake/Modules/Platform/GHS-MULTI.cmake
+share/cmake/Modules/Platform/GNU-GNU-C.cmake
+share/cmake/Modules/Platform/GNU-GNU-CXX.cmake
+share/cmake/Modules/Platform/GNU-GNU-Fortran.cmake
+share/cmake/Modules/Platform/GNU-GNU.cmake
 share/cmake/Modules/Platform/GNU-Initialize.cmake
 share/cmake/Modules/Platform/GNU.cmake
 share/cmake/Modules/Platform/GNUtoMS_lib.bat.in
@@ -1562,8 +1747,6 @@ share/cmake/Modules/Platform/gas.cmake
 share/cmake/Modules/Platform/iOS-Determine-CXX.cmake
 share/cmake/Modules/Platform/iOS-Initialize.cmake
 share/cmake/Modules/Platform/iOS.cmake
-share/cmake/Modules/Platform/kFreeBSD-Initialize.cmake
-share/cmake/Modules/Platform/kFreeBSD.cmake
 share/cmake/Modules/Platform/syllable-Initialize.cmake
 share/cmake/Modules/Platform/syllable.cmake
 share/cmake/Modules/Platform/tvOS-Determine-CXX.cmake
@@ -1588,7 +1771,7 @@ share/cmake/Modules/SystemInformation.cmake
 share/cmake/Modules/SystemInformation.in
 share/cmake/Modules/TestBigEndian.cmake
 share/cmake/Modules/TestCXXAcceptsFlag.cmake
-share/cmake/Modules/TestEndianess.c.in
+share/cmake/Modules/TestEndianness.c.in
 share/cmake/Modules/TestForANSIForScope.cmake
 share/cmake/Modules/TestForANSIStreamHeaders.cmake
 share/cmake/Modules/TestForANSIStreamHeaders.cxx
@@ -1627,6 +1810,7 @@ share/cmake/Templates/CPack.GenericDescription.txt
 share/cmake/Templates/CPack.GenericLicense.txt
 share/cmake/Templates/CPack.GenericWelcome.txt
 share/cmake/Templates/CPackConfig.cmake.in
+share/cmake/Templates/CTestScript.cmake.in
 share/cmake/Templates/MSBuild/
 share/cmake/Templates/MSBuild/CustomBuildDepFile.targets
 share/cmake/Templates/MSBuild/FlagTables/
@@ -1679,10 +1863,9 @@ share/cmake/Templates/Windows/SmallLogo44x44.png
 share/cmake/Templates/Windows/SplashScreen.png
 share/cmake/Templates/Windows/StoreLogo.png
 share/cmake/Templates/Windows/Windows_TemporaryKey.pfx
-share/cmake/include/
-share/cmake/include/cmCPluginAPI.h
 share/doc/cmake/
-share/doc/cmake/Copyright.txt
+share/doc/cmake/CONTRIBUTORS.rst
+share/doc/cmake/LICENSE.rst
 share/doc/cmake/cmcppdap/
 share/doc/cmake/cmcppdap/NOTICE
 share/doc/cmake/cmsys/
diff --git a/devel/cmake/distinfo b/devel/cmake/distinfo
index eb99a541675..a97d2e2845c 100644
--- a/devel/cmake/distinfo
+++ b/devel/cmake/distinfo
@@ -1,2 +1,2 @@
-SHA256 (cmake-3.31.8.tar.gz) = 483jyoPcLTISEFMmuPG1ZRFr6Ag5Q4QAfn7xwlOvbKo=
-SIZE (cmake-3.31.8.tar.gz) = 11713806
+SHA256 (cmake-4.1.2.tar.gz) = ZD8EGCt7oyOrMfUm94UTT7ecujGIqFIgbvBHP+4oKhU=
+SIZE (cmake-4.1.2.tar.gz) = 12048810
diff --git a/devel/cmake/man/pkg/PLIST b/devel/cmake/man/pkg/PLIST
index 33f0d4b3098..467b83a3ceb 100644
--- a/devel/cmake/man/pkg/PLIST
+++ b/devel/cmake/man/pkg/PLIST
@@ -14,6 +14,7 @@
 @man man/man7/cmake-file-api.7
 @man man/man7/cmake-generator-expressions.7
 @man man/man7/cmake-generators.7
+@man man/man7/cmake-instrumentation.7
 @man man/man7/cmake-language.7
 @man man/man7/cmake-modules.7
 @man man/man7/cmake-packages.7
diff --git a/devel/cmake/patches/patch-Modules_CMakeUnixFindMake_cmake b/devel/cmake/patches/patch-Modules_CMakeUnixFindMake_cmake
index f477adb91c1..6b55efab971 100644
--- a/devel/cmake/patches/patch-Modules_CMakeUnixFindMake_cmake
+++ b/devel/cmake/patches/patch-Modules_CMakeUnixFindMake_cmake
@@ -4,12 +4,10 @@ https://gitlab.kitware.com/cmake/cmake/-/merge_requests/6132
 Index: Modules/CMakeUnixFindMake.cmake
 --- Modules/CMakeUnixFindMake.cmake.orig
 +++ Modules/CMakeUnixFindMake.cmake
-@@ -2,7 +2,7 @@
- # file Copyright.txt or https://cmake.org/licensing for details.
+@@ -2,5 +2,5 @@
+ # file LICENSE.rst or https://cmake.org/licensing for details.
  
  
 -find_program(CMAKE_MAKE_PROGRAM NAMES gmake make smake)
 +find_program(CMAKE_MAKE_PROGRAM NAMES make gmake smake)
  mark_as_advanced(CMAKE_MAKE_PROGRAM)
- 
- # Look for a make tool provided by Xcode
diff --git a/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake b/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
index ebd793dc29c..3eb2faacbd8 100644
--- a/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
+++ b/devel/cmake/patches/patch-Modules_Compiler_GNU_cmake
@@ -1,7 +1,7 @@
 Index: Modules/Compiler/GNU.cmake
 --- Modules/Compiler/GNU.cmake.orig
 +++ Modules/Compiler/GNU.cmake
-@@ -53,11 +53,19 @@ macro(__compiler_gnu lang)
+@@ -55,11 +55,19 @@ macro(__compiler_gnu lang)
    endif()
  
    # Initial configuration flags.
diff --git a/devel/cmake/patches/patch-Modules_FindMPEG2_cmake b/devel/cmake/patches/patch-Modules_FindMPEG2_cmake
deleted file mode 100644
index d8d7a046d54..00000000000
--- a/devel/cmake/patches/patch-Modules_FindMPEG2_cmake
+++ /dev/null
@@ -1,9 +0,0 @@
-Index: Modules/FindMPEG2.cmake
---- Modules/FindMPEG2.cmake.orig
-+++ Modules/FindMPEG2.cmake
-@@ -47,4 +47,4 @@ if(MPEG2_FOUND)
-   endif()
- endif()
- 
--mark_as_advanced(MPEG2_INCLUDE_DIR MPEG2_mpeg2_LIBRARY MPEG2_vo_LIBRARY)
-+mark_as_advanced(MPEG2_INCLUDE_DIR MPEG2_mpeg2_LIBRARY)
diff --git a/devel/cmake/patches/patch-Modules_FindMPEG_cmake b/devel/cmake/patches/patch-Modules_FindMPEG_cmake
index aa0894a0f28..86b757bf31b 100644
--- a/devel/cmake/patches/patch-Modules_FindMPEG_cmake
+++ b/devel/cmake/patches/patch-Modules_FindMPEG_cmake
@@ -1,16 +1,7 @@
 Index: Modules/FindMPEG.cmake
 --- Modules/FindMPEG.cmake.orig
 +++ Modules/FindMPEG.cmake
-@@ -28,8 +28,6 @@ find_path(MPEG_INCLUDE_DIR
- 
- find_library(MPEG_mpeg2_LIBRARY mpeg2)
- 
--find_library(MPEG_vo_LIBRARY vo)
--
- include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
- FIND_PACKAGE_HANDLE_STANDARD_ARGS(MPEG DEFAULT_MSG MPEG_mpeg2_LIBRARY MPEG_INCLUDE_DIR)
- 
-@@ -40,4 +38,4 @@ if(MPEG_FOUND)
+@@ -81,4 +81,4 @@ if(MPEG_FOUND)
    endif()
  endif()
  
diff --git a/devel/cmake/patches/patch-Modules_FindOpenMP_cmake b/devel/cmake/patches/patch-Modules_FindOpenMP_cmake
index cbb77ee6a50..1875e369f05 100644
--- a/devel/cmake/patches/patch-Modules_FindOpenMP_cmake
+++ b/devel/cmake/patches/patch-Modules_FindOpenMP_cmake
@@ -3,7 +3,7 @@ Add libs and paths. Ensure the lib is used for the C case.
 Index: Modules/FindOpenMP.cmake
 --- Modules/FindOpenMP.cmake.orig
 +++ Modules/FindOpenMP.cmake
-@@ -120,9 +120,9 @@ function(_OPENMP_FLAG_CANDIDATES LANG)
+@@ -117,9 +117,9 @@ function(_OPENMP_FLAG_CANDIDATES LANG)
    if(NOT OpenMP_${LANG}_FLAG)
      unset(OpenMP_FLAG_CANDIDATES)
  
diff --git a/devel/cmake/patches/patch-Modules_FindSDL_cmake b/devel/cmake/patches/patch-Modules_FindSDL_cmake
index 611624af094..24d00875b80 100644
--- a/devel/cmake/patches/patch-Modules_FindSDL_cmake
+++ b/devel/cmake/patches/patch-Modules_FindSDL_cmake
@@ -1,7 +1,7 @@
 Index: Modules/FindSDL.cmake
 --- Modules/FindSDL.cmake.orig
 +++ Modules/FindSDL.cmake
-@@ -127,6 +127,11 @@ else()
+@@ -189,6 +189,11 @@ else()
    set(VC_LIB_PATH_SUFFIX lib/x86)
  endif()
  
diff --git a/devel/cmake/patches/patch-Modules_FindTCL_cmake b/devel/cmake/patches/patch-Modules_FindTCL_cmake
index ca47d3e16e8..691b7692d35 100644
--- a/devel/cmake/patches/patch-Modules_FindTCL_cmake
+++ b/devel/cmake/patches/patch-Modules_FindTCL_cmake
@@ -1,7 +1,7 @@
 Index: Modules/FindTCL.cmake
 --- Modules/FindTCL.cmake.orig
 +++ Modules/FindTCL.cmake
-@@ -52,19 +52,36 @@ endblock()
+@@ -77,19 +77,36 @@ endblock()
  include(${CMAKE_CURRENT_LIST_DIR}/FindTclsh.cmake)
  include(${CMAKE_CURRENT_LIST_DIR}/FindWish.cmake)
  
@@ -42,7 +42,7 @@ Index: Modules/FindTCL.cmake
  
  get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
  get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}" PATH)
-@@ -79,15 +96,35 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI
+@@ -104,15 +121,35 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI
  string(REGEX REPLACE
    "^.*tk([0-9]\\.*[0-9]).*$" "\\1" TK_LIBRARY_VERSION "${TK_LIBRARY}")
  
@@ -86,7 +86,7 @@ Index: Modules/FindTCL.cmake
  set(TCLTK_POSSIBLE_LIB_PATH_SUFFIXES
    lib/tcl/tcl8.7
    lib/tcl/tk8.7
-@@ -170,16 +207,6 @@ if(Tk_FRAMEWORKS)
+@@ -195,16 +232,6 @@ if(Tk_FRAMEWORKS)
    endif()
  endif()
  
@@ -103,7 +103,7 @@ Index: Modules/FindTCL.cmake
  
  set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES
    include/tcl${TK_LIBRARY_VERSION}
-@@ -196,6 +223,36 @@ set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES
+@@ -221,6 +248,36 @@ set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES
    include/tcl8.2
    include/tcl8.0
    )
diff --git a/devel/cmake/patches/patch-Modules_FindTIFF_cmake b/devel/cmake/patches/patch-Modules_FindTIFF_cmake
deleted file mode 100644
index 3e814ca6344..00000000000
--- a/devel/cmake/patches/patch-Modules_FindTIFF_cmake
+++ /dev/null
@@ -1,34 +0,0 @@
-Revert: https://gitlab.kitware.com/cmake/cmake/-/merge_requests/9300
-More: https://gitlab.kitware.com/cmake/cmake/-/issues/26038
-Index: Modules/FindTIFF.cmake
---- Modules/FindTIFF.cmake.orig
-+++ Modules/FindTIFF.cmake
-@@ -101,9 +101,9 @@ if (_TIFF_component_opt)
- endif ()
- unset(_TIFF_component_opt)
- # Always find with QUIET to avoid noise when it is not found.
--find_package(Tiff CONFIG QUIET ${_TIFF_args})
-+find_package(tiff CONFIG QUIET ${_TIFF_args})
- unset(_TIFF_args)
--if (Tiff_FOUND)
-+if (tiff_FOUND)
-   if (NOT TARGET TIFF::TIFF)
-     add_library(TIFF::TIFF IMPORTED INTERFACE)
-     set_target_properties(TIFF::TIFF PROPERTIES
-@@ -202,7 +202,7 @@ if (Tiff_FOUND)
-       endif ()
-     endif ()
-   endif ()
--  set(TIFF_VERSION_STRING "${Tiff_VERSION}")
-+  set(TIFF_VERSION_STRING "${tiff_VERSION}")
-   foreach (_TIFF_component IN LISTS TIFF_FIND_COMPONENTS)
-     set(TIFF_${_TIFF_component}_FOUND "${Tiff_${_TIFF_component}_FOUND}")
-   endforeach ()
-@@ -211,7 +211,6 @@ if (Tiff_FOUND)
-   include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
-   find_package_handle_standard_args(TIFF
-                                     HANDLE_COMPONENTS
--                                    REQUIRED_VARS Tiff_DIR
-                                     VERSION_VAR TIFF_VERSION_STRING)
- 
-   cmake_policy(POP)
diff --git a/devel/cmake/patches/patch-Modules_FindTclStub_cmake b/devel/cmake/patches/patch-Modules_FindTclStub_cmake
index 960ec9671da..ec1c6d07af0 100644
--- a/devel/cmake/patches/patch-Modules_FindTclStub_cmake
+++ b/devel/cmake/patches/patch-Modules_FindTclStub_cmake
@@ -1,7 +1,7 @@
 Index: Modules/FindTclStub.cmake
 --- Modules/FindTclStub.cmake.orig
 +++ Modules/FindTclStub.cmake
-@@ -47,15 +47,26 @@ variables were moved or removed.  Changes compared to 
+@@ -56,15 +56,26 @@ Online references:
  
  include(${CMAKE_CURRENT_LIST_DIR}/FindTCL.cmake)
  
@@ -32,7 +32,7 @@ Index: Modules/FindTclStub.cmake
  
  get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
  get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}" PATH)
-@@ -70,14 +81,20 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI
+@@ -79,14 +90,20 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI
  string(REGEX REPLACE
    "^.*tk([0-9]\\.*[0-9]).*$" "\\1" TK_LIBRARY_VERSION "${TK_LIBRARY}")
  
diff --git a/devel/cmake/patches/patch-Modules_FindTclsh_cmake b/devel/cmake/patches/patch-Modules_FindTclsh_cmake
index a97f7de61db..f41bdd37c4f 100644
--- a/devel/cmake/patches/patch-Modules_FindTclsh_cmake
+++ b/devel/cmake/patches/patch-Modules_FindTclsh_cmake
@@ -1,8 +1,8 @@
 Index: Modules/FindTclsh.cmake
 --- Modules/FindTclsh.cmake.orig
 +++ Modules/FindTclsh.cmake
-@@ -17,18 +17,30 @@ library is.  This code sets the following variables:
-   TCL_TCLSH = the path to the tclsh executable
+@@ -42,18 +42,30 @@ See Also
+ * The :module:`FindTclStub` module to find the Tcl Stubs Library.
  #]=======================================================================]
  
 +set(MODTCL_VERSION $ENV{MODTCL_VERSION})
diff --git a/devel/cmake/patches/patch-Modules_FindWish_cmake b/devel/cmake/patches/patch-Modules_FindWish_cmake
index 5c414c0969f..c65015d4529 100644
--- a/devel/cmake/patches/patch-Modules_FindWish_cmake
+++ b/devel/cmake/patches/patch-Modules_FindWish_cmake
@@ -1,8 +1,8 @@
 Index: Modules/FindWish.cmake
 --- Modules/FindWish.cmake.orig
 +++ Modules/FindWish.cmake
-@@ -20,14 +20,21 @@ library is.  This code sets the following variables:
- if UNIX is defined, then it will look for the cygwin version first
+@@ -33,14 +33,21 @@ Finding ``wish``:
+   message(STATUS "Found wish at: ${TK_WISH}")
  #]=======================================================================]
  
 +set(MODTCL_VERSION $ENV{MODTCL_VERSION})
@@ -25,7 +25,7 @@ Index: Modules/FindWish.cmake
  
  get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
  get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}" PATH)
-@@ -66,16 +73,22 @@ if(WIN32)
+@@ -79,16 +86,22 @@ if(WIN32)
      )
  endif()
  
diff --git a/devel/cmake/patches/patch-Modules_FindXMLRPC_cmake b/devel/cmake/patches/patch-Modules_FindXMLRPC_cmake
index 390500ee35a..8b9db62fcd7 100644
--- a/devel/cmake/patches/patch-Modules_FindXMLRPC_cmake
+++ b/devel/cmake/patches/patch-Modules_FindXMLRPC_cmake
@@ -1,7 +1,7 @@
 Index: Modules/FindXMLRPC.cmake
 --- Modules/FindXMLRPC.cmake.orig
 +++ Modules/FindXMLRPC.cmake
-@@ -98,6 +98,8 @@ if(XMLRPC_C_FOUND)
+@@ -141,6 +141,8 @@ if(XMLRPC_C_FOUND)
        endif()
      endforeach()
  
diff --git a/devel/cmake/patches/patch-Source_CTest_cmCTestCurl_h b/devel/cmake/patches/patch-Source_CTest_cmCTestCurl_h
deleted file mode 100644
index bbb22f4a58e..00000000000
--- a/devel/cmake/patches/patch-Source_CTest_cmCTestCurl_h
+++ /dev/null
@@ -1,24 +0,0 @@
-From c8143074cf3954b1e169904eb9d843cfbe14acc3 Mon Sep 17 00:00:00 2001
-From: Brad King <brad.king@kitware.com>
-Date: Tue, 2 Sep 2025 11:41:10 -0400
-Subject: [PATCH] cmCTestCurl: Avoid using undocumented type for
- CURLOPT_PROXYTYPE values
-
-Since upstream curl commit `1a12663d06` (CURLOPT: bump `CURLPROXY_*`
-enums to `long`, drop casts, 2025-07-28), the `CURLPROXY_*` constants
-are integer literals instead of `enum curl_proxytype`.  It turns out
-that `curl_easy_setopt` has always expected a `long` anyway, and that
-`curl_proxytype` is not documented for public use.
-
-Index: Source/CTest/cmCTestCurl.h
---- Source/CTest/cmCTestCurl.h.orig
-+++ Source/CTest/cmCTestCurl.h
-@@ -52,7 +52,7 @@ class cmCTestCurl (private)
-   std::vector<std::string> HttpHeaders;
-   std::string HTTPProxyAuth;
-   std::string HTTPProxy;
--  curl_proxytype HTTPProxyType;
-+  long HTTPProxyType;
-   bool UseHttp10 = false;
-   bool Quiet = false;
-   int TimeOutSeconds = 0;
diff --git a/devel/cmake/patches/patch-Source_cmFileCommand_cxx b/devel/cmake/patches/patch-Source_cmFileCommand_cxx
index d9c95047b93..6d80ee86c5b 100644
--- a/devel/cmake/patches/patch-Source_cmFileCommand_cxx
+++ b/devel/cmake/patches/patch-Source_cmFileCommand_cxx
@@ -1,7 +1,7 @@
 Index: Source/cmFileCommand.cxx
 --- Source/cmFileCommand.cxx.orig
 +++ Source/cmFileCommand.cxx
-@@ -1931,6 +1931,13 @@ bool HandleDownloadCommand(std::vector<std::string> co
+@@ -1885,6 +1885,13 @@ bool HandleDownloadCommand(std::vector<std::string> co
    ++i;
    std::string file;
  
@@ -15,7 +15,7 @@ Index: Source/cmFileCommand.cxx
    long timeout = 0;
    long inactivity_timeout = 0;
    std::string logVar;
-@@ -2412,6 +2419,12 @@ bool HandleUploadCommand(std::vector<std::string> cons
+@@ -2371,6 +2378,12 @@ bool HandleUploadCommand(std::vector<std::string> cons
                           cmExecutionStatus& status)
  {
  #if !defined(CMAKE_BOOTSTRAP)
diff --git a/devel/cmake/patches/patch-Source_cmFindPackageCommand_cxx b/devel/cmake/patches/patch-Source_cmFindPackageCommand_cxx
index 0f0f4810a99..b0a8c1abe27 100644
--- a/devel/cmake/patches/patch-Source_cmFindPackageCommand_cxx
+++ b/devel/cmake/patches/patch-Source_cmFindPackageCommand_cxx
@@ -3,7 +3,7 @@ Disable find_package QUIET option in openbsd ports builds.
 Index: Source/cmFindPackageCommand.cxx
 --- Source/cmFindPackageCommand.cxx.orig
 +++ Source/cmFindPackageCommand.cxx
-@@ -712,7 +712,13 @@ bool cmFindPackageCommand::InitialPass(std::vector<std
+@@ -751,7 +751,13 @@ bool cmFindPackageCommand::InitialPass(std::vector<std
    std::vector<std::size_t> moduleArgs;
    for (std::size_t i = 1u; i < args.size(); ++i) {
      if (args[i] == "QUIET") {
@@ -17,4 +17,4 @@ Index: Source/cmFindPackageCommand.cxx
 +      this->Quiet = quiet;
        doing = DoingNone;
      } else if (args[i] == "BYPASS_PROVIDER") {
-       bypassProvider = true;
+       this->BypassProvider = true;
diff --git a/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx b/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
index 0282cff4f59..550bea0df1a 100644
--- a/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
+++ b/devel/cmake/patches/patch-Source_cmGeneratorTarget_cxx
@@ -1,7 +1,7 @@
 Index: Source/cmGeneratorTarget.cxx
 --- Source/cmGeneratorTarget.cxx.orig
 +++ Source/cmGeneratorTarget.cxx
-@@ -3427,6 +3427,50 @@ cmGeneratorTarget::Names cmGeneratorTarget::GetLibrary
+@@ -3432,6 +3432,50 @@ cmGeneratorTarget::Names cmGeneratorTarget::GetLibrary
    targetNames.Output =
      cmStrCat(components.prefix, targetNames.Base, components.suffix);
  
diff --git a/devel/cmake/patches/patch-Source_cmGlobalGenerator_cxx b/devel/cmake/patches/patch-Source_cmGlobalGenerator_cxx
index d20dc2a424e..ecedd8dbd80 100644
--- a/devel/cmake/patches/patch-Source_cmGlobalGenerator_cxx
+++ b/devel/cmake/patches/patch-Source_cmGlobalGenerator_cxx
@@ -1,13 +1,16 @@
 Index: Source/cmGlobalGenerator.cxx
 --- Source/cmGlobalGenerator.cxx.orig
 +++ Source/cmGlobalGenerator.cxx
-@@ -2988,6 +2988,9 @@ void cmGlobalGenerator::AddGlobalTarget_Test(
+@@ -2856,6 +2856,12 @@ void cmGlobalGenerator::AddGlobalTarget_Test(
+   }
    cmCustomCommandLine singleLine;
    singleLine.push_back(cmSystemTools::GetCTestCommand());
-   singleLine.push_back("--force-new-ctest-process");
-+  // Skip tests requiring internet access
-+  singleLine.push_back("--exclude-regex");
-+  singleLine.push_back("\"CMake.FileDownload|CTestTestUpload|RunCMake.ctest_submit\"");
++  std::string openbsd_build;
++  if ((cmSystemTools::GetEnv("MODCMAKE_PORT_BUILD", openbsd_build))) {
++    // Skip tests requiring internet access
++    singleLine.push_back("--exclude-regex");
++    singleLine.push_back("\"CMake.FileDownload|CTestTestUpload|RunCMake.ctest_submit\"");
++  }
    cmList args(mf->GetDefinition("CMAKE_CTEST_ARGUMENTS"));
    for (auto const& arg : args) {
      singleLine.push_back(arg);
diff --git a/devel/cmake/patches/patch-Source_cmInstallCommand_cxx b/devel/cmake/patches/patch-Source_cmInstallCommand_cxx
index df9c24606b0..d06650e10a1 100644
--- a/devel/cmake/patches/patch-Source_cmInstallCommand_cxx
+++ b/devel/cmake/patches/patch-Source_cmInstallCommand_cxx
@@ -1,7 +1,7 @@
 Index: Source/cmInstallCommand.cxx
 --- Source/cmInstallCommand.cxx.orig
 +++ Source/cmInstallCommand.cxx
-@@ -678,6 +678,9 @@ bool HandleTargetsMode(std::vector<std::string> const&
+@@ -677,6 +677,9 @@ bool HandleTargetsMode(std::vector<std::string> const&
    }
  
    // Select the mode for installing symlinks to versioned shared libraries.
@@ -11,7 +11,7 @@ Index: Source/cmInstallCommand.cxx
    cmInstallTargetGenerator::NamelinkModeType namelinkMode =
      cmInstallTargetGenerator::NamelinkModeNone;
    if (libraryArgs.GetNamelinkOnly()) {
-@@ -693,6 +696,12 @@ bool HandleTargetsMode(std::vector<std::string> const&
+@@ -692,6 +695,12 @@ bool HandleTargetsMode(std::vector<std::string> const&
    } else if (archiveArgs.GetNamelinkSkip()) {
      importlinkMode = cmInstallTargetGenerator::NamelinkModeSkip;
    }
diff --git a/devel/cmake/patches/patch-Source_cmQtAutoGenInitializer_cxx b/devel/cmake/patches/patch-Source_cmQtAutoGenInitializer_cxx
deleted file mode 100644
index 539a7c506cf..00000000000
--- a/devel/cmake/patches/patch-Source_cmQtAutoGenInitializer_cxx
+++ /dev/null
@@ -1,26 +0,0 @@
-CMake >= 3.27 exports the CXX std to moc. This is a workaround for
-a moc parsing bug that happens parsing headers from libc++ < 14 when
-the CXX std > 17.
-
-usr/include/c++/v1/concept:318:1: error: Parse error at "::"
-
-Moc should theoretically be able to parse this. [1] Not exactly sure
-why it's failing. Upstream bug report [2]
-
-[1] https://code.qt.io/cgit/qt/qtbase.git/tree/src/tools/moc/moc.cpp?h=6.6.0#n631
-[2] https://bugreports.qt.io/browse/QTBUG-117765
-
-Index: Source/cmQtAutoGenInitializer.cxx
---- Source/cmQtAutoGenInitializer.cxx.orig
-+++ Source/cmQtAutoGenInitializer.cxx
-@@ -1972,6 +1972,10 @@ bool cmQtAutoGenInitializer::SetupWriteAutogenInfo()
-       if (this->Moc.PredefsCmd.size() >= 3) {
-         this->Moc.PredefsCmd.insert(this->Moc.PredefsCmd.begin() + 1,
-                                     CompileOptionValue);
-+#if (defined(__FreeBSD__) && __FreeBSD_version < 1302000) || defined(__OpenBSD__)
-+        this->Moc.PredefsCmd.insert(this->Moc.PredefsCmd.begin() + 1,
-+                                    "-D_LIBCPP_HAS_NO_CONCEPTS");
-+#endif
-       }
-     }
-     info.SetArray("MOC_PREDEFS_CMD", this->Moc.PredefsCmd);
diff --git a/devel/cmake/patches/patch-Source_cmTarget_cxx b/devel/cmake/patches/patch-Source_cmTarget_cxx
index eb59806a9e6..f4174512817 100644
--- a/devel/cmake/patches/patch-Source_cmTarget_cxx
+++ b/devel/cmake/patches/patch-Source_cmTarget_cxx
@@ -1,7 +1,7 @@
 Index: Source/cmTarget.cxx
 --- Source/cmTarget.cxx.orig
 +++ Source/cmTarget.cxx
-@@ -486,7 +486,7 @@ TargetProperty const StaticTargetProperties[] = {
+@@ -421,7 +421,7 @@ TargetProperty const StaticTargetProperties[] = {
    { "INSTALL_NAME_DIR"_s, IC::CanCompileSources },
    { "INSTALL_REMOVE_ENVIRONMENT_RPATH"_s, IC::CanCompileSources },
    { "INSTALL_RPATH"_s, ""_s, IC::CanCompileSources },
diff --git a/devel/cmake/patches/patch-Source_kwsys_CMakeLists_txt b/devel/cmake/patches/patch-Source_kwsys_CMakeLists_txt
index e61b9a24ff8..ad0e5981a4c 100644
--- a/devel/cmake/patches/patch-Source_kwsys_CMakeLists_txt
+++ b/devel/cmake/patches/patch-Source_kwsys_CMakeLists_txt
@@ -4,7 +4,7 @@ on ports-gcc arches.
 Index: Source/kwsys/CMakeLists.txt
 --- Source/kwsys/CMakeLists.txt.orig
 +++ Source/kwsys/CMakeLists.txt
-@@ -507,7 +507,7 @@ if(KWSYS_USE_SystemInformation)
+@@ -491,7 +491,7 @@ if(KWSYS_USE_SystemInformation)
      set_property(SOURCE SystemInformation.cxx APPEND PROPERTY
        COMPILE_DEFINITIONS KWSYS_CXX_HAS_RLIMIT64=1)
    endif()
diff --git a/devel/cpputest/Makefile b/devel/cpputest/Makefile
index 529efee47a5..c92f5a08eb3 100644
--- a/devel/cpputest/Makefile
+++ b/devel/cpputest/Makefile
@@ -25,6 +25,8 @@ CXXFLAGS +=		-Wno-zero-as-null-pointer-constant \
 # Many tests fails with enabled leak detection
 CONFIGURE_ARGS +=	-DMEMORY_LEAK_DETECTION=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # evertyhing except tests
 ALL_TARGET =		CppUTest CppUTestExt
 
diff --git a/devel/crc32c/Makefile b/devel/crc32c/Makefile
index 8797a63b0ed..af680aa6ec4 100644
--- a/devel/crc32c/Makefile
+++ b/devel/crc32c/Makefile
@@ -26,4 +26,6 @@ CONFIGURE_ARGS +=	-DCRC32C_BUILD_TESTS=OFF \
 			-DCRC32C_BUILD_BENCHMARKS=OFF \
 			-DCRC32C_USE_GLOG=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/docopt.cpp/Makefile b/devel/docopt.cpp/Makefile
index e97a3369eda..ac6c5d1a3c3 100644
--- a/devel/docopt.cpp/Makefile
+++ b/devel/docopt.cpp/Makefile
@@ -22,4 +22,6 @@ MODULES =		devel/cmake
 
 DEBUG_PACKAGES = ${BUILD_PACKAGES}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/dyncall/Makefile b/devel/dyncall/Makefile
index 765e039bbac..561272d0b6c 100644
--- a/devel/dyncall/Makefile
+++ b/devel/dyncall/Makefile
@@ -20,4 +20,6 @@ MODULES=	devel/cmake
 
 NO_TEST=	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/gflags/Makefile b/devel/gflags/Makefile
index 1f401431887..35bd641868e 100644
--- a/devel/gflags/Makefile
+++ b/devel/gflags/Makefile
@@ -25,6 +25,8 @@ CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS=ON \
 			-DBUILD_STATIC_LIBS=ON \
 			-DBUILD_TESTING=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # evertyhing except tests
 ALL_TARGET =		${SHARED_LIBS:Mgflags*}
 
diff --git a/devel/glog/Makefile b/devel/glog/Makefile
index 40c669b8b84..f084ccb911d 100644
--- a/devel/glog/Makefile
+++ b/devel/glog/Makefile
@@ -20,6 +20,7 @@ MODULES =		devel/cmake
 LIB_DEPENDS =		devel/gflags
 
 CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS=ON
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 MODCMAKE_LDFLAGS =	-lexecinfo
 
diff --git a/devel/json-c/Makefile b/devel/json-c/Makefile
index 0a45ce80a85..2eb11704d1e 100644
--- a/devel/json-c/Makefile
+++ b/devel/json-c/Makefile
@@ -17,6 +17,7 @@ SITES =			https://s3.amazonaws.com/json-c_releases/releases/
 MODULES=		devel/cmake
 
 CONFIGURE_ARGS=		-DDISABLE_WERROR=ON
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 # evertyhing except tests
 ALL_TARGET =		json-c json-c-static
diff --git a/devel/kainjow-mustache/Makefile b/devel/kainjow-mustache/Makefile
index 70a3a90b4e2..e6c3ecd1e88 100644
--- a/devel/kainjow-mustache/Makefile
+++ b/devel/kainjow-mustache/Makefile
@@ -18,6 +18,8 @@ COMPILER =		base-clang ports-gcc
 
 MODULES =		devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/include
 	${INSTALL_DATA} ${WRKSRC}/mustache.hpp ${PREFIX}/include
diff --git a/devel/keystone/main/Makefile b/devel/keystone/main/Makefile
index 69b8439f047..86e3806a748 100644
--- a/devel/keystone/main/Makefile
+++ b/devel/keystone/main/Makefile
@@ -20,4 +20,12 @@ CONFIGURE_ARGS = -DBUILD_SHARED_LIBS=ON
 
 NO_TEST =	Yes
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_policy\(SET CMP0051 OLD\)/cmake_policy(SET CMP0051 NEW)/' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/devel/keystone/python/Makefile b/devel/keystone/python/Makefile
index 4a9d59ab578..68d5e7daf96 100644
--- a/devel/keystone/python/Makefile
+++ b/devel/keystone/python/Makefile
@@ -20,4 +20,12 @@ RUN_DEPENDS =	devel/keystone/main
 
 NO_TEST =	Yes
 
+pre-configure:
+	find ${WRKSRC}/../../ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+	find ${WRKSRC}/../../ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_policy\(SET CMP0051 OLD\)/cmake_policy(SET CMP0051 NEW)/' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/devel/kf5/threadweaver/Makefile b/devel/kf5/threadweaver/Makefile
index a878363ba55..f2763c3a425 100644
--- a/devel/kf5/threadweaver/Makefile
+++ b/devel/kf5/threadweaver/Makefile
@@ -5,4 +5,6 @@ SHARED_LIBS =	KF5ThreadWeaver		6.0
 
 WANTLIB += ${COMPILER_LIBCXX} Qt5Core m
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/libdivsufsort/Makefile b/devel/libdivsufsort/Makefile
index 14442159962..96583b1af1a 100644
--- a/devel/libdivsufsort/Makefile
+++ b/devel/libdivsufsort/Makefile
@@ -22,4 +22,6 @@ MODULES =		devel/cmake
 
 CONFIGURE_ARGS =	-DBUILD_DIVSUFSORT64=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/libftdi1/Makefile b/devel/libftdi1/Makefile
index 9db9c388d2f..0a8dffbafe3 100644
--- a/devel/libftdi1/Makefile
+++ b/devel/libftdi1/Makefile
@@ -38,4 +38,6 @@ CONFIGURE_ARGS =	-DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON \
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/libopensync/Makefile b/devel/libopensync/Makefile
index 468619722eb..4cdf175fa72 100644
--- a/devel/libopensync/Makefile
+++ b/devel/libopensync/Makefile
@@ -32,4 +32,7 @@ CONFIGURE_ARGS=	-DCMAKE_INSTALL_PREFIX="${PREFIX}"
 
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/libopensync/patches/patch-CMakeLists_txt b/devel/libopensync/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..037bbc40f85
--- /dev/null
+++ b/devel/libopensync/patches/patch-CMakeLists_txt
@@ -0,0 +1,8 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -1,3 +1,4 @@
++cmake_minimum_required(VERSION 3.5)
+ PROJECT( libopensync C )
+ 
+ SET( OPENSYNC_VERSION_MAJOR "0" )
diff --git a/devel/libyajl/patches/patch-CMakeLists_txt b/devel/libyajl/patches/patch-CMakeLists_txt
index 2e7e49a69dd..cb1f3c18d7c 100644
--- a/devel/libyajl/patches/patch-CMakeLists_txt
+++ b/devel/libyajl/patches/patch-CMakeLists_txt
@@ -1,7 +1,18 @@
 Check for compiler flags not available with gcc < 4.
+- https://github.com/lloyd/yajl/pull/256
 
---- CMakeLists.txt.orig	Tue Dec 20 01:23:22 2011
-+++ CMakeLists.txt	Sat Nov  2 11:38:51 2013
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -12,7 +12,7 @@
+ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ 
+-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
++CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0...3.10)
+ 
+ PROJECT(YetAnotherJSONParser C)
+ 
 @@ -54,9 +54,14 @@ ELSE (WIN32)
      IF(HAVE_GCC_VISIBILITY)
        SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
diff --git a/devel/libyajl/patches/patch-reformatter_CMakeLists_txt b/devel/libyajl/patches/patch-reformatter_CMakeLists_txt
index f89bf90c650..50e66e4e966 100644
--- a/devel/libyajl/patches/patch-reformatter_CMakeLists_txt
+++ b/devel/libyajl/patches/patch-reformatter_CMakeLists_txt
@@ -1,8 +1,10 @@
 Fix static linking and tests
 (from gentoo linux)
+- https://github.com/lloyd/yajl/pull/256
 
---- reformatter/CMakeLists.txt.orig	Wed Mar 19 05:58:29 2014
-+++ reformatter/CMakeLists.txt	Sun Jul 12 19:16:24 2015
+Index: reformatter/CMakeLists.txt
+--- reformatter/CMakeLists.txt.orig
++++ reformatter/CMakeLists.txt
 @@ -26,7 +26,7 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL
  
  ADD_EXECUTABLE(json_reformat ${SRCS})
@@ -12,3 +14,15 @@ Fix static linking and tests
  
  # In some environments, we must explicitly link libm (like qnx,
  # thanks @shahbag)
+@@ -34,10 +34,7 @@ IF (NOT WIN32)
+     TARGET_LINK_LIBRARIES(json_reformat m)
+ ENDIF (NOT WIN32)
+ 
+-# copy the binary into the output directory
+-GET_TARGET_PROPERTY(binPath json_reformat LOCATION)
+-
+ ADD_CUSTOM_COMMAND(TARGET json_reformat POST_BUILD
+-    COMMAND ${CMAKE_COMMAND} -E copy_if_different ${binPath} ${binDir})
++    COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:json_reformat> ${binDir})
+ 
+ INSTALL(TARGETS json_reformat RUNTIME DESTINATION bin)
diff --git a/devel/libyajl/patches/patch-verify_CMakeLists_txt b/devel/libyajl/patches/patch-verify_CMakeLists_txt
index 32e9f555ac0..09e396cb8b3 100644
--- a/devel/libyajl/patches/patch-verify_CMakeLists_txt
+++ b/devel/libyajl/patches/patch-verify_CMakeLists_txt
@@ -1,14 +1,22 @@
 Fix static linking and tests
 (from gentoo linux)
+- https://github.com/lloyd/yajl/pull/256
 
---- verify/CMakeLists.txt.orig	Tue Dec 20 01:23:22 2011
-+++ verify/CMakeLists.txt	Thu Jun 28 10:09:59 2012
-@@ -26,7 +26,7 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL
+Index: verify/CMakeLists.txt
+--- verify/CMakeLists.txt.orig
++++ verify/CMakeLists.txt
+@@ -26,12 +26,10 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL
  
  ADD_EXECUTABLE(json_verify ${SRCS})
  
 -TARGET_LINK_LIBRARIES(json_verify yajl_s)
 +TARGET_LINK_LIBRARIES(json_verify yajl)
  
- # copy in the binary
- GET_TARGET_PROPERTY(binPath json_verify LOCATION)
+-# copy in the binary
+-GET_TARGET_PROPERTY(binPath json_verify LOCATION)
+ 
+ ADD_CUSTOM_COMMAND(TARGET json_verify POST_BUILD
+-    COMMAND ${CMAKE_COMMAND} -E copy_if_different ${binPath} ${binDir})
++    COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:json_verify> ${binDir})
+ 
+ INSTALL(TARGETS json_verify RUNTIME DESTINATION bin)
diff --git a/devel/llvm-lit/Makefile b/devel/llvm-lit/Makefile
index 75dfabd169a..9345a422435 100644
--- a/devel/llvm-lit/Makefile
+++ b/devel/llvm-lit/Makefile
@@ -44,6 +44,8 @@ CONFIGURE_ARGS =	-DCMAKE_BUILD_TYPE=Release \
 			-DSPHINX_OUTPUT_MAN=ON \
 			-DSPHINX_WARNINGS_AS_ERRORS=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 WRKSRC =		${WRKDIST}/llvm
 
 ALL_TARGET =		FileCheck not prepare-check-lit docs-llvm-man
diff --git a/devel/log4cplus/Makefile b/devel/log4cplus/Makefile
index e3347dd8d77..ce4dbe8e07e 100644
--- a/devel/log4cplus/Makefile
+++ b/devel/log4cplus/Makefile
@@ -28,4 +28,6 @@ CXXFLAGS_base-clang =	-std=c++14
 
 MODULES=	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/lua-openbsd/Makefile b/devel/lua-openbsd/Makefile
index 7450d19c302..a6fad5514be 100644
--- a/devel/lua-openbsd/Makefile
+++ b/devel/lua-openbsd/Makefile
@@ -19,6 +19,7 @@ MODULES =		devel/cmake \
 			lang/lua
 
 CONFIGURE_ARGS +=	-DMODLUA_VERSION=${MODLUA_VERSION}
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
diff --git a/devel/msgpack/Makefile b/devel/msgpack/Makefile
index 12948a88f91..1fce1e9c29c 100644
--- a/devel/msgpack/Makefile
+++ b/devel/msgpack/Makefile
@@ -28,6 +28,8 @@ TEST_DEPENDS =		devel/gtest>=1.11.0pl20220208
 # everything except tests
 ALL_TARGET =		msgpack-c msgpack-c-static
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # build whatever is left (ca. 22 C++ test files)
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
diff --git a/devel/mygui/Makefile b/devel/mygui/Makefile
index 946152957a1..04953e4e2cf 100644
--- a/devel/mygui/Makefile
+++ b/devel/mygui/Makefile
@@ -37,6 +37,8 @@ CONFIGURE_ARGS += 	-DMYGUI_BUILD_DEMOS=false \
 			-DCMAKE_CXX_FLAGS="-I${X11BASE}/include" \
 			-Wno-dev
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 pre-configure:
diff --git a/devel/olm/Makefile b/devel/olm/Makefile
index 10005cf30d2..958884a0208 100644
--- a/devel/olm/Makefile
+++ b/devel/olm/Makefile
@@ -24,4 +24,6 @@ MAKE_FLAGS =	CXX="${CXX}" CXXFLAGS="${CXXFLAGS}"
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/open-ath9k-htc-firmware/k2/Makefile b/devel/open-ath9k-htc-firmware/k2/Makefile
index 8e39ff305d8..3f44010bcf8 100644
--- a/devel/open-ath9k-htc-firmware/k2/Makefile
+++ b/devel/open-ath9k-htc-firmware/k2/Makefile
@@ -4,7 +4,8 @@ COMMENT =		free firmware for Atheros AR9271
 ATH9K_FIRMWARE =	k2
 REVISION =		0
 
-CONFIGURE_ARGS +=	-DTARGET_K2=On
+CONFIGURE_ARGS +=	-DTARGET_K2=On \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 post-install:
 	cat ${WRKDIST}/LICENCE.TXT ${WRKDIST}/NOTICE.TXT > ${WRKDIST}/license
diff --git a/devel/open-ath9k-htc-firmware/magpie/Makefile b/devel/open-ath9k-htc-firmware/magpie/Makefile
index 05c1db2727c..d5445e36190 100644
--- a/devel/open-ath9k-htc-firmware/magpie/Makefile
+++ b/devel/open-ath9k-htc-firmware/magpie/Makefile
@@ -3,6 +3,7 @@ COMMENT =		free firmware for Atheros AR7010
 # if this port is updated, sysutils/firmware/athn must be bumped
 ATH9K_FIRMWARE =	magpie
 
-CONFIGURE_ARGS +=	-DTARGET_MAGPIE=On
+CONFIGURE_ARGS +=	-DTARGET_MAGPIE=On \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .include <bsd.port.mk>
diff --git a/devel/physfs/Makefile b/devel/physfs/Makefile
index 1d6fdd0b5e9..128dde33a74 100644
--- a/devel/physfs/Makefile
+++ b/devel/physfs/Makefile
@@ -21,4 +21,6 @@ MODULES=	devel/cmake
 
 WRKDIST=	${WRKDIR}/physfs-release-${V}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/protozero/Makefile b/devel/protozero/Makefile
index 4d56eea8ac5..7ba905e9717 100644
--- a/devel/protozero/Makefile
+++ b/devel/protozero/Makefile
@@ -20,6 +20,8 @@ BUILD_DEPENDS =	devel/protobuf
 # only tests are built, defer compilation to running tests
 NO_BUILD=	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
 
diff --git a/devel/py-unicorn/Makefile b/devel/py-unicorn/Makefile
index 04d91f9c01f..98ccb6f4ab8 100644
--- a/devel/py-unicorn/Makefile
+++ b/devel/py-unicorn/Makefile
@@ -29,4 +29,9 @@ USE_GMAKE =		Yes
 
 MAKE_ENV +=		V=1
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/devel/pycdc/Makefile b/devel/pycdc/Makefile
index 4f4d0ff2dd4..da72849e9a5 100644
--- a/devel/pycdc/Makefile
+++ b/devel/pycdc/Makefile
@@ -19,6 +19,8 @@ WANTLIB += ${COMPILER_LIBCXX} c m
 
 COMPILER =		base-clang ports-gcc base-gcc
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-test:
 	sed -i "s|#!/bin/bash|#!\${LOCALBASE}/bin/bash|" ${WRKSRC}/pycdc_test.sh
 
diff --git a/devel/pycdc/patches/patch-CMakeLists_txt b/devel/pycdc/patches/patch-CMakeLists_txt
index ea9714acfd5..456b7b58023 100644
--- a/devel/pycdc/patches/patch-CMakeLists_txt
+++ b/devel/pycdc/patches/patch-CMakeLists_txt
@@ -13,3 +13,12 @@ Index: CMakeLists.txt
  endif()
  
  set(PYTHON_VERSIONS
+@@ -63,7 +63,7 @@ install(TARGETS pycdc
+ # For tests
+ if(POLICY CMP0037)
+     # Don't complain about adding a target named "test"
+-    cmake_policy(SET CMP0037 OLD)
++    cmake_policy(SET CMP0037 NEW)
+ endif()
+ 
+ add_custom_target(test "${CMAKE_CURRENT_SOURCE_DIR}/pycdc_test.sh"
diff --git a/devel/robin-map/Makefile b/devel/robin-map/Makefile
index b1c1edefda9..c2ee7690cd5 100644
--- a/devel/robin-map/Makefile
+++ b/devel/robin-map/Makefile
@@ -14,6 +14,8 @@ PERMIT_PACKAGE=	Yes
 MODULES=	devel/cmake
 TEST_DEPENDS=	devel/boost
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-test:
 	cd ${WRKSRC}/tests && mkdir -p build && cd build && \
 		export CC="${CC}" CFLAGS="${CFLAGS}" CXX="${CXX}" \
diff --git a/devel/rttr/Makefile b/devel/rttr/Makefile
index 12c4fecfc1a..e10e04a3fa3 100644
--- a/devel/rttr/Makefile
+++ b/devel/rttr/Makefile
@@ -22,6 +22,7 @@ CONFIGURE_ARGS +=	-DBUILD_UNIT_TESTS=OFF
 CONFIGURE_ARGS +=	-DBUILD_EXAMPLES=OFF
 CONFIGURE_ARGS +=	-DUSE_PCH=OFF
 CONFIGURE_ARGS +=	-DBUILD_DOCUMENTATION=OFF
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
diff --git a/devel/sanitizers-cmake/Makefile b/devel/sanitizers-cmake/Makefile
index 1f2c7198058..6773b3901cb 100644
--- a/devel/sanitizers-cmake/Makefile
+++ b/devel/sanitizers-cmake/Makefile
@@ -15,6 +15,8 @@ PERMIT_PACKAGE =	Yes
 MODULES =	devel/cmake
 COMPILER =	base-clang ports-gcc
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/cmake/Modules/
 	${INSTALL_DATA} ${WRKSRC}/cmake/*.cmake \
diff --git a/devel/seergdb/Makefile b/devel/seergdb/Makefile
index be121e06c6d..264989577ad 100644
--- a/devel/seergdb/Makefile
+++ b/devel/seergdb/Makefile
@@ -27,6 +27,8 @@ LIB_DEPENDS = 		x11/qt6/qtcharts \
 
 WRKSRC=			${WRKDIST}/src
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/Seer{GdbConfigPage,GdbWidget,MainWindow}.cpp
 
diff --git a/devel/stp/patches/patch-CMakeLists_txt b/devel/stp/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..1ce9bfa3e77
--- /dev/null
+++ b/devel/stp/patches/patch-CMakeLists_txt
@@ -0,0 +1,19 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -19,13 +19,13 @@
+ # THE SOFTWARE.
+ 
+ project(STP)
+-cmake_minimum_required(VERSION 2.8.8 FATAL_ERROR)
++cmake_minimum_required(VERSION 3.5)
+ 
+ 
+ if (CMAKE_MAJOR_VERSION GREATER 2)
+     # FIXME: We need to find a proper way to get the LOCATION property of a target
+     # when using CMake >= 3.0
+-    cmake_policy(SET CMP0026 OLD) # See cmake --help-policy CMP0026
++    cmake_policy(SET CMP0026 NEW) # See cmake --help-policy CMP0026
+ endif()
+ 
+ # Search paths for custom CMake modules
diff --git a/devel/stp/patches/patch-bindings_python_stp_CMakeLists_txt b/devel/stp/patches/patch-bindings_python_stp_CMakeLists_txt
new file mode 100644
index 00000000000..cd80d29a069
--- /dev/null
+++ b/devel/stp/patches/patch-bindings_python_stp_CMakeLists_txt
@@ -0,0 +1,21 @@
+Index: bindings/python/stp/CMakeLists.txt
+--- bindings/python/stp/CMakeLists.txt.orig
++++ bindings/python/stp/CMakeLists.txt
+@@ -21,7 +21,7 @@
+ # -----------------------------------------------------------------------------
+ # Setup python module in build directory
+ # -----------------------------------------------------------------------------
+-get_target_property(LIBSTP_PATH libstp LOCATION)
++set(LIBSTP_PATH $<TARGET_FILE:libstp>)
+ configure_file(library_path.py.in library_path.py @ONLY)
+ 
+ # Copy rest of files to build directory
+@@ -58,7 +58,7 @@ endif()
+ install(FILES stp.py __init__.py DESTINATION "${PYTHON_LIB_INSTALL_DIR}/stp")
+ 
+ # Generate and install file describing install location of stp shared library
+-get_target_property(LIBSTP_LOCATAION libstp LOCATION) # This the full path in the build directory
++set(LIBSTP_LOCATAION $<TARGET_FILE:libstp>)
+ get_filename_component(LIBSTP_FILENAME "${LIBSTP_LOCATAION}" NAME)
+ set(LIBSTP_PATH ${CMAKE_INSTALL_PREFIX}/lib/${LIBSTP_FILENAME}) # FIXME: This is also set in libstp/CMakeLists.txt which could be fragile
+ 
diff --git a/devel/thrift/Makefile b/devel/thrift/Makefile
index fd2cab1eecd..6fe9f0ab25f 100644
--- a/devel/thrift/Makefile
+++ b/devel/thrift/Makefile
@@ -28,6 +28,8 @@ CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=ON \
 			-DWITH_JAVASCRIPT=OFF \
 			-DWITH_NODEJS=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 BUILD_DEPENDS =	devel/boost \
 		devel/bison
 # some headers include boost headers
diff --git a/devel/yaml-cpp/Makefile b/devel/yaml-cpp/Makefile
index f06894275ec..e8208aa4e8c 100644
--- a/devel/yaml-cpp/Makefile
+++ b/devel/yaml-cpp/Makefile
@@ -21,4 +21,6 @@ CONFIGURE_ARGS =	-DYAML_BUILD_SHARED_LIBS=ON \
 			-DYAML_CPP_BUILD_TOOLS=OFF \
 			-DYAML_CPP_BUILD_TESTS=OFF
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/z80ex/Makefile b/devel/z80ex/Makefile
index d437750b115..a6a884f5a82 100644
--- a/devel/z80ex/Makefile
+++ b/devel/z80ex/Makefile
@@ -17,4 +17,6 @@ MODULES =	devel/cmake
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/editors/calligraplan/Makefile b/editors/calligraplan/Makefile
index f6634999388..0c255c0d4f3 100644
--- a/editors/calligraplan/Makefile
+++ b/editors/calligraplan/Makefile
@@ -91,6 +91,8 @@ LIB_DEPENDS =	devel/kf6/karchive \
 		graphics/kdiagram \
 		security/qca-qt6
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # Running D-Bus daemon is required
 TEST_IS_INTERACTIVE =	X11
 
diff --git a/editors/teaqt/Makefile b/editors/teaqt/Makefile
index 2253f1b7a31..13f8556fb27 100644
--- a/editors/teaqt/Makefile
+++ b/editors/teaqt/Makefile
@@ -34,4 +34,6 @@ MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/editors/texworks/Makefile b/editors/texworks/Makefile
index a0fd21461a1..b26b4aad3a9 100644
--- a/editors/texworks/Makefile
+++ b/editors/texworks/Makefile
@@ -74,6 +74,8 @@ CONFIGURE_ARGS +=	-DWITH_PYTHON=ON \
 # The handling of the manual install dir is odd.
 CONFIGURE_ARGS +=	-DTeXworks_MAN_DIR=/man/man1
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/emulators/citra/Makefile b/emulators/citra/Makefile
index f6ea5da802e..166f8a86d69 100644
--- a/emulators/citra/Makefile
+++ b/emulators/citra/Makefile
@@ -79,6 +79,8 @@ CONFIGURE_ARGS =	-DENABLE_CUBEB=OFF \
 			-DENABLE_VULKAN=OFF \
 			-DCITRA_WARNINGS_AS_ERRORS=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
 WRKDIST =		${WRKDIR}/${DISTNAME}
diff --git a/emulators/dolphin/Makefile b/emulators/dolphin/Makefile
index 970ebeeb7b9..28d1410b233 100644
--- a/emulators/dolphin/Makefile
+++ b/emulators/dolphin/Makefile
@@ -136,6 +136,8 @@ CONFIGURE_ARGS +=	-DENABLE_ALSA=OFF \
 			-DUSE_SYSTEM_LIBMGBA=OFF \
 			-DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 FIX_CRLF_FILES =	Externals/soundtouch/SoundTouch.cpp \
 			Externals/soundtouch/SoundTouch.h \
 			Source/Core/Common/MinizipUtil.h
diff --git a/emulators/dynamips/Makefile b/emulators/dynamips/Makefile
index b06b41009d8..458294efb61 100644
--- a/emulators/dynamips/Makefile
+++ b/emulators/dynamips/Makefile
@@ -19,4 +19,6 @@ WANTLIB=	c elf>=2 pcap pthread
 MODULES=	devel/cmake
 #NO_TEST=	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/emulationstation/Makefile b/emulators/emulationstation/Makefile
index a8a659763f8..b50f4430d43 100644
--- a/emulators/emulationstation/Makefile
+++ b/emulators/emulationstation/Makefile
@@ -25,6 +25,8 @@ COMPILER =		base-clang ports-gcc
 
 CXXFLAGS +=	-std=c++11 -Wno-inconsistent-missing-override
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 BUILD_DEPENDS =		math/eigen3
 LIB_DEPENDS =		devel/boost \
 			devel/sdl2 \
diff --git a/emulators/flycast/Makefile b/emulators/flycast/Makefile
index 2ceca10eea6..528f570995c 100644
--- a/emulators/flycast/Makefile
+++ b/emulators/flycast/Makefile
@@ -79,4 +79,7 @@ do-install:
 	${INSTALL_PROGRAM} ${WRKBUILD}/flycast \
 		${PREFIX}/bin/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/gsplus/Makefile b/emulators/gsplus/Makefile
index 16c7c18f0d1..677ab9b9dfc 100644
--- a/emulators/gsplus/Makefile
+++ b/emulators/gsplus/Makefile
@@ -33,4 +33,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/doc/gsplusmanual.pdf ${PREFIX}/share/doc/gsplus
 	${INSTALL_DATA} ${WRKSRC}/doc/README.txt ${PREFIX}/share/doc/gsplus
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/mgba/Makefile b/emulators/mgba/Makefile
index 78b9d1eec0c..a271580e1dc 100644
--- a/emulators/mgba/Makefile
+++ b/emulators/mgba/Makefile
@@ -63,4 +63,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/lib/libretro
 	mv ${PREFIX}/lib/mgba_libretro.so ${PREFIX}/lib/libretro
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/amnesia-tdd/Makefile b/games/amnesia-tdd/Makefile
index 686683c500d..8f5f17ffdc7 100644
--- a/games/amnesia-tdd/Makefile
+++ b/games/amnesia-tdd/Makefile
@@ -50,4 +50,7 @@ post-install:
 # rename binary to avoid name conflict with other amnesia ports
 	@mv ${PREFIX}/bin/Amnesia{,-tdd}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/blockgame/Makefile b/games/blockgame/Makefile
index 54000801532..b46f97e93bc 100644
--- a/games/blockgame/Makefile
+++ b/games/blockgame/Makefile
@@ -30,4 +30,7 @@ CONFIGURE_ARGS =	-DBGL_MSA_CLIENT_ID="4337e89c-ef12-4ff0-8aff-39adfc5a8e77" \
 
 WRKDIST =		${WRKDIR}/Launcher
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/cataclysm-dda/Makefile b/games/cataclysm-dda/Makefile
index 6f145fc027f..98d6be18af6 100644
--- a/games/cataclysm-dda/Makefile
+++ b/games/cataclysm-dda/Makefile
@@ -97,4 +97,7 @@ post-install:
 		${PREFIX}/share/metainfo/
 
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/cdogs-sdl/Makefile b/games/cdogs-sdl/Makefile
index 4455e1486e6..5341cffc093 100644
--- a/games/cdogs-sdl/Makefile
+++ b/games/cdogs-sdl/Makefile
@@ -33,4 +33,7 @@ post-build:
 	@cp ${WRKBUILD}/src/cdogs-sdl ${WRKSRC}/src/cdogs-sdl
 	@cp ${WRKBUILD}/src/cdogs-sdl-editor ${WRKSRC}/src/cdogs-sdl-editor
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/chiaki/Makefile b/games/chiaki/Makefile
index c41000d77a0..bcbd8452dd0 100644
--- a/games/chiaki/Makefile
+++ b/games/chiaki/Makefile
@@ -41,4 +41,7 @@ post-install:
 	${INSTALL_SCRIPT} ${WRKSRC}/scripts/psn-account-id.py \
 		${PREFIX}/share/examples/chiaki/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/choria/Makefile b/games/choria/Makefile
index 038f97f4f3c..8cf5d69df24 100644
--- a/games/choria/Makefile
+++ b/games/choria/Makefile
@@ -45,4 +45,7 @@ pre-configure:
 	perl -pi -e "s,games/,,g" ${WRKSRC}/CMakeLists.txt \
 				  ${WRKSRC}/deployment/choria
 	
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/choria/patches/patch-CMakeLists_txt b/games/choria/patches/patch-CMakeLists_txt
index 8368928fe58..bb51ce3d7e6 100644
--- a/games/choria/patches/patch-CMakeLists_txt
+++ b/games/choria/patches/patch-CMakeLists_txt
@@ -1,12 +1,6 @@
 Index: CMakeLists.txt
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
-@@ -1,4 +1,4 @@
--cmake_minimum_required(VERSION 3.13)
-+Cmake_minimum_required(VERSION 3.13)
- 
- # project name
- project(choria)
 @@ -35,8 +35,7 @@ if(WIN32)
  	# disable console window
  	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-subsystem,windows")
diff --git a/games/dustrac/Makefile b/games/dustrac/Makefile
index 6b37557d7f8..b7ed253e0de 100644
--- a/games/dustrac/Makefile
+++ b/games/dustrac/Makefile
@@ -33,4 +33,7 @@ CONFIGURE_ARGS +=	-DReleaseBuild=ON \
 
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/easyrpg/Makefile b/games/easyrpg/Makefile
index a38d057eeb6..5fefd15eebc 100644
--- a/games/easyrpg/Makefile
+++ b/games/easyrpg/Makefile
@@ -40,4 +40,7 @@ NO_TEST =	Yes
 
 WRKDIST =	${WRKDIR}/Player-${GH_TAGNAME}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/emptyclip/Makefile b/games/emptyclip/Makefile
index 59da6a01807..cd6417cf5ed 100644
--- a/games/emptyclip/Makefile
+++ b/games/emptyclip/Makefile
@@ -42,4 +42,7 @@ NO_TEST =	Yes
 
 WRKDIST =	${WRKDIR}/emptyclip-${V}-${COMMIT}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/fallingtime/Makefile b/games/fallingtime/Makefile
index 0730d1f315f..c0117219bdc 100644
--- a/games/fallingtime/Makefile
+++ b/games/fallingtime/Makefile
@@ -25,4 +25,7 @@ post-install:
 		${WRKSRC}/fallingtime
 	${SUBST_CMD} -c -m 555 ${WRKSRC}/fallingtime ${PREFIX}/bin/fallingtime
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/fifechan/Makefile b/games/fifechan/Makefile
index cfc0a1725d8..dd78a05e0a9 100644
--- a/games/fifechan/Makefile
+++ b/games/fifechan/Makefile
@@ -33,4 +33,7 @@ CONFIGURE_ARGS += 	-DENABLE_ALLEGRO=ON \
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/flare/Makefile b/games/flare/Makefile
index c7bcaa8b3cf..075f418900f 100644
--- a/games/flare/Makefile
+++ b/games/flare/Makefile
@@ -57,4 +57,7 @@ post-install:
 	cd ${WRKDIR}/flare-game-v${V}/mods \
 		&& pax -rw . ${PREFIX}/share/flare/mods/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/flightgear/base/Makefile b/games/flightgear/base/Makefile
index f451f6e4af9..6d1abe26f7f 100644
--- a/games/flightgear/base/Makefile
+++ b/games/flightgear/base/Makefile
@@ -33,4 +33,7 @@ MODCMAKE_LDFLAGS =	-L${X11BASE}/lib -L${LOCALBASE}/lib
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/fna/faudio/Makefile b/games/fna/faudio/Makefile
index 77cfb6dc3b0..a5413bb8f09 100644
--- a/games/fna/faudio/Makefile
+++ b/games/fna/faudio/Makefile
@@ -19,6 +19,8 @@ LIB_DEPENDS =	devel/sdl2
 USE_GMAKE =	Yes
 CONFIGURE_ARGS += -DBUILD_TESTS=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 WRKDIST =	${WRKDIR}/FNA/lib/FAudio
 
 do-test:
diff --git a/games/fna/fna3d/Makefile b/games/fna/fna3d/Makefile
index 5a963d78821..920dbcc7699 100644
--- a/games/fna/fna3d/Makefile
+++ b/games/fna/fna3d/Makefile
@@ -24,6 +24,8 @@ NO_TEST =	Yes
 WRKDIST =	${WRKDIR}/FNA/lib/FNA3D
 SUBST_VARS +=	LIBFNA3D_VERSION
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-gen:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/games/freeblocks/Makefile b/games/freeblocks/Makefile
index 199e958df14..a86a9b9abd1 100644
--- a/games/freeblocks/Makefile
+++ b/games/freeblocks/Makefile
@@ -24,6 +24,8 @@ RUN_DEPENDS =	devel/desktop-file-utils \
 
 CONFIGURE_ARGS =	-DDATADIR="${PREFIX}/share/freeblocks"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 .include <bsd.port.mk>
diff --git a/games/freeserf/Makefile b/games/freeserf/Makefile
index 35448dc180e..7d0fc93f082 100644
--- a/games/freeserf/Makefile
+++ b/games/freeserf/Makefile
@@ -28,4 +28,7 @@ CONFIGURE_ARGS =	-DENABLE_TESTS:Bool=Off
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/freesynd/Makefile b/games/freesynd/Makefile
index 8c3676d61a5..cdb4b65c927 100644
--- a/games/freesynd/Makefile
+++ b/games/freesynd/Makefile
@@ -4,7 +4,6 @@ VERSION =	0.8
 PKGNAME =	freesynd-${VERSION}
 DISTNAME =	Freesynd-${VERSION}-Source
 CATEGORIES = 	games x11
-REVISION =	0
 
 HOMEPAGE =	https://freesynd.sourceforge.io/
 
diff --git a/games/fs2open/Makefile b/games/fs2open/Makefile
index 16fe8ddb21b..534f1f9e95f 100644
--- a/games/fs2open/Makefile
+++ b/games/fs2open/Makefile
@@ -49,11 +49,18 @@ CONFIGURE_ENV +=	C_OPT_FLAG_DEBUG="${CFLAGS}" \
 			CXX_OPT_FLAG_DEBUG="${CXXFLAGS}" \
 			CXX_OPT_FLAG_RELEASE="${CXXFLAGS}"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # currently not building; would be ${WRKBUILD}/bin/unittests
 NO_TEST =		Yes
 
 WRKDIST =		${WRKDIR}/fs2open.github.com-release_${V:S/./_/g}
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 do-gen:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/games/fs2open/patches/patch-CMakeLists_txt b/games/fs2open/patches/patch-CMakeLists_txt
index 83f6e3c8dbe..3178539de54 100644
--- a/games/fs2open/patches/patch-CMakeLists_txt
+++ b/games/fs2open/patches/patch-CMakeLists_txt
@@ -18,7 +18,7 @@ Index: CMakeLists.txt
  set_policy(CMP0051 NEW)
  set_policy(CMP0053 NEW)
  set_policy(CMP0054 NEW)
-+set_policy(CMP0026 OLD)	# to avoid get_target_property error
++set_policy(CMP0026 NEW)	# to avoid get_target_property error
  
  SET(FSO_PROJECT_DESCRIPTION "Open source project based on the original FreeSpace 2 source code.")
  
diff --git a/games/fs2open/patches/patch-lib_antlr4-cpp-runtime_CMakeLists_txt b/games/fs2open/patches/patch-lib_antlr4-cpp-runtime_CMakeLists_txt
new file mode 100644
index 00000000000..3ca807dc383
--- /dev/null
+++ b/games/fs2open/patches/patch-lib_antlr4-cpp-runtime_CMakeLists_txt
@@ -0,0 +1,20 @@
+Index: lib/antlr4-cpp-runtime/CMakeLists.txt
+--- lib/antlr4-cpp-runtime/CMakeLists.txt.orig
++++ lib/antlr4-cpp-runtime/CMakeLists.txt
+@@ -28,16 +28,8 @@ project(LIBANTLR4)
+ if(CMAKE_VERSION VERSION_EQUAL "3.0.0" OR
+    CMAKE_VERSION VERSION_GREATER "3.0.0")
+   CMAKE_POLICY(SET CMP0026 NEW)
+-  CMAKE_POLICY(SET CMP0054 OLD)
+-  CMAKE_POLICY(SET CMP0045 OLD)
+-  CMAKE_POLICY(SET CMP0042 OLD)
+ endif()
+ 
+-if(CMAKE_VERSION VERSION_EQUAL "3.3.0" OR
+-   CMAKE_VERSION VERSION_GREATER "3.3.0")
+-  CMAKE_POLICY(SET CMP0059 OLD)
+-  CMAKE_POLICY(SET CMP0054 OLD)
+-endif()
+ 
+ if(CMAKE_SYSTEM_NAME MATCHES "Linux")
+   #find_package(PkgConfig REQUIRED)
diff --git a/games/gargoyle/Makefile b/games/gargoyle/Makefile
index aca2affdf70..cea976293ad 100644
--- a/games/gargoyle/Makefile
+++ b/games/gargoyle/Makefile
@@ -35,4 +35,7 @@ post-install:
 	${INSTALL_DATA} ${WRKSRC}/garglk/garglk.ini \
 	    ${PREFIX}/share/examples/gargoyle
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/instead/Makefile b/games/instead/Makefile
index 959fba9ffe7..4c41bd84468 100644
--- a/games/instead/Makefile
+++ b/games/instead/Makefile
@@ -31,4 +31,7 @@ CONFIGURE_ARGS =	-DMANDIR=man
 NO_TEST =		Yes
 WRKDIST =		${WRKDIR}/${PKGNAME}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/irrlamb/Makefile b/games/irrlamb/Makefile
index 809d1e33cc8..30be5226a05 100644
--- a/games/irrlamb/Makefile
+++ b/games/irrlamb/Makefile
@@ -48,4 +48,7 @@ post-patch:
 				  ${WRKSRC}/deployment/irrlamb
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/julius/Makefile b/games/julius/Makefile
index 835f9d8c3fc..cad50d7bc2f 100644
--- a/games/julius/Makefile
+++ b/games/julius/Makefile
@@ -22,6 +22,8 @@ LIB_DEPENDS =	devel/sdl2-mixer \
 RUN_DEPENDS =	devel/desktop-file-utils \
 		x11/gtk+4,-guic
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # Talk to upstream about this?
 pre-configure:
 	sed -i 's,--coverage,,g' ${WRKSRC}/test/CMakeLists.txt
diff --git a/games/koboredux/Makefile b/games/koboredux/Makefile
index a9dea65dbab..c0c660aaf50 100644
--- a/games/koboredux/Makefile
+++ b/games/koboredux/Makefile
@@ -28,4 +28,7 @@ CONFIGURE_ARGS =	-DKOBO_EXTRA_LIBRARIES=
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/lostpixels/Makefile b/games/lostpixels/Makefile
index 06c6f678438..16e90fd73d2 100644
--- a/games/lostpixels/Makefile
+++ b/games/lostpixels/Makefile
@@ -30,6 +30,8 @@ MODULES +=		devel/cmake \
 MODLUA_BUILDDEP =	No
 WRKDIST =		${WRKDIR}/blinkensisters/lostpixels/game/software
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 SEPARATE_BUILD =	No
 
 NO_TEST =		Yes
@@ -48,4 +50,7 @@ post-install:
 	mv ${PREFIX}/bin/LostPixels ${PREFIX}/bin/lostpixels
 	cd ${WRKDIST}/../addons && ${MAKE_PROGRAM} install
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/lostpixels/patches/patch-CMakeLists_txt b/games/lostpixels/patches/patch-CMakeLists_txt
index c24315064f0..bde0c246263 100644
--- a/games/lostpixels/patches/patch-CMakeLists_txt
+++ b/games/lostpixels/patches/patch-CMakeLists_txt
@@ -1,5 +1,6 @@
---- CMakeLists.txt.orig	Sat Dec  6 21:51:54 2008
-+++ CMakeLists.txt	Sat Oct 10 01:19:48 2009
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
 @@ -19,7 +19,8 @@ endif(COMMAND cmake_policy)
  INCLUDE_DIRECTORIES(. BlinkenBMF/ SDL_gfx/ BlinkenLUA/LuaBindings/headers/ BlinkenLUA/LuaMain/headers/ BlinkenLib/headers/)
  # Fixes a problem on FreeBSD - SDL_stdinc.h includes iconv.h, but that is in 
@@ -18,3 +19,12 @@
  
  IF(SDLNET_FOUND)
  	TARGET_LINK_LIBRARIES(LostPixels ${SDLNET_LIBRARY})
+@@ -158,7 +160,7 @@ IF(THEORA_FOUND)
+ 	TARGET_LINK_LIBRARIES(LostPixels ${THEORA_LIBRARY})
+ ENDIF(THEORA_FOUND)
+ 
+-GET_TARGET_PROPERTY(BMFCOMPRESS_EXE bmfcompress LOCATION)
++set(BMFCOMPRESS_EXE $<TARGET_FILE:bmfcompress>)
+ 
+ # Does not work with cmake 2.4.2: /bin/sh: ./bmfcompress: No such file or directory
+ # Dont know why the correct Path is not used. Require at least 2.4.3...
diff --git a/games/lugaru/Makefile b/games/lugaru/Makefile
index bd0c10fe9b2..9fc122be06d 100644
--- a/games/lugaru/Makefile
+++ b/games/lugaru/Makefile
@@ -1,6 +1,7 @@
 COMMENT =	third-person rabbit combat action game
 
-DISTNAME =	lugaru-1.2
+V =		1.2
+DISTNAME =	lugaru-${V}
 REVISION =	2
 
 CATEGORIES =	games
@@ -15,7 +16,7 @@ PERMIT_PACKAGE =	Yes
 WANTLIB += GL GLU SDL2 c jpeg m ogg openal png pthread vorbisfile
 WANTLIB += z ${COMPILER_LIBCXX}
 
-SITES =			https://bitbucket.org/osslugaru/lugaru/downloads/
+SITES =			https://github.com/osslugaru/lugaru/releases/download/${V}/
 
 EXTRACT_SUFX =		.tar.xz
 
diff --git a/games/lugaru/patches/patch-CMakeLists_txt b/games/lugaru/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..c1d7cdff0ae
--- /dev/null
+++ b/games/lugaru/patches/patch-CMakeLists_txt
@@ -0,0 +1,12 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -1,7 +1,6 @@
+ project(lugaru)
+ 
+-cmake_minimum_required(VERSION 3.0)
+-cmake_policy(SET CMP0004 OLD)
++cmake_minimum_required(VERSION 3.5)
+ 
+ include(FindPkgConfig)
+ include(GNUInstallDirs)
diff --git a/games/mars/Makefile b/games/mars/Makefile
index 9c846c37654..66d7c75b1eb 100644
--- a/games/mars/Makefile
+++ b/games/mars/Makefile
@@ -34,4 +34,7 @@ NO_TEST =	Yes
 WRKDIST =	${WRKDIR}/mars-game
 FIX_CRLF_FILES = src/Shaders/postFX.cpp src/System/window.cpp
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/meandmyshadow/Makefile b/games/meandmyshadow/Makefile
index 00895260b5a..9c35609cdac 100644
--- a/games/meandmyshadow/Makefile
+++ b/games/meandmyshadow/Makefile
@@ -31,6 +31,8 @@ RUN_DEPENDS =	devel/desktop-file-utils \
 
 CXXFLAGS +=	-Wno-narrowing
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/applications
 	${INSTALL_DATA} ${WRKSRC}/meandmyshadow.desktop \
diff --git a/games/megaglest/data/Makefile b/games/megaglest/data/Makefile
index dd0bf15b4a3..b5affac1b1e 100644
--- a/games/megaglest/data/Makefile
+++ b/games/megaglest/data/Makefile
@@ -3,7 +3,8 @@ GH_PROJECT =		megaglest-data
 REVISION =		1
 
 RUN_DEPENDS = 		devel/desktop-file-utils
-CONFIGURE_ARGS += 	-DMEGAGLEST_MENU_INSTALL_PATH=""
+CONFIGURE_ARGS += 	-DMEGAGLEST_MENU_INSTALL_PATH="" \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_BUILD = 		Yes
 PKG_ARCH = 		*
diff --git a/games/multimc/Makefile b/games/multimc/Makefile
index 30f6c92edd9..9944f7b3c36 100644
--- a/games/multimc/Makefile
+++ b/games/multimc/Makefile
@@ -34,4 +34,7 @@ CONFIGURE_ARGS =	-DMultiMC_LAYOUT="lin-system"
 
 WRKDIST =		${WRKDIR}/MultiMC5
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/odamex/Makefile b/games/odamex/Makefile
index 981fda2534b..ffe040fed5b 100644
--- a/games/odamex/Makefile
+++ b/games/odamex/Makefile
@@ -46,6 +46,11 @@ BUILD_DEPENDS =		archivers/deutex
 
 NO_TEST =		Yes
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 EXAMPLES_DIR =	${PREFIX}/share/examples/odamex
 post-install:
 	mv ${PREFIX}/share/odamex/config-samples ${EXAMPLES_DIR}
diff --git a/games/openclonk/Makefile b/games/openclonk/Makefile
index 6da2fe325de..e23d3cae0c2 100644
--- a/games/openclonk/Makefile
+++ b/games/openclonk/Makefile
@@ -55,4 +55,7 @@ NO_TEST =	Yes
 
 WRKDIST =	${WRKDIR}/openclonk-release-${V}-src
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/openjk/Makefile b/games/openjk/Makefile
index 9c947d11e82..81aeebf9c79 100644
--- a/games/openjk/Makefile
+++ b/games/openjk/Makefile
@@ -27,6 +27,8 @@ LIB_DEPENDS =	devel/sdl2 \
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # Upstream left a .orig file in the repo
 post-extract:
 	rm -f ${WRKSRC}/lib/SDL2/include/SDL_config_macosx.h.orig
diff --git a/games/opensonic/Makefile b/games/opensonic/Makefile
index 7dfabbc8310..2565be75f7d 100644
--- a/games/opensonic/Makefile
+++ b/games/opensonic/Makefile
@@ -31,6 +31,8 @@ CONFIGURE_ENV =		OPENSNC_ALLEGRO_CFLAGS="`allegro-config --cflags`" \
 			OPENSNC_ALLEGRO_LIBS="`allegro-config --libs`" \
 			OPENSNC_ALLEGRO_VERSION="`allegro-config --version`"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/games/openxcom/Makefile b/games/openxcom/Makefile
index 0151300b8a7..d802fa9bff5 100644
--- a/games/openxcom/Makefile
+++ b/games/openxcom/Makefile
@@ -42,4 +42,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/openxcom
 	cd ${WRKDIST}/bin/data && find . | pax -rw ${PREFIX}/share/openxcom
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/pentobi/Makefile b/games/pentobi/Makefile
index 5909b8d8e54..e82997d1160 100644
--- a/games/pentobi/Makefile
+++ b/games/pentobi/Makefile
@@ -38,4 +38,7 @@ CONFIGURE_ARGS =	-DMETAINFO_ITS="${LOCALBASE}/share/gettext/its/appdata.its" \
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/pioneer/Makefile b/games/pioneer/Makefile
index 94d0d87aa38..c06abdb179d 100644
--- a/games/pioneer/Makefile
+++ b/games/pioneer/Makefile
@@ -40,4 +40,7 @@ MAKE_FLAGS =		V=1
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/recoil-rts/Makefile b/games/recoil-rts/Makefile
index 5c0353f893b..21aef397b09 100644
--- a/games/recoil-rts/Makefile
+++ b/games/recoil-rts/Makefile
@@ -108,6 +108,8 @@ CXXFLAGS +=		-ffp-exception-behavior=strict
 LDFLAGS +=		-L${LOCALBASE}/lib \
 			-L${X11BASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 SUBST_VARS +=		V
 
 pre-configure:
diff --git a/games/recoil-rts/patches/patch-CMakeLists_txt b/games/recoil-rts/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..43ee102146f
--- /dev/null
+++ b/games/recoil-rts/patches/patch-CMakeLists_txt
@@ -0,0 +1,10 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -1,6 +1,4 @@
+ cmake_minimum_required(VERSION 3.27)
+-cmake_policy(SET CMP0060 OLD) #causes link errors on Linux otherwise
+-cmake_policy(SET CMP0065 OLD) #we need binaries compiled with -rdynamic for BARb to work (cause unknown https://github.com/beyond-all-reason/spring/issues/405)
+ 
+ set(CMAKE_MODULES_SPRING "${CMAKE_CURRENT_SOURCE_DIR}/rts/build/cmake")
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_MODULES_SPRING}")
diff --git a/games/recoil-rts/patches/patch-rts_build_cmake_ConfigureVersion_cmake b/games/recoil-rts/patches/patch-rts_build_cmake_ConfigureVersion_cmake
index d6486129b04..26a791284b4 100644
--- a/games/recoil-rts/patches/patch-rts_build_cmake_ConfigureVersion_cmake
+++ b/games/recoil-rts/patches/patch-rts_build_cmake_ConfigureVersion_cmake
@@ -9,7 +9,7 @@ Index: rts/build/cmake/ConfigureVersion.cmake
  # Fetch through git or from the VERSION file
 -fetch_spring_version(${SOURCE_ROOT} SPRING_ENGINE)
 +#fetch_spring_version(${SOURCE_ROOT} SPRING_ENGINE)
-+set(SPRING_ENGINE_VERSION "${V}")
++set(SPRING_ENGINE_VERSION "2025.04.08")
  parse_spring_version(SPRING_VERSION_ENGINE "${SPRING_ENGINE_VERSION}")
  
  # We define these, so it may be used in the to-be-configured files
diff --git a/games/scummvm/Makefile b/games/scummvm/Makefile
index 01208b0ad07..30d4f9a9bd9 100644
--- a/games/scummvm/Makefile
+++ b/games/scummvm/Makefile
@@ -62,6 +62,7 @@ CONFIGURE_ARGS+=--disable-alsa \
 		--enable-release \
 		--enable-sndio \
 		--mandir="${LOCALBASE}/man"
+
 CONFIGURE_ENV+=	CPPFLAGS="-I${LOCALBASE}/include" \
 		LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib"
 
diff --git a/games/sdl-jstest/Makefile b/games/sdl-jstest/Makefile
index cb534e70faf..f7c01bd4d4a 100644
--- a/games/sdl-jstest/Makefile
+++ b/games/sdl-jstest/Makefile
@@ -16,6 +16,8 @@ WANTLIB += SDL SDL2 c curses form pthread
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS =	devel/sdl \
 		devel/sdl2
 
diff --git a/games/shockolate/Makefile b/games/shockolate/Makefile
index 0fab6971f03..c88c1197f78 100644
--- a/games/shockolate/Makefile
+++ b/games/shockolate/Makefile
@@ -27,6 +27,8 @@ CONFIGURE_ARGS =	-DENABLE_FLUIDSYNTH=ON \
 CONFIGURE_ENV =		SDL2_DIR=${LOCALBASE}
 NO_TEST =		Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-gen:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/games/solarus/roth/Makefile b/games/solarus/roth/Makefile
index 4d80bcd6c2b..1f3c390ea34 100644
--- a/games/solarus/roth/Makefile
+++ b/games/solarus/roth/Makefile
@@ -16,4 +16,6 @@ BUILD_DEPENDS =	archivers/zip
 
 RUN_DEPENDS =	games/solarus/solarus>=1.5.0
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/solarus/solarus/Makefile b/games/solarus/solarus/Makefile
index a15607195a9..58d9e59aba9 100644
--- a/games/solarus/solarus/Makefile
+++ b/games/solarus/solarus/Makefile
@@ -35,4 +35,7 @@ RUN_DEPENDS =	devel/desktop-file-utils \
 
 WRKDIST =	${WRKDIR}/solarus-${V}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/solarus/zsdx/Makefile b/games/solarus/zsdx/Makefile
index 83c9ca0cb67..1979a920b32 100644
--- a/games/solarus/zsdx/Makefile
+++ b/games/solarus/zsdx/Makefile
@@ -15,6 +15,8 @@ MODULES =	devel/cmake
 
 BUILD_DEPENDS =	archivers/zip
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 RUN_DEPENDS =	games/solarus/solarus>=1.5.0
 
 .include <bsd.port.mk>
diff --git a/games/solarus/zsxd/Makefile b/games/solarus/zsxd/Makefile
index 63982981f05..7e567e6e7c6 100644
--- a/games/solarus/zsxd/Makefile
+++ b/games/solarus/zsxd/Makefile
@@ -13,6 +13,8 @@ PERMIT_PACKAGE =	Yes
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 BUILD_DEPENDS =	archivers/zip
 
 RUN_DEPENDS =	games/solarus/solarus>=1.5.0
diff --git a/games/speeddreams/Makefile b/games/speeddreams/Makefile
index 313db0841da..ba21cd8799f 100644
--- a/games/speeddreams/Makefile
+++ b/games/speeddreams/Makefile
@@ -67,4 +67,7 @@ NO_TEST =		Yes
 pre-extract:
 	@mkdir ${WRKDIST}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/stepmania/Makefile b/games/stepmania/Makefile
index d8c49a10fcc..aa8a153cdb4 100644
--- a/games/stepmania/Makefile
+++ b/games/stepmania/Makefile
@@ -64,4 +64,7 @@ CONFIGURE_ARGS +=	-DCMAKE_DISABLE_FIND_PACKAGE_Va=On
 post-install:
 	cd ${PREFIX}/bin && ln -s ../$(DATADIR)/stepmania
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/stratagus/Makefile b/games/stratagus/Makefile
index 952f9b5cc2c..758775b79ee 100644
--- a/games/stratagus/Makefile
+++ b/games/stratagus/Makefile
@@ -42,4 +42,9 @@ pre-build:
 	cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
 	cmake --build ${WRKBUILD} ${_MAKE_VERBOSE} -j ${MAKE_JOBS} -t Lua51B
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/games/supertux/Makefile b/games/supertux/Makefile
index 718b6fe365f..fa5107f0aff 100644
--- a/games/supertux/Makefile
+++ b/games/supertux/Makefile
@@ -39,11 +39,15 @@ LIB_DEPENDS =		devel/sdl2-image \
 			devel/boost
 
 CONFIGURE_ARGS +=	-DINSTALL_SUBDIR_BIN="${LOCALBASE}/bin" \
-			-DBUILD_SHARED_LIBS=OFF
+			-DBUILD_SHARED_LIBS=OFF \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
 pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
 	${SUBST_CMD} ${WRKSRC}/src/supertux/main.cpp
 
 .include <bsd.port.mk>
diff --git a/games/supertuxkart/Makefile b/games/supertuxkart/Makefile
index d1ce9047657..c730fe6681a 100644
--- a/games/supertuxkart/Makefile
+++ b/games/supertuxkart/Makefile
@@ -45,6 +45,8 @@ CONFIGURE_ARGS +=	-DUSE_WIIUSE=OFF \
 			-DUSE_DNS_C=ON \
 			-DBUILD_RECORDER=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 WRKDIST =		${WRKDIR}/${DISTNAME}-src
 
 NO_TEST =		Yes
diff --git a/games/supertuxkart/patches/patch-CMakeLists_txt b/games/supertuxkart/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..c49f818d9be
--- /dev/null
+++ b/games/supertuxkart/patches/patch-CMakeLists_txt
@@ -0,0 +1,13 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -6,9 +6,6 @@ set(PROJECT_VERSION "1.4")
+ 
+ add_definitions( -DSUPERTUXKART_VERSION="${PROJECT_VERSION}" )
+ 
+-if(NOT (CMAKE_MAJOR_VERSION VERSION_LESS 3))
+-  cmake_policy(SET CMP0043 OLD)
+-endif()
+ 
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
+ include(CMakeDependentOption)
diff --git a/games/teeworlds/Makefile b/games/teeworlds/Makefile
index e56740f26d2..4371c372f74 100644
--- a/games/teeworlds/Makefile
+++ b/games/teeworlds/Makefile
@@ -35,6 +35,8 @@ MODPY_RUNDEP=	No
 CONFIGURE_STYLE=	cmake
 CONFIGURE_ARGS=		-DPYTHON_EXECUTABLE="${MODPY_BIN}"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=	Yes
 
 # Give it a chance on ppc
diff --git a/games/tic80/Makefile b/games/tic80/Makefile
index f932e4552f2..f74cf7ee7dc 100644
--- a/games/tic80/Makefile
+++ b/games/tic80/Makefile
@@ -47,6 +47,8 @@ RUN_DEPENDS =	devel/desktop-file-utils
 CONFIGURE_ARGS =	-DBUILD_PRO=ON \
 			-DVERSION_HASH=a838293
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CFLAGS +=	`sdl2-config --cflags` -I${MODLUA_INCL_DIR}
 MODCMAKE_LDFLAGS =	`sdl2-config --libs`
 
diff --git a/games/valyriatear/Makefile b/games/valyriatear/Makefile
index 63578356fae..6c33cecaa75 100644
--- a/games/valyriatear/Makefile
+++ b/games/valyriatear/Makefile
@@ -51,4 +51,7 @@ post-install:
 	${INSTALL_DATA} ${WRKSRC}/data/fonts/{GPL,OFL-1.1}.txt ${PREFIX}/share/doc/valyriatear
 	${INSTALL_MAN} ${WRKSRC}/doc/valyriatear.6 ${PREFIX}/man/man6
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/wargus/Makefile b/games/wargus/Makefile
index f8defc37756..78728c9b817 100644
--- a/games/wargus/Makefile
+++ b/games/wargus/Makefile
@@ -28,7 +28,8 @@ RUN_DEPENDS=		archivers/innoextract \
 			graphics/ffmpeg \
 			sysutils/cdrtools
 
-CONFIGURE_ARGS+=	-DGAMEDIR=${LOCALBASE}/bin/
+CONFIGURE_ARGS+=	-DGAMEDIR=${LOCALBASE}/bin/ \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 MODCMAKE_LDFLAGS+=	-L${LOCALBASE}/lib
 
@@ -36,6 +37,11 @@ WRKDIST=		${WRKDIR}/wargus-${V}
 
 FIX_CRLF_FILES=		StormLib/src/FileStream.cpp
 
+pre-configure:
+	find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 # XXX Depends on StormLib, use bundled version
 pre-build:
 	cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
diff --git a/geo/garmindev/Makefile b/geo/garmindev/Makefile
index 2e0172dcd51..4c046cb1b9f 100644
--- a/geo/garmindev/Makefile
+++ b/geo/garmindev/Makefile
@@ -16,6 +16,8 @@ WANTLIB +=	m pthread ${COMPILER_LIBCXX} usb
 COMPILER =		base-clang ports-gcc base-gcc
 LIB_DEPENDS +=	devel/libusb-compat
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # libgarmindev is only needed to compile the drivers, but not on runtime
 # see comment in src/IDevice.h
 post-install:
diff --git a/geo/gpstk/Makefile b/geo/gpstk/Makefile
index 498932e5b17..d706dbc5bcc 100644
--- a/geo/gpstk/Makefile
+++ b/geo/gpstk/Makefile
@@ -26,10 +26,11 @@ CFLAGS+=               -O0
 CXXFLAGS+=             -O0
 .endif
 
+CONFIGURE_ARGS=		-DBUILD_EXT=on
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 COMPILER=		base-clang ports-gcc
 
 CXXFLAGS +=		-std=c++14
 
-CONFIGURE_ARGS=		-DBUILD_EXT=on
-
 .include <bsd.port.mk>
diff --git a/geo/libosmium/Makefile b/geo/libosmium/Makefile
index bbdfab7e974..a0ec4d48af5 100644
--- a/geo/libosmium/Makefile
+++ b/geo/libosmium/Makefile
@@ -21,4 +21,7 @@ BUILD_DEPENDS =	devel/boost \
 		geo/gdal \
 		geo/geos
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/geo/osrm-backend/Makefile b/geo/osrm-backend/Makefile
index f6ef3514494..5b0f206f55c 100644
--- a/geo/osrm-backend/Makefile
+++ b/geo/osrm-backend/Makefile
@@ -48,4 +48,7 @@ post-install:
 	# include directory
 	mv ${PREFIX}/include/flatbuffers ${PREFIX}/include/osrm
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/arcan/Makefile b/graphics/arcan/Makefile
index cb81015aa6d..bda636ea22d 100644
--- a/graphics/arcan/Makefile
+++ b/graphics/arcan/Makefile
@@ -57,4 +57,7 @@ CONFIGURE_ARGS =	-DVIDEO_PLATFORM=egl-dri \
 			-DLIBVNC_INCLUDE_DIRS=${LOCALBASE}/include \
 			-DCMAKE_DISABLE_FIND_PACKAGE_MuPDF=TRUE
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/autopano-sift-c/Makefile b/graphics/autopano-sift-c/Makefile
index d7dfa58d9a9..ed1786e2fe0 100644
--- a/graphics/autopano-sift-c/Makefile
+++ b/graphics/autopano-sift-c/Makefile
@@ -32,4 +32,7 @@ FIX_CRLF_FILES =	CMakeLists.txt APSCpp/APSCpp.c
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/CMakeModules/FindPNG.cmake
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/collada-dom/Makefile b/graphics/collada-dom/Makefile
index f208a989339..1077d6b86fb 100644
--- a/graphics/collada-dom/Makefile
+++ b/graphics/collada-dom/Makefile
@@ -29,7 +29,8 @@ LIB_DEPENDS =		devel/boost \
 			devel/pcre \
 			textproc/libxml
 
-CONFIGURE_ARGS =	-DCMAKE_CXX_FLAGS="${CXXFLAGS} -std=c++14 -Wno-int-conversion"
+CONFIGURE_ARGS =	-DCMAKE_CXX_FLAGS="${CXXFLAGS} -std=c++14 -Wno-int-conversion" \
+			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 NO_TEST =		Yes
 
diff --git a/graphics/displaz/Makefile b/graphics/displaz/Makefile
index b7883779a55..19baf4481c2 100644
--- a/graphics/displaz/Makefile
+++ b/graphics/displaz/Makefile
@@ -35,4 +35,7 @@ post-install:
 	# glsl 1.4 works..
 	 sed -i -e 's/^#version 150/#version 140/' ${PREFIX}/share/displaz/shaders/*.glsl
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/drawpile/Makefile b/graphics/drawpile/Makefile
index cf42b38177d..6540a8a21fd 100644
--- a/graphics/drawpile/Makefile
+++ b/graphics/drawpile/Makefile
@@ -36,6 +36,8 @@ RUN_DEPENDS =	devel/desktop-file-utils \
 
 CXXFLAGS +=	-I${LOCALBASE}/include
 
+CONFIGURE_ARGS =	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 .include <bsd.port.mk>
diff --git a/graphics/freeglut/Makefile b/graphics/freeglut/Makefile
index 38e6f04b56c..9c77d65e39d 100644
--- a/graphics/freeglut/Makefile
+++ b/graphics/freeglut/Makefile
@@ -17,6 +17,8 @@ WANTLIB += GL X11 Xi Xrandr Xxf86vm m
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 .include <bsd.port.mk>
diff --git a/graphics/glm/Makefile b/graphics/glm/Makefile
index 5510ef17fea..1cef843ce66 100644
--- a/graphics/glm/Makefile
+++ b/graphics/glm/Makefile
@@ -18,7 +18,10 @@ COMPILER=	base-clang ports-gcc
 
 # it's kind-of a NO_BUILD port, but doing so means you can't
 # run the tests.
-CONFIGURE_ARGS +=      -DGLM_BUILD_TESTS=ON
+CONFIGURE_ARGS +=	-DGLM_BUILD_TESTS=ON
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 PKG_ARCH=	*
 
diff --git a/graphics/graphite2/Makefile b/graphics/graphite2/Makefile
index f49eb4abcf1..2e33142f330 100755
--- a/graphics/graphite2/Makefile
+++ b/graphics/graphite2/Makefile
@@ -27,6 +27,8 @@ COMPILER=	base-clang ports-gcc
 MODPY_BUILDDEP=	No
 MODPY_RUNDEP=	No
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # XXX needs py-fontTools (not ported)
 TEST_DEPENDS=	${MODPY_RUN_DEPENDS}
 
diff --git a/graphics/lensfun/Makefile b/graphics/lensfun/Makefile
index 40b37e86567..0d61fcd0830 100644
--- a/graphics/lensfun/Makefile
+++ b/graphics/lensfun/Makefile
@@ -32,6 +32,8 @@ CONFIGURE_ARGS=	-DBUILD_DOC=No \
 		-DBUILD_LENSTOOL=Yes \
 		-DBUILD_TESTS=Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DOC_DIR=	${PREFIX}/share/doc/lensfun
 
 post-install:
diff --git a/graphics/openscenegraph/Makefile b/graphics/openscenegraph/Makefile
index f83d0016d6e..eefdbaaf50e 100644
--- a/graphics/openscenegraph/Makefile
+++ b/graphics/openscenegraph/Makefile
@@ -73,6 +73,8 @@ CONFIGURE_ARGS +=	-DCMAKE_DISABLE_FIND_PACKAGE_OpenCascade:Bool=Yes \
 			-DCMAKE_DISABLE_FIND_PACKAGE_DCMTK:Bool=Yes \
 			-DCMAKE_DISABLE_FIND_PACKAGE_Inventor:Bool=Yes
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # Fix build with OpenEXR>=3 (Imath split)
 CXXFLAGS +=		-I${LOCALBASE}/include/Imath
 
diff --git a/graphics/simgear/Makefile b/graphics/simgear/Makefile
index b8a551ff8a2..8d0e0054cc3 100644
--- a/graphics/simgear/Makefile
+++ b/graphics/simgear/Makefile
@@ -39,4 +39,7 @@ CXXFLAGS +=		-I${X11BASE}/include -pthread
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/spirv-cross/Makefile b/graphics/spirv-cross/Makefile
index 14637f08d34..68786ec2a69 100644
--- a/graphics/spirv-cross/Makefile
+++ b/graphics/spirv-cross/Makefile
@@ -25,4 +25,6 @@ MODPY_RUNDEP =	No
 CONFIGURE_ARGS += -DCMAKE_DISABLE_FIND_PACKAGE_Git=TRUE \
 		-DSPIRV_CROSS_SHARED=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/zxing/Makefile b/graphics/zxing/Makefile
index 26380c25cb5..2e309fdb911 100644
--- a/graphics/zxing/Makefile
+++ b/graphics/zxing/Makefile
@@ -26,6 +26,8 @@ BUILD_DEPENDS=	devel/cppunit
 
 CONFIGURE_ARGS=	-DBUILD_TESTING=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-test:
 	${WRKBUILD}/testrunner
 
diff --git a/lang/brainfuck/Makefile b/lang/brainfuck/Makefile
index 4e35771b00c..c120228c175 100644
--- a/lang/brainfuck/Makefile
+++ b/lang/brainfuck/Makefile
@@ -16,6 +16,8 @@ MODULES =	devel/cmake
 
 NO_TEST =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/examples/brainfuck
 	${INSTALL_DATA} ${WRKSRC}/examples/* ${PREFIX}/share/examples/brainfuck/
diff --git a/lang/mono/patches/patch-external_boringssl_CMakeLists_txt b/lang/mono/patches/patch-external_boringssl_CMakeLists_txt
new file mode 100644
index 00000000000..6a573fde55c
--- /dev/null
+++ b/lang/mono/patches/patch-external_boringssl_CMakeLists_txt
@@ -0,0 +1,9 @@
+Index: external/boringssl/CMakeLists.txt
+--- external/boringssl/CMakeLists.txt.orig
++++ external/boringssl/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required (VERSION 2.8.10)
++cmake_minimum_required(VERSION 2.8.12...3.20)
+ 
+ # Defer enabling C and CXX languages.
+ project (BoringSSL NONE)
diff --git a/lang/mono/patches/patch-mono_btls_CMakeLists_txt b/lang/mono/patches/patch-mono_btls_CMakeLists_txt
index a5fd03e90f6..7f09725ac2a 100644
--- a/lang/mono/patches/patch-mono_btls_CMakeLists_txt
+++ b/lang/mono/patches/patch-mono_btls_CMakeLists_txt
@@ -1,21 +1,12 @@
 Index: mono/btls/CMakeLists.txt
 --- mono/btls/CMakeLists.txt.orig
 +++ mono/btls/CMakeLists.txt
-@@ -12,10 +12,10 @@ endif()
- enable_language(C)
- enable_language(CXX)
+@@ -1,4 +1,4 @@
+-cmake_minimum_required (VERSION 2.8.10)
++cmake_minimum_required(VERSION 2.8.12...3.20)
  
--find_program(CCACHE_PROGRAM ccache)
--if(CCACHE_PROGRAM)
--    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
--endif()
-+#find_program(CCACHE_PROGRAM ccache)
-+#if(CCACHE_PROGRAM)
-+#    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
-+#endif()
+ project (mono-btls)
  
- if (MSVC OR CYGWIN)
- 	set(BTLS_HOST_WIN32 1)
 @@ -129,4 +129,4 @@ endif ()
  
  if (CYGWIN)
diff --git a/lang/nekovm/Makefile b/lang/nekovm/Makefile
index d145825172a..d4fe5088d08 100644
--- a/lang/nekovm/Makefile
+++ b/lang/nekovm/Makefile
@@ -32,6 +32,8 @@ CONFIGURE_ARGS =	-DNEKO_JIT_DISABLE=ON \
 NO_TEST =		Yes
 WRKDIST =		${WRKDIR}/neko-${V:S/./-/g}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-gen:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
diff --git a/math/armadillo/Makefile b/math/armadillo/Makefile
index d7d244d1cd7..4e73b426bc1 100644
--- a/math/armadillo/Makefile
+++ b/math/armadillo/Makefile
@@ -29,4 +29,7 @@ MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
 NO_TEST = 	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/arpack/Makefile b/math/arpack/Makefile
index 7cfe53d116d..2525120d929 100644
--- a/math/arpack/Makefile
+++ b/math/arpack/Makefile
@@ -31,6 +31,8 @@ MODULES =	fortran \
 CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS:BOOL=ON \
 			-D ICB=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS-main = 	math/lapack
 
 WANTLIB +=	lapack blas m
diff --git a/math/double-conversion/Makefile b/math/double-conversion/Makefile
index 70661263756..b09db9d4ce1 100644
--- a/math/double-conversion/Makefile
+++ b/math/double-conversion/Makefile
@@ -19,5 +19,6 @@ MODULES =		devel/cmake
 
 CONFIGURE_ARGS +=	-DBUILD_SHARED_LIBS=ON \
 			-DBUILD_TESTING=ON
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .include <bsd.port.mk>
diff --git a/math/ensmallen/Makefile b/math/ensmallen/Makefile
index 90c7b9c8535..0e5bcd3b653 100644
--- a/math/ensmallen/Makefile
+++ b/math/ensmallen/Makefile
@@ -20,4 +20,6 @@ RUN_DEPENDS += math/armadillo
 
 CONFIGURE_STYLE = cmake
 
+CONFIGURE_ARGS =	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/fann/Makefile b/math/fann/Makefile
index 39c3e4d2e4b..406b5472986 100644
--- a/math/fann/Makefile
+++ b/math/fann/Makefile
@@ -21,6 +21,8 @@ MODULES=	devel/cmake
 USE_GMAKE=	Yes
 TEST_DEPENDS=	math/fann
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-test:
 	cd ${WRKSRC}/examples; ${MAKE_PROGRAM} runtest GCC="${CC}" \
 	    CFLAGS="${CFLAGS} -I${TRUEPREFIX}/include -L${TRUEPREFIX}/lib"
diff --git a/math/flann/Makefile b/math/flann/Makefile
index 6aff3f6e488..6d0e041f57f 100644
--- a/math/flann/Makefile
+++ b/math/flann/Makefile
@@ -33,4 +33,6 @@ CONFIGURE_ARGS =	-DBUILD_C_BINDINGS=ON \
 			-DUSE_OPENMP=OFF \
 			-DUSE_MPI=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/kst/Makefile b/math/kst/Makefile
index fdd2d42c65a..845044750a5 100644
--- a/math/kst/Makefile
+++ b/math/kst/Makefile
@@ -46,3 +46,6 @@ NO_TEST =	Yes
 CONFIGURE_ARGS +=	-Dkst_clang=ON
 .endif
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+
diff --git a/math/lean/Makefile b/math/lean/Makefile
index d3d451542c4..ca56f399e84 100644
--- a/math/lean/Makefile
+++ b/math/lean/Makefile
@@ -29,6 +29,8 @@ WRKSRC =		${WRKDIST}/src
 MODULES +=		devel/cmake
 MODULES +=		lang/python
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 MODPY_RUNDEP =		No
 
 MAKE_ENV +=	"LEAN_PATH=${WRKDIST}/bin:${WRKDIST}/library:${WRKDIST}/leanpkg"
diff --git a/math/minisat/Makefile b/math/minisat/Makefile
index ae342de48e6..4ea93461420 100644
--- a/math/minisat/Makefile
+++ b/math/minisat/Makefile
@@ -21,6 +21,8 @@ COMPILER =		base-clang ports-gcc base-gcc
 
 MODULES=		devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=		Yes
 
 .include <bsd.port.mk>
diff --git a/math/muparser/Makefile b/math/muparser/Makefile
index 90c0c4f83bd..4c63dce55ff 100644
--- a/math/muparser/Makefile
+++ b/math/muparser/Makefile
@@ -20,4 +20,6 @@ COMPILER =	base-clang ports-gcc
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/py-osqp/Makefile b/math/py-osqp/Makefile
index fe4734e766c..6aaa33a2520 100644
--- a/math/py-osqp/Makefile
+++ b/math/py-osqp/Makefile
@@ -25,4 +25,12 @@ RUN_DEPENDS=	math/py-numpy	\
 MODPY_PI=	Yes
 MODPY_PYBUILD=	setuptools
 
+pre-configure:
+	find ${WRKSRC} -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required \([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/qhull/Makefile b/math/qhull/Makefile
index cc0f27d76a7..8952470ebf8 100644
--- a/math/qhull/Makefile
+++ b/math/qhull/Makefile
@@ -26,4 +26,6 @@ MODULES =		devel/cmake
 
 CONFIGURE_ARGS =	-DMAN_INSTALL_DIR=${PREFIX}/man/man1
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/misc/feathernotes/Makefile b/misc/feathernotes/Makefile
index 72671621f92..74a0276e6bc 100644
--- a/misc/feathernotes/Makefile
+++ b/misc/feathernotes/Makefile
@@ -29,4 +29,7 @@ CONFIGURE_ARGS =	-DCMAKE_INSTALL_PREFIX="${LOCALBASE}"
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/misc/openbabel/Makefile b/misc/openbabel/Makefile
index 721328d7695..f6b326b041c 100644
--- a/misc/openbabel/Makefile
+++ b/misc/openbabel/Makefile
@@ -38,10 +38,14 @@ LIB_DEPENDS=	devel/boost \
 BUILD_DEPENDS=	math/eigen3 \
 		textproc/rapidjson
 
-CONFIGURE_ARGS=	-DBUILD_GUI=OFF
+CONFIGURE_ARGS=	-DBUILD_GUI=OFF \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 SEPARATE_BUILD=	No
 
 SUBST_VARS=	V
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/misc/openbabel/patches/patch-CMakeLists_txt b/misc/openbabel/patches/patch-CMakeLists_txt
index 2914d1d6acc..f9e415be26d 100644
--- a/misc/openbabel/patches/patch-CMakeLists_txt
+++ b/misc/openbabel/patches/patch-CMakeLists_txt
@@ -4,7 +4,17 @@ https://github.com/openbabel/openbabel/commit/650b1f829ac47cc84877a330366ec9485d
 Index: CMakeLists.txt
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
-@@ -24,7 +24,7 @@ include (CheckCXXCompilerFlag)
+@@ -10,9 +10,6 @@ set (CMAKE_CXX_STANDARD 11)
+ 
+ if(COMMAND cmake_policy)
+   cmake_policy(SET CMP0003 NEW)
+-  if(POLICY CMP0042)
+-    cmake_policy(SET CMP0042 OLD)
+-  endif()
+ endif()
+ 
+ include (CheckCXXCompilerFlag)
+@@ -24,7 +21,7 @@ include (CheckCXXCompilerFlag)
  # had too many 1.100.1 releases. :-)
  set(BABEL_MAJ_VER   3)
  set(BABEL_MIN_VER   1)
diff --git a/misc/shared-desktop-ontologies/Makefile b/misc/shared-desktop-ontologies/Makefile
index db6f3e6c37f..0719872b220 100644
--- a/misc/shared-desktop-ontologies/Makefile
+++ b/misc/shared-desktop-ontologies/Makefile
@@ -18,4 +18,6 @@ MODULES =		devel/cmake
 
 NO_TEST =		Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/misc/subsurface/Makefile b/misc/subsurface/Makefile
index 8dabca95247..b6c3a79dc1b 100644
--- a/misc/subsurface/Makefile
+++ b/misc/subsurface/Makefile
@@ -61,6 +61,8 @@ CONFIGURE_ARGS +=	-DBTSUPPORT=OFF \
 CONFIGURE_ARGS +=	-DLIBGIT2_FROM_PKGCONFIG=ON
 CONFIGURE_ARGS +=	-DWRKINST=${WRKINST}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # It's possible to run the tests, but they fail.
 # First, add the subsurface/large-anonymous-sample-data repo to DISTFILES.
 # Add archive/xz to the TEST_DEPENDS.
diff --git a/multimedia/libmatroska/Makefile b/multimedia/libmatroska/Makefile
index 54877784da2..7ca94844075 100644
--- a/multimedia/libmatroska/Makefile
+++ b/multimedia/libmatroska/Makefile
@@ -24,6 +24,10 @@ CFLAGS +=	-I${LOCALBASE}/include
 CXXFLAGS +=	-I${LOCALBASE}/include
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS +=	textproc/libebml>=1.4.4
 
 NO_TEST =	Yes
diff --git a/multimedia/libvidstab/Makefile b/multimedia/libvidstab/Makefile
index 46f35a64313..744940ec6d0 100644
--- a/multimedia/libvidstab/Makefile
+++ b/multimedia/libvidstab/Makefile
@@ -29,6 +29,7 @@ CONFIGURE_ARGS +=	-DSSE2_FOUND=OFF -DSSE3_FOUND=OFF \
 .endif
 # And yet, some old amd64 machines have no SSE4.1
 CONFIGURE_ARGS +=	-DSSE4_1_FOUND=OFF
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 # seems tests require a full extra configuration pass
 NO_TEST =	Yes
diff --git a/multimedia/svt-av1/Makefile b/multimedia/svt-av1/Makefile
index efe17932639..e5312753b15 100644
--- a/multimedia/svt-av1/Makefile
+++ b/multimedia/svt-av1/Makefile
@@ -38,4 +38,10 @@ BUILD_DEPENDS+=	devel/nasm
 #CONFIGURE_ARGS=	-DBUILD_TESTING=On
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/multimedia/x265/Makefile b/multimedia/x265/Makefile
index a7e1f79bef6..b01fea060b9 100644
--- a/multimedia/x265/Makefile
+++ b/multimedia/x265/Makefile
@@ -34,6 +34,8 @@ CONFIGURE_ARGS+=-DCMAKE_ASM_YASM_FLAGS_DEBUG="-g dwarf2" \
 		-DENABLE_TESTS=On \
 		-DGIT_ARCHETYPE=1
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "i386"
 CONFIGURE_ARGS+=-DENABLE_ASSEMBLY=Off
 .endif
diff --git a/multimedia/x265/patches/patch-source_CMakeLists_txt b/multimedia/x265/patches/patch-source_CMakeLists_txt
index 7e0918133c1..d55de884aaa 100644
--- a/multimedia/x265/patches/patch-source_CMakeLists_txt
+++ b/multimedia/x265/patches/patch-source_CMakeLists_txt
@@ -3,6 +3,22 @@
 Index: source/CMakeLists.txt
 --- source/CMakeLists.txt.orig
 +++ source/CMakeLists.txt
+@@ -7,13 +7,13 @@ if(NOT CMAKE_BUILD_TYPE)
+ endif()
+ message(STATUS "cmake version ${CMAKE_VERSION}")
+ if(POLICY CMP0025)
+-    cmake_policy(SET CMP0025 OLD) # report Apple's Clang as just Clang
++    cmake_policy(SET CMP0025 NEW) # report Apple's Clang as just Clang
+ endif()
+ if(POLICY CMP0042)
+     cmake_policy(SET CMP0042 NEW) # MACOSX_RPATH
+ endif()
+ if(POLICY CMP0054)
+-    cmake_policy(SET CMP0054 OLD) # Only interpret if() arguments as variables or keywords when unquoted
++    cmake_policy(SET CMP0054 NEW) # Only interpret if() arguments as variables or keywords when unquoted
+ endif()
+ 
+ project (x265)
 @@ -88,7 +88,7 @@ elseif(ARM64MATCH GREATER "-1")
      option(AARCH64_WARNINGS_AS_ERRORS "Build with -Werror for AArch64 Intrinsics files" OFF)
  
diff --git a/net/barrier/Makefile b/net/barrier/Makefile
index 16127f16a3e..ecc4bd8e280 100644
--- a/net/barrier/Makefile
+++ b/net/barrier/Makefile
@@ -46,4 +46,7 @@ do-install:
 	${INSTALL_MAN} ${WRKSRC}/doc/barriers.1 \
 		${PREFIX}/man/man1/barriers.1
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/ettercap/Makefile b/net/ettercap/Makefile
index 2b3f5bd11d6..95d1e38b262 100644
--- a/net/ettercap/Makefile
+++ b/net/ettercap/Makefile
@@ -41,6 +41,7 @@ CFLAGS+=	-DNS_IN6ADDRSZ=16 -DNS_INT16SZ=2
 
 CFLAGS+=	-I${LOCALBASE}/include
 CONFIGURE_ARGS+= -DMAN_INSTALLDIR="${TRUEPREFIX}/man" \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
 		-DENABLE_GEOIP=off \
 		-DBUNDLED_LIBS=off
 
diff --git a/net/libmygpo-qt/Makefile b/net/libmygpo-qt/Makefile
index eb5635f4957..794c4dbe7c2 100644
--- a/net/libmygpo-qt/Makefile
+++ b/net/libmygpo-qt/Makefile
@@ -26,4 +26,7 @@ post-install:
 	cd ${WRKSRC}/example; pax -vrw -s '@.*/\..*@@' . \
 		${PREFIX}/share/examples/mygpo-qt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/libsignal-protocol-c/Makefile b/net/libsignal-protocol-c/Makefile
index 690b2072551..6fd9a492321 100644
--- a/net/libsignal-protocol-c/Makefile
+++ b/net/libsignal-protocol-c/Makefile
@@ -23,6 +23,8 @@ RUN_DEPENDS =	devel/protobuf-c
 CONFIGURE_ARGS =	-DBUILD_TESTING=ON \
 			-DBUILD_SHARED_LIBS=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-extract:
 	mv ${WRKSRC}/src/utarray.h ${WRKSRC}/src/utarray_local.h
 	mv ${WRKSRC}/src/uthash.h ${WRKSRC}/src/uthash_local.h
diff --git a/net/libvncserver/Makefile b/net/libvncserver/Makefile
index cf6b3ddd594..30f8b542416 100644
--- a/net/libvncserver/Makefile
+++ b/net/libvncserver/Makefile
@@ -38,4 +38,6 @@ CONFIGURE_ARGS=	-DWITH_EXAMPLES=OFF \
 		-DWITH_GTK=OFF \
 		-DWITH_LIBSSH2=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/owncloudclient/Makefile b/net/owncloudclient/Makefile
index c0739a287b2..107fe07c3e0 100644
--- a/net/owncloudclient/Makefile
+++ b/net/owncloudclient/Makefile
@@ -60,4 +60,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/examples/ownCloud/
 	mv ${WRKINST}/etc/ownCloud ${PREFIX}/share/examples/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/pidgin-skypeweb/Makefile b/net/pidgin-skypeweb/Makefile
index f628b32d510..437ddda5ed2 100644
--- a/net/pidgin-skypeweb/Makefile
+++ b/net/pidgin-skypeweb/Makefile
@@ -29,4 +29,7 @@ NO_TEST =	Yes
 
 WRKSRC =	${WRKDIST}/skypeweb
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/seafile/client/Makefile b/net/seafile/client/Makefile
index 5b190634729..36edf047033 100644
--- a/net/seafile/client/Makefile
+++ b/net/seafile/client/Makefile
@@ -24,4 +24,7 @@ NO_TEST =		Yes
 post-configure:
 	cd ${WRKSRC}/i18n/ && ${MODQT_LRELEASE} *.ts
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/slurm/Makefile b/net/slurm/Makefile
index 6f725dd6e79..40083666f02 100644
--- a/net/slurm/Makefile
+++ b/net/slurm/Makefile
@@ -19,6 +19,8 @@ WANTLIB =	c curses
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 pre-configure:
 	@${SUBST_CMD} ${WRKSRC}/theme.c ${WRKSRC}/slurm.1
 
diff --git a/net/synergy/Makefile b/net/synergy/Makefile
index e90fab0e41a..3a4e4ca04b0 100644
--- a/net/synergy/Makefile
+++ b/net/synergy/Makefile
@@ -23,6 +23,8 @@ LIB_DEPENDS=		net/curl
 
 MODULES=		devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=		Yes
 
 CXXFLAGS +=		-std=c++03
diff --git a/net/transmission/Makefile b/net/transmission/Makefile
index bd632ac8b5a..d219229d652 100644
--- a/net/transmission/Makefile
+++ b/net/transmission/Makefile
@@ -76,6 +76,8 @@ RUN_DEPENDS-gtk +=	${PKGNAME-main}:${BUILD_PKGPATH} \
 RUN_DEPENDS-qt +=	${PKGNAME-main}:${BUILD_PKGPATH} \
 			devel/desktop-file-utils
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CONFIGURE_ARGS +=	-DENABLE_CLI=ON \
 			-DENABLE_TESTS=OFF \
 			-DRUN_CLANG_TIDY=OFF
@@ -100,4 +102,9 @@ CONFIGURE_ARGS +=	-DENABLE_QT=ON \
 CONFIGURE_ARGS +=	-DENABLE_QT=OFF
 .endif
 
+pre-configure:
+	find ${WRKSRC} -name "CMakeLists.txt" -type f -exec sed -i \
+	-E 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION 3.5)/g' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/print/apvlv/Makefile b/print/apvlv/Makefile
index ca6f38bf958..11819b6d325 100644
--- a/print/apvlv/Makefile
+++ b/print/apvlv/Makefile
@@ -24,4 +24,7 @@ LIB_DEPENDS=	x11/gtk+3 \
 
 CONFIGURE_ARGS=-DMANDIR=${PREFIX}/man
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/print/gl2ps/Makefile b/print/gl2ps/Makefile
index c93962dfa49..2be9cb5b2a8 100644
--- a/print/gl2ps/Makefile
+++ b/print/gl2ps/Makefile
@@ -23,7 +23,12 @@ BUILD_DEPENDS =		print/texlive/base
 LIB_DEPENDS =		graphics/freeglut \
 			graphics/png
 
-MODCMAKE_LDFLAGS =		-L${X11BASE}/lib -L${LOCALBASE}/lib
+MODCMAKE_LDFLAGS =	-L${X11BASE}/lib -L${LOCALBASE}/lib
+
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+CONFIGURE_ARGS =		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 
 TEST_IS_INTERACTIVE =	x11
 
diff --git a/productivity/ledger/Makefile b/productivity/ledger/Makefile
index 54d89a8a344..73163d0ee66 100644
--- a/productivity/ledger/Makefile
+++ b/productivity/ledger/Makefile
@@ -52,4 +52,7 @@ post-install:
 	${INSTALL_DATA} ${WRKSRC}/$d ${PREFIX}/share/doc/ledger/
 .endfor
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/productivity/taskd/Makefile b/productivity/taskd/Makefile
index a850f70f8b0..810e0c2165e 100644
--- a/productivity/taskd/Makefile
+++ b/productivity/taskd/Makefile
@@ -25,6 +25,8 @@ CONFIGURE_ARGS +=	-DTASKD_DOCDIR=share/taskd \
 			-DTASKD_MAN1DIR=man/man1 \
 			-DTASKD_MAN5DIR=man/man5
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 post-install:
@@ -38,4 +40,7 @@ post-install:
 	${SUBST_DATA} ${FILESDIR}/config \
 		${PREFIX}/share/examples/taskd/config
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/productivity/taskd/patches/patch-CMakeLists_txt b/productivity/taskd/patches/patch-CMakeLists_txt
index 704a9a10424..43b844b4c0a 100644
--- a/productivity/taskd/patches/patch-CMakeLists_txt
+++ b/productivity/taskd/patches/patch-CMakeLists_txt
@@ -1,5 +1,15 @@
---- CMakeLists.txt.orig	Tue Nov 10 15:44:28 2015
-+++ CMakeLists.txt	Tue Nov 10 15:44:54 2015
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -1,7 +1,7 @@
+ cmake_minimum_required (VERSION 2.8)
+ set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required
+ if(POLICY CMP0037)
+-  cmake_policy(SET CMP0037 OLD)
++  cmake_policy(SET CMP0037 NEW)
+ endif()
+ 
+ include (CheckFunctionExists)
 @@ -115,10 +115,10 @@ if (GNUTLS_FOUND)
  endif (GNUTLS_FOUND)
  
diff --git a/productivity/taskwarrior/Makefile b/productivity/taskwarrior/Makefile
index d766696c12f..1f55b6cdfc0 100644
--- a/productivity/taskwarrior/Makefile
+++ b/productivity/taskwarrior/Makefile
@@ -32,6 +32,8 @@ CONFIGURE_ARGS +=	-DTASK_DOCDIR=share/doc/taskwarrior \
 			-DTASK_MAN5DIR=man/man5 \
 			-Ddoc_FILES="README.md"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 pre-configure:
diff --git a/productivity/teapot/Makefile b/productivity/teapot/Makefile
index 8b9c6294b8c..c4c28becd56 100644
--- a/productivity/teapot/Makefile
+++ b/productivity/teapot/Makefile
@@ -23,6 +23,8 @@ MODULES =	devel/cmake
 # disable LaTeX documentation compilation
 CONFIGURE_ARGS +=	-DENABLE_HELP=no
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 pre-configure:
diff --git a/security/encfs/Makefile b/security/encfs/Makefile
index 084a121a511..ab12512258b 100644
--- a/security/encfs/Makefile
+++ b/security/encfs/Makefile
@@ -27,8 +27,9 @@ CONFIGURE_ARGS =	-DUSE_INTERNAL_TINYXML=Off \
 			-DCMAKE_DISABLE_FIND_PACKAGE_Git=On \
 			-DBUILD_UNIT_TESTS=Off
 
-CXXFLAGS+=		-DHAVE_UTIMENSAT -D_DIRENT_HAVE_D_TYPE
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
+CXXFLAGS+=		-DHAVE_UTIMENSAT -D_DIRENT_HAVE_D_TYPE
 
 # XXX: Python2
 # TEST_TARGET =		unittests test/test
@@ -38,4 +39,8 @@ NO_TEST =		Yes
 
 .if ${CHOSEN_COMPILER} == "ports-gcc"
 WANTLIB += atomic
+
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .endif
diff --git a/security/lastpass-cli/Makefile b/security/lastpass-cli/Makefile
index bfcb0cb6ed3..2e5aa1af8b4 100644
--- a/security/lastpass-cli/Makefile
+++ b/security/lastpass-cli/Makefile
@@ -24,6 +24,8 @@ LIB_DEPENDS =	net/curl \
 TEST_DEPENDS =	${BUILD_DEPENDS} \
 		shells/bash
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 do-test:
 	sed -i 's,#!/bin/bash,#!${LOCALBASE}/bin/bash,' ${WRKSRC}/test/*
 	chmod +x ${WRKSRC}/test/tests ${WRKSRC}/test/*.sh
diff --git a/security/polarssl/Makefile b/security/polarssl/Makefile
index 097fa327303..759825d7ed6 100644
--- a/security/polarssl/Makefile
+++ b/security/polarssl/Makefile
@@ -30,6 +30,8 @@ MODPY_RUNDEP=	No
 CONFIGURE_ARGS=		-DUSE_SHARED_MBEDTLS_LIBRARY=ON \
 			-DLINK_WITH_PTHREAD=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/doc/mbedtls
 	cd ${WRKSRC}; ${INSTALL_DATA} README.md ChangeLog \
diff --git a/shells/fish/v3/patches/patch-cmake_Tests_cmake b/shells/fish/v3/patches/patch-cmake_Tests_cmake
new file mode 100644
index 00000000000..935aaeac267
--- /dev/null
+++ b/shells/fish/v3/patches/patch-cmake_Tests_cmake
@@ -0,0 +1,22 @@
+Index: cmake/Tests.cmake
+--- cmake/Tests.cmake.orig
++++ cmake/Tests.cmake
+@@ -43,12 +43,12 @@ add_custom_target(fish_run_tests
+ 
+ # If CMP0037 is available, also make an alias "test" target.
+ # Note that this policy may not be available, in which case definining such a target silently fails.
+-cmake_policy(PUSH)
+-if(POLICY CMP0037)
+-  cmake_policy(SET CMP0037 OLD)
+-  add_custom_target(test DEPENDS fish_run_tests)
+-endif()
+-cmake_policy(POP)
++#cmake_policy(PUSH)
++#if(POLICY CMP0037)
++#  cmake_policy(SET CMP0037 OLD)
++#  add_custom_target(test DEPENDS fish_run_tests)
++#endif()
++#cmake_policy(POP)
+ 
+ # Build the low-level tests code
+ add_executable(fish_tests EXCLUDE_FROM_ALL
diff --git a/sysutils/dfc/Makefile b/sysutils/dfc/Makefile
index 848038ff64d..69826a627ef 100644
--- a/sysutils/dfc/Makefile
+++ b/sysutils/dfc/Makefile
@@ -21,4 +21,6 @@ NO_TEST =	Yes
 CONFIGURE_ARGS =-DXDG_CONFIG_DIR=${PREFIX}/share/examples \
 		-DMAN_PATH=${PREFIX}/man
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/sysutils/grive2/Makefile b/sysutils/grive2/Makefile
index 164640b1d70..330d54f3011 100644
--- a/sysutils/grive2/Makefile
+++ b/sysutils/grive2/Makefile
@@ -29,4 +29,7 @@ LIB_DEPENDS =	devel/boost \
 		net/curl \
 		security/libgcrypt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/sysutils/krename/Makefile b/sysutils/krename/Makefile
index b2d915e0f0e..f8432ed0ef1 100644
--- a/sysutils/krename/Makefile
+++ b/sysutils/krename/Makefile
@@ -48,4 +48,6 @@ LIB_DEPENDS =	audio/taglib \
 		devel/kf5/kwidgetsaddons \
 		devel/kf5/kxmlgui
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/sysutils/lsyncd/Makefile b/sysutils/lsyncd/Makefile
index 4b53138e23c..f1d55b59547 100644
--- a/sysutils/lsyncd/Makefile
+++ b/sysutils/lsyncd/Makefile
@@ -24,6 +24,8 @@ LIB_DEPENDS =	${MODLUA_LIB_DEPENDS} \
 TEST_DEPENDS =	${RUN_DEPENDS} \
 		devel/luaposix
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 TESTS =	churn-direct churn-rsyncssh exclude-rsyncssh schedule \
 	churn-rsync exclude-rsync l4rsyncdata
 
diff --git a/sysutils/rclone-browser/Makefile b/sysutils/rclone-browser/Makefile
index dc11ac1db33..242ee78577f 100644
--- a/sysutils/rclone-browser/Makefile
+++ b/sysutils/rclone-browser/Makefile
@@ -24,4 +24,7 @@ WANTLIB += ${COMPILER_LIBCXX}
 NO_TEST =	Yes
 
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/sysutils/uefitool/Makefile b/sysutils/uefitool/Makefile
index c9bf3b570f1..a2679ee948d 100644
--- a/sysutils/uefitool/Makefile
+++ b/sysutils/uefitool/Makefile
@@ -19,4 +19,7 @@ MODULES =		devel/cmake \
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/telephony/bcg729/Makefile b/telephony/bcg729/Makefile
index 4a4fd4b6118..4e85d25a436 100644
--- a/telephony/bcg729/Makefile
+++ b/telephony/bcg729/Makefile
@@ -18,6 +18,8 @@ SITES=		https://gitlab.linphone.org/BC/public/bcg729/-/archive/${V}/
 MODULES=	devel/cmake
 CONFIGURE_ARGS=	-DENABLE_TESTS=YES
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 TEST_IS_INTERACTIVE=	Yes
 
 pre-test:
diff --git a/telephony/libzrtp/Makefile b/telephony/libzrtp/Makefile
index da38a533f3e..cf2c192d3b3 100644
--- a/telephony/libzrtp/Makefile
+++ b/telephony/libzrtp/Makefile
@@ -16,4 +16,6 @@ MODULES =		devel/cmake
 # C++ static lib
 COMPILER =		base-clang ports-gcc
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/telephony/linphone/linphone-desktop/Makefile b/telephony/linphone/linphone-desktop/Makefile
index 5d1e92aeaa3..2e13f1f4de4 100644
--- a/telephony/linphone/linphone-desktop/Makefile
+++ b/telephony/linphone/linphone-desktop/Makefile
@@ -11,7 +11,8 @@ DIST_TUPLE +=	gitlab external ispell 05574fe160222c3d0b6283c1433c9b087271fad1 ex
 MODULES +=	x11/qt5
 CONFIGURE_ARGS =-DENABLE_STATIC=NO \
 		-DENABLE_QT_KEYCHAIN=NO \
-		-DENABLE_UNIT_TESTS=NO
+		-DENABLE_UNIT_TESTS=NO \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 LIB_DEPENDS =	telephony/linphone/bctoolbox \
 		telephony/linphone/mediastreamer2 \
diff --git a/textproc/clucene/Makefile b/textproc/clucene/Makefile
index bec7c41a851..0efd784b16b 100644
--- a/textproc/clucene/Makefile
+++ b/textproc/clucene/Makefile
@@ -23,7 +23,8 @@ MODULES=	devel/cmake
 
 BUILD_DEPENDS=	devel/boost
 
-CONFIGURE_ARGS=	-DBUILD_CONTRIBS_LIB:BOOL=ON
+CONFIGURE_ARGS=	-DBUILD_CONTRIBS_LIB:BOOL=ON \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .include <bsd.port.arch.mk>
 .if ${PROPERTIES:Mclang}
diff --git a/textproc/ebook-tools/Makefile b/textproc/ebook-tools/Makefile
index 564d799d7ba..4f6e22f8f9a 100644
--- a/textproc/ebook-tools/Makefile
+++ b/textproc/ebook-tools/Makefile
@@ -22,4 +22,10 @@ LIB_DEPENDS =		textproc/libxml \
 
 NO_TEST =		Yes
 
+MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/ebook-tools/patches/patch-cmake_FindLibZip_cmake b/textproc/ebook-tools/patches/patch-cmake_FindLibZip_cmake
deleted file mode 100644
index 4bfee05acab..00000000000
--- a/textproc/ebook-tools/patches/patch-cmake_FindLibZip_cmake
+++ /dev/null
@@ -1,49 +0,0 @@
---- cmake/FindLibZip.cmake.orig	Sun Apr  6 19:16:33 2008
-+++ cmake/FindLibZip.cmake	Fri Dec 23 12:19:54 2011
-@@ -2,35 +2,29 @@
- # Once done this will define
- #
- #  LIBZIP_FOUND - system has the zip library
--#  LIBZIP_INCLUDE_DIR - the zip include directory
--#  LIBZIP_LIBRARY - Link this to use the zip library
-+#  LIBZIP_INCLUDE_DIRS - the zip include directory
-+#  LIBZIP_LIBRARIES - Link this to use the zip library
- #
- # Copyright (c) 2006, Pino Toscano, <toscano.pino@tiscali.it>
- #
- # Redistribution and use is allowed according to the terms of the BSD license.
- # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
- 
--if (LIBZIP_LIBRARY AND LIBZIP_INCLUDE_DIR)
-+if (LIBZIP_LIBRARIES AND LIBZIP_INCLUDE_DIRS)
-   # in cache already
-   set(LIBZIP_FOUND TRUE)
--else (LIBZIP_LIBRARY AND LIBZIP_INCLUDE_DIR)
-+else (LIBZIP_LIBRARIES AND LIBZIP_INCLUDE_DIRS)
- 
--  find_path(LIBZIP_INCLUDE_DIR zip.h
--    ${GNUWIN32_DIR}/include
--  )
-+  INCLUDE(FindPkgConfig)
-+  pkg_check_modules(LIBZIP REQUIRED libzip)
- 
--  find_library(LIBZIP_LIBRARY NAMES zip
--    PATHS
--    ${GNUWIN32_DIR}/lib
--  )
--
-   include(FindPackageHandleStandardArgs)
--  FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibZip DEFAULT_MSG LIBZIP_LIBRARY LIBZIP_INCLUDE_DIR)
-+  FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibZip DEFAULT_MSG LIBZIP_LIBRARIES LIBZIP_INCLUDE_DIRS)
- 
-     # ensure that they are cached
--    set(LIBZIP_INCLUDE_DIR ${LIBZIP_INCLUDE_DIR} CACHE INTERNAL "The libzip include path")
--    set(LIBZIP_LIBRARY ${LIBZIP_LIBRARY} CACHE INTERNAL "The libraries needed to use libzip")
-+    set(LIBZIP_INCLUDE_DIRS ${LIBZIP_INCLUDE_DIRS} CACHE INTERNAL "The libzip include path")
-+    set(LIBZIP_LIBRARIES ${LIBZIP_LIBRARIES} CACHE INTERNAL "The libraries needed to use libzip")
- 
--endif (LIBZIP_LIBRARY AND LIBZIP_INCLUDE_DIR)
-+endif (LIBZIP_LIBRARIES AND LIBZIP_INCLUDE_DIRS)
- 
--mark_as_advanced(LIBZIP_INCLUDE_DIR LIBZIP_LIBRARY)
-+mark_as_advanced(LIBZIP_INCLUDE_DIRS LIBZIP_LIBRARIES)
diff --git a/textproc/ebook-tools/patches/patch-src_libepub_CMakeLists_txt b/textproc/ebook-tools/patches/patch-src_libepub_CMakeLists_txt
deleted file mode 100644
index 321e05304e8..00000000000
--- a/textproc/ebook-tools/patches/patch-src_libepub_CMakeLists_txt
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/libepub/CMakeLists.txt.orig	Mon Sep 13 21:31:53 2010
-+++ src/libepub/CMakeLists.txt	Fri Dec 23 12:14:37 2011
-@@ -1,6 +1,6 @@
--include_directories (${EBOOK-TOOLS_SOURCE_DIR}/src/libepub ${LIBXML2_INCLUDE_DIR} ${LIBZIP_INCLUDE_DIR})
-+include_directories (${EBOOK-TOOLS_SOURCE_DIR}/src/libepub ${LIBXML2_INCLUDE_DIR} ${LIBZIP_INCLUDE_DIRS})
- add_library (epub SHARED epub.c ocf.c opf.c linklist.c list.c)
--target_link_libraries (epub ${LIBZIP_LIBRARY} ${LIBXML2_LIBRARIES})
-+target_link_libraries (epub ${LIBZIP_LIBRARIES} ${LIBXML2_LIBRARIES})
- 
- set_target_properties (epub PROPERTIES VERSION 0.2.1 SOVERSION 0)
- 
diff --git a/textproc/halibut/Makefile b/textproc/halibut/Makefile
index f8f71e19926..efa3fdbc045 100644
--- a/textproc/halibut/Makefile
+++ b/textproc/halibut/Makefile
@@ -13,4 +13,6 @@ WANTLIB =	c
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/hotdoc/Makefile b/textproc/hotdoc/Makefile
index 73014d82c09..8adf16f4b0d 100644
--- a/textproc/hotdoc/Makefile
+++ b/textproc/hotdoc/Makefile
@@ -11,6 +11,7 @@ HOMEPAGE=		https://hotdoc.github.io/
 MAINTAINER=		Antoine Jacoutot <ajacoutot@openbsd.org>
 
 # LGPLv2.1+
+
 PERMIT_PACKAGE=		Yes
 
 WANTLIB += gio-2.0 glib-2.0 gobject-2.0 intl json-glib-1.0 xml2
@@ -38,4 +39,6 @@ RUN_DEPENDS=		devel/py-appdirs \
 			textproc/py-lxml \
 			textproc/py-yaml
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/hotdoc/patches/patch-cmark_CMakeLists_txt b/textproc/hotdoc/patches/patch-cmark_CMakeLists_txt
new file mode 100644
index 00000000000..e89621584bf
--- /dev/null
+++ b/textproc/hotdoc/patches/patch-cmark_CMakeLists_txt
@@ -0,0 +1,15 @@
+Index: cmark/CMakeLists.txt
+--- cmark/CMakeLists.txt.orig
++++ cmark/CMakeLists.txt
+@@ -1,9 +1,9 @@
+-cmake_minimum_required(VERSION 2.8.9)
++cmake_minimum_required(VERSION 2.8...3.10)
+ 
+ # prevent ugly developer warnings because version is set directly, not through project()
+ # it should be redone properly by using VERSION in project() if on CMake 3.x
+ if(CMAKE_MAJOR_VERSION GREATER 2)
+-    cmake_policy(SET CMP0048 OLD)
++    cmake_policy(SET CMP0048 NEW)
+ endif()
+ 
+ project(cmark)
diff --git a/textproc/hotdoc/patches/patch-cmark_extensions_CMakeLists_txt b/textproc/hotdoc/patches/patch-cmark_extensions_CMakeLists_txt
new file mode 100644
index 00000000000..347f90c4ec0
--- /dev/null
+++ b/textproc/hotdoc/patches/patch-cmark_extensions_CMakeLists_txt
@@ -0,0 +1,9 @@
+Index: cmark/extensions/CMakeLists.txt
+--- cmark/extensions/CMakeLists.txt.orig
++++ cmark/extensions/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.8)
++cmake_minimum_required(VERSION 2.8...3.10)
+ set(LIBRARY "cmarkextensions")
+ set(LIBRARY_SOURCES
+     core-extensions.c
diff --git a/textproc/hyperscan/Makefile b/textproc/hyperscan/Makefile
index 4aa8b6800d7..bec9d653f30 100644
--- a/textproc/hyperscan/Makefile
+++ b/textproc/hyperscan/Makefile
@@ -58,4 +58,7 @@ post-install:
 do-test:
 	${WRKBUILD}/bin/unit-hyperscan
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/libebml/Makefile b/textproc/libebml/Makefile
index 78243ae6ccf..5ab55e63594 100644
--- a/textproc/libebml/Makefile
+++ b/textproc/libebml/Makefile
@@ -20,6 +20,8 @@ COMPILER =	base-clang ports-gcc
 
 MODULES +=	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =	Yes
 
 .include <bsd.port.mk>
diff --git a/textproc/luceneplusplus/Makefile b/textproc/luceneplusplus/Makefile
index 9d4f02d7fa1..d7032db533b 100644
--- a/textproc/luceneplusplus/Makefile
+++ b/textproc/luceneplusplus/Makefile
@@ -29,6 +29,8 @@ LIB_DEPENDS =		devel/boost
 # devel/gtest is too new for this
 CONFIGURE_ARGS +=	-DENABLE_TEST=FALSE
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
 do-test:
diff --git a/textproc/multimarkdown/Makefile b/textproc/multimarkdown/Makefile
index f35e910441a..fd96a3c8ae2 100644
--- a/textproc/multimarkdown/Makefile
+++ b/textproc/multimarkdown/Makefile
@@ -17,6 +17,8 @@ WANTLIB +=	c
 
 MODULES =	devel/cmake
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	rm ${PREFIX}/{LICENSE.txt,README.txt}
 	mv ${PREFIX}/bin/{mmd,mmd2xhtml} # avoid conflict with mtools
diff --git a/textproc/pplatex/Makefile b/textproc/pplatex/Makefile
index 3596c5bfe91..691bde97b4c 100644
--- a/textproc/pplatex/Makefile
+++ b/textproc/pplatex/Makefile
@@ -24,6 +24,8 @@ WANTLIB += ${COMPILER_LIBCXX} c m pcre pcreposix
 
 COMPILER =		base-clang ports-gcc base-gcc
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 LIB_DEPENDS =	devel/pcre
 
 do-install:
diff --git a/textproc/rapidjson/Makefile b/textproc/rapidjson/Makefile
index 9cf63f33478..f378ab49d33 100644
--- a/textproc/rapidjson/Makefile
+++ b/textproc/rapidjson/Makefile
@@ -19,5 +19,6 @@ MODULES=	devel/cmake
 
 # disable -march=native
 CONFIGURE_ARGS=	-DRAPIDJSON_ENABLE_INSTRUMENTATION_OPT=OFF
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 .include <bsd.port.mk>
diff --git a/textproc/uchardet/Makefile b/textproc/uchardet/Makefile
index 147c9cfef85..2e72e707968 100644
--- a/textproc/uchardet/Makefile
+++ b/textproc/uchardet/Makefile
@@ -21,6 +21,8 @@ SITES=		https://www.freedesktop.org/software/uchardet/releases/
 MODULES=	devel/cmake
 CONFIGURE_ARGS=	-DCMAKE_INSTALL_MANDIR="${PREFIX}/man"
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DEBUG_PACKAGES=	${BUILD_PACKAGES}
 
 .include <bsd.port.mk>
diff --git a/textproc/xalan-c/Makefile b/textproc/xalan-c/Makefile
index 6b86726eeb5..8bbee9712ac 100644
--- a/textproc/xalan-c/Makefile
+++ b/textproc/xalan-c/Makefile
@@ -29,4 +29,6 @@ LIB_DEPENDS =		textproc/xerces-c
 
 CONFIGURE_ARGS =	-Ddoxygen=off
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/xpdf/Makefile b/textproc/xpdf/Makefile
index 64ee0f5246f..7b589403566 100644
--- a/textproc/xpdf/Makefile
+++ b/textproc/xpdf/Makefile
@@ -45,4 +45,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/doc/sample-xpdfrc \
 		${PREFIX}/share/examples/xpdf/xpdfrc
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/www/civetweb/Makefile b/www/civetweb/Makefile
index 115d79e0574..0f7b0cf0242 100644
--- a/www/civetweb/Makefile
+++ b/www/civetweb/Makefile
@@ -26,4 +26,6 @@ CONFIGURE_ARGS =	-DCIVETWEB_BUILD_TESTING=OFF \
 			-DCIVETWEB_ENABLE_WEBSOCKETS=ON \
 			-DBUILD_SHARED_LIBS=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/www/libwebsockets/Makefile b/www/libwebsockets/Makefile
index bc7e4ee7b70..2895884b6f1 100644
--- a/www/libwebsockets/Makefile
+++ b/www/libwebsockets/Makefile
@@ -28,6 +28,8 @@ CONFIGURE_ARGS +=	-DDISABLE_WERROR=ON \
 			-DLWS_WITHOUT_TEST_SERVER=ON \
 			-DLWS_WITH_LIBUV=ON
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST =		Yes
 
 .include <bsd.port.mk>
diff --git a/www/otter-browser/Makefile b/www/otter-browser/Makefile
index f36b93af2d0..8dba1b1ce4e 100644
--- a/www/otter-browser/Makefile
+++ b/www/otter-browser/Makefile
@@ -38,4 +38,7 @@ CONFIGURE_ARGS +=	-DENABLE_QTWEBENGINE=ON \
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/www/tidy/Makefile b/www/tidy/Makefile
index 5643fc13b15..bd1fabeb4ce 100644
--- a/www/tidy/Makefile
+++ b/www/tidy/Makefile
@@ -23,4 +23,6 @@ BUILD_DEPENDS =	textproc/libxslt
 
 CONFIGURE_ARGS +=	-DMAN_INSTALL_DIR=${PREFIX}/man/man1
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/awesome/Makefile b/x11/awesome/Makefile
index 5090b6efaeb..391f2e2d92b 100644
--- a/x11/awesome/Makefile
+++ b/x11/awesome/Makefile
@@ -50,6 +50,8 @@ CONFIGURE_ARGS=		-DCOMPRESS_MANPAGES=OFF \
 # It fails to build with docs enabled on sparc64
 CONFIGURE_ARGS+=	-DGENERATE_DOC=OFF
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=		Yes
 
 pre-configure:
diff --git a/x11/awesome/patches/patch-CMakeLists_txt b/x11/awesome/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..65413781883
--- /dev/null
+++ b/x11/awesome/patches/patch-CMakeLists_txt
@@ -0,0 +1,15 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -454,7 +454,10 @@ if(LUACHECK_EXECUTABLE)
+     list(APPEND CHECK_QA_TARGETS luacheck)
+ endif()
+ add_custom_target(check-qa DEPENDS ${CHECK_QA_TARGETS})
+-add_dependencies(check check-qa check-examples)
++add_dependencies(check check-qa)
++if(TARGET check-examples)
++    add_dependencies(check check-examples)
++endif()
+ # }}}
+ 
+ INCLUDE(${CMAKE_SOURCE_DIR}/Packaging.cmake)
diff --git a/x11/awesome/patches/patch-objects_key_c b/x11/awesome/patches/patch-objects_key_c
index 2c06f5a8349..06c25d4c572 100644
--- a/x11/awesome/patches/patch-objects_key_c
+++ b/x11/awesome/patches/patch-objects_key_c
@@ -1,7 +1,6 @@
 Fix -fno-common build failure. Taken from
 https://github.com/awesomeWM/awesome/commit/d256d9055095f27a33696e0aeda4ee20ed4fb1a0
 
-Index: objects/drawin.h
 Index: objects/key.c
 --- objects/key.c.orig
 +++ objects/key.c
diff --git a/x11/dbusmenu-qt/Makefile b/x11/dbusmenu-qt/Makefile
index 11b763785a5..1562f3d8b34 100644
--- a/x11/dbusmenu-qt/Makefile
+++ b/x11/dbusmenu-qt/Makefile
@@ -23,8 +23,10 @@ MODULES =	devel/cmake \
 CONFIGURE_ARGS=	-DUSE_QT4=OFF \
 		-DUSE_QT5=ON \
 		-DWITH_DOC=OFF \
-		-DCMAKE_DISABLE_FIND_PACKAGE_QJSON=ON
+		-DCMAKE_DISABLE_FIND_PACKAGE_QJSON=ON \
+		-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 # XXX "!icon.isNull()" failed tests are normal, they do mean that
 # mentioned icon is not installed; e.g., these are the test bugs.
diff --git a/x11/freerdp/Makefile b/x11/freerdp/Makefile
index 370a7fe2cea..6e56ed7623f 100644
--- a/x11/freerdp/Makefile
+++ b/x11/freerdp/Makefile
@@ -70,4 +70,7 @@ CONFIGURE_ARGS +=	-DWITH_NEON=OFF
 pre-configure:
 	sed -i 's,/usr/local,${LOCALBASE},g' ${WRKSRC}/{,winpr/libwinpr/}CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/gnome/control-center/Makefile b/x11/gnome/control-center/Makefile
index c624d37aa0c..b145b24b9fc 100644
--- a/x11/gnome/control-center/Makefile
+++ b/x11/gnome/control-center/Makefile
@@ -77,6 +77,8 @@ MODGNOME_TOOLS +=	gtk-update-icon-cache yelp
 
 MODGNOME_LDFLAGS=	-L${X11BASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DEBUG_PACKAGES=		${BUILD_PACKAGES}
 
 pre-configure:
diff --git a/x11/gromit-mpx/Makefile b/x11/gromit-mpx/Makefile
index 0fd79a0ebc9..4b918bd070a 100644
--- a/x11/gromit-mpx/Makefile
+++ b/x11/gromit-mpx/Makefile
@@ -32,4 +32,7 @@ post-install:
 	rm -f ${PREFIX}/share/pixmaps/net.christianbeier.Gromit-MPX.active.png
 	rm -f ${PREFIX}/share/pixmaps/net.christianbeier.Gromit-MPX.png
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/gtk2-oxygen-engine/Makefile b/x11/gtk2-oxygen-engine/Makefile
index 7000351ed79..cfacd905f7c 100644
--- a/x11/gtk2-oxygen-engine/Makefile
+++ b/x11/gtk2-oxygen-engine/Makefile
@@ -29,4 +29,7 @@ LIB_DEPENDS =		x11/gtk+2
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/gtk3-oxygen-engine/Makefile b/x11/gtk3-oxygen-engine/Makefile
index 58f5137e25b..3d2d72eda46 100644
--- a/x11/gtk3-oxygen-engine/Makefile
+++ b/x11/gtk3-oxygen-engine/Makefile
@@ -28,4 +28,7 @@ LIB_DEPENDS =		x11/gtk+3
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/libqtolm/Makefile b/x11/libqtolm/Makefile
index 89c5a9a2d70..7645a4fd7f2 100644
--- a/x11/libqtolm/Makefile
+++ b/x11/libqtolm/Makefile
@@ -23,4 +23,7 @@ LIB_DEPENDS =	devel/olm
 
 CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=ON
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/qt5/qtwebkit/Makefile b/x11/qt5/qtwebkit/Makefile
index 00117b04231..aea1fb61088 100644
--- a/x11/qt5/qtwebkit/Makefile
+++ b/x11/qt5/qtwebkit/Makefile
@@ -86,6 +86,8 @@ LIB_DEPENDS =		databases/sqlite3 \
 			x11/qt5/qtsensors>=${QT5_VERSION},<${QT5_NEXT_VERSION} \
 			x11/qt5/qtwebchannel>=${QT5_VERSION},<${QT5_NEXT_VERSION}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 CONFIGURE_ARGS +=	-DENABLE_API_TESTS=OFF \
 			-DENABLE_QT_WEBCHANNEL=ON \
 			-DENABLE_TOOLS=OFF \
@@ -133,6 +135,8 @@ DWZ = :
 LDFLAGS +=		-Wl,--no-keep-memory
 .endif
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-install:
 	find ${WRKINST} -type f -exec perl -pi -e 's,${WRKINST},,g;' {} +
 
diff --git a/x11/tint2/Makefile b/x11/tint2/Makefile
index 63292bc50d2..6f5920179a7 100644
--- a/x11/tint2/Makefile
+++ b/x11/tint2/Makefile
@@ -37,4 +37,7 @@ MODGNOME_TOOLS+= desktop-file-utils \
 
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/x11/xss-lock/Makefile b/x11/xss-lock/Makefile
index 86dee44aa6f..a0496e3c5b8 100644
--- a/x11/xss-lock/Makefile
+++ b/x11/xss-lock/Makefile
@@ -22,4 +22,6 @@ LIB_DEPENDS=	devel/glib2
 BUILD_DEPENDS=	textproc/py-docutils
 NO_TEST=	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>