Index | Thread | Search

From:
Rafael Sadowski <rafael@sizeofvoid.org>
Subject:
Re: UPDATE: devel/cmake from 3.x to 4.x
To:
ports@openbsd.org
Date:
Tue, 21 Oct 2025 12:11:40 +0200

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 ;)
> 
> cmake.port.mk changes:
> 
> - Removed samurai support
>   Only Ninja and Unix Makefiles generators now supported.
> 
> - Restructured build targets
>   consolidated Ninja-specific build/install/test targets
> 
> - Updated Python detection
>   Align with CMake 3.18+ best practices for Python detection; the
>   new FindPython module is more robust
> 
> - Updated configure command
>   - added warning flags (--warn-uninitialized, --warn-unused-vars) and
>     removed CMake-specific flags (CMAKE_SKIP_INSTALL_ALL_DEPENDENCY,
>     CMAKE_SUPPRESS_REGENERATION)
>     This enable better debugging during port builds by catching
>     configuration issues early; removed flags may no longer be
>     necessary or have been deprecated in CMake 4.x

I'm going to do without the new warning flags for now. Too noisy
for my taste. The quality of many CMake files in the tree is
miserable.

> 
> - Added cmake-show-targets for displaying available build targets
> 
> The diff was created after a bulk build. I'm sure I've forgotten a
> few, but I'm in the process of finding and fixing them. Next bulk
> build started.
> 
> I would like to gather feedback on this, including OKs.
> 

This diff survives a bulk build. It contains two complete updates:

games/astromenace
games/freesynd

I would like to commit it and if there is anything broken, resolve it in-tree.

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 9cb40fa4ebc..4f11f06c3fb 100644
--- a/archivers/innoextract/Makefile
+++ b/archivers/innoextract/Makefile
@@ -34,6 +34,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 5826b671d5c..a64185f768e 100644
--- a/archivers/libzip/Makefile
+++ b/archivers/libzip/Makefile
@@ -26,4 +26,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..2b5a04b1570 100644
--- a/archivers/snappy/Makefile
+++ b/archivers/snappy/Makefile
@@ -30,6 +30,8 @@ CONFIGURE_ARGS +=	-DSNAPPY_HAVE_NEON=OFF \
 			-DSNAPPY_HAVE_NEON_CRC32=OFF
 .endif
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # used in tests
 BUILD_DEPENDS =		archivers/lz4 \
 			archivers/lzo2
diff --git a/archivers/unarr/Makefile b/archivers/unarr/Makefile
index 4d600593752..10c3c16a2ff 100644
--- a/archivers/unarr/Makefile
+++ b/archivers/unarr/Makefile
@@ -28,4 +28,7 @@ MODULES =	devel/cmake
 LIB_DEPENDS =	archivers/bzip2 \
 		archivers/xz
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/archivers/unshield/Makefile b/archivers/unshield/Makefile
index ef3535b274c..e6a38d14377 100644
--- a/archivers/unshield/Makefile
+++ b/archivers/unshield/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/archivers/woff2/Makefile b/archivers/woff2/Makefile
index 75fc3fcfa1e..e007c94c6d2 100644
--- a/archivers/woff2/Makefile
+++ b/archivers/woff2/Makefile
@@ -22,6 +22,8 @@ MODULES=		devel/cmake
 
 LIB_DEPENDS=		archivers/brotli
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 NO_TEST=		Yes
 
 .include <bsd.port.mk>
diff --git a/archivers/zipios/Makefile b/archivers/zipios/Makefile
index 0fd261ddc70..237f5f5e44d 100644
--- a/archivers/zipios/Makefile
+++ b/archivers/zipios/Makefile
@@ -25,4 +25,7 @@ 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..6a7115972f9 100644
--- a/archivers/zopfli/Makefile
+++ b/archivers/zopfli/Makefile
@@ -20,4 +20,7 @@ COMPILER =		base-clang ports-gcc base-gcc
 CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=yes
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/archivers/zziplib/Makefile b/archivers/zziplib/Makefile
index 872ae14f249..a3cfb7f943e 100644
--- a/archivers/zziplib/Makefile
+++ b/archivers/zziplib/Makefile
@@ -31,6 +31,8 @@ MODPY_RUNDEP =		No
 
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 TEST_TARGET =		tests
 
 .include <bsd.port.mk>
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..04af194789f 100644
--- a/audio/audiality2/Makefile
+++ b/audio/audiality2/Makefile
@@ -25,4 +25,7 @@ CONFIGURE_ARGS =	-DUSE_JACK=OFF
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/chromaprint/Makefile b/audio/chromaprint/Makefile
index 5debfd32ce9..7aba1e1eb0d 100644
--- a/audio/chromaprint/Makefile
+++ b/audio/chromaprint/Makefile
@@ -37,4 +37,7 @@ MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 do-test:
 	${WRKBUILD}/tests/all_tests
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/clementine/Makefile b/audio/clementine/Makefile
index d88e3cd35ec..d7e458aa937 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..2b9fe113e11 100644
--- a/audio/glyr/Makefile
+++ b/audio/glyr/Makefile
@@ -20,4 +20,7 @@ LIB_DEPENDS +=	net/curl \
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/gogglesmm/Makefile b/audio/gogglesmm/Makefile
index 6ae89dc1bad..e20b829e16f 100644
--- a/audio/gogglesmm/Makefile
+++ b/audio/gogglesmm/Makefile
@@ -45,4 +45,7 @@ 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..86c6a1b884c 100644
--- a/audio/hydrogen/Makefile
+++ b/audio/hydrogen/Makefile
@@ -57,6 +57,11 @@ post-extract:
 	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..7c7a2cafcbe 100644
--- a/audio/libcue/Makefile
+++ b/audio/libcue/Makefile
@@ -19,4 +19,7 @@ CONFIGURE_ARGS =	-DBUILD_SHARED_LIBS=ON
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/libebur128/Makefile b/audio/libebur128/Makefile
index 1d499cb0924..32fc9333edc 100644
--- a/audio/libebur128/Makefile
+++ b/audio/libebur128/Makefile
@@ -22,4 +22,6 @@ DEBUG_PACKAGES = ${BUILD_PACKAGES}
 # CONFIGURE_ARGS += -DENABLE_TESTS=ON
 NO_TEST = Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/liblastfm/Makefile b/audio/liblastfm/Makefile
index 086657b0557..5d774f1e7bf 100644
--- a/audio/liblastfm/Makefile
+++ b/audio/liblastfm/Makefile
@@ -31,4 +31,7 @@ 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 3eabcd4a0db..fe784fcf644 100644
--- a/audio/libmusicbrainz5/Makefile
+++ b/audio/libmusicbrainz5/Makefile
@@ -34,4 +34,7 @@ pre-configure:
 	sed -i 's,/usr/local,${LOCALBASE},g' \
 		${WRKSRC}/cmake/modules/FindNeon.cmake
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.10
+
 .include <bsd.port.mk>
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..e5d177f782c 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..78d2afbd659 100644
--- a/audio/mac/Makefile
+++ b/audio/mac/Makefile
@@ -28,4 +28,7 @@ post-extract:
 	mkdir ${WRKSRC}
 	mv ${WRKDIR}/!(mac-${VERSION}|bin) ${WRKSRC}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/milkytracker/Makefile b/audio/milkytracker/Makefile
index 638e02059f9..d9e8c1c044d 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
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 c12f9ce6f9a..ff42679f4d0 100644
--- a/audio/mscore/Makefile
+++ b/audio/mscore/Makefile
@@ -70,4 +70,7 @@ NO_TEST =	Yes
 MAJ_MIN =	${V:C/^([0-9]+\.[0-9]+).*/\1/}
 SUBST_VARS +=	MAJ_MIN
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/musepack/Makefile b/audio/musepack/Makefile
index 76c0bbf6da4..cd01e792c21 100644
--- a/audio/musepack/Makefile
+++ b/audio/musepack/Makefile
@@ -26,6 +26,8 @@ NO_TEST =		Yes
 
 FIX_CRLF_FILES =	mpcgain/gain_analysis.c
 
+CONFIGURE_ARGS+=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 post-extract:
 	cp ${WRKDIR}/libreplaygain_r${V}/include/replaygain/gain_analysis.h \
 		${WRKSRC}/mpcgain/
diff --git a/audio/ncspot/Makefile b/audio/ncspot/Makefile
index 8da532f9a93..169de47b696 100644
--- a/audio/ncspot/Makefile
+++ b/audio/ncspot/Makefile
@@ -47,6 +47,12 @@ MODCARGO_FEATURES =	cursive/termion-backend \
 
 .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/
 
@@ -56,4 +62,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${DOCDIR}
 	${INSTALL_DATA} ${WRKSRC}/README.md ${DOCDIR}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/openal/Makefile b/audio/openal/Makefile
