[gentoo-commits] repo/gentoo:master commit in: media-libs/libsidplay/, media-libs/libsidplay/files/

2023-09-04 Thread Miroslav Šulc
commit: 936624af5963026d08a1dd98c534f92d5748b76b
Author: Brahmajit Das  gmail  com>
AuthorDate: Sun Sep  3 18:19:31 2023 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Mon Sep  4 07:09:20 2023 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=936624af

media-libs/libsidplay: Fix build on llvm profile

_Ios_Openmode is an implementation detail of the GNU c++ stdlib whereas
ios_base::openmode is the portable way to go

Signed-off-by: Brahmajit Das  gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32586
Signed-off-by: Miroslav Šulc  gentoo.org>

 .../files/libsidplay-2.1.1-clang16.patch   | 48 +
 media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild   | 82 ++
 2 files changed, 130 insertions(+)

diff --git a/media-libs/libsidplay/files/libsidplay-2.1.1-clang16.patch 
b/media-libs/libsidplay/files/libsidplay-2.1.1-clang16.patch
new file mode 100644
index ..803cda92d56f
--- /dev/null
+++ b/media-libs/libsidplay/files/libsidplay-2.1.1-clang16.patch
@@ -0,0 +1,48 @@
+_Ios_Openmode is an implementation detail of the GNU c++ stdlib whereas
+ios_base::openmode is the portable way to go
+--- a/libsidplay/src/sidtune/SidTune.cpp
 b/libsidplay/src/sidtune/SidTune.cpp
