Skip to content

Commit

Permalink
media-libs/portsmf: new package, add 239
Browse files Browse the repository at this point in the history
Signed-off-by: Arsen Arsenović <arsen@aarsen.me>
  • Loading branch information
ArsenArsen committed Jan 14, 2023
1 parent 1a22d62 commit 0e1f976
Show file tree
Hide file tree
Showing 6 changed files with 168 additions and 0 deletions.
1 change: 1 addition & 0 deletions media-libs/portsmf/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST portsmf-239.tar.gz 82769 BLAKE2B 7596c3c66c15a5daa51c4962f785375568c35093a293bba48ec2742c6409c72ba3ff2f10c2b0a38969a0c14510ef06b94c6ed52429d5c55f05635637b5acbb37 SHA512 5908ef79043b44f90da8286d639a0693334f160454d206f4a212fe958a7a2e19cbc18e4240e191c1678690f34976c5e0d34dcb030d7bab007ee528fbb5e19486
Original file line number Diff line number Diff line change
@@ -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

Original file line number Diff line number Diff line change
@@ -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

Original file line number Diff line number Diff line change
@@ -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

11 changes: 11 additions & 0 deletions media-libs/portsmf/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>arsen@gentoo.org</email>
<name>Arsen Arsenović</name>
</maintainer>
<upstream>
<remote-id type="github">tenacityteam/portsmf</remote-id>
</upstream>
</pkgmetadata>
39 changes: 39 additions & 0 deletions media-libs/portsmf/portsmf-239.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright 1999-2022 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://github.com/tenacityteam/portsmf"
SRC_URI="
https://github.com/tenacityteam/portsmf/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
"
LICENSE="MIT"
SLOT="0/1" # SOVERSION in CMakeLists.txt / SONAME suffix
KEYWORDS="~amd64"
IUSE="test"
RESTRICT="!test? ( test )"

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
}

0 comments on commit 0e1f976

Please sign in to comment.