diff options
Diffstat (limited to 'media-libs/portsmf')
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 +} |