git: 1b7bb2a4d773 - main - audio/aeolus: New port: Synthesised pipe organ emulator
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 05 May 2022 04:51:21 UTC
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=1b7bb2a4d77342cf7fe341c999fa6405ebbae94c commit 1b7bb2a4d77342cf7fe341c999fa6405ebbae94c Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2022-05-05 04:50:50 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2022-05-05 04:50:50 +0000 audio/aeolus: New port: Synthesised pipe organ emulator --- audio/Makefile | 1 + audio/aeolus/Makefile | 33 +++++++++++++++++++++++++++++++++ audio/aeolus/distinfo | 3 +++ audio/aeolus/files/patch-Makefile | 20 ++++++++++++++++++++ audio/aeolus/files/patch-addsynth.cc | 36 ++++++++++++++++++++++++++++++++++++ audio/aeolus/files/patch-global.h | 21 +++++++++++++++++++++ audio/aeolus/files/patch-imidi.h | 20 ++++++++++++++++++++ audio/aeolus/pkg-descr | 13 +++++++++++++ audio/aeolus/pkg-message | 11 +++++++++++ 9 files changed, 158 insertions(+) diff --git a/audio/Makefile b/audio/Makefile index 21de9bb29f25..dfd0e46a77a6 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -11,6 +11,7 @@ SUBDIR += abgate-lv2 SUBDIR += abx SUBDIR += adplay + SUBDIR += aeolus SUBDIR += afsp SUBDIR += aften SUBDIR += alac diff --git a/audio/aeolus/Makefile b/audio/aeolus/Makefile new file mode 100644 index 000000000000..6f4cbc0c30fb --- /dev/null +++ b/audio/aeolus/Makefile @@ -0,0 +1,33 @@ +PORTNAME= aeolus +DISTVERSION= 0.10.1 +CATEGORIES= audio +MASTER_SITES= http://kokkinizita.linuxaudio.org/linuxaudio/downloads/ + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Synthesised pipe organ emulator + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/../COPYING + +LIB_DEPENDS= libasound.so:audio/alsa-lib \ + libclthreads.so:devel/clthreads \ + libclxclient.so:devel/clxclient \ + libjack.so:audio/jack \ + libzita-alsa-pcmi.so:audio/zita-alsa-pcmi + +USES= gmake localbase:ldflags pkgconfig readline tar:bz2 xorg +USE_XORG= x11 xft + +WRKSRC_SUBDIR= source + +PLIST_FILES= bin/aeolus \ + lib/aeolus_txt.so \ + lib/aeolus_x11.so + +post-install: + @${STRIP_CMD} \ + ${STAGEDIR}${PREFIX}/bin/aeolus \ + ${STAGEDIR}${PREFIX}/lib/aeolus_txt.so \ + ${STAGEDIR}${PREFIX}/lib/aeolus_x11.so + +.include <bsd.port.mk> diff --git a/audio/aeolus/distinfo b/audio/aeolus/distinfo new file mode 100644 index 000000000000..6e2a1178adee --- /dev/null +++ b/audio/aeolus/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1651724187 +SHA256 (aeolus-0.10.1.tar.bz2) = ad9cf1a70fb46ab7f9971aa4dfac0a2bda0ec35f95b6b3b6cbb9b87070b1c196 +SIZE (aeolus-0.10.1.tar.bz2) = 66475 diff --git a/audio/aeolus/files/patch-Makefile b/audio/aeolus/files/patch-Makefile new file mode 100644 index 000000000000..be5b6464b581 --- /dev/null +++ b/audio/aeolus/files/patch-Makefile @@ -0,0 +1,20 @@ +--- Makefile.orig 2022-05-05 04:29:49 UTC ++++ Makefile +@@ -21,7 +21,7 @@ + SUFFIX := $(shell uname -m | sed -e 's/^unknown/$//' -e 's/^i.86/$//' -e 's/^x86_64/$/64/') + PREFIX ?= /usr/local + BINDIR ?= $(PREFIX)/bin +-LIBDIR ?= $(PREFIX)/lib$(SUFFIX) ++LIBDIR ?= $(PREFIX)/lib + + VERSION = 0.10.3 + CPPFLAGS += -MMD -MP -DVERSION=\"$(VERSION)\" -DLIBDIR=\"$(LIBDIR)\" +@@ -75,7 +75,7 @@ install: aeolus aeolus_x11.so aeolus_txt.so + install -m 755 aeolus $(DESTDIR)$(BINDIR) + install -m 755 aeolus_x11.so $(DESTDIR)$(LIBDIR) + install -m 755 aeolus_txt.so $(DESTDIR)$(LIBDIR) +- ldconfig $(PREFIX)/$(LIBDIR) ++ #ldconfig $(PREFIX)/$(LIBDIR) + + + clean: diff --git a/audio/aeolus/files/patch-addsynth.cc b/audio/aeolus/files/patch-addsynth.cc new file mode 100644 index 000000000000..3696ae37cf17 --- /dev/null +++ b/audio/aeolus/files/patch-addsynth.cc @@ -0,0 +1,36 @@ +--- addsynth.cc.orig 2022-05-05 04:20:20 UTC ++++ addsynth.cc +@@ -102,13 +102,13 @@ void N_func::clrv (int i) + + void N_func::write (FILE *F) + { +-#ifdef __BYTE_ORDER +-#if (__BYTE_ORDER == __LITTLE_ENDIAN) ++#ifdef _BYTE_ORDER ++#if (_BYTE_ORDER == _LITTLE_ENDIAN) + + fwrite (&_b, 1, sizeof (int32_t), F); + fwrite (_v, N_NOTE, sizeof (float), F); + +-#elif (__BYTE_ORDER == __BIG_ENDIAN) ++#elif (_BYTE_ORDER == _BIG_ENDIAN) + + int i; + char d [N_NOTE * sizeof (float)]; +@@ -130,13 +130,13 @@ void N_func::write (FILE *F) + + void N_func::read (FILE *F) + { +-#ifdef __BYTE_ORDER +-#if (__BYTE_ORDER == __LITTLE_ENDIAN) ++#ifdef _BYTE_ORDER ++#if (_BYTE_ORDER == _LITTLE_ENDIAN) + + fread (&_b, 1, sizeof (int32_t), F); + fread (&_v, N_NOTE, sizeof (float), F); + +-#elif (__BYTE_ORDER == __BIG_ENDIAN) ++#elif (_BYTE_ORDER == _BIG_ENDIAN) + + int i; + char d [sizeof (int) + N_NOTE * sizeof (float)]; diff --git a/audio/aeolus/files/patch-global.h b/audio/aeolus/files/patch-global.h new file mode 100644 index 000000000000..eaa4e44e0c90 --- /dev/null +++ b/audio/aeolus/files/patch-global.h @@ -0,0 +1,21 @@ +--- global.h.orig 2022-05-05 04:18:20 UTC ++++ global.h +@@ -21,14 +21,14 @@ + #ifndef __GLOBAL_H + #define __GLOBAL_H + +-#include <endian.h> +-#ifdef __BYTE_ORDER +-#if (__BYTE_ORDER == __LITTLE_ENDIAN) ++#include <sys/endian.h> ++#ifdef _BYTE_ORDER ++#if (_BYTE_ORDER == _LITTLE_ENDIAN) + #define WR2(p,v) { (p)[0] = v; (p)[1] = v >> 8; } + #define WR4(p,v) { (p)[0] = v; (p)[1] = v >> 8; (p)[2] = v >> 16; (p)[3] = v >> 24; } + #define RD2(p) ((p)[0] + ((p)[1] << 8)); + #define RD4(p) ((p)[0] + ((p)[1] << 8) + ((p)[2] << 16) + ((p)[3] << 24)); +-#elif (__BYTE_ORDER == __BIG_ENDIAN) ++#elif (_BYTE_ORDER == _BIG_ENDIAN) + #define WR2(p,v) { (p)[1] = v; (p)[0] = v >> 8; } + #define WR4(p,v) { (p)[3] = v; (p)[2] = v >> 8; (p)[1] = v >> 16; (p)[0] = v >> 24; } + #define RD2(p) ((p)[1] + ((p)[0] << 8)); diff --git a/audio/aeolus/files/patch-imidi.h b/audio/aeolus/files/patch-imidi.h new file mode 100644 index 000000000000..4051b193667a --- /dev/null +++ b/audio/aeolus/files/patch-imidi.h @@ -0,0 +1,20 @@ +--- imidi.h.orig 2022-05-05 04:24:13 UTC ++++ imidi.h +@@ -25,7 +25,7 @@ + #include <stdlib.h> + #include <stdio.h> + #include <clthreads.h> +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + #include <alsa/asoundlib.h> + #endif + #ifdef __APPLE__ +@@ -61,7 +61,7 @@ class Imidi : public A_thread (private) + Lfq_u8 *_qmidi; + uint16_t *_midimap; + const char *_appname; +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + snd_seq_t *_handle; + #endif + #ifdef __APPLE__ diff --git a/audio/aeolus/pkg-descr b/audio/aeolus/pkg-descr new file mode 100644 index 000000000000..3be9f88265f4 --- /dev/null +++ b/audio/aeolus/pkg-descr @@ -0,0 +1,13 @@ +Aeolus is a synthesised (i.e. not sampled) pipe organ emulator that +should be good enough to make an organist enjoy playing it. It is a +software synthesiser optimised for this job, with possibly hundreds +of controls for each stop, that enable the user to "voice" his +instrument. First presented at the 2nd LAD conference in Karlsruhe, +end of April 2004. + +Main features of the default instrument: three manuals and one pedal, +five different temperaments, variable tuning, MIDI control of course, +stereo, surround or Ambisonics output, flexible audio controls +including a large church reverb. + +WWW: https://kokkinizita.linuxaudio.org/linuxaudio/aeolus/ diff --git a/audio/aeolus/pkg-message b/audio/aeolus/pkg-message new file mode 100644 index 000000000000..8ff8bbb2d6ec --- /dev/null +++ b/audio/aeolus/pkg-message @@ -0,0 +1,11 @@ +[ +{ type: install + message: <<EOM +You installed aeolus: synthesised pipe organ emulator. + +In order to use it you need to install and run alsa-seq-server which +creates /dev/snd/seq that is required by aeolus. + +EOM +} +]