+@@ -29,6 +29,7 @@
+ #   include 
+ #endif
+ #include 
++#include 
+ #include 
+ #include 
+ #include 
+@@ -283,7 +284,7 @@ bool SidTune::loadFile(const char* fileName, 
Buffer_sidtt&
+ uint_least32_t fileLen = 0;
+ 
+ // This sucks big time
+-std::_Ios_Openmode createAtrr = std::ios::in;
++std::ios_base::openmode createAtrr = std::ios::in;
+ #ifdef HAVE_IOS_NOCREATE
+ createAtrr |= std::ios::nocreate;
+ #endif
+@@ -952,7 +953,7 @@ bool SidTune::saveC64dataFile( const char* fileName, bool 
overWriteFlag )
+ if ( status )
+ {
+ // Open binary output file stream.
+-std::_Ios_Openmode createAttr = std::ios::out;
++std::ios_base::openmode createAttr = std::ios::out;
+ #if defined(HAVE_IOS_BIN)
+ createAttr |= std::ios::bin;
+ #else
+@@ -1002,7 +1003,7 @@ bool SidTune::saveSIDfile( const char* fileName, bool 
overWriteFlag )
+ if ( status )
+ {
+ // Open ASCII output file stream.
+-std::_Ios_Openmode createAttr = std::ios::out;
++std::ios_base::openmode createAttr = std::ios::out;
+ if ( overWriteFlag )
+ createAttr |= std::ios::trunc;
+ else
+@@ -1036,7 +1037,7 @@ bool SidTune::savePSIDfile( const char* fileName, bool 
overWriteFlag )
+ if ( status )
+ {
+ // Open binary output file stream.
+-std::_Ios_Openmode createAttr = std::ios::out;
++std::ios_base::openmode createAttr = std::ios::out;
+ #if defined(HAVE_IOS_BIN)
+ createAttr |= std::ios::bin;
+ #else

diff --git a/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild 
b/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild
new file mode 100644
index ..ef8c6ba46db3
--- /dev/null
+++ b/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools multilib-minimal
+
+MY_P=sidplay-libs-${PV}
+
+DESCRIPTION="C64 SID player library"
+HOMEPAGE="http://sidplay2.sourceforge.net/";
+SRC_URI="mirror://sourceforge/sidplay2/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv 
~sparc ~x86"
+IUSE="static-libs"
+
+BDEPEND="sys-devel/autoconf-archive"
+
+MULTILIB_WRAPPED_HEADERS=(
+   /usr/include/sidplay/sidconfig.h
+)
+
+PATCHES=(
+   "${FILESDIR}"/${P}-gcc41.patch
+   "${FILESDIR}"/${P}-fbsd.patch
+   "${FILESDIR}"/${P}-gcc43.patch
+   "${FILESDIR}"/${P}-no_libtool_reference.patch
+   "${FILESDIR}"/${P}-gcc6.patch
+   "${FILESDIR}"/${P}-autoconf.patch
+   "${FILESDIR}"/${P}-slibtool.patch
+   "${FILESDIR}"/${P}-clang16.patch
+)
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+   default
+
+   local subdirs=(
+   builders/hardsid-builder
+   builders/resid-builder
+   libsidplay
+   libsidutils
+   resid
+   .
+   )
+
+   for i in ${subdirs[@]}; do
+   (
+   cd "$i" || die
+   eautoreconf
+   )
+   done
+
+   multilib_copy_sources
+}
+
+multilib_src_configure() {
+   local myeconfargs=(
+   --enable-shared
+   --with-pic
+   $(use_enable static-libs static)
+   )
+   econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+   docinto libsidplay
+   dodoc libsidplay/{AUTHORS,ChangeLog,README,TODO}
+
+   docinto libsidutils
+   dodoc libsidutils/{AUTHORS,ChangeLog,README,TODO}
+
+   docinto resid
+   dodoc resid/{AUTHORS,ChangeLog,NEWS,README,THANKS,TODO}
+
+   doenvd "${FILESDIR}"/65resid
+

[gentoo-commits] repo/gentoo:master commit in: media-libs/libsidplay/, media-libs/libsidplay/files/

2019-02-09 Thread Andreas Sturmlechner
commit: 78c098995b8818447e70e06437d01058aff568c6
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sat Feb  9 19:55:19 2019 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Sat Feb  9 20:57:45 2019 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78c09899

media-libs/libsidplay: EAPI-7 bump, fix arm64/ppc64 build with GCC-6

Patch kindly borrowed from Debian.

Reported-by: ernsteiswuerfel  mailbox.org>
Bug: https://bugs.gentoo.org/649804
Package-Manager: Portage-2.3.59, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner  gentoo.org>

 .../libsidplay/files/libsidplay-2.1.1-gcc6.patch   | 22 
 media-libs/libsidplay/libsidplay-2.1.1-r5.ebuild   | 61 ++
 2 files changed, 83 insertions(+)

diff --git a/media-libs/libsidplay/files/libsidplay-2.1.1-gcc6.patch 
b/media-libs/libsidplay/files/libsidplay-2.1.1-gcc6.patch
new file mode 100644
index 000..7cfac32b229
--- /dev/null
+++ b/media-libs/libsidplay/files/libsidplay-2.1.1-gcc6.patch
@@ -0,0 +1,22 @@
+Description: explicit cast to int8_t
+ Fix FTBFS with GCC 6 due to narrowing conversions from 'char' to 'int8_t'.
+Author: Laszlo Boszormenyi (GCS) 
+Forwarded: no
+Bug-Debian: https://bugs.debian.org/837378
+Last-Update: 2016-09-19
+
+---
+
+--- sidplay-libs-2.1.1.orig/libsidplay/src/xsid/xsid.cpp
 sidplay-libs-2.1.1/libsidplay/src/xsid/xsid.cpp
+@@ -96,8 +96,8 @@ const int8_t XSID::sampleConvertTable[16
+ */
+ const int8_t XSID::sampleConvertTable[16] =
+ {
+-'\x80', '\x94', '\xa9', '\xbc', '\xce', '\xe1', '\xf2', '\x03',
+-'\x1b', '\x2a', '\x3b', '\x49', '\x58', '\x66', '\x73', '\x7f'
++(int8_t)'\x80', (int8_t)'\x94', (int8_t)'\xa9', (int8_t)'\xbc', 
(int8_t)'\xce', (int8_t)'\xe1', (int8_t)'\xf2', (int8_t)'\x03',
++(int8_t)'\x1b', (int8_t)'\x2a', (int8_t)'\x3b', (int8_t)'\x49', 
(int8_t)'\x58', (int8_t)'\x66', (int8_t)'\x73', (int8_t)'\x7f'
+ };
+ 
+ const char *XSID::credit =

diff --git a/media-libs/libsidplay/libsidplay-2.1.1-r5.ebuild 
b/media-libs/libsidplay/libsidplay-2.1.1-r5.ebuild
new file mode 100644
index 000..cb385dd5622
--- /dev/null
+++ b/media-libs/libsidplay/libsidplay-2.1.1-r5.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool multilib-minimal
+
+MY_P=sidplay-libs-${PV}
+
+DESCRIPTION="C64 SID player library"
+HOMEPAGE="http://sidplay2.sourceforge.net/";
+SRC_URI="mirror://sourceforge/sidplay2/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 
~amd64-fbsd ~x86-fbsd"
+IUSE="static-libs"
+
+MULTILIB_WRAPPED_HEADERS=(
+   /usr/include/sidplay/sidconfig.h
+)
+
+PATCHES=(
+   "${FILESDIR}"/${P}-gcc41.patch
+   "${FILESDIR}"/${P}-fbsd.patch
+   "${FILESDIR}"/${P}-gcc43.patch
+   "${FILESDIR}"/${P}-no_libtool_reference.patch
+   "${FILESDIR}"/${P}-gcc6.patch
+)
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+   default
+   elibtoolize
+   multilib_copy_sources
+}
+
+multilib_src_configure() {
+   local myeconfargs=(
+   --enable-shared
+   --with-pic
+   $(use_enable static-libs static)
+   )
+   econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+   docinto libsidplay
+   dodoc libsidplay/{AUTHORS,ChangeLog,README,TODO}
+
+   docinto libsidutils
+   dodoc libsidutils/{AUTHORS,ChangeLog,README,TODO}
+
+   docinto resid
+   dodoc resid/{AUTHORS,ChangeLog,NEWS,README,THANKS,TODO}
+
+   doenvd "${FILESDIR}"/65resid
+
+   find "${D}" -name '*.la' -delete || die
+}