Merge bitcoin/bitcoin#29725: depends: build libqrencode with CMake

007ea322a6492d46f1565ef58a0c49f5b468ff20 depends: switch to building libqrencode with CMake (fanquake)
884330c0a57ce839d48606dc2de3928869b31b7d guix: make cmake-minimal a global requirement (fanquake)

Pull request description:

  Switch to building libqrencode with CMake. Note that upstream (https://github.com/fukuchi/libqrencode) hasn't seen any activity for ~4 years, so the odds of getting anything upstream seems low, but I've made two minor changes to the source here, which I will PR in any case.

  From an initial look I couldn't find any significant difference between the Autotools and CMake produced libs. As part of this change we move cmake-minimal in Guix into the global package set.

ACKs for top commit:
  TheCharlatan:
    ACK 007ea322a6492d46f1565ef58a0c49f5b468ff20

Tree-SHA512: c784f790ddea958082c8ae96d3744bdf99331a8799765f9d44f00861b8e2cfcab1a88a3d64af5b10e51a8d5938d55eb6a3d271790b565e50492a39d00dc0e30f
This commit is contained in:
fanquake 2024-04-05 15:05:50 +01:00 committed by UdjinM6
parent 1522896f9f
commit ae6e0ada9b
No known key found for this signature in database
GPG Key ID: 83592BD1400D58D9
3 changed files with 32 additions and 10 deletions

View File

@ -590,6 +590,7 @@ parse, modify and abstract ELF, PE and MachO formats.")
zlib zlib
(list zlib "static") (list zlib "static")
;; Build tools ;; Build tools
cmake-minimal
gnu-make gnu-make
libtool-2.4.7 libtool-2.4.7
autoconf-2.71 autoconf-2.71
@ -615,5 +616,5 @@ parse, modify and abstract ELF, PE and MachO formats.")
((string-contains target "-linux-") ((string-contains target "-linux-")
(list (make-bitcoin-cross-toolchain target))) (list (make-bitcoin-cross-toolchain target)))
((string-contains target "darwin") ((string-contains target "darwin")
(list clang-toolchain-10 binutils cmake-minimal xorriso python-signapple)) (list clang-toolchain-10 binutils xorriso python-signapple))
(else '()))))) (else '())))))

View File

@ -3,20 +3,22 @@ $(package)_version=4.1.1
$(package)_download_path=https://fukuchi.org/works/qrencode/ $(package)_download_path=https://fukuchi.org/works/qrencode/
$(package)_file_name=$(package)-$($(package)_version).tar.bz2 $(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=e455d9732f8041cf5b9c388e345a641fd15707860f928e94507b1961256a6923 $(package)_sha256_hash=e455d9732f8041cf5b9c388e345a641fd15707860f928e94507b1961256a6923
$(package)_patches=cmake_fixups.patch
define $(package)_set_vars define $(package)_set_vars
$(package)_config_opts=--disable-shared --without-tools --without-tests --without-png $(package)_config_opts := -DWITH_TOOLS=NO -DWITH_TESTS=NO -DGPROF=OFF -DCOVERAGE=OFF
$(package)_config_opts += --disable-gprof --disable-gcov --disable-mudflap $(package)_config_opts += -DCMAKE_DISABLE_FIND_PACKAGE_PNG=TRUE -DWITHOUT_PNG=ON
$(package)_config_opts += --disable-dependency-tracking --enable-option-checking $(package)_config_opts += -DCMAKE_DISABLE_FIND_PACKAGE_ICONV=TRUE
$(package)_cflags += -Wno-int-conversion -Wno-implicit-function-declaration $(package)_cflags += -Wno-int-conversion -Wno-implicit-function-declaration
endef endef
define $(package)_preprocess_cmds define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub use patch -p1 < $($(package)_patch_dir)/cmake_fixups.patch
endef endef
define $(package)_config_cmds define $(package)_config_cmds
$($(package)_autoconf) $($(package)_cmake) -S . -B .
endef endef
define $(package)_build_cmds define $(package)_build_cmds
@ -26,7 +28,3 @@ endef
define $(package)_stage_cmds define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install $(MAKE) DESTDIR=$($(package)_staging_dir) install
endef endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@ -0,0 +1,23 @@
cmake: set minimum version to 3.5
Correct some dev warning output.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 773e037..a558145 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.1.0)
+cmake_minimum_required(VERSION 3.5)
project(QRencode VERSION 4.1.1 LANGUAGES C)
@@ -20,7 +20,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(CMAKE_THREAD_PREFER_PTHREAD ON)
find_package(Threads)
find_package(PNG)
-find_package(Iconv)
+find_package(ICONV)
if(CMAKE_USE_PTHREADS_INIT)
add_definitions(-DHAVE_LIBPTHREAD=1)