diff --git a/audio/mac/Makefile b/audio/mac/Makefile index 012b703a0925..7c11e36092b5 100644 --- a/audio/mac/Makefile +++ b/audio/mac/Makefile @@ -1,23 +1,23 @@ PORTNAME= mac -PORTVERSION= 12.04 +PORTVERSION= 12.97 CATEGORIES= audio 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/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/License.txt USES= cmake dos2unix zip DOS2UNIX_FILES= Shared/*.h \ Source/Console/*.cpp \ Source/Shared/*.cpp \ Source/Shared/*.h NO_WRKSUBDIR= yes .include diff --git a/audio/mac/distinfo b/audio/mac/distinfo index 04530b495781..9e598ecd734c 100644 --- a/audio/mac/distinfo +++ b/audio/mac/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1769140105 -SHA256 (MAC_1204_SDK.zip) = c1664307451da792bc296b90d4ad343d078c5c1cc8dc59e50d36ee2b9566a195 -SIZE (MAC_1204_SDK.zip) = 1738618 +TIMESTAMP = 1779520756 +SHA256 (MAC_1297_SDK.zip) = da16b4e82a74188cc4f6a2ea53f353a640286fe10484e209379374df8962db5b +SIZE (MAC_1297_SDK.zip) = 1782272 diff --git a/audio/mac/files/patch-CMakeLists.txt b/audio/mac/files/patch-CMakeLists.txt index 66e6a2e3e99d..d24447b65af8 100644 --- a/audio/mac/files/patch-CMakeLists.txt +++ b/audio/mac/files/patch-CMakeLists.txt @@ -1,31 +1,31 @@ Version 11.00 added multi-threading support, but we need to link to -lpthread to resolve symbols. ---- CMakeLists.txt.orig 2025-09-05 10:46:54 UTC +--- CMakeLists.txt.orig 2026-03-29 18:11:44 UTC +++ CMakeLists.txt -@@ -6,6 +6,8 @@ option(BUILD_UTIL "Build the mac command line tool" ON - option(BUILD_SHARED "Build libMAC as a shared library" ON) - option(BUILD_UTIL "Build the mac command line tool" ON) +@@ -18,6 +18,8 @@ endif() + add_compile_options(-Wpedantic) + endif() +find_package(Threads) + # # Determine interface version # -@@ -229,6 +231,7 @@ if(BUILD_SHARED) +@@ -241,6 +243,7 @@ if(BUILD_SHARED) if(BUILD_SHARED) add_library(MAC SHARED $ $) set_target_properties(MAC PROPERTIES VERSION ${MAC_SOVERSION} SOVERSION ${MAC_SOVERSION}) + target_link_libraries(MAC Threads::Threads) if(WIN32) if(${ARCHITECTURE} STREQUAL x86) -@@ -315,7 +318,7 @@ if(BUILD_UTIL) +@@ -327,7 +330,7 @@ if(BUILD_UTIL) Source/Console/Console.cpp) add_executable(macutil ${MAC_UTIL_HEADER_FILES} ${MAC_UTIL_SOURCE_FILES} $) - target_link_libraries(macutil MAC) + target_link_libraries(macutil MAC Threads::Threads) target_include_directories(macutil PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/Source/MACLib diff --git a/audio/mac/files/patch-Shared_All.h b/audio/mac/files/patch-Shared_All.h index 10b574e7d180..853f5deb0841 100644 --- a/audio/mac/files/patch-Shared_All.h +++ b/audio/mac/files/patch-Shared_All.h @@ -1,27 +1,25 @@ We need to define PLATFORM_LINUX as the default if consumers don't do so. Fix runtime for little endian archs. At least on amd64, _BIG_ENDIAN is defined somewhere in the toolchain, causing the byte order to be reversed. ---- Shared/All.h.orig 2025-10-15 08:20:58 UTC +--- Shared/All.h.orig 2026-05-23 07:19:19 UTC +++ Shared/All.h -@@ -10,8 +10,8 @@ PLATFORM_ANDROID - PLATFORM_ANDROID - **************************************************************************************************/ +@@ -19,7 +19,7 @@ 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 -@@ -311,7 +311,7 @@ Byte order + #if defined(__ANDROID__) + #define PLATFORM_ANDROID +- #elif defined(__linux__) ++ #elif defined(__linux__) || defined(__FreeBSD__) + #define PLATFORM_LINUX + #elif defined(__APPLE__) + #define PLATFORM_APPLE +@@ -338,7 +338,7 @@ Byte order #define APE_LITTLE_ENDIAN 1234 #define APE_BIG_ENDIAN 4321 -#if defined(_BIG_ENDIAN) || defined(__BIG_ENDIAN__) || (defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)) +#if defined(__BIG_ENDIAN__) || (defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)) #define APE_BYTE_ORDER APE_BIG_ENDIAN #else #define APE_BYTE_ORDER APE_LITTLE_ENDIAN diff --git a/audio/mac/files/patch-Source_Console_Console.cpp b/audio/mac/files/patch-Source_Console_Console.cpp index 0033ecb30d5a..7a63c7f16c29 100644 --- a/audio/mac/files/patch-Source_Console_Console.cpp +++ b/audio/mac/files/patch-Source_Console_Console.cpp @@ -1,44 +1,44 @@ Unixify built-in help. ---- Source/Console/Console.cpp.orig 2025-08-15 06:11:17 UTC +--- Source/Console/Console.cpp.orig 2026-05-23 07:19:19 UTC +++ Source/Console/Console.cpp -@@ -135,7 +135,7 @@ static void DisplayProperUsage(FILE * pFile) +@@ -221,7 +221,7 @@ static void DisplayProperUsage(FILE * pFile) **************************************************************************************************/ static void DisplayProperUsage(FILE * pFile) { - fwprintf(pFile, L"Proper Usage: [EXE] [Input File] [Output File] [Mode]\n\n"); + fwprintf(pFile, L"Proper Usage: [mac] [Input File] [Output File] [Mode]\n\n"); fwprintf(pFile, L"Modes:\n"); fwprintf(pFile, L" Compress (fast): '-c1000'\n"); -@@ -155,18 +155,18 @@ static void DisplayProperUsage(FILE * pFile) - fwprintf(pFile, L" Set the number of threads when compressing or decompressing: -threads=#'\n\n"); +@@ -242,18 +242,18 @@ static void DisplayProperUsage(FILE * pFile) + fwprintf(pFile, L" Read the entire file until the end of file if it's unknown length so the seek table can be made perfect: -readfullinput'\n\n"); fwprintf(pFile, L"Examples:\n"); - fwprintf(pFile, L" Compress: mac.exe \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000\n"); - fwprintf(pFile, L" Compress: mac.exe \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000 -threads=16 -t \"Artist=Metallica|Album=Black|Name=One\"\n"); - fwprintf(pFile, L" Compress: mac.exe \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000 -t \"Artist=Metallica|Album=Black|Name=One\"\n"); - fwprintf(pFile, L" Compress: mac.exe \"Metallica - One.wav\" auto -c2000\n"); - fwprintf(pFile, L" Transcode from pipe: ffmpeg.exe -i \"Metallica - One.flac\" -f wav - | mac.exe - \"Metallica - One.ape\" -c2000\n"); - fwprintf(pFile, L" Decompress: mac.exe \"Metallica - One.ape\" \"Metallica - One.wav\" -d\n"); - fwprintf(pFile, L" Decompress: mac.exe \"Metallica - One.ape\" auto -d\n"); - fwprintf(pFile, L" Decompress: mac.exe \"Metallica - One.ape\" \"Metallica - One.wav\" -d -threads=16\n"); - fwprintf(pFile, L" Verify: mac.exe \"Metallica - One.ape\" -v\n"); - fwprintf(pFile, L" Full Verify: mac.exe \"Metallica - One.ape\" -V\n"); - fwprintf(pFile, L" Tag: mac.exe \"Metallica - One.ape\" -t \"Artist=Metallica|Album=Black|Name=One|Comment=\\\"This is in quotes\\\"\"\n"); - fwprintf(pFile, L" Remove tag: mac.exe \"Metallica - One.ape\" -r\n"); + fwprintf(pFile, L" Compress: mac \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000\n"); + fwprintf(pFile, L" Compress: mac \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000 -threads=16 -t \"Artist=Metallica|Album=Black|Name=One\"\n"); + fwprintf(pFile, L" Compress: mac \"Metallica - One.wav\" \"Metallica - One.ape\" -c2000 -t \"Artist=Metallica|Album=Black|Name=One\"\n"); + fwprintf(pFile, L" Compress: mac \"Metallica - One.wav\" auto -c2000\n"); + fwprintf(pFile, L" Transcode from pipe: ffmpeg -i \"Metallica - One.flac\" -f wav - | mac - \"Metallica - One.ape\" -c2000\n"); + fwprintf(pFile, L" Decompress: mac \"Metallica - One.ape\" \"Metallica - One.wav\" -d\n"); + fwprintf(pFile, L" Decompress: mac \"Metallica - One.ape\" auto -d\n"); + fwprintf(pFile, L" Decompress: mac \"Metallica - One.ape\" \"Metallica - One.wav\" -d -threads=16\n"); + fwprintf(pFile, L" Verify: mac \"Metallica - One.ape\" -v\n"); + fwprintf(pFile, L" Full Verify: mac \"Metallica - One.ape\" -V\n"); + fwprintf(pFile, L" Tag: mac \"Metallica - One.ape\" -t \"Artist=Metallica|Album=Black|Name=One|Comment=\\\"This is in quotes\\\"\"\n"); + fwprintf(pFile, L" Remove tag: mac \"Metallica - One.ape\" -r\n"); } /************************************************************************************************** diff --git a/audio/mac/files/patch-Source_Shared_All.h b/audio/mac/files/patch-Source_Shared_All.h index d7748cd159f8..5f00fb5ae66d 100644 --- a/audio/mac/files/patch-Source_Shared_All.h +++ b/audio/mac/files/patch-Source_Shared_All.h @@ -1,27 +1,25 @@ We need to define PLATFORM_LINUX as the default if consumers don't do so. Fix runtime for little endian archs. At least on amd64, _BIG_ENDIAN is defined somewhere in the toolchain, causing the byte order to be reversed. ---- Source/Shared/All.h.orig 2025-10-15 08:20:58 UTC +--- Source/Shared/All.h.orig 2026-05-23 07:19:19 UTC +++ Source/Shared/All.h -@@ -10,8 +10,8 @@ PLATFORM_ANDROID - PLATFORM_ANDROID - **************************************************************************************************/ +@@ -19,7 +19,7 @@ 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 -@@ -311,7 +311,7 @@ Byte order + #if defined(__ANDROID__) + #define PLATFORM_ANDROID +- #elif defined(__linux__) ++ #elif defined(__linux__) || defined(__FreeBSD__) + #define PLATFORM_LINUX + #elif defined(__APPLE__) + #define PLATFORM_APPLE +@@ -338,7 +338,7 @@ Byte order #define APE_LITTLE_ENDIAN 1234 #define APE_BIG_ENDIAN 4321 -#if defined(_BIG_ENDIAN) || defined(__BIG_ENDIAN__) || (defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)) +#if defined(__BIG_ENDIAN__) || (defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)) #define APE_BYTE_ORDER APE_BIG_ENDIAN #else #define APE_BYTE_ORDER APE_LITTLE_ENDIAN diff --git a/audio/mac/pkg-plist b/audio/mac/pkg-plist index f6d49421e696..27d102eecd01 100644 --- a/audio/mac/pkg-plist +++ b/audio/mac/pkg-plist @@ -1,14 +1,14 @@ bin/mac -include/MAC/APETag.h include/MAC/All.h include/MAC/CharacterHelper.h include/MAC/IAPEIO.h +include/MAC/IAPETag.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.14 +lib/libMAC.so.15