From fe68005995163bb04bdc0f6b663ac1600a667deb Mon Sep 17 00:00:00 2001 From: Miroslav Šulc Date: Sat, 14 Dec 2019 17:28:26 +0100 Subject: media-sound/helm-0.9.0-r1: fixes with revbump (removed old) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1) switched from xdg-utils to xdg 2) fixed bug 686108 using the patch from upstream though technically the patch in the bug is the same 3) fixed installation path for documentation Closes: https://bugs.gentoo.org/686108 Package-Manager: Portage-2.3.81, Repoman-2.3.20 Signed-off-by: Miroslav Šulc --- media-sound/helm/files/helm-0.9.0-fix-gcc91.patch | 140 ++++++++++++++++++++++ media-sound/helm/helm-0.9.0-r1.ebuild | 52 ++++++++ media-sound/helm/helm-0.9.0.ebuild | 56 --------- 3 files changed, 192 insertions(+), 56 deletions(-) create mode 100644 media-sound/helm/files/helm-0.9.0-fix-gcc91.patch create mode 100644 media-sound/helm/helm-0.9.0-r1.ebuild delete mode 100644 media-sound/helm/helm-0.9.0.ebuild diff --git a/media-sound/helm/files/helm-0.9.0-fix-gcc91.patch b/media-sound/helm/files/helm-0.9.0-fix-gcc91.patch new file mode 100644 index 000000000000..f623fef203cd --- /dev/null +++ b/media-sound/helm/files/helm-0.9.0-fix-gcc91.patch @@ -0,0 +1,140 @@ +From cb611a80bd5a36d31bfc31212ebbf79aa86c6f08 Mon Sep 17 00:00:00 2001 +From: jikstra +Date: Tue, 20 Aug 2019 03:00:51 +0200 +Subject: [PATCH] Backport + https://github.com/WeAreROLI/JUCE/commit/4e0adb2af8b424c43d22bd431011c9a6c57d36b6 + to the bundled JUCE framework to make helm compile on gcc 9.1 again + +--- + .../juce_graphics/colour/juce_PixelFormats.h | 25 +--------- + .../native/juce_RenderingHelpers.h | 48 +------------------ + 2 files changed, 4 insertions(+), 69 deletions(-) + +diff --git a/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h b/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h +index 9be9ba09c..3535eab80 100644 +--- a/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h ++++ b/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h +@@ -105,23 +105,9 @@ class JUCE_API PixelARGB + + //============================================================================== + forcedinline uint8 getAlpha() const noexcept { return components.a; } +- forcedinline uint8 getRed() const noexcept { return components.r; } ++ forcedinline uint8 getRed() const noexcept { return components.r; } + forcedinline uint8 getGreen() const noexcept { return components.g; } +- forcedinline uint8 getBlue() const noexcept { return components.b; } +- +- #if JUCE_GCC +- // NB these are here as a workaround because GCC refuses to bind to packed values. +- forcedinline uint8& getAlpha() noexcept { return comps [indexA]; } +- forcedinline uint8& getRed() noexcept { return comps [indexR]; } +- forcedinline uint8& getGreen() noexcept { return comps [indexG]; } +- forcedinline uint8& getBlue() noexcept { return comps [indexB]; } +- #else +- forcedinline uint8& getAlpha() noexcept { return components.a; } +- forcedinline uint8& getRed() noexcept { return components.r; } +- forcedinline uint8& getGreen() noexcept { return components.g; } +- forcedinline uint8& getBlue() noexcept { return components.b; } +- #endif +- ++ forcedinline uint8 getBlue() const noexcept { return components.b; } + //============================================================================== + /** Copies another pixel colour over this one. + +@@ -340,9 +326,6 @@ class JUCE_API PixelARGB + { + uint32 internal; + Components components; +- #if JUCE_GCC +- uint8 comps[4]; // helper struct needed because gcc does not allow references to packed union members +- #endif + }; + } + #ifndef DOXYGEN +@@ -429,10 +412,6 @@ class JUCE_API PixelRGB + forcedinline uint8 getGreen() const noexcept { return g; } + forcedinline uint8 getBlue() const noexcept { return b; } + +- forcedinline uint8& getRed() noexcept { return r; } +- forcedinline uint8& getGreen() noexcept { return g; } +- forcedinline uint8& getBlue() noexcept { return b; } +- + //============================================================================== + /** Copies another pixel colour over this one. + +diff --git a/JUCE/modules/juce_graphics/native/juce_RenderingHelpers.h b/JUCE/modules/juce_graphics/native/juce_RenderingHelpers.h +index 1c4cd31ef..29519cb5a 100644 +--- a/JUCE/modules/juce_graphics/native/juce_RenderingHelpers.h ++++ b/JUCE/modules/juce_graphics/native/juce_RenderingHelpers.h +@@ -581,18 +581,10 @@ namespace EdgeTableFillers + : destData (image), sourceColour (colour) + { + if (sizeof (PixelType) == 3 && destData.pixelStride == sizeof (PixelType)) +- { + areRGBComponentsEqual = sourceColour.getRed() == sourceColour.getGreen() + && sourceColour.getGreen() == sourceColour.getBlue(); +- filler[0].set (sourceColour); +- filler[1].set (sourceColour); +- filler[2].set (sourceColour); +- filler[3].set (sourceColour); +- } + else +- { + areRGBComponentsEqual = false; +- } + } + + forcedinline void setEdgeTableYPos (const int y) noexcept +@@ -643,7 +635,6 @@ namespace EdgeTableFillers + const Image::BitmapData& destData; + PixelType* linePixels; + PixelARGB sourceColour; +- PixelRGB filler [4]; + bool areRGBComponentsEqual; + + forcedinline PixelType* getPixel (const int x) const noexcept +@@ -658,43 +649,8 @@ namespace EdgeTableFillers + + forcedinline void replaceLine (PixelRGB* dest, const PixelARGB colour, int width) const noexcept + { +- if (destData.pixelStride == sizeof (*dest)) +- { +- if (areRGBComponentsEqual) // if all the component values are the same, we can cheat.. +- { +- memset (dest, colour.getRed(), (size_t) width * 3); +- } +- else +- { +- if (width >> 5) +- { +- const int* const intFiller = reinterpret_cast (filler); +- +- while (width > 8 && (((pointer_sized_int) dest) & 7) != 0) +- { +- dest->set (colour); +- ++dest; +- --width; +- } +- +- while (width > 4) +- { +- int* d = reinterpret_cast (dest); +- *d++ = intFiller[0]; +- *d++ = intFiller[1]; +- *d++ = intFiller[2]; +- dest = reinterpret_cast (d); +- width -= 4; +- } +- } +- +- while (--width >= 0) +- { +- dest->set (colour); +- ++dest; +- } +- } +- } ++ if ((size_t) destData.pixelStride == sizeof (*dest) && areRGBComponentsEqual) ++ memset ((void*) dest, colour.getRed(), (size_t) width * 3); // if all the component values are the same, we can cheat.. + else + { + JUCE_PERFORM_PIXEL_OP_LOOP (set (colour)) diff --git a/media-sound/helm/helm-0.9.0-r1.ebuild b/media-sound/helm/helm-0.9.0-r1.ebuild new file mode 100644 index 000000000000..96d0ee253468 --- /dev/null +++ b/media-sound/helm/helm-0.9.0-r1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop xdg + +DESCRIPTION="Open source polyphonic software synthesizer with lots of modulation" +HOMEPAGE="https://tytel.org/helm/" +SRC_URI="https://github.com/mtytel/helm/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +DEPEND=" + media-libs/alsa-lib + media-libs/freetype + media-libs/lv2 + virtual/jack + virtual/opengl + x11-libs/libX11 + x11-libs/libXcursor + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXrandr" +RDEPEND="${DEPEND} + !app-admin/helm +" + +DOCS=( changelog README.md ) + +PATCHES=( + "${FILESDIR}/${P}-nomancompress.patch" + "${FILESDIR}/${P}-fix-gcc91.patch" +) + +src_prepare() { + default + sed -e "s|/usr/lib/|/usr/$(get_libdir)/|" -i Makefile || die "Failed to fix libdir" + sed -e "s|^\(CHANGES.*\)/|\1-${PVR}|" -i Makefile || die "Failed to fix doc path" +} + +src_compile() { + emake PREFIX=/usr all +} + +src_install() { + default + make_desktop_entry /usr/bin/helm Helm /usr/share/helm/icons/helm_icon_32_1x.png +} diff --git a/media-sound/helm/helm-0.9.0.ebuild b/media-sound/helm/helm-0.9.0.ebuild deleted file mode 100644 index 5ca560251ae0..000000000000 --- a/media-sound/helm/helm-0.9.0.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit desktop xdg-utils - -DESCRIPTION="Open source polyphonic software synthesizer with lots of modulation" -HOMEPAGE="https://tytel.org/helm/" -SRC_URI="https://github.com/mtytel/helm/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-3+" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -DEPEND=" - media-libs/alsa-lib - media-libs/freetype - media-libs/lv2 - virtual/jack - virtual/opengl - x11-libs/libX11 - x11-libs/libXcursor - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXrandr" -RDEPEND="${DEPEND} - !app-admin/helm -" - -DOCS=( changelog README.md ) - -PATCHES=( "${FILESDIR}/${P}-nomancompress.patch" ) - -src_prepare() { - default - sed -e "s|/usr/lib/|/usr/$(get_libdir)/|" -i Makefile || die -} - -src_compile() { - emake PREFIX=/usr all -} - -src_install() { - default - make_desktop_entry /usr/bin/helm Helm /usr/share/helm/icons/helm_icon_32_1x.png -} - -pkg_postinst() { - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_desktop_database_update -} -- cgit v1.2.3-65-gdbad