diff --git a/audiofile-0.3.6-left-shift-neg.patch b/audiofile-0.3.6-left-shift-neg.patch new file mode 100644 index 0000000..6699969 --- /dev/null +++ b/audiofile-0.3.6-left-shift-neg.patch @@ -0,0 +1,48 @@ +diff -Nurb --strip-trailing-cr audiofile-0.3.6-orig/libaudiofile/modules/SimpleModule.h audiofile-0.3.6/libaudiofile/modules/SimpleModule.h +--- audiofile-0.3.6-orig/libaudiofile/modules/SimpleModule.h 2013-03-06 06:30:03.000000000 +0100 ++++ audiofile-0.3.6/libaudiofile/modules/SimpleModule.h 2016-02-03 21:19:43.065454454 +0100 +@@ -123,7 +123,7 @@ + typedef typename IntTypes::UnsignedType UnsignedType; + + static const int kScaleBits = (Format + 1) * CHAR_BIT - 1; +- static const int kMinSignedValue = -1 << kScaleBits; ++ static const int kMinSignedValue = 0L-(1< + { +diff -Nurb --strip-trailing-cr audiofile-0.3.6-orig/test/FloatToInt.cpp audiofile-0.3.6/test/FloatToInt.cpp +--- audiofile-0.3.6-orig/test/FloatToInt.cpp 2013-02-11 18:23:26.000000000 +0100 ++++ audiofile-0.3.6/test/FloatToInt.cpp 2016-02-03 21:21:14.714510229 +0100 +@@ -115,7 +115,7 @@ + EXPECT_EQ(readData[i], expectedData[i]); + } + +-static const int32_t kMinInt24 = -1<<23; ++static const int32_t kMinInt24 = 0L-(1<<23); + static const int32_t kMaxInt24 = (1<<23) - 1; + + TEST_F(FloatToIntTest, Int24) +diff -Nurb --strip-trailing-cr audiofile-0.3.6-orig/test/IntToFloat.cpp audiofile-0.3.6/test/IntToFloat.cpp +--- audiofile-0.3.6-orig/test/IntToFloat.cpp 2013-02-11 18:23:26.000000000 +0100 ++++ audiofile-0.3.6/test/IntToFloat.cpp 2016-02-03 21:20:57.380445355 +0100 +@@ -117,7 +117,7 @@ + EXPECT_EQ(readData[i], expectedData[i]); + } + +-static const int32_t kMinInt24 = -1<<23; ++static const int32_t kMinInt24 = 0L-(1<<23); + static const int32_t kMaxInt24 = (1<<23) - 1; + + TEST_F(IntToFloatTest, Int24) +diff -Nurb --strip-trailing-cr audiofile-0.3.6-orig/test/Sign.cpp audiofile-0.3.6/test/Sign.cpp +--- audiofile-0.3.6-orig/test/Sign.cpp 2013-02-11 18:23:26.000000000 +0100 ++++ audiofile-0.3.6/test/Sign.cpp 2016-02-03 21:20:38.742450826 +0100 +@@ -116,7 +116,7 @@ + EXPECT_EQ(readData[i], expectedData[i]); + } + +-static const int32_t kMinInt24 = -1<<23; ++static const int32_t kMinInt24 = 0L-(1<<23); + static const int32_t kMaxInt24 = (1<<23) - 1; + static const uint32_t kMaxUInt24 = (1<<24) - 1; + diff --git a/audiofile-0.3.6-narrowing.patch b/audiofile-0.3.6-narrowing.patch new file mode 100644 index 0000000..655a710 --- /dev/null +++ b/audiofile-0.3.6-narrowing.patch @@ -0,0 +1,33 @@ +diff -Nurb --strip-trailing-cr audiofile-0.3.6-orig/test/NeXT.cpp audiofile-0.3.6/test/NeXT.cpp +--- audiofile-0.3.6-orig/test/NeXT.cpp 2013-02-11 18:23:26.000000000 +0100 ++++ audiofile-0.3.6/test/NeXT.cpp 2016-02-03 21:49:10.867094322 +0100 +@@ -41,9 +41,9 @@ + { + '.', 's', 'n', 'd', + 0, 0, 0, 24, // offset of 24 bytes +- 0xff, 0xff, 0xff, 0xff, // unspecified length ++ -1, -1, -1, -1, // unspecified length + 0, 0, 0, 3, // 16-bit linear +- 0, 0, 172, 68, // 44100 Hz ++ 0, 0, -84, 68, // 44100 Hz (0xAC44) + 0, 0, 0, 1, // 1 channel + 0, 1, + 0, 1, +@@ -63,7 +63,7 @@ + 0, 0, 0, 24, // offset of 24 bytes + 0, 0, 0, 20, // length of 20 bytes + 0, 0, 0, 3, // 16-bit linear +- 0, 0, 172, 68, // 44100 Hz ++ 0, 0, -84, 68, // 44100 Hz (0xAC44) + 0, 0, 0, 1, // 1 channel + 0, 1, + 0, 1, +@@ -158,7 +158,7 @@ + 0, 0, 0, 24, // offset of 24 bytes + 0, 0, 0, 2, // 2 bytes + 0, 0, 0, 3, // 16-bit linear +- 0, 0, 172, 68, // 44100 Hz ++ 0, 0, -84, 68, // 44100 Hz (0xAC44) + 0, 0, 0, 0, // 0 channels + 0, 1 + }; diff --git a/audiofile.spec b/audiofile.spec index b86d76f..0144c91 100644 --- a/audiofile.spec +++ b/audiofile.spec @@ -3,7 +3,7 @@ Summary: Library for accessing various audio file formats Name: audiofile Version: 0.3.6 -Release: 10%{?dist} +Release: 11%{?dist} Epoch: 1 # library is LGPL / the two programs GPL / see README License: LGPLv2+ and GPLv2+ @@ -17,6 +17,9 @@ BuildRequires: flac-devel #BuildRequires: asciidoc Patch0: audiofile-0.3.6-CVE-2015-7747.patch +# fixes to make build with GCC 6 +Patch1: audiofile-0.3.6-left-shift-neg.patch +Patch2: audiofile-0.3.6-narrowing.patch %description The Audio File library is an implementation of the Audio File Library @@ -39,6 +42,9 @@ other resources you can use to develop Audio File applications. %prep %setup -q %patch0 -p1 -b .CVE-2015-7747 +%patch1 -p1 -b .left-shift-neg +%patch2 -p1 -b .narrowing-conversion + %build %configure --disable-static @@ -78,6 +84,9 @@ make check %{_mandir}/man3/* %changelog +* Wed Feb 3 2016 Michael Schwendt - 1:0.3.6-11 +- patch to compile with GCC 6 + * Wed Feb 03 2016 Fedora Release Engineering - 1:0.3.6-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild