From 87d154e8536cdb535052c9d7fcd2ba8fc1dc0738 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sat, 10 Jan 2015 19:39:35 +0100 Subject: [PATCH] flac: update to v1.3.1 (CVE-2014-8962, CVE-2014-9028) This updates flac to the new upstream release v1.3.1 to fix two known CVEs. Additionally the commit changes the following: * Drop custom Build/Configure recipe in favor to CONFIGURE_ARGS * Refreshes patches and removes changes to *.in files since they're regenerated by autoreconf anyway * Remove now obsolete 020-libFLAC-remove-altivec-options.patch * Add an md5sum for the source archive * Passes --enable-static to configure to force producing a libflac.a Signed-off-by: Jo-Philipp Wich --- libs/flac/Makefile | 34 +++++----- .../patches/001-no-docs-and-examples.patch | 66 +++---------------- libs/flac/patches/002-no-utility.patch | 17 +---- libs/flac/patches/010-automake-compat.patch | 4 +- .../020-libFLAC-remove-altivec-options.patch | 62 ----------------- 5 files changed, 30 insertions(+), 153 deletions(-) delete mode 100644 libs/flac/patches/020-libFLAC-remove-altivec-options.patch diff --git a/libs/flac/Makefile b/libs/flac/Makefile index edfcb1dcf..403181b13 100644 --- a/libs/flac/Makefile +++ b/libs/flac/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=flac -PKG_VERSION:=1.2.1 +PKG_VERSION:=1.3.1 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@SF/flac -PKG_MD5SUM:= +PKG_MD5SUM:=b9922c9a0378c88d3e901b234f852698 PKG_MAINTAINER:=Ted Hess PKG_INSTALL:=1 @@ -33,20 +33,18 @@ define Package/libflac URL:=http://flac.sourceforge.net/ endef -define Build/Configure - $(call Build/Configure/Default, \ - --disable-cpplibs \ - --disable-sse \ - --disable-3dnow \ - --disable-altivec \ - --disable-doxgen-docs \ - --disable-local-xmms-plugin \ - --disable-xmms-plugin \ - --disable-ogg \ - --disable-oggtest \ - --disable-debug \ - ) -endef +CONFIGURE_ARGS += \ + --disable-cpplibs \ + --disable-sse \ + --disable-3dnow \ + --disable-altivec \ + --disable-doxgen-docs \ + --disable-local-xmms-plugin \ + --disable-xmms-plugin \ + --disable-ogg \ + --disable-oggtest \ + --disable-debug \ + --enable-static \ TARGET_CFLAGS += $(FPIC) diff --git a/libs/flac/patches/001-no-docs-and-examples.patch b/libs/flac/patches/001-no-docs-and-examples.patch index cd4e821a4..72b26310e 100644 --- a/libs/flac/patches/001-no-docs-and-examples.patch +++ b/libs/flac/patches/001-no-docs-and-examples.patch @@ -1,73 +1,25 @@ --- a/Makefile.am +++ b/Makefile.am -@@ -30,7 +30,7 @@ +@@ -31,7 +31,7 @@ - AUTOMAKE_OPTIONS = foreign 1.7 + ACLOCAL_AMFLAGS = -I m4 --SUBDIRS = doc include m4 man src examples test build obj -+SUBDIRS = include m4 src build obj - - DISTCLEANFILES = libtool-disable-static - ---- a/Makefile.in -+++ b/Makefile.in -@@ -234,7 +234,7 @@ target_alias = @target_alias@ - - AUTOMAKE_OPTIONS = foreign 1.7 - --SUBDIRS = doc include m4 man src examples test build obj -+SUBDIRS = include m4 src build obj - - DISTCLEANFILES = libtool-disable-static +-SUBDIRS = doc include m4 man src examples test build objs ++SUBDIRS = include m4 src build objs + EXTRA_DIST = \ + COPYING.FDL \ --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -30,12 +30,6 @@ SUBDIRS = \ +@@ -30,11 +30,6 @@ SUBDIRS = \ + flac \ metaflac \ - monkeys_audio_utilities \ $(XMMS_DIRS) \ -- plugin_winamp2 \ - test_grabbag \ - test_libs_common \ - test_libFLAC \ - test_seeking \ - test_streams \ + utils \ $(CPPLIBS_DIRS) - EXTRA_DIST = \ ---- a/src/Makefile.in -+++ b/src/Makefile.in -@@ -221,7 +221,7 @@ target_alias = @target_alias@ - - @FLaC__HAS_XMMS_TRUE@XMMS_DIRS = plugin_common plugin_xmms - --@FLaC__WITH_CPPLIBS_TRUE@CPPLIBS_DIRS = libFLAC++ test_libFLAC++ -+@FLaC__WITH_CPPLIBS_TRUE@CPPLIBS_DIRS = libFLAC++ - - SUBDIRS = \ - libFLAC \ -@@ -230,12 +230,6 @@ SUBDIRS = \ - metaflac \ - monkeys_audio_utilities \ - $(XMMS_DIRS) \ -- plugin_winamp2 \ -- test_grabbag \ -- test_libs_common \ -- test_libFLAC \ -- test_seeking \ -- test_streams \ - $(CPPLIBS_DIRS) - - -@@ -256,9 +250,8 @@ RECURSIVE_TARGETS = info-recursive dvi-r - check-recursive installcheck-recursive - DIST_COMMON = $(srcdir)/Makefile.in Makefile.am - DIST_SUBDIRS = libFLAC share flac metaflac monkeys_audio_utilities \ -- plugin_common plugin_xmms plugin_winamp2 test_grabbag \ -- test_libs_common test_libFLAC test_seeking test_streams \ -- libFLAC++ test_libFLAC++ -+ plugin_common plugin_xmms plugin_winamp2 \ -+ libFLAC++ - all: all-recursive - - .SUFFIXES: diff --git a/libs/flac/patches/002-no-utility.patch b/libs/flac/patches/002-no-utility.patch index e6fe1b3ed..f74460259 100644 --- a/libs/flac/patches/002-no-utility.patch +++ b/libs/flac/patches/002-no-utility.patch @@ -1,24 +1,13 @@ --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -26,9 +26,6 @@ endif +@@ -27,10 +27,7 @@ endif SUBDIRS = \ - libFLAC \ share \ -- flac \ -- metaflac \ -- monkeys_audio_utilities \ - $(XMMS_DIRS) \ - $(CPPLIBS_DIRS) - ---- a/src/Makefile.in -+++ b/src/Makefile.in -@@ -226,9 +226,6 @@ target_alias = @target_alias@ - SUBDIRS = \ libFLAC \ - share \ - flac \ - metaflac \ -- monkeys_audio_utilities \ $(XMMS_DIRS) \ +- utils \ $(CPPLIBS_DIRS) + EXTRA_DIST = \ diff --git a/libs/flac/patches/010-automake-compat.patch b/libs/flac/patches/010-automake-compat.patch index f8b154679..83180480b 100644 --- a/libs/flac/patches/010-automake-compat.patch +++ b/libs/flac/patches/010-automake-compat.patch @@ -1,8 +1,8 @@ --- a/Makefile.am +++ b/Makefile.am -@@ -34,6 +34,8 @@ SUBDIRS = include m4 src build obj +@@ -33,6 +33,8 @@ ACLOCAL_AMFLAGS = -I m4 - DISTCLEANFILES = libtool-disable-static + SUBDIRS = include m4 src build objs +ACLOCAL_AMFLAGS = -I m4 + diff --git a/libs/flac/patches/020-libFLAC-remove-altivec-options.patch b/libs/flac/patches/020-libFLAC-remove-altivec-options.patch deleted file mode 100644 index bc986724c..000000000 --- a/libs/flac/patches/020-libFLAC-remove-altivec-options.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- a/src/libFLAC/Makefile.in -+++ b/src/libFLAC/Makefile.in -@@ -66,6 +66,7 @@ NORMAL_UNINSTALL = : - PRE_UNINSTALL = : - POST_UNINSTALL = : - host_triplet = @host@ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@@FLaC__USE_ALTIVEC_TRUE@am__append_1 = -maltivec -mabi=altivec - ACLOCAL = @ACLOCAL@ - ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ - AMDEP_FALSE = @AMDEP_FALSE@ -@@ -234,13 +235,21 @@ target_alias = @target_alias@ - - lib_LTLIBRARIES = libFLAC.la - @DEBUG_TRUE@DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT -+# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific -+#@@@ PPC optimizations temporarily disabled -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@CPUCFLAGS = \ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@ $(am__append_1) \ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@ -DFLAC__NO_ASM -+ -+# FIXME: The following logic should be part of configure, not of Makefile.am -+ - # The -force_cpusubtype_ALL is needed to insert a ppc64 instruction - # into cpu.c with an asm(). - #@@@ PPC optimizations temporarily disabled --@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM --# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific --#@@@ PPC optimizations temporarily disabled --@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@CPUCFLAGS = -maltivec -mabi=altivec -DFLAC__NO_ASM -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@CPUCFLAGS = -faltivec \ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ -force_cpusubtype_ALL \ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ -DFLAC__NO_ASM \ -+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ $(am__append_1) - - AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@ - @FLaC__CPU_PPC_TRUE@@FLaC__NO_ASM_FALSE@ARCH_SUBDIRS = ppc ---- a/src/libFLAC/Makefile.am -+++ b/src/libFLAC/Makefile.am -@@ -32,6 +32,9 @@ lib_LTLIBRARIES = libFLAC.la - if DEBUG - DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT - endif -+ -+# FIXME: The following logic should be part of configure, not of Makefile.am -+ - if FLaC__CPU_PPC - # The -force_cpusubtype_ALL is needed to insert a ppc64 instruction - # into cpu.c with an asm(). -@@ -40,8 +43,12 @@ if FLaC__SYS_DARWIN - CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM - else - # Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific -+CPUCFLAGS = -+if FLaC__USE_ALTIVEC -+CPUCFLAGS += -maltivec -mabi=altivec -+endif - #@@@ PPC optimizations temporarily disabled --CPUCFLAGS = -maltivec -mabi=altivec -DFLAC__NO_ASM -+CPUCFLAGS += -DFLAC__NO_ASM - endif - endif -