repo/gentoo:master commit in: media-libs/zxing-cpp/files/, media-libs/zxing-cpp/

"Sam James" <[email protected]>
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1786298604.4ba6756f0e2a9b33138f20c241f8096f71c8eb36.sam@gentoo>
commit:     4ba6756f0e2a9b33138f20c241f8096f71c8eb36
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Fri Jul 24 08:39:59 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Aug  9 18:03:24 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ba6756f

media-libs/zxing-cpp: add 3.1.0

Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Part-of: https://codeberg.org/gentoo/gentoo/pulls/1518
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/zxing-cpp/Manifest                      |  2 +
 .../zxing-cpp/files/zxing-cpp-3.1.0-gcc16.patch    | 21 ++++++
 media-libs/zxing-cpp/zxing-cpp-3.1.0.ebuild        | 82 ++++++++++++++++++++++
 3 files changed, 105 insertions(+)

diff --git a/media-libs/zxing-cpp/Manifest b/media-libs/zxing-cpp/Manifest
index 2960b6fd3f0b..f36503d47d3c 100644
--- a/media-libs/zxing-cpp/Manifest
+++ b/media-libs/zxing-cpp/Manifest
@@ -2,3 +2,5 @@ DIST zxing-cpp-2.3.0-test-samples.tar.gz 97053504 BLAKE2B f8b3ca418885731bbd0c55
 DIST zxing-cpp-2.3.0.tar.gz 1008541 BLAKE2B a0c94e1c276759e032695918f1d177e32b3ac4d1c60085872210ef9c97f2cc0c95a54972d18ec971bc6733ea9531be15d5155011ff8893e39706acd8d5c9a7bd SHA512 be1c60a6b433c18f8dab56619553023370bfd3eddf49b0e16548466e1ebc2f1f37b48e0b36c2e74296a7274c4f0117d7052f1ffd7d1223d23e493451a11b4a80
 DIST zxing-cpp-3.0.2-test-samples.tar.gz 97069365 BLAKE2B a40397591ae41bae8d0c6851ae7b39d75117c693de971409c914588791276108ef7f2a4462e518ddebe40032fc05a4405ed1bc1483e954fca3c92272a98338c0 SHA512 5cc7ca4701fd406a75c9b37ca069f7ad1f427c543cc0bacc3eebe0a7acc70df61fa453ca7eb7af8b98e2587fb817154622cc57e43f23fd96bfdb4bb40358a889
 DIST zxing-cpp-3.0.2.tar.gz 1563635 BLAKE2B b4db9279ca82951a2450bc1d97601e3bd0d560739280f7ab78d6b5572948ef979caaf461ec08e487f413bb06ea5433249735993a5c468f10ff94341a1ce16251 SHA512 fd1df78d34204f776abcf3f9f854643a15cf889e86821b9b6ce6a52c064086dd6398f8a525088f457e7df8725a041d657f59dd07c71efbbf8682bd5bb6fd97f3
+DIST zxing-cpp-3.1.0-test-samples.tar.gz 4475270 BLAKE2B 5865c180a5285dc8228a8a0dd7d953b044e1987bd982a45dd4d89dd460c205e212a942902a1cbff1a4ba26d57f4aa6f9b162c5daa6e1d7abe2df3bb213808a35 SHA512 b5b4f537e0ec41dee1b9c7d90044e528c491db6b752cdd002fddb19c9f659959c420085768df5cf3bd702c787c62be17029d71f85d080bca4148f1e43a941c57
+DIST zxing-cpp-3.1.0.tar.gz 1626883 BLAKE2B 14234dd58144e7a9aa0706d2d2d4b5c55e1dd464703bc422275ff1ab5ff7eb351bc9a0cdd59219ffe9a9d534c51c78e287975b17040e932cb8f17c9af07ca968 SHA512 58f6659bef9836fe667399d27c51cb7ada44d500c2cc02a4a935ebae679584f3d151788ef8f7ed190347b2d806416a8e25460209ae568c5b08c0fd255d40f455

