commit a3b57fe2982e8f8d006f9dc7252489a6e1791974
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Mon Feb 27 22:13:48 2023 +0000
Revert "Update to 9.04"
This reverts commit 17de29a898a2a889aa0e744e4a80f7219799dca3.
.gitignore | 1 -
License.htm | 44 ++++++++++++++++++++
license.html | 99 --------------------------------------------
mac-4.11-u4-b5-s7-gcc6.patch | 98 +++++++++++++++++++++++++++++++++++++++++++
mac.spec | 73 ++++++++++++++++++++++++--------
sources | 2 +-
6 files changed, 198 insertions(+), 119 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index c7cf357..bb3b048 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,2 @@
mac-3.99-u4-b5.tar.gz
/monkeys-audio_4.11-u4-b5-s7.orig.tar.gz
-/MAC_904_SDK.zip
diff --git a/License.htm b/License.htm
new file mode 100644
index 0000000..3081335
--- /dev/null
+++ b/License.htm
@@ -0,0 +1,44 @@
+<html>
+
+<head>
+<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
+<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
+<meta name="ProgId" content="FrontPage.Editor.Document">
+<title>Well</title>
+</head>
+
+<body>
+
+<p align="center"><font face="Verdana"
size="4">Monkey's Audio Source Code
+License Agreement</font></p>
+<p><font face="Verdana" size="2"><b>License
Agreement</b></font></p>
+<p><font face="Verdana" size="2">1. The Monkey's
Audio SDK and source code can
+be freely used to add APE format playback, encoding, or tagging support to any
+product, free or commercial. Use of the code for proprietary efforts that
+don't support the official APE format require written consent of the
author.</font></p>
+<p><font face="Verdana" size="2">2. Monkey's Audio
source can be included in GPL
+and open-source software, although Monkey's Audio itself will not be subjected
+to external licensing requirements or other viral source
restrictions.</font></p>
+<p><font face="Verdana" size="2">3. Code changes and
improvements must be
+contributed back to the Monkey's Audio project free from restrictions or
+royalties for the sake of the common good, unless exempted by express written
+consent of the author.</font></p>
+<p><font face="Verdana" size="2">4. Any source code,
ideas, or libraries used
+must be plainly acknowledged in the software using the code.</font></p>
+<p><font face="Verdana" size="2">5. Although the software
has been tested thoroughly, the author is in no way responsible for damages due to
+bugs or misuse. </font></p>
+<p><font face="Verdana" size="2">6. If you do not
completely agree with all of
+the previous stipulations, you must cease using this source code and remove it
+from your storage device.</font></p>
+<p align="center"
style="margin:0in;margin-bottom:.0001pt;text-align:center"> </p>
+<p align="center"
style="margin:0in;margin-bottom:.0001pt;text-align:center"><i><font
face="Verdana" size="2">All
+rights not expressly granted here are reserved by Matthew T.
Ashland.</font></i></p>
+<p align="center"
style="margin:0in;margin-bottom:.0001pt;text-align:center"><font
size="2"><font face="Verdana"><span
style="mso-bidi-font-family: Arial Unicode
MS"> </span></font></font></p>
+<p align="center"
style="margin:0in;margin-bottom:.0001pt;text-align:center"><font
face="Verdana" size="2">-
+All materials and programs copyrighted �2000-2006 by Matthew T. Ashland
-</font></p>
+<p align="center"
style="margin:0in;margin-bottom:.0001pt;text-align:center"><font
face="Verdana" size="2">-
+All rights reserved. -</font></p>
+
+</body>
+
+</html>
diff --git a/mac-4.11-u4-b5-s7-gcc6.patch b/mac-4.11-u4-b5-s7-gcc6.patch
new file mode 100644
index 0000000..07d4961
--- /dev/null
+++ b/mac-4.11-u4-b5-s7-gcc6.patch
@@ -0,0 +1,98 @@
+--- a/src/MACLib/APECompress.cpp
++++ b/src/MACLib/APECompress.cpp
+@@ -3,6 +3,7 @@
+ #include IO_HEADER_FILE
+ #include "APECompressCreate.h"
+ #include "WAVInputSource.h"
++#define min(a,b) (((a) < (b)) ? (a) : (b))
+
+ CAPECompress::CAPECompress()
+ {
+
+--- a/src/MACLib/APEDecompress.cpp
++++ b/src/MACLib/APEDecompress.cpp
+@@ -7,6 +7,7 @@
+ #include "NewPredictor.h"
+
+ #define DECODE_BLOCK_SIZE 4096
++#define min(a,b) (((a) < (b)) ? (a) : (b))
+
+ CAPEDecompress::CAPEDecompress(int * pErrorCode, CAPEInfo * pAPEInfo, int nStartBlock,
int nFinishBlock)
+ {
+
+--- a/src/MACLib/APESimple.cpp
++++ b/src/MACLib/APESimple.cpp
+@@ -14,6 +14,7 @@
+ #define UNMAC_DECODER_OUTPUT_APE 2
+
+ #define BLOCKS_PER_DECODE 9216
++#define min(a,b) (((a) < (b)) ? (a) : (b))
+
+ int DecompressCore(const str_utf16 * pInputFilename, const str_utf16 * pOutputFilename,
int nOutputMode, int nCompressionLevel, IAPEProgressCallback * pProgressCallback);
+
+
+--- a/src/MACLib/BitArray.cpp
++++ b/src/MACLib/BitArray.cpp
+@@ -20,6 +20,8 @@
+ #define SHIFT_BITS (CODE_BITS - 9)
+ #define EXTRA_BITS ((CODE_BITS - 2) % 8 + 1)
+ #define BOTTOM_VALUE (TOP_VALUE >> 8)
++#define min(a,b) (((a) < (b)) ? (a) : (b))
++#define max(a,b) (((a) > (b)) ? (a) : (b))
+
+ /************************************************************************************
+ Lookup tables
+
+--- a/src/MACLib/APETag.cpp
++++ b/src/MACLib/APETag.cpp
+@@ -4,6 +4,7 @@
+ #include "CharacterHelper.h"
+ #include "IO.h"
+ #include IO_HEADER_FILE
++#define max(a,b) (((a) > (b)) ? (a) : (b))
+
+
/*****************************************************************************************
+ CAPETagField
+
+--- a/src/MACLib/MACProgressHelper.cpp
++++ b/src/MACLib/MACProgressHelper.cpp
+@@ -1,6 +1,7 @@
+ #include "All.h"
+ #include "MACProgressHelper.h"
+ #include "MACLib.h"
++#define max(a,b) (((a) > (b)) ? (a) : (b))
+
+ CMACProgressHelper::CMACProgressHelper(int nTotalSteps, IAPEProgressCallback *
pProgressCallback)
+ {
+
+--- a/src/MACLib/UnBitArray.cpp
++++ b/src/MACLib/UnBitArray.cpp
+@@ -23,6 +23,7 @@
+ #define BOTTOM_VALUE (TOP_VALUE >> 8)
+
+ #define MODEL_ELEMENTS 64
++#define max(a,b) (((a) > (b)) ? (a) : (b))
+
+ /***********************************************************************************
+ Construction
+
+--- a/src/MACLib/Prepare.cpp
++++ b/src/MACLib/Prepare.cpp
+@@ -1,5 +1,6 @@
+ #include "All.h"
+ #include "Prepare.h"
++#define max(a,b) (((a) > (b)) ? (a) : (b))
+
+ const uint32 CRC32_TABLE[256] =
{0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,
+
4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,
+
+--- b/src/Shared/CircleBuffer.cpp
++++ b/src/Shared/CircleBuffer.cpp
+@@ -1,5 +1,6 @@
+ #include "All.h"
+ #include "CircleBuffer.h"
++#define min(a,b) (((a) < (b)) ? (a) : (b))
+
+ CCircleBuffer::CCircleBuffer()
+ {
+
diff --git a/mac.spec b/mac.spec
index cb7f8bd..3a9bdb8 100644
--- a/mac.spec
+++ b/mac.spec
@@ -1,19 +1,26 @@
Name: mac
-Version: 9.04
-Release: 1%{?dist}
+Version: 4.11
+Release: 14.u4b5%{?dist}
Summary: Monkey's Audio Codec (MAC) utility
Group: Applications/Multimedia
License: Monkey's Audio Source Code License Agreement
-URL:
https://www.monkeysaudio.com/index.html
+URL:
http://supermmx.org/linux/mac/
# use debian multimedia source
-Source0:
https://monkeysaudio.com/files/MAC_904_SDK.zip
+Source0:
ftp://ftp.deb-multimedia.org/pool/main/m/monkeys-audio/monkeys-audio_%{ve...
Source1: mac-permission_to_redistribute.txt
-Source2:
https://www.monkeysaudio.com/license.html
+Source2: License.htm
+Patch0: mac-4.11-u4-b5-s7-gcc6.patch
BuildRequires: gcc-c++
-BuildRequires: make
-BuildRequires: python3-html2text
+%ifarch i686 x86_64
+BuildRequires: yasm
+%endif
+%if 0%{?fedora} > 22
+BuildRequires: execstack
+%else
+BuildRequires: prelink
+%endif
Requires: %{name}-libs = %{version}-%{release}
@@ -49,41 +56,71 @@ developing applications that use %{name}.
%prep
-%autosetup -c -n MAC_904_SDK
+%setup -q -n monkeys-audio-%{version}-u4-b5-s7
+%patch0 -p1 -b .gcc6
#Copy permission to redistribute
cp -p %{SOURCE1} .
-cp -p %{SOURCE2} .
+cp -p %{SOURCE2} src/
+
+# Fix encoding issues:
+for txtfile in src/Credits.txt ; do
+ iconv -f iso-8859-1 -t UTF8 $txtfile -o $txtfile.utf8
+ touch -r $txtfile $txtfile.utf8
+ mv -f $txtfile.utf8 $txtfile
+done
+
+# Disable CXXFLAGS override
+sed -i.cxxflags -e 's/ -O3 -Wall -pedantic -Wno-long-long//g' configure
configure.in
+touch -r configure.in.cxxflags configure.in
+touch -r configure.cxxflags configure
%build
-%make_build -C Source/Projects/NonWindows
+%configure --disable-static \
+%ifarch i686 x86_64
+ --enable-assembly=yes
+%endif
+
+
+# remove rpath from libtool
+sed -i.rpath
's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g'
libtool
+sed -i.rpath 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+
+
+make %{?_smp_mflags}
%install
-%make_install prefix=%{_prefix} libdir=%{_libdir} -C Source/Projects/NonWindows
+rm -rf $RPM_BUILD_ROOT
+make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
+find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
+
+execstack -c $RPM_BUILD_ROOT%{_libdir}/libmac.so.2.0.0
+
+
+%post libs -p /sbin/ldconfig
+
+%postun libs -p /sbin/ldconfig
-# generate license
-html2text --ignore-links "license.html" | sed -n '/^## License$/,$p'
>> LICENSE.md
%files
+%doc AUTHORS ChangeLog COPYING NEWS README
%{_bindir}/mac
%files libs
%doc mac-permission_to_redistribute.txt
-%doc LICENSE.md
+%doc src/License.htm
%{_libdir}/*.so.*
%files devel
-%{_includedir}/MAC/
+%doc TODO src/Credits.txt src/History.txt
+%{_includedir}/mac/
%{_libdir}/*.so
%changelog
-* Mon Feb 27 2023 Leigh Scott <leigh123linux(a)gmail.com> - 9.04-1
-- Update to 9.04
-
* Mon Aug 08 2022 RPM Fusion Release Engineering <sergiomb(a)rpmfusion.org> -
4.11-14.u4b5
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild and ffmpeg
5.1
diff --git a/sources b/sources
index 04c0a8f..723ad17 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (MAC_904_SDK.zip) =
d104421e9bfa8c36dee89bd292c06629ff39a33e84569a5578f4a255432238a0cf09a7d03c5f7df3daf0e41d5cf3ac88f3b58581daf09a94935de91056334681
+c438547f6336f2eda3ca820c08664aea monkeys-audio_4.11-u4-b5-s7.orig.tar.gz