audio/mac: Update to 10.93

Switch back to the official SDK and make fetchable again. There's been
10 years of development since the last update, so have fun reading the
verion history!

Add upstream patches to audio/aqualung to make it work with the renamed
libraries. Other consumers just use the `mac` binary.

https://www.monkeysaudio.com/versionhistory.html
This commit is contained in:
Jason E. Hale 2025-02-07 04:20:28 -05:00
parent d971f341af
commit 99f3133891
10 changed files with 55 additions and 134 deletions

View file

@ -1,12 +1,17 @@
PORTNAME= aqualung
DISTVERSION= 1.2
PORTREVISION= 4
PORTREVISION= 5
CATEGORIES= audio
MAINTAINER= portmaster@BSDforge.com
COMMENT= Music player with rich features
WWW= https://aqualung.jeremyevans.net/
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
PATCHFILES+= a991c13d0df734a5d0fea7db6b181176858f3e58.patch:-p1 # Support newer audio/mac
PATCHFILES+= d2c88317b6042a05c236faf3c09f600337c6379e.patch:-p1 # Support newer audio/mac
PATCHFILES+= 1c2a295a72e1e3abc6df40714d9753e311541550.patch:-p1 # Support newer audio/mac
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
@ -19,7 +24,7 @@ LIB_DEPENDS= libFLAC.so:audio/flac \
libsamplerate.so:audio/libsamplerate \
libsndfile.so:audio/libsndfile \
libvorbis.so:audio/libvorbis \
libmac.so:audio/mac \
libMAC.so:audio/mac \
libspeex.so:audio/speex \
libwavpack.so:audio/wavpack \
libavcodec.so:multimedia/ffmpeg \

View file

@ -1,3 +1,9 @@
TIMESTAMP = 1709685891
TIMESTAMP = 1738916745
SHA256 (jeremyevans-aqualung-1.2_GH0.tar.gz) = 361f7d493db46134eef1976805eb5b097bde3f181eb7eaeaa2a27541b4b328e9
SIZE (jeremyevans-aqualung-1.2_GH0.tar.gz) = 1354656
SHA256 (a991c13d0df734a5d0fea7db6b181176858f3e58.patch) = 83711b4ef0df0fb17bb338db5dd36cc9965d705651f69a51385d63cd741678bc
SIZE (a991c13d0df734a5d0fea7db6b181176858f3e58.patch) = 7596
SHA256 (d2c88317b6042a05c236faf3c09f600337c6379e.patch) = e322f8c3ebf11e038e3839bffcb5e53d117ed827080e48575b32eeb3268a58e5
SIZE (d2c88317b6042a05c236faf3c09f600337c6379e.patch) = 2443
SHA256 (1c2a295a72e1e3abc6df40714d9753e311541550.patch) = 57cb540d4e8b9b692a9b5035e1e260eef9652710a5606f75af0d5b8773bd973b
SIZE (1c2a295a72e1e3abc6df40714d9753e311541550.patch) = 607

View file

@ -1,11 +0,0 @@
--- src/decoder/dec_mac.cpp.orig 2024-03-05 17:20:36 UTC
+++ src/decoder/dec_mac.cpp
@@ -178,7 +178,7 @@
#ifdef __OpenBSD__
wchar_t * pUTF16 = GetUTF16FromANSI(filename);
#else
- wchar_t * pUTF16 = CAPECharacterHelper::GetUTF16FromANSI(filename);
+ wchar_t * pUTF16 = GetUTF16FromANSI(filename);
#endif
pdecompress = CreateIAPEDecompress(pUTF16, &ret);
free(pUTF16);

View file

