summaryrefslogtreecommitdiff
path: root/media-libs/portsmf
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-01-21 03:04:52 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-01-21 03:04:52 +0000
commitf21a67c861d4898f1e3ebb131b16347b43bec39c (patch)
treed0d4e67d876704fd9aa1b5520d4af1ff341482c2 /media-libs/portsmf
parent1a9e5677869c08e314bb3499dc8f1f67c6d2e1c6 (diff)
media-libs/portsmf : import from gentoo, fix src_uri (pr submitted : https://github.com/gentoo/gentoo/pull/29196)
Diffstat (limited to 'media-libs/portsmf')
-rw-r--r--media-libs/portsmf/Manifest1
-rw-r--r--media-libs/portsmf/files/portsmf-239-revert-extern-to-static-change.patch48
-rw-r--r--media-libs/portsmf/files/portsmf-239-set-correct-cmake-project-ver.patch26
-rw-r--r--media-libs/portsmf/files/portsmf-239-set-correct-pkg-config-ver.patch43
-rw-r--r--media-libs/portsmf/portsmf-239-r1.ebuild41
5 files changed, 159 insertions, 0 deletions
diff --git a/media-libs/portsmf/Manifest b/media-libs/portsmf/Manifest
new file mode 100644
index 00000000..d31dc434
--- /dev/null
+++ b/media-libs/portsmf/Manifest
@@ -0,0 +1 @@
+DIST portsmf-239.tar.gz 82753 BLAKE2B 3085d45fb106db38be72c74a2f4a5579e0aec590c19db1482f32562e8b3044dc997a34afe1a6027b0e0ae59ee8d44a76e51d8f44b4cbef2dfe1c6667cd9611ee SHA512 522ef6e92de6497c66d6b9adf2b6b4e419024d26fac421096718b024ea0e183d322d3f0cd9fc357e0ba983371cf313d7a0b93b8b24aff5c9cb1ab61c915725ff
diff --git a/media-libs/portsmf/files/portsmf-239-revert-extern-to-static-change.patch b/media-libs/portsmf/files/portsmf-239-revert-extern-to-static-change.patch
new file mode 100644
index 00000000..41a243ca
--- /dev/null
+++ b/media-libs/portsmf/files/portsmf-239-revert-extern-to-static-change.patch
@@ -0,0 +1,48 @@
+From 149f4687db15d1759723d5d3e8334980239f9d56 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sun, 18 Dec 2022 16:09:27 +0100
+Subject: [PATCH 3/3] Revert "fix linking Alg_atoms symbol_table with dynamic
+ linking with MSVC"
+
+This reverts commit 951b636f7d0cba370d483a91f1897c71f3d98530.
+
+This change separated the symbol_table that portSMF provides from the one that
+the consumers use. I suspect this was wrong, and the problem it fixes in
+actuality was somewhere else.
+---
+This effectively makes the packaged version v238.
+
+Forwarded: https://codeberg.org/tenacityteam/portsmf/pulls/11
+
+ include/allegro.h | 2 +-
+ src/allegro.cpp | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/include/allegro.h b/include/allegro.h
+index 460b3fb..7bba98e 100755
+--- a/include/allegro.h
++++ b/include/allegro.h
+@@ -109,7 +109,7 @@ private:
+ void expand(); // make more space
+ };
+
+-static Alg_atoms symbol_table;
++extern Alg_atoms symbol_table;
+
+
+ // an attribute/value pair. Since Alg_attribute names imply type,
+diff --git a/src/allegro.cpp b/src/allegro.cpp
+index cdbef90..1305d48 100755
+--- a/src/allegro.cpp
++++ b/src/allegro.cpp
+@@ -30,6 +30,7 @@
+ // 4267 is size_t to long warning
+ #pragma warning(disable: 4311 4996 4267)
+ #endif
++Alg_atoms symbol_table;
+ Serial_read_buffer Alg_track::ser_read_buf; // declare the static variables
+ Serial_write_buffer Alg_track::ser_write_buf;
+
+--
+2.39.0
+
diff --git a/media-libs/portsmf/files/portsmf-239-set-correct-cmake-project-ver.patch b/media-libs/portsmf/files/portsmf-239-set-correct-cmake-project-ver.patch
new file mode 100644
index 00000000..3f6a1170
--- /dev/null
+++ b/media-libs/portsmf/files/portsmf-239-set-correct-cmake-project-ver.patch
@@ -0,0 +1,26 @@
+From e26f7ccfc40365f7d32f702d0b66b8f3f7aaa5a2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sun, 18 Dec 2022 16:06:15 +0100
+Subject: [PATCH 2/3] Fix up project VERSION declaration
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Forwarded: https://codeberg.org/tenacityteam/portsmf/pulls/11
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9d306f2..9df117f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ cmake_minimum_required(VERSION 3.1)
+
+-project(PortSMF VERSION 236 LANGUAGES CXX)
++project(PortSMF VERSION 239 LANGUAGES CXX)
+ set(SOVERSION 1)
+ set(LIBRARY_VERSION 1.0.${CMAKE_PROJECT_VERSION})
+
+--
+2.39.0
+
diff --git a/media-libs/portsmf/files/portsmf-239-set-correct-pkg-config-ver.patch b/media-libs/portsmf/files/portsmf-239-set-correct-pkg-config-ver.patch
new file mode 100644
index 00000000..2e6ea097
--- /dev/null
+++ b/media-libs/portsmf/files/portsmf-239-set-correct-pkg-config-ver.patch
@@ -0,0 +1,43 @@
+From 4b2a7223f1549b7acd279f5a5b2fde4c4642dbf9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sun, 18 Dec 2022 16:05:36 +0100
+Subject: [PATCH 1/3] packaging: set correct Version: in pkg-config file
+
+---
+ packaging/portSMF.pc.in | 24 ++++++++++++------------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+Forwarded: https://codeberg.org/tenacityteam/portsmf/pulls/11
+
+diff --git a/packaging/portSMF.pc.in b/packaging/portSMF.pc.in
+index 7cdca36..756698f 100644
+--- a/packaging/portSMF.pc.in
++++ b/packaging/portSMF.pc.in
+@@ -1,12 +1,12 @@
+-prefix=@CMAKE_INSTALL_PREFIX@
+-includedir=${prefix}/include
+-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
+-
+-Name: portSMF
+-Description: Portmedia Simple Midi File library
+-Requires:
+-Version: 0.1
+-URL: https://github.com/tenacityteam/portsmf
+-
+-Libs: -L${libdir} -lportSMF
+-Cflags: -I${includedir}
++prefix=@CMAKE_INSTALL_PREFIX@
++includedir=${prefix}/include
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++
++Name: portSMF
++Description: Portmedia Simple Midi File library
++Requires:
++Version: @LIBRARY_VERSION@
++URL: https://github.com/tenacityteam/portsmf
++
++Libs: -L${libdir} -lportSMF
++Cflags: -I${includedir}
+--
+2.39.0
+
diff --git a/media-libs/portsmf/portsmf-239-r1.ebuild b/media-libs/portsmf/portsmf-239-r1.ebuild
new file mode 100644
index 00000000..6cfd0c75
--- /dev/null
+++ b/media-libs/portsmf/portsmf-239-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="The Tenacity fork of PortSMF, a Standard MIDI File library"
+HOMEPAGE="https://codeberg.org/tenacityteam/portsmf"
+SRC_URI="
+ https://codeberg.org/tenacityteam/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+"
+LICENSE="MIT"
+SLOT="0/1" # SOVERSION in CMakeLists.txt / SONAME suffix
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+S="${WORKDIR}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}"-239-revert-extern-to-static-change.patch
+ "${FILESDIR}/${PN}"-239-set-correct-cmake-project-ver.patch
+ "${FILESDIR}/${PN}"-239-set-correct-pkg-config-ver.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTING=$(usex test on off)
+ ## This is "Build example applications" according to upstream
+ #-DBUILD_APPS=$(usex examples on off)
+ # The above requires a non-existent PortMidiConfig.cmake.
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ # Remove this function when bumping. Upstream HEAD has CTest.
+ cd "${BUILD_DIR}"/test || die
+ ./test </dev/null || die
+}