index ff53bb8c3e7..8854a04d3ba 100644
--- a/audio/openal/Makefile
+++ b/audio/openal/Makefile
@@ -40,6 +40,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..2e495160b7c 100644
--- a/audio/soundtouch/Makefile
+++ b/audio/soundtouch/Makefile
@@ -26,4 +26,7 @@ CONFIGURE_ARGS=	-DBUILD_SHARED_LIBS=ON
 CXXFLAGS +=	-DSOUNDTOUCH_DISABLE_X86_OPTIMIZATIONS
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/umurmur/Makefile b/audio/umurmur/Makefile
index e24f9467348..278188447ce 100644
--- a/audio/umurmur/Makefile
+++ b/audio/umurmur/Makefile
@@ -33,4 +33,7 @@ post-install:
 	${SUBST_MAN} ${FILESDIR}/umurmur.conf.5 \
 		${PREFIX}/man/man5/umurmur.conf.5
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/audio/ympd/Makefile b/audio/ympd/Makefile
index 7309ffee76e..d2cd047496f 100644
--- a/audio/ympd/Makefile
+++ b/audio/ympd/Makefile
@@ -15,4 +15,7 @@ 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..4f9d6a35af9 100644
--- a/audio/zynaddsubfx/Makefile
+++ b/audio/zynaddsubfx/Makefile
@@ -43,4 +43,7 @@ post-patch:
 	sed -i s,/usr/local,${TRUEPREFIX}, ${WRKSRC}/src/main.cpp \
 	    ${WRKSRC}/src/Plugin/ZynAddSubFX/ZynAddSubFX-UI-Zest.cpp
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/abc/Makefile b/cad/abc/Makefile
index 154d67ddd0a..040d1c49d29 100644
--- a/cad/abc/Makefile
+++ b/cad/abc/Makefile
@@ -29,4 +29,7 @@ pre-configure:
 do-install:
 	${INSTALL_PROGRAM} ${WRKBUILD}/abc ${PREFIX}/bin
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/graywolf/Makefile b/cad/graywolf/Makefile
index 18216db1401..d2642fefc45 100644
--- a/cad/graywolf/Makefile
+++ b/cad/graywolf/Makefile
@@ -29,4 +29,7 @@ post-install:
 	@cd ${PREFIX}/lib/graywolf/bin/flow && \
 	    ln -sf flow.noroute flow
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/horizon-eda/Makefile b/cad/horizon-eda/Makefile
index 40b2203901c..baf202f430f 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/opencascade/Makefile b/cad/opencascade/Makefile
index 1712f0abc69..4fa3fa89eff 100644
--- a/cad/opencascade/Makefile
+++ b/cad/opencascade/Makefile
@@ -100,4 +100,7 @@ pre-configure:
 		mv $$i ${WRKSRC}/adm/templates/occt_$${i##*/}; \
 	done
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/prusaslicer/Makefile b/cad/prusaslicer/Makefile
index a9421b16854..ae926be14ff 100644
--- a/cad/prusaslicer/Makefile
+++ b/cad/prusaslicer/Makefile
@@ -76,4 +76,7 @@ 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..25c4ed0fa11 100644
--- a/cad/solvespace/Makefile
+++ b/cad/solvespace/Makefile
@@ -60,4 +60,7 @@ NO_TEST =	YES
 post-extract:
 	cp ${FILESDIR}/FindCairo.cmake ${WRKSRC}/cmake/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/cad/xtrkcad/Makefile b/cad/xtrkcad/Makefile
index fdead0a6d84..beb0ee20295 100644
--- a/cad/xtrkcad/Makefile
+++ b/cad/xtrkcad/Makefile
@@ -46,4 +46,7 @@ CONFIGURE_ENV +=	CFLAGS=-I${PREFIX}/include \
 # patches/patch-app_i18n_fi_po
 FIX_CRLF_FILES=	${WRKSRC}/app/i18n/fi.po
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/comms/gammu/Makefile b/comms/gammu/Makefile
index 093801d9a91..3e795e3410f 100644
--- a/comms/gammu/Makefile
+++ b/comms/gammu/Makefile
@@ -61,4 +61,7 @@ RUN_DEPENDS +=		databases/libdbi-drivers,-pgsql
 WANTLIB += 		pq
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/comms/hackrf/Makefile b/comms/hackrf/Makefile
index 2638e0d8f41..4b7997bead6 100644
--- a/comms/hackrf/Makefile
+++ b/comms/hackrf/Makefile
@@ -35,4 +35,7 @@ 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..be078cc3083 100644
--- a/comms/libhidapi/Makefile
+++ b/comms/libhidapi/Makefile
@@ -37,4 +37,7 @@ post-install:
 	ln -sf libhidapi-libusb.so.${LIBhidapi-libusb_VERSION} \
 		${PREFIX}/lib/libhidapi.so.${LIBhidapi-libusb_VERSION}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/comms/sigrok/pulseview/Makefile b/comms/sigrok/pulseview/Makefile
index 737a7923edb..e857393390f 100644
--- a/comms/sigrok/pulseview/Makefile
+++ b/comms/sigrok/pulseview/Makefile
@@ -31,4 +31,7 @@ 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..85a5d44dd0e 100644
--- a/converters/lastools/Makefile
+++ b/converters/lastools/Makefile
@@ -25,4 +25,7 @@ post-install:
 do-test:
 	${WRKBUILD}/src/lasinfo ${WRKSRC}/data/test.laz
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/converters/wv2/Makefile b/converters/wv2/Makefile
index 10d6ed3616d..9ea5c9e03ed 100644
--- a/converters/wv2/Makefile
+++ b/converters/wv2/Makefile
@@ -26,4 +26,7 @@ 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..a0a8d9a6eb6 100644
--- a/databases/galera/Makefile
+++ b/databases/galera/Makefile
@@ -46,4 +46,7 @@ pre-configure:
 post-install:
 	cd ${PREFIX}/lib && ln -sf libgalera_smm.so libgalera.so
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/databases/mariadb/Makefile b/databases/mariadb/Makefile
index 5a5e58b5ad6..e725db91e32 100644
--- a/databases/mariadb/Makefile
+++ b/databases/mariadb/Makefile
@@ -161,4 +161,7 @@ do-test:
 	(${MODCMAKE_TEST_TARGET}) || true # Keep on going even if regress tests fail
 	@cd ${WRKBUILD}/mysql-test && ./mysql-test-run.pl --force --verbose --max-test-fail=0
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..09d33cb9034 100644
--- a/databases/sqlitebrowser/Makefile
+++ b/databases/sqlitebrowser/Makefile
@@ -30,4 +30,7 @@ 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..1723b356af8 100644
--- a/devel/armips/Makefile
+++ b/devel/armips/Makefile
@@ -26,4 +26,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/Readme.md ${WRKSRC}/LICENSE.txt \
 		${PREFIX}/share/doc/armips
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/bullet/Makefile b/devel/bullet/Makefile
index adf680db693..de04b1ddd4b 100644
--- a/devel/bullet/Makefile
+++ b/devel/bullet/Makefile
@@ -67,4 +67,7 @@ pre-test:
 post-install:
 	rm -rf ${PREFIX}/include/bullet/pybullet
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/cjson/Makefile b/devel/cjson/Makefile
index 4ede48ee412..eeb3448c7db 100644
--- a/devel/cjson/Makefile
+++ b/devel/cjson/Makefile
@@ -26,4 +26,7 @@ ALL_TARGET =	cjson
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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/cmake.port.mk b/devel/cmake/cmake.port.mk
index 1ad3f15d0f4..5cce9bf6622 100644
--- a/devel/cmake/cmake.port.mk
+++ b/devel/cmake/cmake.port.mk
@@ -13,29 +13,36 @@ CONFIGURE_ENV += MODCMAKE_USE_SHARED_LIBS=yes
 MAKE_ENV += MODCMAKE_USE_SHARED_LIBS=yes
 .endif
 
-# Limit the number of moc/uic processes started by cmake_autogen
-# (default: number of CPUs on the system)
-CONFIGURE_ARGS += -DCMAKE_AUTOGEN_PARALLEL=${MAKE_JOBS}
-
 USE_NINJA ?= Yes
 
 .if ${USE_NINJA:L} == "yes"
+_MODCMAKE_GEN = Ninja
 BUILD_DEPENDS += devel/ninja
-.elif ${USE_NINJA:L} == "samurai"
-BUILD_DEPENDS += devel/samurai
-CONFIGURE_ARGS += -DCMAKE_MAKE_PROGRAM=samu
+.else
+_MODCMAKE_GEN = "Unix Makefiles"
+# XXX cmake include parser is bogus
+DPB_PROPERTIES += nojunk
 .endif
 
-.if ${USE_NINJA:L} == "yes" || ${USE_NINJA:L} == "samurai"
-_MODCMAKE_GEN = Ninja
-MODCMAKE_BUILD_TARGET = cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
-	cmake --build ${WRKBUILD} ${_MAKE_VERBOSE} -j ${MAKE_JOBS}
-
-MODCMAKE_INSTALL_TARGET = cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
-	${FAKE_SETUP} cmake --install ${WRKBUILD}
-
-MODCMAKE_TEST_TARGET = cd ${WRKBUILD} && exec ${SETENV} ${ALL_TEST_ENV} \
-	ctest ${_MAKE_VERBOSE} -j ${MAKE_JOBS}
+.if ${USE_NINJA:L} == "yes"
+MODCMAKE_BUILD_TARGET = cd ${WRKBUILD} && \
+	exec ${SETENV} ${MAKE_ENV} \
+	${LOCALBASE}/bin/cmake \
+		--build ${WRKBUILD} \
+		--parallel ${MAKE_JOBS} \
+		${_MAKE_VERBOSE}
+
+MODCMAKE_INSTALL_TARGET = cd ${WRKBUILD} && \
+	exec ${SETENV} ${MAKE_ENV} ${FAKE_SETUP} \
+	${LOCALBASE}/bin/cmake \
+		--install ${WRKBUILD} \
+		${_MAKE_VERBOSE}
+
+MODCMAKE_TEST_TARGET = cd ${WRKBUILD} && \
+	exec ${SETENV} ${ALL_TEST_ENV} \
+	${LOCALBASE}/bin/ctest \
+		--parallel ${MAKE_JOBS} \
+		${_MAKE_VERBOSE}
 
 # Default targets are only known after configure, see cmake-buildsystem(7) and
 # cmake-properties(7) BUILDSYSTEM_TARGETS.
@@ -62,12 +69,7 @@ do-install:
 do-test:
 	@${MODCMAKE_TEST_TARGET}
 .endif
-
-.else
-_MODCMAKE_GEN = "Unix Makefiles"
-# XXX cmake include parser is bogus
-DPB_PROPERTIES += nojunk
-.endif
+.endif # USE_NINJA
 
 # JAVA
 .if ${MODULES:Mjava}
@@ -75,18 +77,10 @@ CONFIGURE_ENV +=	JAVA_HOME=${JAVA_HOME}
 MAKE_ENV +=		JAVA_HOME=${JAVA_HOME}
 .endif
 
-# Python
+# Python detection (CMake 3.18+)
 .if ${MODULES:Mlang/python}
-# https://cmake.org/cmake/help/latest/module/FindPython3.html#artifacts-specification
-CONFIGURE_ARGS +=	-DPYTHON_EXECUTABLE=${MODPY_BIN}
-CONFIGURE_ARGS +=	-DPYTHON_LIBRARY_DIRS=${MODPY_LIBDIR}
-CONFIGURE_ARGS +=	-DPYTHON_INCLUDE_DIR=${MODPY_INCDIR}
+CONFIGURE_ARGS +=	-DPython_ROOT_DIR=${LOCALBASE}
 CONFIGURE_ARGS +=	-DPython_EXECUTABLE=${MODPY_BIN}
-CONFIGURE_ARGS +=	-DPython_LIBRARY_DIRS=${MODPY_LIBDIR}
-CONFIGURE_ARGS +=	-DPython_INCLUDE_DIR=${MODPY_INCDIR}
-CONFIGURE_ARGS +=	-DPython${MODPY_MAJOR_VERSION}_EXECUTABLE=${MODPY_BIN}
-CONFIGURE_ARGS +=	-DPython${MODPY_MAJOR_VERSION}_LIBRARY_DIRS=${MODPY_LIBDIR}
-CONFIGURE_ARGS +=	-DPython${MODPY_MAJOR_VERSION}_INCLUDE_DIR=${MODPY_INCDIR}
 .endif
 
 # Lua
@@ -101,6 +95,10 @@ CONFIGURE_ARGS +=	-DLUA_LIBRARY=${LOCALBASE}/lib/liblua${MODLUA_VERSION}.so.${MO
 CONFIGURE_ARGS +=	-DRUBY_EXECUTABLE=${RUBY}
 .endif
 
+# Limit the number of moc/uic processes started by cmake_autogen
+# (default: number of CPUs on the system)
+CONFIGURE_ARGS += -DCMAKE_AUTOGEN_PARALLEL=${MAKE_JOBS}
+
 # TCL
 .if ${MODULES:Mlang/tcl}
 CONFIGURE_ENV +=	MODTCL_VERSION=${MODTCL_VERSION} \
@@ -128,22 +126,23 @@ CONFIGURE_ENV +=	MODTK_VERSION=${MODTK_VERSION} \
 CONFIGURE_ENV +=	LDFLAGS="${MODCMAKE_LDFLAGS}"
 .endif
 
-MODCMAKE_DEBUG ?=		No
 
 .if empty(CONFIGURE_STYLE)
 CONFIGURE_STYLE =	cmake
 .endif
-MODCMAKE_configure =	cd ${WRKBUILD} && ${SETENV} \
+
+MODCMAKE_configure = \
+	cd ${WRKBUILD} && ${SETENV} \
 	CC="${CC}" CFLAGS="${CFLAGS}" \
 	CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
 	${CONFIGURE_ENV} ${LOCALBASE}/bin/cmake \
 		-B ${WRKBUILD} \
 		-S ${WRKSRC} \
 		-G ${_MODCMAKE_GEN} \
-		-DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON \
-		-DCMAKE_SUPPRESS_REGENERATION=ON \
 		${CONFIGURE_ARGS}
 
+MODCMAKE_DEBUG ?=		No
+
 .if !defined(CONFIGURE_ARGS) || ! ${CONFIGURE_ARGS:M*CMAKE_BUILD_TYPE*}
 .  if ${MODCMAKE_DEBUG:L} == "yes"
 CONFIGURE_ARGS += -DCMAKE_BUILD_TYPE=Debug
@@ -153,6 +152,7 @@ CONFIGURE_ARGS += -DCMAKE_BUILD_TYPE=Release
 MODCMAKE_BUILD_SUFFIX =	-release.cmake
 .  endif
 .endif
+
 SUBST_VARS +=	MODCMAKE_BUILD_SUFFIX
 
 SEPARATE_BUILD ?=	Yes
@@ -189,3 +189,11 @@ MODCMAKE_VERBOSE ?= Yes
 .if ${MODCMAKE_VERBOSE:L} == "yes"
 _MAKE_VERBOSE = --verbose
 .endif
+
+.PHONY: cmake-show-targets
+MODCMAKE_configure: cmake-show-targets
+cmake-show-targets:
+	cd ${WRKBUILD} && \
+	exec ${SETENV} ${MAKE_ENV} ${LOCALBASE}/bin/cmake \
+	--build ${WRKBUILD} \
+	-t help
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..c884b1ab490 100644
--- a/devel/cpputest/Makefile
+++ b/devel/cpputest/Makefile
@@ -36,4 +36,7 @@ pre-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/doc/cpputest
 	${INSTALL_DATA} ${WRKSRC}/README.md ${PREFIX}/share/doc/cpputest
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/crc32c/Makefile b/devel/crc32c/Makefile
index 8797a63b0ed..4aaab8cb169 100644
--- a/devel/crc32c/Makefile
+++ b/devel/crc32c/Makefile
@@ -26,4 +26,7 @@ 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..919e4bc66c8 100644
--- a/devel/docopt.cpp/Makefile
+++ b/devel/docopt.cpp/Makefile
@@ -22,4 +22,7 @@ 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..e58bdf73bb7 100644
--- a/devel/dyncall/Makefile
+++ b/devel/dyncall/Makefile
@@ -20,4 +20,7 @@ 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..b6c88b4b593 100644
--- a/devel/glog/Makefile
+++ b/devel/glog/Makefile
@@ -30,4 +30,7 @@ ALL_TARGET =		glog
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/json-c/Makefile b/devel/json-c/Makefile
index 0a45ce80a85..d5afbe89fcd 100644
--- a/devel/json-c/Makefile
+++ b/devel/json-c/Makefile
@@ -18,6 +18,8 @@ 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..ca066cf9420 100644
--- a/devel/kainjow-mustache/Makefile
+++ b/devel/kainjow-mustache/Makefile
@@ -22,4 +22,7 @@ do-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/include
 	${INSTALL_DATA} ${WRKSRC}/mustache.hpp ${PREFIX}/include
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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 85b1672152c..aab269a2651 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/kproperty/Makefile b/devel/kproperty/Makefile
index c99986e4288..40fafb675e8 100644
--- a/devel/kproperty/Makefile
+++ b/devel/kproperty/Makefile
@@ -42,4 +42,6 @@ TEST_DEPENDS =		${FULLPKGNAME}:${BUILD_PKGPATH}
 
 TEST_IS_INTERACTIVE =	Yes
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/libdivsufsort/Makefile b/devel/libdivsufsort/Makefile
index 14442159962..736bb80c4bc 100644
--- a/devel/libdivsufsort/Makefile
+++ b/devel/libdivsufsort/Makefile
@@ -22,4 +22,7 @@ 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 607c51a36b0..5d5a8fd79d2 100644
--- a/devel/libftdi1/Makefile
+++ b/devel/libftdi1/Makefile
@@ -38,4 +38,7 @@ 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/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..c601fd22457 100644
--- a/devel/libyajl/patches/patch-CMakeLists_txt
+++ b/devel/libyajl/patches/patch-CMakeLists_txt
@@ -1,7 +1,17 @@
 Check for compiler flags not available with gcc < 4.
 
---- 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..d71b8649c8b 100644
--- a/devel/libyajl/patches/patch-reformatter_CMakeLists_txt
+++ b/devel/libyajl/patches/patch-reformatter_CMakeLists_txt
@@ -1,8 +1,9 @@
 Fix static linking and tests
 (from gentoo linux)
 
---- 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 +13,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..ab41620faf1 100644
--- a/devel/libyajl/patches/patch-verify_CMakeLists_txt
+++ b/devel/libyajl/patches/patch-verify_CMakeLists_txt
@@ -1,14 +1,21 @@
 Fix static linking and tests
 (from gentoo linux)
 
---- 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,9 @@ 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 1a76fe4aa45..c80864e3b2c 100644
--- a/devel/llvm-lit/Makefile
+++ b/devel/llvm-lit/Makefile
@@ -69,4 +69,7 @@ do-install:
 do-test:
 	@${MODCMAKE_BUILD_TARGET} --target ${TEST_TARGET}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/log4cplus/Makefile b/devel/log4cplus/Makefile
index e3347dd8d77..7c71270f42a 100644
--- a/devel/log4cplus/Makefile
+++ b/devel/log4cplus/Makefile
@@ -28,4 +28,7 @@ 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..72f6920db4c 100644
--- a/devel/lua-openbsd/Makefile
+++ b/devel/lua-openbsd/Makefile
@@ -26,4 +26,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${MODLUA_EXAMPLEDIR}
 	${INSTALL_DATA} ${WRKSRC}/example/*.lua ${MODLUA_EXAMPLEDIR}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/msgpack/Makefile b/devel/msgpack/Makefile
index 12948a88f91..d68e02ac493 100644
--- a/devel/msgpack/Makefile
+++ b/devel/msgpack/Makefile
@@ -32,4 +32,7 @@ ALL_TARGET =		msgpack-c msgpack-c-static
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/mygui/Makefile b/devel/mygui/Makefile
index cba18733b75..7e09cd56a17 100644
--- a/devel/mygui/Makefile
+++ b/devel/mygui/Makefile
@@ -34,6 +34,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/mygui/patches/patch-CMakeLists_txt b/devel/mygui/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..690479444b5
--- /dev/null
+++ b/devel/mygui/patches/patch-CMakeLists_txt
@@ -0,0 +1,12 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -8,7 +8,7 @@
+ cmake_minimum_required(VERSION 2.8.12)
+ cmake_policy(SET CMP0003 NEW)
+ cmake_policy(SET CMP0011 NEW)
+-cmake_policy(SET CMP0048 OLD)
++cmake_policy(SET CMP0048 NEW)
+ 
+ # for link time optimization, remove if cmake version is >= 3.9
+ if(POLICY CMP0069) # LTO
diff --git a/devel/olm/Makefile b/devel/olm/Makefile
index 10005cf30d2..2b824172dc7 100644
--- a/devel/olm/Makefile
+++ b/devel/olm/Makefile
@@ -24,4 +24,7 @@ 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..d0b897ea9cd 100644
--- a/devel/physfs/Makefile
+++ b/devel/physfs/Makefile
@@ -21,4 +21,7 @@ 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..1ec8729e805 100644
--- a/devel/protozero/Makefile
+++ b/devel/protozero/Makefile
@@ -23,4 +23,7 @@ NO_BUILD=	Yes
 pre-test:
 	@${MODCMAKE_BUILD_TARGET}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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 9e186c20b79..d1c69c44007 100644
--- a/devel/pycdc/Makefile
+++ b/devel/pycdc/Makefile
@@ -26,4 +26,7 @@ pre-test:
 
 TEST_DEPENDS =		shells/bash
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..5365530eadf 100644
--- a/devel/rttr/Makefile
+++ b/devel/rttr/Makefile
@@ -25,4 +25,7 @@ CONFIGURE_ARGS +=	-DBUILD_DOCUMENTATION=OFF
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/devel/seergdb/Makefile b/devel/seergdb/Makefile
index be121e06c6d..998a88ca4c4 100644
--- a/devel/seergdb/Makefile
+++ b/devel/seergdb/Makefile
@@ -30,4 +30,7 @@ WRKSRC=			${WRKDIST}/src
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/Seer{GdbConfigPage,GdbWidget,MainWindow}.cpp
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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 0c25e887820..c2fefb431b9 100644
--- a/devel/thrift/Makefile
+++ b/devel/thrift/Makefile
@@ -27,6 +27,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..12f8c94c400 100644
--- a/devel/yaml-cpp/Makefile
+++ b/devel/yaml-cpp/Makefile
@@ -21,4 +21,7 @@ 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 5806d2008fc..a8aed525968 100644
--- a/devel/z80ex/Makefile
+++ b/devel/z80ex/Makefile
@@ -17,4 +17,7 @@ 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 4830ec2e55a..0a0c59f9998 100644
--- a/editors/calligraplan/Makefile
+++ b/editors/calligraplan/Makefile
@@ -89,6 +89,8 @@ LIB_DEPENDS =	devel/kf5/kactivities \
 		security/qca-qt5 \
 		x11/qt5/qtx11extras
 
+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..34a2293409e 100644
--- a/editors/teaqt/Makefile
+++ b/editors/teaqt/Makefile
@@ -34,4 +34,7 @@ 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..805e7448107 100644
--- a/editors/texworks/Makefile
+++ b/editors/texworks/Makefile
@@ -77,4 +77,7 @@ CONFIGURE_ARGS +=	-DTeXworks_MAN_DIR=/man/man1
 pre-configure:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/citra/Makefile b/emulators/citra/Makefile
index 9052859b13f..a5dce61900e 100644
--- a/emulators/citra/Makefile
+++ b/emulators/citra/Makefile
@@ -91,4 +91,7 @@ PKG_ARGS +=	-Dx86=1
 PKG_ARGS +=	-Dx86=0
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/dolphin/Makefile b/emulators/dolphin/Makefile
index 1357d4be96a..5c9d561b83f 100644
--- a/emulators/dolphin/Makefile
+++ b/emulators/dolphin/Makefile
@@ -144,4 +144,7 @@ post-configure:
 	@mv ${WRKSRC}/Externals/soundtouch/SoundTouch.h \
 		${WRKSRC}/Externals/soundtouch/ExtSoundTouch.h
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/emulators/emulationstation/Makefile b/emulators/emulationstation/Makefile
index 17d044abc3b..0e70d6e7603 100644
--- a/emulators/emulationstation/Makefile
+++ b/emulators/emulationstation/Makefile
@@ -33,4 +33,7 @@ LIB_DEPENDS =		devel/boost \
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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/astromenace/Makefile b/games/astromenace/Makefile
index 53cd9501ae8..8289c16a5fb 100644
--- a/games/astromenace/Makefile
+++ b/games/astromenace/Makefile
@@ -1,45 +1,33 @@
-COMMENT =		hardcore 3D space shmup
-BROKEN-sparc64 =	SIGABRT terminate called after throwing an instance of 'std::bad_alloc'
-BROKEN-powerpc =	SIGABRT terminate called after throwing an instance of 'std::bad_alloc'
-BROKEN-powerpc64 =	SIGABRT terminate called after throwing an instance of 'std::bad_alloc'
+COMMENT =	hardcore 3D space shmup
 
-V =			1.3.2
-DISTNAME =		astromenace-src-$V
-PKGNAME =		astromenace-$V
-REVISION =		1
+V =		1.4.3
+GH_ACCOUNT =	viewizard
+GH_PROJECT =	astromenace
+GH_TAGNAME =	v${V}
 
-CATEGORIES =		games
+CATEGORIES =	games
 
-HOMEPAGE =		http://www.viewizard.com/
+HOMEPAGE =	http://www.viewizard.com/
 
 # code GPLv3+, data a mix of GPLv3+, CC BY-SA 3.0, SIL OFL 1.1
 PERMIT_PACKAGE =	Yes
 
-WANTLIB += GL GLU ICE SDL SM X11 Xext Xinerama alut c fontconfig
-WANTLIB += freetype m ogg openal pthread ${COMPILER_LIBCXX} vorbis vorbisfile
+WANTLIB += ${COMPILER_LIBCXX} GL GLU SDL2 alut c freetype m ogg
+WANTLIB += openal vorbis vorbisfile
 
-COMPILER =		base-clang ports-gcc base-gcc
+COMPILER =	base-clang ports-gcc base-gcc
 
-SITES =			${SITE_SOURCEFORGE:=openastromenace/}
-EXTRACT_SUFX =		.tar.bz2
+MODULES =	devel/cmake
 
-MODULES =		devel/cmake
-LIB_DEPENDS =		audio/freealut \
-			audio/libvorbis \
-			audio/openal \
-			devel/sdl
+LIB_DEPENDS =	audio/freealut \
+		audio/libvorbis \
+		audio/libogg \
+		audio/openal \
+		devel/sdl2
 
-CONFIGURE_ARGS +=	-DDATADIR=${PREFIX}/share/astromenace
+CONFIGURE_ARGS =	-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
+			-DDATADIR=${LOCALBASE}/share/astromenace
 
 NO_TEST =		Yes
 
-WRKDIST =		${WRKDIR}/AstroMenace
-
-do-install:
-	cd ${WRKSRC} && \
-		${WRKBUILD}/AstroMenace --pack --rawdata=./RAW_VFS_DATA --dir=.
-	${INSTALL_PROGRAM} ${WRKBUILD}/AstroMenace ${PREFIX}/bin/astromenace
-	${INSTALL_DATA_DIR} ${PREFIX}/share/astromenace/
-	${INSTALL_DATA} ${WRKSRC}/gamedata.vfs ${PREFIX}/share/astromenace/
-
 .include <bsd.port.mk>
diff --git a/games/astromenace/distinfo b/games/astromenace/distinfo
index b7b950303ae..4d374f64c9e 100644
--- a/games/astromenace/distinfo
+++ b/games/astromenace/distinfo
@@ -1,2 +1,2 @@
-SHA256 (astromenace-src-1.3.2.tar.bz2) = m3dd8rFXVluXrKAI3YebhnzTN3wHuCnO5rU0Jjk1f+Y=
-SIZE (astromenace-src-1.3.2.tar.bz2) = 55390211
+SHA256 (astromenace-1.4.3.tar.gz) = wWtWv6kfCxrBUg0J6tKh+7U2y9PU86eSoiLUS8cI6rE=
+SIZE (astromenace-1.4.3.tar.gz) = 67248904
diff --git a/games/astromenace/patches/patch-AstroMenaceSource_config_h b/games/astromenace/patch-AstroMenaceSource_config_h
similarity index 100%
rename from games/astromenace/patches/patch-AstroMenaceSource_config_h
rename to games/astromenace/patch-AstroMenaceSource_config_h
diff --git a/games/astromenace/patches/patch-CMakeLists_txt b/games/astromenace/patches/patch-CMakeLists_txt
new file mode 100644
index 00000000000..9976181ea51
--- /dev/null
+++ b/games/astromenace/patches/patch-CMakeLists_txt
@@ -0,0 +1,19 @@
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -264,7 +264,7 @@ IF(NOT DONTCREATEVFS)
+ ENDIF(NOT DONTCREATEVFS)
+ 
+ 
+-INSTALL(TARGETS astromenace DESTINATION ${CMAKE_INSTALL_PREFIX})
++INSTALL(TARGETS astromenace DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
+ IF(MINGW)
+     INSTALL(FILES "${DEPS_PATH}/bin/SDL2.dll"          DESTINATION ${CMAKE_INSTALL_PREFIX})
+     INSTALL(FILES "${DEPS_PATH}/bin/libalut.dll"       DESTINATION ${CMAKE_INSTALL_PREFIX})
+@@ -275,5 +275,5 @@ IF(MINGW)
+     INSTALL(FILES "${DEPS_PATH}/bin/libfreetype.dll"   DESTINATION ${CMAKE_INSTALL_PREFIX})
+ ENDIF(MINGW)
+ IF(NOT DONTCREATEVFS)
+-    INSTALL(FILES "${PROJECT_BINARY_DIR}/gamedata.vfs"   DESTINATION ${CMAKE_INSTALL_PREFIX})
++    INSTALL(FILES "${PROJECT_BINARY_DIR}/gamedata.vfs"   DESTINATION ${DATADIR})
+ ENDIF(NOT DONTCREATEVFS)
diff --git a/games/billyfrontier/Makefile b/games/billyfrontier/Makefile
index 5462bab38fd..f9017ad103b 100644
--- a/games/billyfrontier/Makefile
+++ b/games/billyfrontier/Makefile
@@ -47,4 +47,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.billyfrontier.desktop \
 		${PREFIX}/share/applications/
 
+
+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/bugdom/Makefile b/games/bugdom/Makefile
index c2d45b47979..844357d320a 100644
--- a/games/bugdom/Makefile
+++ b/games/bugdom/Makefile
@@ -51,4 +51,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.bugdom.desktop \
 		${PREFIX}/share/applications/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/bugdom2/Makefile b/games/bugdom2/Makefile
index ad6f547df17..fe7a0e59677 100644
--- a/games/bugdom2/Makefile
+++ b/games/bugdom2/Makefile
@@ -51,4 +51,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.bugdom2.desktop \
 		${PREFIX}/share/applications/
 
+
+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 2007ba9b996..b1fd7a2f3f7 100644
--- a/games/cataclysm-dda/Makefile
+++ b/games/cataclysm-dda/Makefile
@@ -96,4 +96,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 c141c0af580..facdca57bef 100644
--- a/games/choria/Makefile
+++ b/games/choria/Makefile
@@ -49,4 +49,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/cromagrally/Makefile b/games/cromagrally/Makefile
index d910f4109cf..28721fae2ca 100644
--- a/games/cromagrally/Makefile
+++ b/games/cromagrally/Makefile
@@ -50,4 +50,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.cromagrally.desktop \
 		${PREFIX}/share/applications/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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 5d2733f3198..bfbc42a7f55 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/ezquake/Makefile b/games/ezquake/Makefile
index b7a51cff7e9..d57c620451d 100644
--- a/games/ezquake/Makefile
+++ b/games/ezquake/Makefile
@@ -44,4 +44,7 @@ do-install:
 	${INSTALL_DATA_DIR} ${GAMEDIR}
 	@cp ${WRKSRC}/misc/sb/*.txt ${GAMEDIR}/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/fallingtime/Makefile b/games/fallingtime/Makefile
index 050c2089876..df1b54cdd1e 100644
--- a/games/fallingtime/Makefile
+++ b/games/fallingtime/Makefile
@@ -26,4 +26,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 2443d054b90..095c440f9c6 100644
--- a/games/flightgear/base/Makefile
+++ b/games/flightgear/base/Makefile
@@ -35,4 +35,7 @@ MODCMAKE_LDFLAGS =	-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..62ee6fcd9e8 100644
--- a/games/fna/faudio/Makefile
+++ b/games/fna/faudio/Makefile
@@ -24,4 +24,7 @@ WRKDIST =	${WRKDIR}/FNA/lib/FAudio
 do-test:
 	cd ${WRKBUILD} && ./faudio_tests
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/fna/fna3d/Makefile b/games/fna/fna3d/Makefile
index 5a963d78821..c2a105b0d5f 100644
--- a/games/fna/fna3d/Makefile
+++ b/games/fna/fna3d/Makefile
@@ -31,4 +31,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/include/*.h ${PREFIX}/include/
 	${INSTALL_DATA} ${WRKBUILD}/libFNA3D.so.${LIBFNA3D_VERSION} ${PREFIX}/lib/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/freeblocks/Makefile b/games/freeblocks/Makefile
index 199e958df14..dd719f327fe 100644
--- a/games/freeblocks/Makefile
+++ b/games/freeblocks/Makefile
@@ -26,4 +26,7 @@ CONFIGURE_ARGS =	-DDATADIR="${PREFIX}/share/freeblocks"
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/freeserf/Makefile b/games/freeserf/Makefile
index ae98527f226..1f4d3d78bdd 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 ec145f966e6..d2546cf7ed2 100644
--- a/games/freesynd/Makefile
+++ b/games/freesynd/Makefile
@@ -1,7 +1,9 @@
 COMMENT =	open source reimplementation of Syndicate game
-DISTNAME =	freesynd-0.7.5
+
+VERSION =	0.8
+PKGNAME =	freesynd-${VERSION}
+DISTNAME =	Freesynd-${VERSION}-Source
 CATEGORIES = 	games x11
-REVISION =	0
 
 HOMEPAGE =	https://freesynd.sourceforge.io/
 MAINTAINER =	Brian Callahan <bcallah@openbsd.org>
@@ -9,18 +11,28 @@ MAINTAINER =	Brian Callahan <bcallah@openbsd.org>
 # GPLv2+
 PERMIT_PACKAGE =  Yes
 
-WANTLIB += ${COMPILER_LIBCXX} SDL SDL_image SDL_mixer c m png
+WANTLIB += ${COMPILER_LIBCXX} SDL2 SDL2_image SDL2_mixer c m png
 WANTLIB += z
 
-CXXFLAGS_base-clang =	-std=c++11
-
 SITES =		${SITE_SOURCEFORGE:=freesynd/}
+EXTRACT_SUFX =	.zip
 
 MODULES =	devel/cmake
 
-LIB_DEPENDS =	devel/sdl-image \
-		devel/sdl-mixer
+LIB_DEPENDS =	devel/sdl2 \
+		devel/sdl2-image \
+		devel/sdl2-mixer \
+		graphics/png
+
+CONFIGURE_ARGS =	-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
+			-DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON \
+			-DCMAKE_INSTALL_DOCDIR=${LOCALBASE}/share/doc/freesynd
 
 NO_TEST =	Yes
 
+post-install:
+	${INSTALL_DATA_DIR} ${PREFIX}/share/examples/freesynd/
+	mv ${WRKINST}${LOCALBASE}${SYSCONFDIR}/freesynd/freesynd.ini \
+		${PREFIX}/share/examples/freesynd/
+
 .include <bsd.port.mk>
diff --git a/games/freesynd/distinfo b/games/freesynd/distinfo
index 46fec90a150..6ed05420bd4 100644
--- a/games/freesynd/distinfo
+++ b/games/freesynd/distinfo
@@ -1,2 +1,2 @@
-SHA256 (freesynd-0.7.5.tar.gz) = GhYRzcOvVln8w/bB215IleZ7WnsixVQW/+7t1jYAgOM=
-SIZE (freesynd-0.7.5.tar.gz) = 2622888
+SHA256 (Freesynd-0.8-Source.zip) = pz3kZXxdlF4zihS5FczZdsRz+dpall8Nwi+yojOlFYs=
+SIZE (Freesynd-0.8-Source.zip) = 6406015
diff --git a/games/freesynd/patches/patch-utils_src_file_cpp b/games/freesynd/patches/patch-utils_src_file_cpp
new file mode 100644
index 00000000000..cdf3902bb81
--- /dev/null
+++ b/games/freesynd/patches/patch-utils_src_file_cpp
@@ -0,0 +1,14 @@
+Index: utils/src/file.cpp
+--- utils/src/file.cpp.orig
++++ utils/src/file.cpp
+@@ -356,8 +356,8 @@ void File::setOriginalDataFolder(const std::string& pa
+ #if defined(__APPLE__)
+     // Under Mac, it can't be in the bundle as user should not access it
+ #else
+-    // Under Windows/unix it's in the same directory as our data
+-    dataPath_ = ourDataPath_;
++    // Under Windows/unix it's in the data subdirectory of our data
++    dataPath_ = ourDataPath_ / "data";
+ #endif
+     }
+     LOG(Log::k_FLG_IO, "File", "setOriginalDataPath", ("set data path to %s", dataPath_.string().c_str()));
diff --git a/games/freesynd/pkg/PLIST b/games/freesynd/pkg/PLIST
index 937eb45446d..727029125fc 100644
--- a/games/freesynd/pkg/PLIST
+++ b/games/freesynd/pkg/PLIST
@@ -1,18 +1,24 @@
 @bin bin/freesynd
+etc/
+etc/freesynd/
+share/doc/freesynd/
+share/doc/freesynd/changelog.gz
+share/doc/freesynd/copyright
 share/doc/pkg-readmes/${PKGSTEM}
+share/examples/freesynd/
+share/examples/freesynd/freesynd.ini
 share/freesynd/
-share/freesynd/data/
-share/freesynd/data/cursors/
-share/freesynd/data/cursors/cursors.png
-share/freesynd/data/lang/
-share/freesynd/data/lang/english.lng
-share/freesynd/data/lang/french.lng
-share/freesynd/data/lang/german.lng
-share/freesynd/data/lang/italian.lng
-share/freesynd/data/music/
-share/freesynd/data/music/assassinate.ogg
-share/freesynd/data/music/intro.ogg
-share/freesynd/data/ref/
-share/freesynd/data/ref/original_data.crc
-share/freesynd/data/ref/research.dat
-share/freesynd/data/ref/weapons.dat
+share/freesynd/cursors/
+share/freesynd/cursors/cursors.png
+share/freesynd/lang/
+share/freesynd/lang/english.lng
+share/freesynd/lang/french.lng
+share/freesynd/lang/german.lng
+share/freesynd/lang/italian.lng
+share/freesynd/music/
+share/freesynd/music/assassinate.ogg
+share/freesynd/music/intro.ogg
+share/freesynd/ref/
+share/freesynd/ref/original_data.crc
+share/freesynd/ref/research.dat
+share/freesynd/ref/weapons.dat
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 18aac02af55..d6ffceb9471 100644
--- a/games/julius/Makefile
+++ b/games/julius/Makefile
@@ -26,4 +26,7 @@ RUN_DEPENDS =	devel/desktop-file-utils \
 pre-configure:
 	sed -i 's,--coverage,,g' ${WRKSRC}/test/CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..77bf8c80a87 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
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..046f4a944e2 100644
--- a/games/meandmyshadow/Makefile
+++ b/games/meandmyshadow/Makefile
@@ -41,4 +41,7 @@ post-install:
 		${PREFIX}/share/icons/hicolor/${i}/apps/
 .endfor
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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/mightymike/Makefile b/games/mightymike/Makefile
index 0149fc600dc..ced2b322b4b 100644
--- a/games/mightymike/Makefile
+++ b/games/mightymike/Makefile
@@ -47,4 +47,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/mightymike.desktop \
 		${PREFIX}/share/applications/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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/mvdsv/Makefile b/games/mvdsv/Makefile
index 1560302349f..f9155d4e03b 100644
--- a/games/mvdsv/Makefile
+++ b/games/mvdsv/Makefile
@@ -39,4 +39,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/Quake/QW/progs/qwprogs.dat \
 		${SAMPLES_DIR}/qwprogs.dat
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/nanosaur/Makefile b/games/nanosaur/Makefile
index 96bcc0c6a39..c4277f89c83 100644
--- a/games/nanosaur/Makefile
+++ b/games/nanosaur/Makefile
@@ -47,4 +47,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.nanosaur.desktop \
 		${PREFIX}/share/applications/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/nanosaur2/Makefile b/games/nanosaur2/Makefile
index 7568694db9d..34aae770427 100644
--- a/games/nanosaur2/Makefile
+++ b/games/nanosaur2/Makefile
@@ -40,4 +40,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/nanosaur2-desktopicon.png \
 		${PREFIX}/share/icons/hicolor/256x256/apps
 
+
+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 144c4ef1e4f..43102947551 100644
--- a/games/openclonk/Makefile
+++ b/games/openclonk/Makefile
@@ -56,4 +56,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 da56276dd85..ad9806d7acf 100644
--- a/games/openjk/Makefile
+++ b/games/openjk/Makefile
@@ -38,4 +38,7 @@ post-install:
 	${SUBST_CMD} -c -m 555 ${FILESDIR}/jasp ${PREFIX}/bin/jasp
 	${SUBST_CMD} -c -m 555 ${FILESDIR}/openjkded ${PREFIX}/bin/openjkded
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/openrct2/Makefile b/games/openrct2/Makefile
index c3df6d00f88..4f062b57c28 100644
--- a/games/openrct2/Makefile
+++ b/games/openrct2/Makefile
@@ -93,4 +93,7 @@ post-extract:
 	unzip -q ${FULLDISTDIR}/replays-${REPLAYS_V}.zip -d \
 		${WRKSRC}/testdata/replays
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/opensonic/Makefile b/games/opensonic/Makefile
index 7dfabbc8310..164a68dedd7 100644
--- a/games/opensonic/Makefile
+++ b/games/opensonic/Makefile
@@ -41,4 +41,7 @@ post-install:
 
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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/ottomatic/Makefile b/games/ottomatic/Makefile
index cc8a90aed00..949aab35054 100644
--- a/games/ottomatic/Makefile
+++ b/games/ottomatic/Makefile
@@ -50,4 +50,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/packaging/io.jor.ottomatic.desktop \
 		${PREFIX}/share/applications/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/pentobi/Makefile b/games/pentobi/Makefile
index 6fd2bcc7247..ca8814517f0 100644
--- a/games/pentobi/Makefile
+++ b/games/pentobi/Makefile
@@ -39,4 +39,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 3cef9ecbb7e..cc701c23450 100644
--- a/games/recoil-rts/Makefile
+++ b/games/recoil-rts/Makefile
@@ -104,6 +104,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/sdl-jstest/Makefile b/games/sdl-jstest/Makefile
index cb534e70faf..0fc1b4d0f4d 100644
--- a/games/sdl-jstest/Makefile
+++ b/games/sdl-jstest/Makefile
@@ -21,4 +21,7 @@ LIB_DEPENDS =	devel/sdl \
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/shockolate/Makefile b/games/shockolate/Makefile
index 0fab6971f03..f506c151cd7 100644
--- a/games/shockolate/Makefile
+++ b/games/shockolate/Makefile
@@ -39,4 +39,7 @@ do-install:
 	${SUBST_CMD} -c -m 755 ${FILESDIR}/systemshock.sh \
 		${PREFIX}/bin/systemshock
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/solarus/roth/Makefile b/games/solarus/roth/Makefile
index 4d80bcd6c2b..2c6bf2aed7a 100644
--- a/games/solarus/roth/Makefile
+++ b/games/solarus/roth/Makefile
@@ -16,4 +16,7 @@ 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 0e005721d37..2c57c02f418 100644
--- a/games/solarus/solarus/Makefile
+++ b/games/solarus/solarus/Makefile
@@ -38,4 +38,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..1cdcab6a7f9 100644
--- a/games/solarus/zsdx/Makefile
+++ b/games/solarus/zsdx/Makefile
@@ -17,4 +17,7 @@ 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/zsxd/Makefile b/games/solarus/zsxd/Makefile
index 63982981f05..ec1bdaeb4a9 100644
--- a/games/solarus/zsxd/Makefile
+++ b/games/solarus/zsxd/Makefile
@@ -17,4 +17,7 @@ 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/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 2696fabf955..72ccf7b7d64 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 714c43c0a36..6a4b72c9c95 100644
--- a/games/supertuxkart/Makefile
+++ b/games/supertuxkart/Makefile
@@ -46,6 +46,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..da1d9c89618 100644
--- a/games/teeworlds/Makefile
+++ b/games/teeworlds/Makefile
@@ -46,4 +46,7 @@ post-install:
 	${INSTALL_DATA} ${WRKDIR}/maps/* ${WRKDIST}/datasrc/maps/
 	${INSTALL_DATA} ${WRKDIR}/languages/* ${WRKDIST}/datasrc/languages/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/tic80/Makefile b/games/tic80/Makefile
index b156c401c44..cfaecb5c4be 100644
--- a/games/tic80/Makefile
+++ b/games/tic80/Makefile
@@ -58,4 +58,7 @@ post-install:
 		${WRKBUILD}/bin/{bin2txt,cart2prj,player-sdl,prj2cart,xplode} \
 			${PREFIX}/bin
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/games/valyriatear/Makefile b/games/valyriatear/Makefile
index e563f5fe354..db6487ee97e 100644
--- a/games/valyriatear/Makefile
+++ b/games/valyriatear/Makefile
@@ -52,4 +52,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/vvvvvv/Makefile b/games/vvvvvv/Makefile
index 29582474d9d..a9e35448b30 100644
--- a/games/vvvvvv/Makefile
+++ b/games/vvvvvv/Makefile
@@ -48,4 +48,7 @@ do-install:
 	${INSTALL_DATA_DIR}	${PREFIX}/share/vvvvvv
 	${INSTALL_DATA}		${WRKDIST}/LICENSE.md ${PREFIX}/share/vvvvvv/
 
+
+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/eccodes/Makefile b/geo/eccodes/Makefile
index 68ad656ea4a..b557b859146 100644
--- a/geo/eccodes/Makefile
+++ b/geo/eccodes/Makefile
@@ -54,4 +54,7 @@ CONFIGURE_ARGS = -DDISABLE_OS_CHECK=ON \
 
 TEST_ENV =	LD_LIBRARY_PATH=${WRKBUILD}/lib
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/geo/garmindev/Makefile b/geo/garmindev/Makefile
index 2e0172dcd51..24076804fae 100644
--- a/geo/garmindev/Makefile
+++ b/geo/garmindev/Makefile
@@ -21,4 +21,7 @@ LIB_DEPENDS +=	devel/libusb-compat
 post-install:
 	rm ${PREFIX}/lib/qlandkartegt/libgarmin.a
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/geo/gpstk/Makefile b/geo/gpstk/Makefile
index f864d6558a6..be2a77cecc3 100644
--- a/geo/gpstk/Makefile
+++ b/geo/gpstk/Makefile
@@ -32,4 +32,7 @@ CXXFLAGS_base-clang +=	-std=c++14
 
 CONFIGURE_ARGS=		-DBUILD_EXT=on
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .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/osm2pgrouting/Makefile b/geo/osm2pgrouting/Makefile
index d8cb0acd4c7..def85317fdb 100644
--- a/geo/osm2pgrouting/Makefile
+++ b/geo/osm2pgrouting/Makefile
@@ -21,4 +21,7 @@ LIB_DEPENDS =		devel/boost \
 			databases/libpqxx
 RUN_DEPENDS =		geo/pgrouting
 
+
+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 49b4f826c90..5068145a819 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 dca111c435c..1d788747899 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/bonzomatic/Makefile b/graphics/bonzomatic/Makefile
index 0fef705f085..0a8910dd7fe 100644
--- a/graphics/bonzomatic/Makefile
+++ b/graphics/bonzomatic/Makefile
@@ -53,4 +53,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/bonzomatic/
 	${INSTALL_DATA} ${WRKSRC}/README.md ${PREFIX}/share/bonzomatic/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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 cae384e27b7..986247337bd 100644
--- a/graphics/drawpile/Makefile
+++ b/graphics/drawpile/Makefile
@@ -37,6 +37,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..8684bf664a8 100644
--- a/graphics/freeglut/Makefile
+++ b/graphics/freeglut/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/graphics/glm/Makefile b/graphics/glm/Makefile
index 5510ef17fea..9680746d61e 100644
--- a/graphics/glm/Makefile
+++ b/graphics/glm/Makefile
@@ -18,7 +18,8 @@ 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
 
 PKG_ARCH=	*
 
diff --git a/graphics/graphite2/Makefile b/graphics/graphite2/Makefile
index f49eb4abcf1..d6fa5249638 100755
--- a/graphics/graphite2/Makefile
+++ b/graphics/graphite2/Makefile
@@ -30,6 +30,8 @@ MODPY_RUNDEP=	No
 # XXX needs py-fontTools (not ported)
 TEST_DEPENDS=	${MODPY_RUN_DEPENDS}
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 # XXX push upstream: collides with swap32(3)
 pre-configure:
 	sed -i 's,swap32,gr_swap32,g' ${WRKSRC}/tests/comparerenderer/FeatureParser.h
diff --git a/graphics/lensfun/Makefile b/graphics/lensfun/Makefile
index 74ac536367b..2c9eba86570 100644
--- a/graphics/lensfun/Makefile
+++ b/graphics/lensfun/Makefile
@@ -44,4 +44,7 @@ CONFIGURE_ARGS+=	-DBUILD_FOR_SSE=OFF
 CONFIGURE_ARGS+=	-DBUILD_FOR_SSE2=OFF
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/libpano13/Makefile b/graphics/libpano13/Makefile
index 7454cd55815..38965c371a6 100644
--- a/graphics/libpano13/Makefile
+++ b/graphics/libpano13/Makefile
@@ -21,4 +21,7 @@ LIB_DEPENDS =		graphics/jpeg \
 
 FIX_CRLF_FILES =	CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/openscenegraph/Makefile b/graphics/openscenegraph/Makefile
index ddb285da68b..f3ef0861d01 100644
--- a/graphics/openscenegraph/Makefile
+++ b/graphics/openscenegraph/Makefile
@@ -71,6 +71,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/optipng/Makefile b/graphics/optipng/Makefile
index ffedb762d0b..64ba44926e9 100644
--- a/graphics/optipng/Makefile
+++ b/graphics/optipng/Makefile
@@ -20,4 +20,7 @@ CONFIGURE_ARGS +=	-DOPTIPNG_USE_SYSTEM_LIBS=on
 post-install:
 	chmod +x ${PREFIX}/bin/optipng # ...
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/simgear/Makefile b/graphics/simgear/Makefile
index d609a128e48..31d98a03c89 100644
--- a/graphics/simgear/Makefile
+++ b/graphics/simgear/Makefile
@@ -38,4 +38,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..3f76485bf79 100644
--- a/graphics/spirv-cross/Makefile
+++ b/graphics/spirv-cross/Makefile
@@ -25,4 +25,7 @@ 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/vigra/Makefile b/graphics/vigra/Makefile
index a5750f2c1c4..58749426d77 100644
--- a/graphics/vigra/Makefile
+++ b/graphics/vigra/Makefile
@@ -55,4 +55,7 @@ CXXFLAGS += 		-I${LOCALBASE}/include/Imath
 # Building tests does not affect packaging.
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/graphics/zxing/Makefile b/graphics/zxing/Makefile
index 26380c25cb5..1d7a9dcdd3a 100644
--- a/graphics/zxing/Makefile
+++ b/graphics/zxing/Makefile
@@ -29,4 +29,7 @@ CONFIGURE_ARGS=	-DBUILD_TESTING=ON
 do-test:
 	${WRKBUILD}/testrunner
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/lang/brainfuck/Makefile b/lang/brainfuck/Makefile
index 4e35771b00c..c722ea790fb 100644
--- a/lang/brainfuck/Makefile
+++ b/lang/brainfuck/Makefile
@@ -20,4 +20,7 @@ post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/examples/brainfuck
 	${INSTALL_DATA} ${WRKSRC}/examples/* ${PREFIX}/share/examples/brainfuck/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/lang/nekovm/Makefile b/lang/nekovm/Makefile
index d145825172a..f357a290038 100644
--- a/lang/nekovm/Makefile
+++ b/lang/nekovm/Makefile
@@ -35,4 +35,7 @@ WRKDIST =		${WRKDIR}/neko-${V:S/./-/g}
 do-gen:
 	${SUBST_CMD} ${WRKSRC}/CMakeLists.txt
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..664eda2da26 100644
--- a/math/arpack/Makefile
+++ b/math/arpack/Makefile
@@ -59,4 +59,7 @@ post-install:
 	${INSTALL_DATA} ${WRKDIST}/DOCUMENTS/* ${PREFIX}/share/doc/arpack
 	${INSTALL_DATA} ${WRKDIST}/COPYING ${PREFIX}/share/doc/arpack
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/double-conversion/Makefile b/math/double-conversion/Makefile
index 70661263756..12676e53d51 100644
--- a/math/double-conversion/Makefile
+++ b/math/double-conversion/Makefile
@@ -20,4 +20,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..5c7e3bdccaf 100644
--- a/math/fann/Makefile
+++ b/math/fann/Makefile
@@ -25,4 +25,7 @@ do-test:
 	cd ${WRKSRC}/examples; ${MAKE_PROGRAM} runtest GCC="${CC}" \
 	    CFLAGS="${CFLAGS} -I${TRUEPREFIX}/include -L${TRUEPREFIX}/lib"
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/flann/Makefile b/math/flann/Makefile
index 6aff3f6e488..c3c47a7cd21 100644
--- a/math/flann/Makefile
+++ b/math/flann/Makefile
@@ -33,4 +33,7 @@ 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 9c79c41ff27..12291e44be5 100644
--- a/math/lean/Makefile
+++ b/math/lean/Makefile
@@ -37,4 +37,7 @@ TEST_DEPENDS =		${MODPY_RUN_DEPENDS} \
 			shells/bash \
 			textproc/gdiff
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/minisat/Makefile b/math/minisat/Makefile
index ae342de48e6..dd6acd3c35b 100644
--- a/math/minisat/Makefile
+++ b/math/minisat/Makefile
@@ -23,4 +23,7 @@ MODULES=		devel/cmake
 
 NO_TEST=		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/muparser/Makefile b/math/muparser/Makefile
index 90c0c4f83bd..3d58435d512 100644
--- a/math/muparser/Makefile
+++ b/math/muparser/Makefile
@@ -20,4 +20,7 @@ COMPILER =	base-clang ports-gcc
 
 MODULES =	devel/cmake
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/math/nlopt/Makefile b/math/nlopt/Makefile
index b6328be6fd3..a0604494fb1 100644
--- a/math/nlopt/Makefile
+++ b/math/nlopt/Makefile
@@ -2,9 +2,9 @@ COMMENT =		library for nonlinear optimization
 
 GH_ACCOUNT =		stevengj
 GH_PROJECT =		nlopt
-GH_TAGNAME =		v2.7.1
+GH_TAGNAME =		v2.10.0
 
-SHARED_LIBS =		nlopt	1.0	# 0.11.0
+SHARED_LIBS =		nlopt	2.0	# 0.11.0
 
 CATEGORIES =		math
 
diff --git a/math/nlopt/distinfo b/math/nlopt/distinfo
index 697ec0eebf2..a592584a48a 100644
--- a/math/nlopt/distinfo
+++ b/math/nlopt/distinfo
@@ -1,2 +1,2 @@
-SHA256 (nlopt-2.7.1.tar.gz) = 24gjL6XO8P9uOZQ/xjq2B0IIgx3AAxzxVF9uzTGuKho=
-SIZE (nlopt-2.7.1.tar.gz) = 2044180
+SHA256 (nlopt-2.10.0.tar.gz) = UG+Dqed4rU8gREbplQnLK99VOd6L7MwmCgFL1WAje+E=
+SIZE (nlopt-2.10.0.tar.gz) = 2065021
diff --git a/math/nlopt/pkg/PLIST b/math/nlopt/pkg/PLIST
index 08fdf16929c..f821bed96a2 100644
--- a/math/nlopt/pkg/PLIST
+++ b/math/nlopt/pkg/PLIST
@@ -1,4 +1,3 @@
-include/nlopt.f
 include/nlopt.h
 include/nlopt.hpp
 lib/cmake/
diff --git a/math/py-osqp/Makefile b/math/py-osqp/Makefile
index fe4734e766c..2eebab08d2c 100644
--- a/math/py-osqp/Makefile
+++ b/math/py-osqp/Makefile
@@ -25,4 +25,9 @@ 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' \
+	{} \;
+
 .include <bsd.port.mk>
diff --git a/math/qhull/Makefile b/math/qhull/Makefile
index cc0f27d76a7..244e8b7f771 100644
--- a/math/qhull/Makefile
+++ b/math/qhull/Makefile
@@ -25,5 +25,6 @@ EXTRACT_SUFX =		.tgz
 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 0ef5e39830f..80599aec8f6 100644
--- a/misc/feathernotes/Makefile
+++ b/misc/feathernotes/Makefile
@@ -30,4 +30,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/llama.cpp/Makefile b/misc/llama.cpp/Makefile
index 760d6a696b1..5ed44a295a4 100644
--- a/misc/llama.cpp/Makefile
+++ b/misc/llama.cpp/Makefile
@@ -29,4 +29,7 @@ CXXFLAGS +=		-I${LOCALBASE}/include
 post-install:
 	rm ${PREFIX}/bin/test-*
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/misc/openbabel/Makefile b/misc/openbabel/Makefile
index 4e144855296..2fe9b96708f 100644
--- a/misc/openbabel/Makefile
+++ b/misc/openbabel/Makefile
@@ -38,7 +38,8 @@ 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
 
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..ea155621473 100644
--- a/misc/shared-desktop-ontologies/Makefile
+++ b/misc/shared-desktop-ontologies/Makefile
@@ -18,4 +18,7 @@ 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 72dd53772bf..a5b5731d9a7 100644
--- a/misc/subsurface/Makefile
+++ b/misc/subsurface/Makefile
@@ -97,4 +97,7 @@ post-build:
 		cp ${WRKSRC}/Documentation/$$f.html.git \
 		${WRKBUILD}/Documentation/$$f.html; done
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/multimedia/libmatroska/Makefile b/multimedia/libmatroska/Makefile
index 54877784da2..6963369666b 100644
--- a/multimedia/libmatroska/Makefile
+++ b/multimedia/libmatroska/Makefile
@@ -24,6 +24,8 @@ CFLAGS +=	-I${LOCALBASE}/include
 CXXFLAGS +=	-I${LOCALBASE}/include
 MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
 
+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..246cd0cab66 100644
--- a/multimedia/libvidstab/Makefile
+++ b/multimedia/libvidstab/Makefile
@@ -30,6 +30,8 @@ CONFIGURE_ARGS +=	-DSSE2_FOUND=OFF -DSSE3_FOUND=OFF \
 # 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
 WRKDIST = 	${WRKDIR}/vid.stab-$V
diff --git a/multimedia/svt-av1/Makefile b/multimedia/svt-av1/Makefile
index 42fb6df0b8b..5bbd7d4d24f 100644
--- a/multimedia/svt-av1/Makefile
+++ b/multimedia/svt-av1/Makefile
@@ -38,4 +38,7 @@ CONFIGURE_ARGS+=-DENABLE_SVE=OFF
 
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/multimedia/x265/Makefile b/multimedia/x265/Makefile
index a7e1f79bef6..d15efb8b3ca 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/bro/Makefile b/net/bro/Makefile
index 2b0f91af4fb..a371c932d2c 100644
--- a/net/bro/Makefile
+++ b/net/bro/Makefile
@@ -108,4 +108,7 @@ post-install:
 # handled by exec-add / exec-delete; symlink changes according to spooldir
 	rm ${PREFIX}/share/zeekctl/scripts/zeekctl-config.sh
 
+
+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..c92b8b0e8de 100644
--- a/net/libsignal-protocol-c/Makefile
+++ b/net/libsignal-protocol-c/Makefile
@@ -28,4 +28,7 @@ post-extract:
 	mv ${WRKSRC}/src/uthash.h ${WRKSRC}/src/uthash_local.h
 	mv ${WRKSRC}/src/utlist.h ${WRKSRC}/src/utlist_local.h
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/libvncserver/Makefile b/net/libvncserver/Makefile
index cf6b3ddd594..f0772f376cd 100644
--- a/net/libvncserver/Makefile
+++ b/net/libvncserver/Makefile
@@ -38,4 +38,7 @@ 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/nanomsg/Makefile b/net/nanomsg/Makefile
index 3c7c304513d..93e64a64b68 100644
--- a/net/nanomsg/Makefile
+++ b/net/nanomsg/Makefile
@@ -18,4 +18,7 @@ CONFIGURE_ARGS =	-DNN_ENABLE_DOC=false
 
 WANTLIB +=		c pthread
 
+
+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..03961e7cfdc 100644
--- a/net/slurm/Makefile
+++ b/net/slurm/Makefile
@@ -29,4 +29,7 @@ post-install:
 .endfor
 	${INSTALL_MAN} ${WRKSRC}/slurm.1 ${PREFIX}/man/man1/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/synergy/Makefile b/net/synergy/Makefile
index e90fab0e41a..621d9b975b8 100644
--- a/net/synergy/Makefile
+++ b/net/synergy/Makefile
@@ -37,4 +37,7 @@ do-install:
 	${INSTALL_MAN} ${WRKSRC}/doc/synergys.man \
 		${PREFIX}/man/man1/synergys.1
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/net/transmission/Makefile b/net/transmission/Makefile
index 38c630ef612..8b6307a7fa0 100644
--- a/net/transmission/Makefile
+++ b/net/transmission/Makefile
@@ -72,6 +72,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
 
@@ -95,4 +97,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/net/transmission/patches/patch-third-party_libevent_CMakeLists_txt b/net/transmission/patches/patch-third-party_libevent_CMakeLists_txt
new file mode 100644
index 00000000000..6c3d480dfee
--- /dev/null
+++ b/net/transmission/patches/patch-third-party_libevent_CMakeLists_txt
@@ -0,0 +1,12 @@
+Index: third-party/libevent/CMakeLists.txt
+--- third-party/libevent/CMakeLists.txt.orig
++++ third-party/libevent/CMakeLists.txt
+@@ -19,7 +19,7 @@
+ #       start libevent.sln
+ #
+ 
+-cmake_minimum_required(VERSION 3.1 FATAL_ERROR)
++cmake_minimum_required(VERSION 3.1...3.5 FATAL_ERROR)
+ 
+ if (POLICY CMP0054)
+     cmake_policy(SET CMP0054 NEW)
diff --git a/news/nzbget/Makefile b/news/nzbget/Makefile
index e2906b32a5c..2f30dff7e30 100644
--- a/news/nzbget/Makefile
+++ b/news/nzbget/Makefile
@@ -37,4 +37,7 @@ post-install:
 	${SUBST_CMD} ${WRKBUILD}/nzbget.conf
 	${INSTALL_DATA} ${WRKBUILD}/nzbget.conf ${PREFIX}/share/nzbget/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .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/brlaser/Makefile b/print/brlaser/Makefile
index 591ba8b95f2..41838efdf9c 100644
--- a/print/brlaser/Makefile
+++ b/print/brlaser/Makefile
@@ -19,4 +19,7 @@ COMPILER =	base-clang ports-gcc base-gcc
 
 LIB_DEPENDS=	print/cups,-libs
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/print/gl2ps/Makefile b/print/gl2ps/Makefile
index c93962dfa49..aef426a0a84 100644
--- a/print/gl2ps/Makefile
+++ b/print/gl2ps/Makefile
@@ -23,7 +23,9 @@ 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
 
 TEST_IS_INTERACTIVE =	x11
 
diff --git a/productivity/ledger/Makefile b/productivity/ledger/Makefile
index 121abc742db..a79dc283ed7 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..affb9abf357 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:
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..54017646336 100644
--- a/productivity/taskwarrior/Makefile
+++ b/productivity/taskwarrior/Makefile
@@ -56,4 +56,7 @@ post-install:
 		${PREFIX}/share/vim/vimfiles/syntax/
 	rm -r ${PREFIX}/share/doc/taskwarrior/scripts/{vim,bash,fish}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/productivity/teapot/Makefile b/productivity/teapot/Makefile
index 8b9c6294b8c..8018f48a774 100644
--- a/productivity/teapot/Makefile
+++ b/productivity/teapot/Makefile
@@ -37,4 +37,7 @@ post-install:
 	@cd ${WRKDIR}/Teapot-${V}-Linux/share/doc/teapot/; tar cf - . | \
 		tar xf - -C ${PREFIX}/share/doc/teapot/
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/security/encfs/Makefile b/security/encfs/Makefile
index 084a121a511..6135199ed35 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,5 @@ NO_TEST =		Yes
 
 .if ${CHOSEN_COMPILER} == "ports-gcc"
 WANTLIB += atomic
+
 .endif
diff --git a/security/lastpass-cli/Makefile b/security/lastpass-cli/Makefile
index 6317b09df63..28a6f5a6f7d 100644
--- a/security/lastpass-cli/Makefile
+++ b/security/lastpass-cli/Makefile
@@ -28,4 +28,7 @@ do-test:
 	chmod +x ${WRKSRC}/test/tests ${WRKSRC}/test/*.sh
 	cd ${WRKSRC} && make test
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/security/polarssl/Makefile b/security/polarssl/Makefile
index 097fa327303..bd17e3348d7 100644
--- a/security/polarssl/Makefile
+++ b/security/polarssl/Makefile
@@ -39,4 +39,7 @@ post-install:
 	echo "should not be relied upon by the normal end-user.") \
 	> ${PREFIX}/share/examples/mbedtls/README
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/security/rp++/Makefile b/security/rp++/Makefile
index 791e836eb79..759a793a8ad 100644
--- a/security/rp++/Makefile
+++ b/security/rp++/Makefile
@@ -26,4 +26,7 @@ WRKSRC =	${WRKDIST}/src
 do-install:
 	${INSTALL_PROGRAM} ${WRKBUILD}/rp-lin ${PREFIX}/bin/rp++
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/security/yubico/yubico-piv-tool/Makefile b/security/yubico/yubico-piv-tool/Makefile
index 9c48e6e4c8d..bafdbe5db1e 100644
--- a/security/yubico/yubico-piv-tool/Makefile
+++ b/security/yubico/yubico-piv-tool/Makefile
@@ -28,4 +28,7 @@ TEST_DEPENDS=	${FULLPKGNAME}:${FULLPKGPATH}
 post-patch:
 	${SUBST_CMD} ${WRKSRC}/tool/tests/basic.sh
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/shells/fish/v3/Makefile b/shells/fish/v3/Makefile
index c1fa0b5e0ed..bd7a14ebc53 100644
--- a/shells/fish/v3/Makefile
+++ b/shells/fish/v3/Makefile
@@ -71,4 +71,7 @@ RUST_COMMENT =		"@comment "
 RUST_COMMENT =
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..e87c7b43c6a 100644
--- a/sysutils/dfc/Makefile
+++ b/sysutils/dfc/Makefile
@@ -21,4 +21,7 @@ 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 e895f24c4a7..a6e25910ddf 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 2608d80f913..57cedc1dced 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..40d4fd83002 100644
--- a/sysutils/lsyncd/Makefile
+++ b/sysutils/lsyncd/Makefile
@@ -45,4 +45,7 @@ do-test:
 	cd ${WRKSRC} && ${MODLUA_BIN} tests/${f}.lua || echo ${f} failed
 .endfor
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
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..4c3ced8b8f5 100644
--- a/telephony/bcg729/Makefile
+++ b/telephony/bcg729/Makefile
@@ -32,4 +32,7 @@ pre-test:
 do-test:
 	cd ${WRKBUILD}/test && sh ./testCampaignAll
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/telephony/libzrtp/Makefile b/telephony/libzrtp/Makefile
index da38a533f3e..0c23af01ad3 100644
--- a/telephony/libzrtp/Makefile
+++ b/telephony/libzrtp/Makefile
@@ -16,4 +16,7 @@ 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..b80311fa91c 100644
--- a/textproc/clucene/Makefile
+++ b/textproc/clucene/Makefile
@@ -30,4 +30,7 @@ CONFIGURE_ARGS=	-DBUILD_CONTRIBS_LIB:BOOL=ON
 CXXFLAGS +=	-std=c++03
 .endif
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/ebook-tools/Makefile b/textproc/ebook-tools/Makefile
index 4a10873feb2..059183d72c2 100644
--- a/textproc/ebook-tools/Makefile
+++ b/textproc/ebook-tools/Makefile
@@ -21,4 +21,8 @@ LIB_DEPENDS =		textproc/libxml \
 
 NO_TEST =		Yes
 
+MODCMAKE_LDFLAGS =	-L${LOCALBASE}/lib
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/halibut/Makefile b/textproc/halibut/Makefile
index 6b370fea4a7..b14461a6297 100644
--- a/textproc/halibut/Makefile
+++ b/textproc/halibut/Makefile
@@ -13,4 +13,7 @@ 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 6ab3e68d151..b3a6704e113 100644
--- a/textproc/hotdoc/Makefile
+++ b/textproc/hotdoc/Makefile
@@ -47,4 +47,5 @@ post-install:
 	${MODPY_COMPILEALL} ${WRKINST}/${MODPY_SITEPKG}/backports/
 
 # LGPLv2.1+
+
 .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 12e2422bcae..bfa0906ba7a 100644
--- a/textproc/libebml/Makefile
+++ b/textproc/libebml/Makefile
@@ -22,4 +22,7 @@ MODULES +=	devel/cmake
 
 NO_TEST =	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/libical/Makefile b/textproc/libical/Makefile
index 28029448cdc..0e54d09952d 100644
--- a/textproc/libical/Makefile
+++ b/textproc/libical/Makefile
@@ -52,6 +52,8 @@ CONFIGURE_ARGS=		-DENABLE_GTK_DOC=false \
 			-DICAL_GLIB_VAPI=true \
 			-DICAL_BUILD_DOCS=false
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 DEBUG_PACKAGES=		${BUILD_PACKAGES}
 
 CFLAGS +=		-I${LOCALBASE}/include
diff --git a/textproc/luceneplusplus/Makefile b/textproc/luceneplusplus/Makefile
index ac08f718248..0c41cb2b740 100644
--- a/textproc/luceneplusplus/Makefile
+++ b/textproc/luceneplusplus/Makefile
@@ -35,4 +35,7 @@ do-test:
 	cd ${WRKBUILD} && ./src/test/lucene++-tester \
 		--test_dir="${WRKSRC}/src/test/testfiles/"
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/multimarkdown/Makefile b/textproc/multimarkdown/Makefile
index f35e910441a..726a3bc0d03 100644
--- a/textproc/multimarkdown/Makefile
+++ b/textproc/multimarkdown/Makefile
@@ -21,4 +21,7 @@ post-install:
 	rm ${PREFIX}/{LICENSE.txt,README.txt}
 	mv ${PREFIX}/bin/{mmd,mmd2xhtml} # avoid conflict with mtools
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/pplatex/Makefile b/textproc/pplatex/Makefile
index 3596c5bfe91..9407e6bdbdf 100644
--- a/textproc/pplatex/Makefile
+++ b/textproc/pplatex/Makefile
@@ -29,4 +29,7 @@ LIB_DEPENDS =	devel/pcre
 do-install:
 	${INSTALL} ${WRKBUILD}/src/pplatex ${PREFIX}/bin
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/rapidjson/Makefile b/textproc/rapidjson/Makefile
index 9cf63f33478..d1abdc4b339 100644
--- a/textproc/rapidjson/Makefile
+++ b/textproc/rapidjson/Makefile
@@ -18,6 +18,7 @@ COMPILER=	base-clang ports-gcc
 MODULES=	devel/cmake
 
 # disable -march=native
-CONFIGURE_ARGS=	-DRAPIDJSON_ENABLE_INSTRUMENTATION_OPT=OFF
+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..dac2b441f1b 100644
--- a/textproc/uchardet/Makefile
+++ b/textproc/uchardet/Makefile
@@ -23,4 +23,7 @@ CONFIGURE_ARGS=	-DCMAKE_INSTALL_MANDIR="${PREFIX}/man"
 
 DEBUG_PACKAGES=	${BUILD_PACKAGES}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/vislcg3/Makefile b/textproc/vislcg3/Makefile
index cbe469fc6f1..689f9b7d458 100644
--- a/textproc/vislcg3/Makefile
+++ b/textproc/vislcg3/Makefile
@@ -32,4 +32,6 @@ BUILD_DEPENDS =		devel/boost
 LIB_DEPENDS =		databases/sqlite3 \
 			textproc/icu4c
 
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/textproc/xalan-c/Makefile b/textproc/xalan-c/Makefile
index 6b86726eeb5..9cff41426cc 100644
--- a/textproc/xalan-c/Makefile
+++ b/textproc/xalan-c/Makefile
@@ -29,4 +29,7 @@ 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..a27f4b28050 100644
--- a/www/civetweb/Makefile
+++ b/www/civetweb/Makefile
@@ -26,4 +26,7 @@ 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/hiawatha/Makefile b/www/hiawatha/Makefile
index 5990f9a168d..545fd1cd2fe 100644
--- a/www/hiawatha/Makefile
+++ b/www/hiawatha/Makefile
@@ -47,4 +47,7 @@ post-install:
 		${PREFIX}/lib/hiawatha \
 		${PREFIX}/include/{psa,mbedtls}
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>
diff --git a/www/libwebsockets/Makefile b/www/libwebsockets/Makefile
index bc7e4ee7b70..0d54527c2f6 100644
--- a/www/libwebsockets/Makefile
+++ b/www/libwebsockets/Makefile
@@ -30,4 +30,7 @@ CONFIGURE_ARGS +=	-DDISABLE_WERROR=ON \
 
 NO_TEST =		Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .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..eb32eaf008b 100644
--- a/www/tidy/Makefile
+++ b/www/tidy/Makefile
@@ -22,5 +22,6 @@ NO_TEST =	Yes
 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..32da2adc3a6 100644
--- a/x11/dbusmenu-qt/Makefile
+++ b/x11/dbusmenu-qt/Makefile
@@ -25,6 +25,7 @@ CONFIGURE_ARGS=	-DUSE_QT4=OFF \
 		-DWITH_DOC=OFF \
 		-DCMAKE_DISABLE_FIND_PACKAGE_QJSON=ON
 
+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 2fa4551fce3..53b99d2e7d7 100644
--- a/x11/freerdp/Makefile
+++ b/x11/freerdp/Makefile
@@ -67,4 +67,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/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 abed685d745..34873c16db1 100644
--- a/x11/qt5/qtwebkit/Makefile
+++ b/x11/qt5/qtwebkit/Makefile
@@ -127,6 +127,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..afc39167846 100644
--- a/x11/xss-lock/Makefile
+++ b/x11/xss-lock/Makefile
@@ -22,4 +22,7 @@ LIB_DEPENDS=	devel/glib2
 BUILD_DEPENDS=	textproc/py-docutils
 NO_TEST=	Yes
 
+
+CONFIGURE_ARGS +=	-DCMAKE_POLICY_VERSION_MINIMUM=3.5
+
 .include <bsd.port.mk>