diff options
author | Sam James <sam@gentoo.org> | 2023-03-14 22:45:05 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-03-14 22:46:19 +0000 |
commit | c79a0e06a7be1a76ec0368168cafdcf708b977b7 (patch) | |
tree | 45782a6f2547ee29966b4221ff724da7711d5f29 /net-print/cups-filters | |
parent | net-misc/nextcloud-client: add 3.7.4 (diff) | |
download | gentoo-c79a0e06a7be1a76ec0368168cafdcf708b977b7.tar.gz gentoo-c79a0e06a7be1a76ec0368168cafdcf708b977b7.tar.bz2 gentoo-c79a0e06a7be1a76ec0368168cafdcf708b977b7.zip |
net-print/cups-filters: fix build w/ C++17
Closes: https://bugs.gentoo.org/898076
Closes: https://bugs.gentoo.org/901243
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-print/cups-filters')
-rw-r--r-- | net-print/cups-filters/cups-filters-1.28.17-r1.ebuild | 4 | ||||
-rw-r--r-- | net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch | 31 |
2 files changed, 35 insertions, 0 deletions
diff --git a/net-print/cups-filters/cups-filters-1.28.17-r1.ebuild b/net-print/cups-filters/cups-filters-1.28.17-r1.ebuild index 2e2bbd3cef13..13b7dac3fc7b 100644 --- a/net-print/cups-filters/cups-filters-1.28.17-r1.ebuild +++ b/net-print/cups-filters/cups-filters-1.28.17-r1.ebuild @@ -51,6 +51,10 @@ BDEPEND=" test? ( media-fonts/dejavu ) " +PATCHES=( + "${FILESDIR}"/${PN}-1.28.17-c++17.patch +) + src_configure() { # Bug #898156 append-cxxflags -std=c++17 diff --git a/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch b/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch new file mode 100644 index 000000000000..f8f63ccd4724 --- /dev/null +++ b/net-print/cups-filters/files/cups-filters-1.28.17-c++17.patch @@ -0,0 +1,31 @@ +https://bugs.gentoo.org/901243 +(and https://bugs.gentoo.org/898076) +https://github.com/OpenPrinting/cups-filters/pull/505 + +From 104fba23b1c0c67c92777b3165c6dca99558a656 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 6 Feb 2023 18:13:52 -0800 +Subject: [PATCH] use noexcept(false) instead of throw() from c++17 onwards + +C++17 removed dynamic exception specifications [1] +they had been deprecated since C++11, replace +throw(whatever) with noexcept(false). + +[1] https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- a/filter/pdftoraster.cxx ++++ b/filter/pdftoraster.cxx +@@ -2148,7 +2148,11 @@ int main(int argc, char *argv[]) { + /* For compatibility with g++ >= 4.7 compilers _GLIBCXX_THROW + * should be used as a guard, otherwise use traditional definition */ + #ifndef _GLIBCXX_THROW ++#if __cplusplus < 201703L + #define _GLIBCXX_THROW throw ++#else ++#define _GLIBCXX_THROW(x) noexcept(false) ++#endif + #endif + + void * operator new(size_t size) _GLIBCXX_THROW (std::bad_alloc) + |