@ -1,44 +1,20 @@
PORTNAME= mac
PORTVERSION= 3.99.4.5.7
PORTREVISION= 1
PORTVERSION= 10.93
CATEGORIES= audio
MASTER_SITES= http://etree.org/shnutils/shntool/support/formats/ape/unix/3.99-u4-b5-s7/ \
http://freebsd.nsu.ru/distfiles/
DISTNAME= ${PORTNAME}-3.99-u4-b5-s7
MASTER_SITES= https://www.monkeysaudio.com/files/
DISTNAME= ${PORTNAME:tu}_${PORTVERSION:S|.||}_SDK
MAINTAINER= multimedia@FreeBSD.org
COMMENT= Monkey's Audio lossless codec
WWW= https://www.monkeysaudio.com/
USES= iconv:build libtool
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
INSTALL_TARGET= install-strip
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/License.txt
CPPFLAGS+= -DSHNTOOL
USES= cmake dos2unix zip
PORTDOCS= Credits.txt History.txt
DOS2UNIX_FILES= Shared/*.h
OPTIONS_DEFINE= DOCS
NO_WRKSUBDIR= yes
.include <bsd.port.pre.mk>
.if ${OPSYS} == FreeBSD
.if ${ARCH} == "i386" || ${ARCH} == "amd64"
BUILD_DEPENDS+= yasm:devel/yasm
.endif
.endif
post-install:
cd ${WRKSRC}/src/MACLib && ${INSTALL_DATA} BitArray.h \
Prepare.h UnBitArrayBase.h ${STAGEDIR}${PREFIX}/include/mac
@${MKDIR} ${STAGEDIR}${DOCSDIR}
# Install couple of useful docfiles, but first beautify them a bit; cryptic
# sed(1) construct is to append missing newline at EOF, in a way compatible
# with both GNU and BSD sed(1) implementations.
${ICONV_CMD} -f latin1 -t utf-8 ${WRKSRC}/src/Credits.txt | \
${SED} -ne '$$G;P' > ${STAGEDIR}${DOCSDIR}/Credits.txt
${SED} -ne '$$G;P' ${WRKSRC}/src/History.txt > \
${STAGEDIR}${DOCSDIR}/History.txt
.include <bsd.port.post.mk>
.include <bsd.port.mk>

View file

@ -1,2 +1,3 @@
SHA256 (mac-3.99-u4-b5-s7.tar.gz) = 9a735af2c56f05ee06b6e2ff719e902271299adf9e25cd3c9e4b28e8df3e30c5
SIZE (mac-3.99-u4-b5-s7.tar.gz) = 450981
TIMESTAMP = 1738912801
SHA256 (MAC_1093_SDK.zip) = c5719aaf9f4b7ddcb2fc21c3a9a0829f2c95ff746dcff4566d974240b88fcfa6
SIZE (MAC_1093_SDK.zip) = 1674933

View file

@ -0,0 +1,15 @@
We need to define PLATFORM_LINUX as the default if consumers don't do so.
--- Shared/All.h.orig 2025-02-07 08:39:49 UTC
+++ Shared/All.h
@@ -10,8 +10,8 @@ PLATFORM_ANDROID
PLATFORM_ANDROID
**************************************************************************************************/
#if !defined(PLATFORM_WINDOWS) && !defined(PLATFORM_APPLE) && !defined(PLATFORM_LINUX) && !defined(PLATFORM_ANDROID)
- #pragma message("No platform set for MACLib, defaulting to Windows")
- #define PLATFORM_WINDOWS
+ #pragma message("No platform set for MACLib, defaulting to Linux")
+ #define PLATFORM_LINUX
#endif
#ifdef PLATFORM_ANDROID

View file

@ -1,11 +0,0 @@
--- configure.orig 2010-07-22 17:51:17 UTC
+++ configure
@@ -3075,7 +3075,7 @@ fi
# Checks for programs.
-CXXFLAGS="$CXXFLAGS -O3 -Wall -pedantic -Wno-long-long"
+CXXFLAGS="$CXXFLAGS -Wall -pedantic -Wno-long-long"
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'

View file

@ -1,40 +0,0 @@
Console.cpp:36:3: error: cannot initialize a member subobject of type 'int' with an rvalue of type 'nullptr_t'
NULL
^~~~
/usr/include/sys/_null.h:37:14: note: expanded from macro 'NULL'
#define NULL nullptr
^~~~~~~
Console.cpp:36:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
NULL
^~~~
{ }
/usr/include/sys/_null.h:37:14: note: expanded from macro 'NULL'
#define NULL nullptr
^~~~~~~
Console.cpp:36:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
NULL
^~~~
{ }
/usr/include/sys/_null.h:37:14: note: expanded from macro 'NULL'
#define NULL nullptr
^~~~~~~
--- src/Console/Console.cpp.orig 2010-02-28 19:42:04 UTC
+++ src/Console/Console.cpp
@@ -33,7 +33,6 @@ typedef struct
_ErrorDesc ErrorList[][2] = {
ERROR_EXPLANATION
- NULL
};
#endif
@@ -91,7 +90,7 @@ char *ErrorToString(int nErrNo)
{
int i = 0;
- while (ErrorList[i])
+ while (i < sizeof(ErrorList)/sizeof(ErrorList[0]))
{
if (ErrorList[i]->nErrorNum == nErrNo)
return ErrorList[i]->sErrorString;

View file

@ -1,7 +1,2 @@
Monkey's Audio Codec is a lossless audio codec with good correspondence of
compression (and decompression) ratio and time. Monkey's Audio Codec can
be used for personal, educational and non-commercial purposes. Commercial
usage requires prior written permission from Monkey's Audio author.
This is community-maintained Unix port of earlier Monkey's Audio sources;
it does not correspond to current official SDK releases (4.x).
compression (and decompression) ratio and time.

View file

@ -1,29 +1,14 @@
bin/mac
include/mac/APECompress.h
include/mac/APECompressCore.h
include/mac/APECompressCreate.h
include/mac/APEDecompress.h
include/mac/APEHeader.h
include/mac/APEInfo.h
include/mac/APELink.h
include/mac/APETag.h
include/mac/All.h
include/mac/BitArray.h
include/mac/CharacterHelper.h
include/mac/CircleBuffer.h
include/mac/GlobalFunctions.h
include/mac/ID3Genres.h
include/mac/IO.h
include/mac/MACLib.h
include/mac/MACProgressHelper.h
include/mac/MACUtils.h
include/mac/NoWindows.h
include/mac/Prepare.h
include/mac/SmartPtr.h
include/mac/StdLibFileIO.h
include/mac/UnBitArrayBase.h
include/mac/config.h
lib/libmac.a
lib/libmac.so
lib/libmac.so.2
lib/libmac.so.2.0.0
include/MAC/APETag.h
include/MAC/All.h
include/MAC/CharacterHelper.h
include/MAC/IO.h
include/MAC/MACDll.h
include/MAC/MACLib.h
include/MAC/NoWindows.h
include/MAC/SmartPtr.h
include/MAC/Version.h
include/MAC/Warnings.h
include/MAC/WindowsEnvironment.h
lib/libMAC.so
lib/libMAC.so.12