commit: 63e58fc53a784c5af3d535781620f893bd7ddbcf Author: David Seifert <soap <AT> gentoo <DOT> org> AuthorDate: Sat Jun 22 08:33:13 2019 +0000 Commit: David Seifert <soap <AT> gentoo <DOT> org> CommitDate: Sat Jun 22 08:33:13 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63e58fc5
media-sound/mp3check: Fix building against GCC 9 Closes: https://bugs.gentoo.org/685880 Package-Manager: Portage-2.3.67, Repoman-2.3.15 Signed-off-by: David Seifert <soap <AT> gentoo.org> .../files/mp3check-0.8.7-fix-buildsystem.patch | 17 +++++++++++++++++ .../mp3check-0.8.7-fix-c++14-operator-delete.patch | 19 +++++++++++++++++++ media-sound/mp3check/mp3check-0.8.7.ebuild | 17 ++++++++--------- 3 files changed, 44 insertions(+), 9 deletions(-) diff --git a/media-sound/mp3check/files/mp3check-0.8.7-fix-buildsystem.patch b/media-sound/mp3check/files/mp3check-0.8.7-fix-buildsystem.patch new file mode 100644 index 00000000000..86c69c162c4 --- /dev/null +++ b/media-sound/mp3check/files/mp3check-0.8.7-fix-buildsystem.patch @@ -0,0 +1,17 @@ +--- a/Makefile ++++ b/Makefile +@@ -2,12 +2,10 @@ + # Please see COPYING for license. + + # --- config ---------------------------------------------------------------- +-WARN = -Wall -W -g ++WARN = -Wall -W + #OPT = -O2 + OPT = +-CPPFLAGS = $(ADDITIONAL_CPPFLAGS) +-CXXFLAGS = $(WARN) $(OPT) +-CXX = g++ ++CXXFLAGS += $(WARN) + CC = $(CXX) + + # --- default target diff --git a/media-sound/mp3check/files/mp3check-0.8.7-fix-c++14-operator-delete.patch b/media-sound/mp3check/files/mp3check-0.8.7-fix-c++14-operator-delete.patch new file mode 100644 index 00000000000..de19421ac57 --- /dev/null +++ b/media-sound/mp3check/files/mp3check-0.8.7-fix-c++14-operator-delete.patch @@ -0,0 +1,19 @@ +https://bugs.gentoo.org/685880 +tstring.cc: In static member function ‘static tstring::Rep* tstring::Rep::create(size_t)’: +tstring.cc:114:39: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive] + 114 | Rep *p = new (m - 1 - sizeof(Rep)) Rep; + | ^~~ +In file included from tstring.cc:26: + +--- a/tstring.h ++++ b/tstring.h +@@ -75,6 +75,9 @@ + return ::operator new (size + tmem + 1);} + static void operator delete (void *p, size_t) { + ::operator delete (p); } ++ // Gentoo Bug #685880 ++ static void operator delete (void *p) { ++ ::operator delete (p); } + + // create a new representation + static Rep *create(size_t tmem); diff --git a/media-sound/mp3check/mp3check-0.8.7.ebuild b/media-sound/mp3check/mp3check-0.8.7.ebuild index ee78058978c..97e7d314e0c 100644 --- a/media-sound/mp3check/mp3check-0.8.7.ebuild +++ b/media-sound/mp3check/mp3check-0.8.7.ebuild @@ -1,7 +1,8 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 +EAPI=7 + inherit flag-o-matic toolchain-funcs DESCRIPTION="Checks mp3 files for consistency and prints several errors and warnings" @@ -11,20 +12,18 @@ SRC_URI="https://${PN}.googlecode.com/files/${P}.tgz" LICENSE="GPL-2" SLOT="0" KEYWORDS="amd64 ~ppc x86" -IUSE="" -src_prepare() { - sed -i -e '/^WARN/s:-g::' Makefile || die -} +PATCHES=( + "${FILESDIR}"/${PN}-0.8.7-fix-buildsystem.patch + "${FILESDIR}"/${PN}-0.8.7-fix-c++14-operator-delete.patch +) src_configure() { # tfiletools.h:59:50: warning: dereferencing type-punned pointer will break # strict-aliasing rules [-Wstrict-aliasing] append-cxxflags -fno-strict-aliasing -} -src_compile() { - emake CXX="$(tc-getCXX)" OPT="${CXXFLAGS}" + tc-export CXX } src_install() {
