diff --git a/0002-Make-use-of-fPIC-parameter-when-building.patch b/0002-Make-use-of-fPIC-parameter-when-building.patch deleted file mode 100644 index 07d6a21..0000000 --- a/0002-Make-use-of-fPIC-parameter-when-building.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 8b4866c98775680abc49e8c1c0c50daa25dea052 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= -Date: Tue, 3 Dec 2019 11:59:59 +0100 -Subject: [PATCH 2/5] Make use of -fPIC parameter when building' - ---- - c/Makefile | 2 +- - cpp/Makefile | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/c/Makefile b/c/Makefile -index b27449c..bf79462 100644 ---- a/c/Makefile -+++ b/c/Makefile -@@ -77,7 +77,7 @@ $(LIBFILE): $(LIBOBJ) - - # Object files - %.o: %.c .deps/timestamp -- $(CC) $(CFLAGS) -c -o $@ -MMD -MF .deps/$*.d $< -+ $(CC) $(CFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $< - - # Have a place to store header dependencies automatically generated by compiler - .deps/timestamp: -diff --git a/cpp/Makefile b/cpp/Makefile -index 62e03c5..deb8924 100644 ---- a/cpp/Makefile -+++ b/cpp/Makefile -@@ -73,7 +73,7 @@ $(LIBFILE): $(LIBOBJ) - - # Object files - %.o: %.cpp .deps/timestamp -- $(CXX) $(CXXFLAGS) -c -o $@ -MMD -MF .deps/$*.d $< -+ $(CXX) $(CXXFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $< - - # Have a place to store header dependencies automatically generated by compiler - .deps/timestamp: --- -2.24.0 - diff --git a/0003-Generate-both-shared-and-static-libraries.patch b/0003-Generate-both-shared-and-static-libraries.patch deleted file mode 100644 index 37fc05e..0000000 --- a/0003-Generate-both-shared-and-static-libraries.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 16351a7ebaf318d21632bbaabf0675a70bb67dc7 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= -Date: Tue, 3 Dec 2019 12:07:19 +0100 -Subject: [PATCH 3/5] Generate both shared and static libraries - ---- - c/Makefile | 14 ++++++++++---- - cpp/Makefile | 14 ++++++++++---- - 2 files changed, 20 insertions(+), 8 deletions(-) - -Index: QR-Code-generator-1.8.0/c/Makefile -=================================================================== ---- QR-Code-generator-1.8.0.orig/c/Makefile -+++ QR-Code-generator-1.8.0/c/Makefile -@@ -51,16 +51,19 @@ CFLAGS += -std=c99 -O - # ---- Targets to build ---- - - LIB = qrcodegen --LIBFILE = lib$(LIB).a -+ARFILE = lib$(LIB).a -+LIBFILE = lib$(LIB).so -+# Bump the soname number when the ABI changes and gets incompatible -+SO_NAME = $(LIBFILE).1 - LIBOBJ = qrcodegen.o - MAINS = qrcodegen-demo qrcodegen-test - - # Build all binaries --all: $(LIBFILE) $(MAINS) -+all: $(LIBFILE) $(ARFILE) $(MAINS) - - # Delete build output - clean: -- rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS) -+ rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS) - rm -rf .deps - - # Executable files -@@ -72,9 +75,12 @@ qrcodegen-test: qrcodegen-test.c $(LIBOB - $(CC) $(CFLAGS) $(LDFLAGS) -DQRCODEGEN_TEST -o $@ $^ - - # The library --$(LIBFILE): $(LIBOBJ) -+$(ARFILE): $(LIBOBJ) - $(AR) -crs $@ -- $^ - -+$(LIBFILE): $(LIBOBJ) -+ $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^ -+ - # Object files - %.o: %.c .deps/timestamp - $(CC) $(CFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $< -Index: QR-Code-generator-1.8.0/cpp/Makefile -=================================================================== ---- QR-Code-generator-1.8.0.orig/cpp/Makefile -+++ QR-Code-generator-1.8.0/cpp/Makefile -@@ -51,16 +51,19 @@ CXXFLAGS += -std=c++11 -O - # ---- Targets to build ---- - - LIB = qrcodegencpp --LIBFILE = lib$(LIB).a -+ARFILE = lib$(LIB).a -+LIBFILE = lib$(LIB).so -+# Bump the soname number when the ABI changes and gets incompatible -+SO_NAME = $(LIBFILE).1 - LIBOBJ = qrcodegen.o - MAINS = QrCodeGeneratorDemo - - # Build all binaries --all: $(LIBFILE) $(MAINS) -+all: $(LIBFILE) $(LIBFILE) $(MAINS) - - # Delete build output - clean: -- rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS) -+ rm -f -- $(LIBOBJ) $(ARFILE) $(LIBFILE) $(MAINS:=.o) $(MAINS) - rm -rf .deps - - # Executable files -@@ -68,9 +71,12 @@ clean: - $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB) - - # The library --$(LIBFILE): $(LIBOBJ) -+$(ARFILE): $(LIBOBJ) - $(AR) -crs $@ -- $^ - -+$(LIBFILE): $(LIBOBJ) -+ $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^ -+ - # Object files - %.o: %.cpp .deps/timestamp - $(CXX) $(CXXFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $< diff --git a/0004-Create-install-targets-for-C-and-CPP.patch b/0004-Create-install-targets-for-C-and-CPP.patch deleted file mode 100644 index 1b4ba7f..0000000 --- a/0004-Create-install-targets-for-C-and-CPP.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 498d2a0cf6d6f01a3ffb87e358f63c3a64afeb9f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= -Date: Tue, 3 Dec 2019 12:45:34 +0100 -Subject: [PATCH 4/5] Create install targets for C and CPP - ---- - c/Makefile | 26 ++++++++++++++++++++++++++ - cpp/Makefile | 27 +++++++++++++++++++++++++++ - 2 files changed, 53 insertions(+) - -Index: QR-Code-generator-1.8.0/c/Makefile -=================================================================== ---- QR-Code-generator-1.8.0.orig/c/Makefile -+++ QR-Code-generator-1.8.0/c/Makefile -@@ -34,6 +34,8 @@ CFLAGS += -std=c99 -O - # Extra flags for diagnostics: - # CFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address - -+# Version information -+VERSION = 1.8.0 - - # ---- Controlling make ---- - -@@ -55,9 +57,15 @@ ARFILE = lib$(LIB).a - LIBFILE = lib$(LIB).so - # Bump the soname number when the ABI changes and gets incompatible - SO_NAME = $(LIBFILE).1 -+REAL_NAME = $(LIBFILE).$(VERSION) -+HEADERS = qrcodegen.h - LIBOBJ = qrcodegen.o - MAINS = qrcodegen-demo qrcodegen-test - -+# define paths to install -+INCLUDEDIR ?= $(DESTDIR)/usr/include/qrcodegen -+LIBDIR ?= $(DESTDIR)/usr/lib -+ - # Build all binaries - all: $(LIBFILE) $(ARFILE) $(MAINS) - -@@ -66,6 +74,24 @@ clean: - rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS) - rm -rf .deps - -+install-shared: $(LIBFILE) -+ install -d $(LIBDIR) || true -+ install -m 0644 $(LIBFILE) $(LIBDIR)/$(REAL_NAME) -+ rm -f $(LIBDIR)/$(SO_NAME) -+ ln -s $(REAL_NAME) $(LIBDIR)/$(SO_NAME) -+ rm -f $(LIBDIR)/$(LIBFILE) -+ ln -s $(SO_NAME) $(LIBDIR)/$(LIBFILE) -+ -+install-static: $(ARFILE) -+ install -d $(LIBDIR) || true -+ install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE) -+ -+install-header: $(HEADERS) -+ install -d $(INCLUDEDIR) || true -+ install -m 0644 $(HEADERS) $(INCLUDEDIR)/ -+ -+install: install-shared install-static install-header -+ - # Executable files - %: %.o $(LIBFILE) - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB) -Index: QR-Code-generator-1.8.0/cpp/Makefile -=================================================================== ---- QR-Code-generator-1.8.0.orig/cpp/Makefile -+++ QR-Code-generator-1.8.0/cpp/Makefile -@@ -34,6 +34,8 @@ CXXFLAGS += -std=c++11 -O - # Extra flags for diagnostics: - # CXXFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address - -+# Version information -+VERSION = 1.8.0 - - # ---- Controlling make ---- - -@@ -55,9 +57,15 @@ ARFILE = lib$(LIB).a - LIBFILE = lib$(LIB).so - # Bump the soname number when the ABI changes and gets incompatible - SO_NAME = $(LIBFILE).1 -+REAL_NAME = $(LIBFILE).$(VERSION) -+HEADERS = qrcodegen.hpp - LIBOBJ = qrcodegen.o - MAINS = QrCodeGeneratorDemo - -+# define paths to install -+INCLUDEDIR ?= $(DESTDIR)/usr/include/qrcodegen -+LIBDIR ?= $(DESTDIR)/usr/lib -+ - # Build all binaries - all: $(LIBFILE) $(LIBFILE) $(MAINS) - -@@ -66,6 +74,24 @@ clean: - rm -f -- $(LIBOBJ) $(ARFILE) $(LIBFILE) $(MAINS:=.o) $(MAINS) - rm -rf .deps - -+install-shared: $(LIBFILE) -+ install -d $(LIBDIR) || true -+ install -m 0644 $(LIBFILE) $(LIBDIR)/$(REAL_NAME) -+ rm -f $(LIBDIR)/$(SO_NAME) -+ ln -s $(REAL_NAME) $(LIBDIR)/$(SO_NAME) -+ rm -f $(LIBDIR)/$(LIBFILE) -+ ln -s $(SO_NAME) $(LIBDIR)/$(LIBFILE) -+ -+install-static: $(ARFILE) -+ install -d $(LIBDIR) || true -+ install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE) -+ -+install-header: $(HEADERS) -+ install -d $(INCLUDEDIR) || true -+ install -m 0644 $(HEADERS) $(INCLUDEDIR)/ -+ -+install: install-shared install-static install-header -+ - # Executable files - %: %.o $(LIBFILE) - $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB) diff --git a/QR-Code-generator-1.8.0+git17.856ba8a.tar.zst b/QR-Code-generator-1.8.0+git17.856ba8a.tar.zst new file mode 100644 index 0000000..096e581 --- /dev/null +++ b/QR-Code-generator-1.8.0+git17.856ba8a.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5ee7f007cd0cc5120cab5d249ac01e8d3d54eadbd78259da91d83f068a53a16 +size 96347 diff --git a/QR-Code-generator.changes b/QR-Code-generator.changes index 932c0cf..6673178 100644 --- a/QR-Code-generator.changes +++ b/QR-Code-generator.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Wed Oct 9 10:51:51 UTC 2024 - Marcus Rueckert + +- Update to 1.8.0+git17.856ba8a + https://github.com/nayuki/QR-Code-generator/compare/v1.8.0...856ba8a +- switch build to cmake files from + https://github.com/EasyCoding/qrcodegen-cmake.git + - This build also adds the pkgconfig and cmake files for easier + integration with other projects ( like the upcoming obs-studio + 31.0.0) + - drop patches: + 0002-Make-use-of-fPIC-parameter-when-building.patch + 0003-Generate-both-shared-and-static-libraries.patch + 0004-Create-install-targets-for-C-and-CPP.patch +- use %ldconfig_scriptlets +- add BR for pkgconfig to ensure we get the pkgconfig provides + ------------------------------------------------------------------- Sun Nov 12 12:17:20 UTC 2023 - ecsos diff --git a/QR-Code-generator.spec b/QR-Code-generator.spec index e0a586c..eca8b97 100644 --- a/QR-Code-generator.spec +++ b/QR-Code-generator.spec @@ -1,7 +1,7 @@ # # spec file for package QR-Code-generator # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,20 +18,25 @@ %define libcname libqrcodegen1 %define libcppname libqrcodegencpp1 + +%global cmake_code_version 1.8.0.cmake3 + %{?sle15_python_module_pythons} + Name: QR-Code-generator -Version: 1.8.0 +Version: 1.8.0+git17.856ba8a Release: 0 Summary: QR Code generator library License: MIT URL: https://github.com/nayuki/QR-Code-generator -Source: https://github.com/nayuki/QR-Code-generator/archive/v%{version}.tar.gz -Patch2: 0002-Make-use-of-fPIC-parameter-when-building.patch -Patch3: 0003-Generate-both-shared-and-static-libraries.patch -Patch4: 0004-Create-install-targets-for-C-and-CPP.patch +Source0: %{name}-%{version}.tar.zst +Source1: qrcodegen-cmake-%cmake_code_version.tar.zst BuildRequires: %{python_module setuptools} +BuildRequires: cmake BuildRequires: gcc-c++ +BuildRequires: pkgconfig BuildRequires: python-rpm-macros +BuildRequires: zstd %python_subpackages %description @@ -70,46 +75,42 @@ Summary: QR Code generator library C++ QR Code generator library %prep -%setup -q -%autopatch -p1 +%autosetup -p1 -a1 +ln -s qrcodegen-cmake-%cmake_code_version/{CMakeLists.txt,cmake} . +cp qrcodegen-cmake-%cmake_code_version/{README.md,LICENSE} . %build -export CFLAGS="%{optflags}" -export CXXFLAGS="%{optflags}" -pushd c -make -j1 -popd -pushd cpp -make -j1 -popd -pushd python +%cmake + +pushd ../python %python_build popd %install -pushd c -%make_install LIBDIR=%{buildroot}%{_libdir} -popd -pushd cpp -%make_install LIBDIR=%{buildroot}%{_libdir} -popd +%cmake_install + pushd python %python_install popd -rm -rf %{buildroot}%{_libdir}/*.a -%post -n %{libcname} -p /sbin/ldconfig -%postun -n %{libcname} -p /sbin/ldconfig -%post -n %{libcppname} -p /sbin/ldconfig -%postun -n %{libcppname} -p /sbin/ldconfig +%ldconfig_scriptlets -n %{libcname} +%ldconfig_scriptlets -n %{libcppname} %files %{python_files} %license Readme.markdown %{python_sitelib}/* %files -n QR-Code-generator-devel -%{_includedir}/* -%{_libdir}/*.so +%license LICENSE Readme.markdown +%doc README.md Readme.markdown +%{_libdir}/cmake/qrcodegencpp/ +%{_libdir}/cmake/qrcodegen/ +%{_libdir}/libqrcodegen.so +%{_libdir}/libqrcodegencpp.so +%{_includedir}/qrcodegen/ +%{_includedir}/qrcodegencpp/ +%{_libdir}/pkgconfig/qrcodegencpp.pc +%{_libdir}/pkgconfig/qrcodegen.pc %files -n %{libcname} %license Readme.markdown diff --git a/_service b/_service new file mode 100644 index 0000000..58658e8 --- /dev/null +++ b/_service @@ -0,0 +1,24 @@ + + + @PARENT_TAG@+git@TAG_OFFSET@.%h + master + https://github.com/nayuki/QR-Code-generator.git + v(.*) + \1 + git + enable + + + @PARENT_TAG@ + v1.8.0-cmake3 + https://github.com/EasyCoding/qrcodegen-cmake.git + v([\.\d]+)-([a-z].*) + \1.\2 + git + enable + + + zst + *.tar + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..965df1d --- /dev/null +++ b/_servicedata @@ -0,0 +1,6 @@ + + + https://github.com/nayuki/QR-Code-generator.git + 856ba8a74b48a6b3b32dd86f13b66b61b8579fcd + https://github.com/EasyCoding/qrcodegen-cmake.git + 0bc38a5c3ce8bc700a7e1b3082a55b82e292530e \ No newline at end of file diff --git a/qrcodegen-cmake-1.8.0.cmake3.tar.zst b/qrcodegen-cmake-1.8.0.cmake3.tar.zst new file mode 100644 index 0000000..7940de5 --- /dev/null +++ b/qrcodegen-cmake-1.8.0.cmake3.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70d4d664d342dca89d2acc04c59120581a673c60b2df97d0426b374b25b7f043 +size 5551 diff --git a/v1.8.0.tar.gz b/v1.8.0.tar.gz deleted file mode 100644 index 3ee9b3c..0000000 --- a/v1.8.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2ec0a4d33d6f521c942eeaf473d42d5fe139abcfa57d2beffe10c5cf7d34ae60 -size 193288