diff --git a/media-libs/zxing-cpp/files/zxing-cpp-3.1.0-gcc16.patch b/media-libs/zxing-cpp/files/zxing-cpp-3.1.0-gcc16.patch
new file mode 100644
index 000000000000..5c0cd45a04ae
--- /dev/null
+++ b/media-libs/zxing-cpp/files/zxing-cpp-3.1.0-gcc16.patch
@@ -0,0 +1,21 @@
+https://github.com/zxing-cpp/zxing-cpp/pull/1137
+
+From aee35e95eb6bdb330536deb0ffd2e5ec4a2ae67d Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <parona-g/[email protected]>
+Date: Fri, 24 Jul 2026 18:19:53 +0300
+Subject: [PATCH] ReedSolomon: add missing header for GCC-16
+
+Transitively included header moved around and its needed explicitly now
+(for uint8_t).
+
+Signed-off-by: Alfred Wingate <parona-g/[email protected]>
+--- a/core/src/ReedSolomon.h
++++ b/core/src/ReedSolomon.h
+@@ -3,6 +3,7 @@
+ 
+ #pragma once
+ 
++#include <cstdint>
+ #include <optional>
+ #include <span>
+ #include <stdexcept>

diff --git a/media-libs/zxing-cpp/zxing-cpp-3.1.0.ebuild b/media-libs/zxing-cpp/zxing-cpp-3.1.0.ebuild
new file mode 100644
index 000000000000..dc33941fa237
--- /dev/null
+++ b/media-libs/zxing-cpp/zxing-cpp-3.1.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+inherit cmake
+
+DESCRIPTION="C++ Multi-format 1D/2D barcode image processing library"
+HOMEPAGE="https://github.com/zxing-cpp/zxing-cpp"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/${MY_P}.tar.gz
+	test? (
+		https://github.com/zxing-cpp/zxing-cpp/releases/download/v${MY_PV}/test_samples.tar.gz
+			-> ${P}-test-samples.tar.gz
+		)
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-2.0"
+SLOT="0/4" # ZXING_SONAME in CMakeLists.txt
+KEYWORDS="~amd64 ~riscv"
+
+IUSE="test tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	>=media-libs/zint-2.16.0:=
+"
+DEPEND="${RDEPEND}
+	dev-libs/stb
+	test? (
+		dev-cpp/gtest
+		dev-libs/libfmt
+		media-libs/libwebp
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/zxing-cpp-3.1.0-gcc16.patch
+)
+
+src_prepare() {
+	mkdir "${T}/cmake" || die
+
+	# Generate our own WebPConfig.cmake, bug #937031
+	cat <<-EOF > "${T}/cmake/WebPConfig.cmake" || die
+	find_package(PkgConfig REQUIRED)
+
+	pkg_check_modules(WebP REQUIRED IMPORTED_TARGET libwebp)
+	add_library(WebP::webp ALIAS PkgConfig::WebP)
+	list(APPEND _cmake_import_check_targets WebP::webp )
+
+	set(WEBP_VERSION \${WebP_VERSION})
+	set(WEBP_INCLUDE_DIRS \${WebP_INCLUDE_DIR})
+	set(WEBP_LIBRARIES "\${WebP_LIBRARIES}")
+	EOF
+
+	# automagic doxygen and fetches doxygen-awesome-css
+	cmake_comment_add_subdirectory docs
+
+	if use test ; then
+		ln -s "${WORKDIR}"/test/samples test/samples || die
+	fi
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DZXING_DEPENDENCIES=LOCAL # force find_package as REQUIRED
+		-DZXING_USE_BUNDLED_ZINT=OFF
+
+		-DZXING_EXAMPLES=$(usex tools) # Build and install ZXingReader and ZXingWriter
+		-DZXING_WRITERS=BOTH # should be kept on until revdeps are ported away from OLD
+
+		-DZXING_BLACKBOX_TESTS=$(usex test)
+		-DZXING_UNIT_TESTS=$(usex test)
+	)
+	use test && mycmakeargs+=( -DWebP_DIR="${T}/cmake" )
+	cmake_src_configure
+}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.