Compare commits

...
Sign in to create a new pull request.

21 commits

Author SHA1 Message Date
Fedora Release Engineering
8022010cee Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 03:22:01 +00:00
Fedora Release Engineering
0e08c1f334 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 16:40:43 +00:00
Davide Cavalca
6698953808 Switch to pipewire-jack-audio-connection-kit-devel where available 2025-04-21 21:15:53 -07:00
Fedora Release Engineering
5f8bf1c356 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 10:25:19 +00:00
Miroslav Suchý
7cd13a6795 convert license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-08-07 09:18:25 +02:00
Fedora Release Engineering
2393a352a6 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 16:27:51 +00:00
Fedora Release Engineering
51f3baa960 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 22:31:32 +00:00
Fedora Release Engineering
0b2713db0e Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 11:56:46 +00:00
U2FsdGVkX1
dc9e2f2103 Add riscv64 support 2023-11-10 17:48:52 +01:00
Fedora Release Engineering
3677f1e245 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 12:46:13 +00:00
Fedora Release Engineering
95aef9386d Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 21:16:29 +00:00
Fedora Release Engineering
a257d27363 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 20:18:49 +00:00
Fedora Release Engineering
deff62a784 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 20:48:19 +00:00
Fedora Release Engineering
5fcf626ea0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 17:08:29 +00:00
Fedora Release Engineering
c587cda8fe - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 12:13:25 +00:00
Fedora Release Engineering
9f1241cc6c - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-25 23:41:34 +00:00
Fedora Release Engineering
b9239690f5 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-31 23:45:48 +00:00
Fedora Release Engineering
5819615ec6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 11:37:32 +00:00
Fedora Release Engineering
17c0f46bf3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 11:04:07 +00:00
Guido Aulisi
baa61a9456 Update to version 9
New upstream
2019-09-26 11:40:34 +00:00
Fedora Release Engineering
8deeb50959 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-24 17:23:59 +00:00
9 changed files with 197 additions and 100 deletions

1
.gitignore vendored
View file

@ -1,3 +1,4 @@
a2jmidid-6.tar.bz2
/a2jmidid-7.tar.bz2
/a2jmidid-8.tar.bz2
/a2jmidid-9.tar.gz

View file

@ -1,20 +0,0 @@
--- a2jmidid-8/sigsegv.c.orig 2014-10-27 00:55:18.105347411 +0000
+++ a2jmidid-8/sigsegv.c 2014-10-27 00:56:07.209296207 +0000
@@ -91,7 +91,7 @@
a2j_error("info.si_errno = %d", info->si_errno);
a2j_error("info.si_code = %d (%s)", info->si_code, si_codes[info->si_code]);
a2j_error("info.si_addr = %p", info->si_addr);
-#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__)
+#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
for(i = 0; i < NGREG; i++)
a2j_error("reg[%02d] = 0x" REGFORMAT, i,
#if defined(__powerpc__)
@@ -102,7 +102,7 @@
ucontext->uc_mcontext.gregs[i]
#endif
);
-#endif /* alpha, ia64, kFreeBSD, arm, hppa */
+#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 */
#if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
# if defined(SIGSEGV_STACK_IA64)

View file

