aboutsummaryrefslogtreecommitdiff
path: root/depends
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2024-04-15 14:02:40 +0100
committerfanquake <fanquake@gmail.com>2024-07-23 15:37:01 +0100
commita517029646ac86f9d72fcea204ff45db41702e37 (patch)
tree428ec23532328d3cfec985049a91a6068c029b36 /depends
parent51ac4792e571623af69a6c3e1031900ea962dce1 (diff)
depends: switch to building expat with CMake
Add a patch to set the minimum CMake to 3.16.
Diffstat (limited to 'depends')
-rw-r--r--depends/packages/expat.mk16
-rw-r--r--depends/patches/expat/cmake_minimum.patch13
2 files changed, 24 insertions, 5 deletions
diff --git a/depends/packages/expat.mk b/depends/packages/expat.mk
index 2ec660109c..fb7d509938 100644
--- a/depends/packages/expat.mk
+++ b/depends/packages/expat.mk
@@ -3,19 +3,25 @@ $(package)_version=2.4.8
$(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_$(subst .,_,$($(package)_version))/
$(package)_file_name=$(package)-$($(package)_version).tar.xz
$(package)_sha256_hash=f79b8f904b749e3e0d20afeadecf8249c55b2e32d4ebb089ae378df479dcaf25
+$(package)_build_subdir=build
+$(package)_patches += cmake_minimum.patch
# -D_DEFAULT_SOURCE defines __USE_MISC, which exposes additional
# definitions in endian.h, which are required for a working
# endianness check in configure when building with -flto.
define $(package)_set_vars
- $(package)_config_opts=--disable-shared --without-docbook --without-tests --without-examples
- $(package)_config_opts += --disable-dependency-tracking --enable-option-checking
- $(package)_config_opts += --without-xmlwf
+ $(package)_config_opts := -DCMAKE_BUILD_TYPE=None -DEXPAT_BUILD_TOOLS=OFF
+ $(package)_config_opts += -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_BUILD_TESTS=OFF
+ $(package)_config_opts += -DBUILD_SHARED_LIBS=OFF
$(package)_cppflags += -D_DEFAULT_SOURCE
endef
+define $(package)_preprocess_cmds
+ patch -p1 < $($(package)_patch_dir)/cmake_minimum.patch
+endef
+
define $(package)_config_cmds
- $($(package)_autoconf)
+ $($(package)_cmake) -S .. -B .
endef
define $(package)_build_cmds
@@ -27,5 +33,5 @@ define $(package)_stage_cmds
endef
define $(package)_postprocess_cmds
- rm -rf share lib/cmake lib/*.la
+ rm -rf share lib/cmake
endef
diff --git a/depends/patches/expat/cmake_minimum.patch b/depends/patches/expat/cmake_minimum.patch
new file mode 100644
index 0000000000..a849a82a33
--- /dev/null
+++ b/depends/patches/expat/cmake_minimum.patch
@@ -0,0 +1,13 @@
+build: set minimum required CMake to 3.16
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -33,7 +33,7 @@
+ # Unlike most of Expat,
+ # this file is copyrighted under the BSD-license for buildsystem files of KDE.
+
+-cmake_minimum_required(VERSION 3.1.3)
++cmake_minimum_required(VERSION 3.16)
+
+ # This allows controlling documented build time switches
+ # when Expat is pulled in using the add_subdirectory function, e.g.