commit: f28a947813dbc0a1fd1a8d4a712d58a64c48ca01 Author: Peter Levine <plevine457 <AT> gmail <DOT> com> AuthorDate: Sun May 14 00:35:39 2017 +0000 Commit: David Seifert <soap <AT> gentoo <DOT> org> CommitDate: Fri May 26 20:58:04 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f28a9478
media-libs/libfpx: Fix building with GCC-6 Bug: https://bugs.gentoo.org/show_bug.cgi?id=594094 Package-Manager: Portage-2.3.5, Repoman-2.3.2 Closes: https://github.com/gentoo/gentoo/pull/4623 .../files/libfpx-1.2.0.13-export-symbols.patch | 4 +-- media-libs/libfpx/files/libfpx-1.3.1_p6-gcc6.patch | 35 ++++++++++++++++++++++ media-libs/libfpx/libfpx-1.3.1_p6.ebuild | 9 ++++-- 3 files changed, 43 insertions(+), 5 deletions(-) diff --git a/media-libs/libfpx/files/libfpx-1.2.0.13-export-symbols.patch b/media-libs/libfpx/files/libfpx-1.2.0.13-export-symbols.patch index 9e0f1632550..dfb974bc716 100644 --- a/media-libs/libfpx/files/libfpx-1.2.0.13-export-symbols.patch +++ b/media-libs/libfpx/files/libfpx-1.2.0.13-export-symbols.patch @@ -1,8 +1,8 @@ * At least the Darwin linker doesn't like double symbols during the final linking stage... ---- jpeg/jpegconf.h -+++ jpeg/jpegconf.h +--- a/jpeg/jpegconf.h ++++ b/jpeg/jpegconf.h @@ -27,6 +27,6 @@ # pragma warning(disable : 4244) # pragma warning(disable : 4142) diff --git a/media-libs/libfpx/files/libfpx-1.3.1_p6-gcc6.patch b/media-libs/libfpx/files/libfpx-1.3.1_p6-gcc6.patch new file mode 100644 index 00000000000..75c7a7efdbd --- /dev/null +++ b/media-libs/libfpx/files/libfpx-1.3.1_p6-gcc6.patch @@ -0,0 +1,35 @@ +--- a/oless/h/page.hxx ++++ b/oless/h/page.hxx +@@ -47,6 +47,7 @@ + { + public: + void * operator new(size_t size, size_t sizeData); ++ void operator delete(void *ptr); + + CMSFPage(CMSFPage *pmpNext); + inline ~CMSFPage(); +@@ -133,6 +134,24 @@ + } + + //+--------------------------------------------------------------------------- ++// ++// Member: CMSFPage::operator delete, public ++// ++// Synopsis: Overloaded delete operator for CMSFPage. ++// ++// Arguments: [ptr] -- Pointer to CMSFPage object ++// ++//---------------------------------------------------------------------------- ++ ++inline void CMSFPage::operator delete(void *ptr) ++{ ++ if (ptr) { ++ free(ptr); ++ ptr = NULL; ++ } ++} ++ ++//+--------------------------------------------------------------------------- + // + // Member: CMSFPage::GetNext, public + // diff --git a/media-libs/libfpx/libfpx-1.3.1_p6.ebuild b/media-libs/libfpx/libfpx-1.3.1_p6.ebuild index f8bca2dbbed..fcaf30fc17d 100644 --- a/media-libs/libfpx/libfpx-1.3.1_p6.ebuild +++ b/media-libs/libfpx/libfpx-1.3.1_p6.ebuild @@ -15,10 +15,13 @@ IUSE="static-libs" S=${WORKDIR}/${P/_p/-} -src_prepare() { - epatch "${FILESDIR}"/${PN}-1.2.0.13-export-symbols.patch +PATCHES=( + "${FILESDIR}"/${PN}-1.2.0.13-export-symbols.patch + "${FILESDIR}"/${P}-gcc6.patch +) - eapply_user +src_prepare() { + default # we're not windows, even though we don't define __unix by default [[ ${CHOST} == *-darwin* ]] && append-flags -D__unix