@ -0,0 +1,44 @@
From 2c3fbef6854743416d95d85b1565dde51668488c Mon Sep 17 00:00:00 2001
From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Date: Fri, 1 Oct 2021 16:15:29 +0200
Subject: [PATCH] sigsegv: enable RISC-V build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Avoid build error
../sigsegv.c:104:39: error: mcontext_t has no member named gregs;
did you mean __gregs?
104 | ucontext->uc_mcontext.gregs[i]
| ^~~~~
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
---
sigsegv.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/sigsegv.c b/sigsegv.c
index fb4456e..6930185 100644
--- a/sigsegv.c
+++ b/sigsegv.c
@@ -91,7 +91,9 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) {
a2j_error("info.si_errno = %d", info->si_errno);
a2j_error("info.si_code = %d (%s)", info->si_code, si_codes[info->si_code]);
a2j_error("info.si_addr = %p", info->si_addr);
-#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
+#if !defined(__alpha__) && !defined(__ia64__) && \
+ !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && \
+ !defined(__sh__) && !defined(__aarch64__) && !defined(__riscv)
for(i = 0; i < NGREG; i++)
a2j_error("reg[%02d] = 0x" REGFORMAT, i,
#if defined(__powerpc__) && !defined(__powerpc64__)
@@ -108,7 +110,7 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) {
ucontext->uc_mcontext.gregs[i]
#endif
);
-#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64 */
+#endif /* alpha, ia64, kFreeBSD, arm, hppa, aarch64, riscv */
#if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
# if defined(SIGSEGV_STACK_IA64)

View file

@ -1,20 +0,0 @@
diff -rupN a2jmidid-8.old/wscript a2jmidid-8/wscript
--- a2jmidid-8.old/wscript 2012-07-04 21:14:23.000000000 -0400
+++ a2jmidid-8/wscript 2012-07-09 22:38:36.474015629 -0400
@@ -67,6 +67,7 @@ def configure(conf):
conf.env['DBUS_ENABLED'] = False
conf.env['LIB_DL'] = ['dl']
+ conf.env['LIB_PTHREAD'] = ['pthread']
#conf.check_header('expat.h', mandatory=True)
#conf.env['LIB_EXPAT'] = ['expat']
@@ -152,7 +153,7 @@ def build(bld):
prog.includes = '.' # make waf dependency tracking work
prog.target = 'a2jmidid'
- prog.uselib = 'ALSA JACK DL'
+ prog.uselib = 'ALSA JACK DL PTHREAD'
if bld.env()['DBUS_ENABLED']:
prog.uselib += " DBUS-1"
prog = bld.create_obj('cc', 'program')

View file

@ -1,19 +1,49 @@
diff -Nurp a2jmidid/man/a2jmidid.1 a2jmidid.orig/man/a2jmidid.1
--- a2jmidid/man/a2jmidid.1 2012-09-15 11:25:31.661714067 +0200
+++ a2jmidid.orig/man/a2jmidid.1 2012-09-15 11:31:29.273764443 +0200
@@ -19,13 +19,13 @@ specifies which jack-server to use
.SH NOTES
ALSA does not guarantee client names to by unique. I.e. it is possible
to have two apps that create two clients with same ALSA client name.
-JACK however requires port names to be unqiue. To ensure this uniqueness,
+JACK however requires port names to be unique. To ensure this uniqueness,
a2jmidid will add the unique numeric ALSA client ID to the JACK port name.
However this behaviour is known to be problematic when restoring
connections using simplistic tools like aj\-snapshot and jack_connect.
In order to make them work, the -u option can be used. This option will
cause a2jmidid to omit the numeric ALSA Client ID from JACK port names.
-In this mode, ALSA client name uniqueness must be guartanteed externally.
+In this mode, ALSA client name uniqueness must be guaranteed externally.
.SH AUTHOR
Eric Hedekar <after the beep at g mail dot nospam com>
diff --git a/man/a2jmidi_bridge.1 b/man/a2jmidi_bridge.1
index c4c358d..e3a4af8 100644
--- a/man/a2jmidi_bridge.1
+++ b/man/a2jmidi_bridge.1
@@ -5,7 +5,7 @@ a2jmidi_bridge \- static bridge with one ALSA playback port and one JACK MIDI in
.SH SYNOPSIS
.B a2jmidi_bridge [NAME]
.SH DESCRIPTION
-A single, static, one-way bridge from legacy ALSA MIDI to JACK MIDI. Mostly useful for those needing a steady bridge rather than an active briding daemon such as a2jmidid. Multiple instances of this can be run simultaneously.
+A single, static, one-way bridge from legacy ALSA MIDI to JACK MIDI. Mostly useful for those needing a steady bridge rather than an active bridging daemon such as a2jmidid. Multiple instances of this can be run simultaneously.
.SH OPTIONS
.IP NAME
names the given bridge with the name provided
@@ -15,4 +15,3 @@ Eric Hedekar <after the beep at g mail dot nospam com>
.BR a2jmidid (1),
.BR a2j_control (1),
.BR j2amidi_bridge (1)
-
diff --git a/man/a2jmidid.1 b/man/a2jmidid.1
index d4b4bf5..432e0a5 100644
--- a/man/a2jmidid.1
+++ b/man/a2jmidid.1
@@ -6,7 +6,7 @@ a2jmidid \- JACK MIDI daemon for ALSA MIDI
.B a2jmidid [-j jack-server] [e | --export-hw]
.SH DESCRIPTION
a2jmidid is a daemon that implements automatic bridging. For every ALSA
-sequencer port you get one jack midi port. If ALSA sequencer port is
+sequencer port you get one JACK midi port. If ALSA sequencer port is
both input and output one, you get two JACK MIDI ports, one input and
output.
.SH OPTIONS
diff --git a/man/j2amidi_bridge.1 b/man/j2amidi_bridge.1
index e2f2ce0..8c4bcbd 100644
--- a/man/j2amidi_bridge.1
+++ b/man/j2amidi_bridge.1
@@ -5,7 +5,7 @@ j2amidi_bridge \- static bridge with one ALSA input port and one JACK MIDI outpu
.SH SYNOPSIS
.B j2amidi_bridge [NAME]
.SH DESCRIPTION
-A single, static, one-way bridge from JACK MIDI to legacy ALSA MIDI. Mostly useful for those needing a steady bridge rather than an active briding daemon such as a2jmidid. Multiple instances of this can be run simultaneously.
+A single, static, one-way bridge from JACK MIDI to legacy ALSA MIDI. Mostly useful for those needing a steady bridge rather than an active bridging daemon such as a2jmidid. Multiple instances of this can be run simultaneously.
.SH OPTIONS
.IP NAME
names the given bridge with the name provided
@@ -15,4 +15,3 @@ Eric Hedekar <after the beep at g mail dot nospam com>
.BR a2jmidid (1),
.BR a2j_control (1),
.BR a2jmidi_bridge (1)
-

17
a2jmidid-portname.patch Normal file
View file

@ -0,0 +1,17 @@
diff --git a/port.c b/port.c
index 3a7c41e..523fae2 100644
--- a/port.c
+++ b/port.c
@@ -116,10 +116,11 @@ a2j_port_fill_name(
ret = snprintf(
port_ptr->name,
g_max_jack_port_name_size,
- "%s [%d] (%s): %s",
+ "%s [%d] (%s): [%d] %s",
snd_seq_client_info_get_name(client_info_ptr),
snd_seq_client_info_get_client(client_info_ptr),
type == A2J_PORT_CAPTURE ? "capture": "playback",
+ snd_seq_port_info_get_port(port_info_ptr),
snd_seq_port_info_get_name(port_info_ptr));
}
else

View file

@ -1,15 +0,0 @@
diff -rupN a2jmidid-8.org/sigsegv.c a2jmidid-8/sigsegv.c
--- a2jmidid-8.org/sigsegv.c 2017-02-16 00:53:09.585594069 -0500
+++ a2jmidid-8/sigsegv.c 2017-02-16 00:54:33.498225062 -0500
@@ -94,8 +94,10 @@ static void signal_segv(int signum, sigi
#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
for(i = 0; i < NGREG; i++)
a2j_error("reg[%02d] = 0x" REGFORMAT, i,
-#if defined(__powerpc__)
+#if defined(__powerpc__) && !defined(__powerpc64__)
ucontext->uc_mcontext.uc_regs[i]
+#elif defined(__powerpc64__)
+ ucontext->uc_mcontext.gp_regs[i]
#elif defined(__sparc__) && defined(__arch64__)
ucontext->uc_mcontext.mc_gregs[i]
#else

View file

@ -1,25 +1,30 @@
Summary: Daemon for exposing ALSA sequencer applications in JACK MIDI system
Name: a2jmidid
Version: 8
Version: 9
Release: 19%{?dist}
URL: http://home.gna.org/a2jmidid/
Source0: http://download.gna.org/%{name}/%{name}-%{version}.tar.bz2
URL: https://github.com/linuxaudio/a2jmidid
Source0: https://github.com/linuxaudio/a2jmidid/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
# Backported from upstream
Patch0: %{name}-man.patch
Patch1: %{name}-portname.patch
Patch2: %{name}-add-riscv64-support.patch
# a2jmidi_bridge.c and j2amidi_bridge.c are GPLv2+
# The rest is GPLv2
# Fix DSO linking: https://gna.org/support/index.php?2934
Patch0: a2jmidid-linking.patch
Patch1: a2jmidid-man.patch
Patch2: a2jmidid-aarch64.patch
Patch3: a2jmidid-ppc64.patch
License: GPLv2 and GPLv2+
# Automatically converted from old format: GPLv2 and GPLv2+ - review is highly recommended.
License: GPL-2.0-only AND GPL-2.0-or-later
BuildRequires: alsa-lib-devel
BuildRequires: dbus-devel
BuildRequires: gcc
%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: pipewire-jack-audio-connection-kit-devel
%else
BuildRequires: jack-audio-connection-kit-devel
BuildRequires: python2
%endif
BuildRequires: meson
Requires: dbus
Requires: python3
%description
a2jmidid is a project that aims to ease usage of legacy ALSA sequencer
@ -34,28 +39,21 @@ The second approach is to static bridges. You start application that creates
one ALSA sequencer port and one JACK MIDI port. Such bridge is unidirectional.
%prep
%setup -q
%patch0 -p1 -b .dso.linking
%patch1 -p1 -b .man
%patch2 -p1 -b .aarch64
%patch3 -p1 -b .ppc64
%autosetup -p1
# Fix Python shebangs
sed -i 's|/usr/bin/.*python$|/usr/bin/python2|' a2j_control waf wscript
sed -i 's|^#!/usr/bin/env python3|#!/usr/bin/python3|' a2j_control
%build
export CFLAGS="%{optflags}"
export LINKFLAGS="$RPM_LD_FLAGS"
./waf configure --prefix=%{_prefix} \
--enable-pkg-config-dbus-service-dir
./waf %{?_smp_mflags} -v
%meson
%meson_build
%install
./waf --destdir=%{buildroot} -v install
%meson_install
%files
%doc AUTHORS README NEWS
%license gpl2.txt
%doc AUTHORS.rst README.rst CHANGELOG.rst
%license LICENSE
%{_bindir}/a2j
%{_bindir}/%{name}
%{_bindir}/a2j_control
@ -66,6 +64,68 @@ export LINKFLAGS="$RPM_LD_FLAGS"
%{_mandir}/man1/j2a*
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 9-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 9-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Mar 27 2025 Davide Cavalca <dcavalca@fedoraproject.org> - 9-17
- Switch to pipewire-jack-audio-connection-kit-devel where available
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 9-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Aug 07 2024 Miroslav Suchý <msuchy@redhat.com> - 9-15
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 9-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 9-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 9-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Oct 06 2023 Songsong Zhang <U2FsdGVkX1@gmail.com> - 9-11
- Add riscv64 patch from https://github.com/jackaudio/a2jmidid/pull/18
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 9-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 9-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 9-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 9-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 9-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9-4
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Sep 26 2019 Guido Aulisi <guido.aulisi@gmail.com> - 9-1
- Update to version 9
- New upstream
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View file

@ -1 +1 @@
9cf4edbc3ad2ddeeaf6c8c1791ff3ddd a2jmidid-8.tar.bz2
SHA512 (a2jmidid-9.tar.gz) = 5bd13b6904ed68c5bfe40ca516fd49b7eb4d4a946b9908ee04687265848734c8e1a81579f0f1a5bd0752595be8858dc748da10487b7f366394c09a5ffc7d5e5c