svn commit: r394231 - in head/multimedia/libvpx: . files
Jan Beich
jbeich at FreeBSD.org
Fri Aug 14 16:35:29 UTC 2015
Author: jbeich
Date: Fri Aug 14 16:35:26 2015
New Revision: 394231
URL: https://svnweb.freebsd.org/changeset/ports/394231
Log:
multimedia/libvpx: update to 1.4.0.488 (snapshot)
Sync system libvpx with bundled libvpx in Firefox 40 in order
to fix vulnerabilities in the former.
While here fix other issues:
- Add powerpc targets removed by upstream
- Add sparc64 support [1]
- Improve gcc42 workaround [2]
- Strip binaries as reported by stage-qa
- Drop unused -no-integrated-as hack for Clang
Changes: https://chromium.googlesource.com/webm/libvpx/+log/v1.4.0..e67d45d
ACC report: https://people.freebsd.org/~jbeich/compat_reports/libvpx/1.4.0_to_1.4.0.488/compat_report.html
PR: 202270
PR: 186394 [1] (based on)
PR: 189136 [2]
Exp-run by: antoine
Approved by: ashish (maintainer)
MFH: 2015Q3
Security: http://www.vuxml.org/freebsd/34e60332-2448-4ed6-93f0-12713749f250.html
Added:
head/multimedia/libvpx/files/patch-vp9_common_vp9__filter.c (contents, props changed)
Modified:
head/multimedia/libvpx/Makefile
head/multimedia/libvpx/distinfo
head/multimedia/libvpx/files/patch-build_make_Makefile
head/multimedia/libvpx/files/patch-build_make_configure.sh
head/multimedia/libvpx/files/patch-configure
Modified: head/multimedia/libvpx/Makefile
==============================================================================
--- head/multimedia/libvpx/Makefile Fri Aug 14 16:34:30 2015 (r394230)
+++ head/multimedia/libvpx/Makefile Fri Aug 14 16:35:26 2015 (r394231)
@@ -2,10 +2,10 @@
# $FreeBSD$
PORTNAME= libvpx
-PORTVERSION= 1.4.0
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.4.0-488 # tracking www/firefox
+DISTVERSIONSUFFIX= -ge67d45d
CATEGORIES= multimedia
-MASTER_SITES= DEBIAN
-DISTNAME= ${PORTNAME}_${DISTVERSION}.orig
MAINTAINER= ashish at FreeBSD.org
COMMENT= VP8/VP9 Codec SDK
@@ -15,7 +15,10 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm
-USES= cpe gmake perl5 shebangfix tar:bzip2
+USE_GITHUB= yes
+GH_ACCOUNT= webmproject
+
+USES= compiler cpe gmake perl5 shebangfix tar:bzip2
CPE_VENDOR= john_koleszar
HAS_CONFIGURE= yes
USE_PERL5= build
@@ -28,7 +31,6 @@ POSTPROC_DESC= Enable postprocessing
RUNTIME_DESC= Enable runtime CPU detection
SHARED_DESC= Enable shared-library support
-WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION}
ALL_TARGET=
CONFIGURE_ARGS+=--prefix=${PREFIX} \
--disable-install-docs \
@@ -51,18 +53,6 @@ SHEBANG_FILES= build/make/ads2gas.pl
.include <bsd.port.options.mk>
-.if ${OSVERSION} < 900000
-.if ${ARCH} == "amd64"
-USE_GCC= yes
-.endif
-.endif
-
-# Workaround for GCC in 9.x post r260075
-# OSVERSION taken from r260135, the closest OSVERSION
-.if ${OSVERSION} > 902505 && ${OSVERSION} < 1000000
-CFLAGS+= -flax-vector-conversions
-.endif
-
.if ${OSVERSION} >= 1000000
CONFIGURE_ARGS+= --disable-unit-tests
.endif
@@ -77,6 +67,9 @@ CONFIGURE_ARGS+= --target=ia64-linux-gcc
CONFIGURE_ARGS+= --target=ppc32-linux-gcc
.elif ${ARCH} == "powerpc64"
CONFIGURE_ARGS+= --target=ppc64-linux-gcc
+.elif ${ARCH} == "sparc64"
+CONFIGURE_ARGS+= --target=sparc64-linux-gcc
+USES:= ${USES:Ncompiler*} compiler:c++11-lib
.elif ${ARCH} == "armv6"
CONFIGURE_ARGS+= --target=armv6-linux-gcc --cpu=armv6
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-build_make_Makefile
@@ -84,8 +77,22 @@ EXTRA_PATCHES+= ${FILESDIR}/extra-patch-
IGNORE= no support for ${ARCH} the moment. testing/patches are welcome
.endif
+.include <bsd.port.pre.mk>
+
+# Workaround for GCC in 9.x post r260075
+# OSVERSION taken from r260135, the closest OSVERSION
+.if ${OPSYS} == FreeBSD && ${OSVERSION} > 902505
+. if ${COMPILER_TYPE} == gcc && ${COMPILER_VERSION} == 42
+CFLAGS+= -flax-vector-conversions
+. endif
+.endif
+
post-patch:
@${REINPLACE_CMD} 's|\(link_with_cc\)=gcc|\1=$${CC}|' \
${WRKSRC}/build/make/configure.sh
-.include <bsd.port.mk>
+post-install:
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/vpx*
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvpx.so.*.*.*
+
+.include <bsd.port.post.mk>
Modified: head/multimedia/libvpx/distinfo
==============================================================================
--- head/multimedia/libvpx/distinfo Fri Aug 14 16:34:30 2015 (r394230)
+++ head/multimedia/libvpx/distinfo Fri Aug 14 16:35:26 2015 (r394231)
@@ -1,2 +1,2 @@
-SHA256 (libvpx_1.4.0.orig.tar.bz2) = f582d9b2d60a592a4a3d8c32965ca2d2167e9ade38c6c30bac8801ff66a118e4
-SIZE (libvpx_1.4.0.orig.tar.bz2) = 1807989
+SHA256 (webmproject-libvpx-v1.4.0-488-ge67d45d_GH0.tar.bz2) = 9ee182a81d866d92021e4cb11bc81cf0bee96d5bb53c2122eb4d3cc6b86b712b
+SIZE (webmproject-libvpx-v1.4.0-488-ge67d45d_GH0.tar.bz2) = 2324228
Modified: head/multimedia/libvpx/files/patch-build_make_Makefile
==============================================================================
--- head/multimedia/libvpx/files/patch-build_make_Makefile Fri Aug 14 16:34:30 2015 (r394230)
+++ head/multimedia/libvpx/files/patch-build_make_Makefile Fri Aug 14 16:35:26 2015 (r394231)
@@ -1,14 +1,5 @@
--- build/make/Makefile.orig
+++ build/make/Makefile
-@@ -158,7 +158,7 @@
- $(qexec)$(AS) $(ASFLAGS) -o $@ $<
-
- .PRECIOUS: %.c.S
--%.c.S: CFLAGS += -DINLINE_ASM
-+%.c.S: CFLAGS += -DINLINE_ASM $(CLANG_NO_IAS)
- $(BUILD_PFX)%.c.S: %.c
- $(if $(quiet), at echo " [GEN] $@")
- $(qexec)$(CC) -S $(CFLAGS) -o $@ $<
@@ -230,8 +230,8 @@
define install_map_template
$(DIST_DIR)/$(1): $(2)
Modified: head/multimedia/libvpx/files/patch-build_make_configure.sh
==============================================================================
--- head/multimedia/libvpx/files/patch-build_make_configure.sh Fri Aug 14 16:34:30 2015 (r394230)
+++ head/multimedia/libvpx/files/patch-build_make_configure.sh Fri Aug 14 16:35:26 2015 (r394231)
@@ -1,13 +1,5 @@
--- build/make/configure.sh.orig 2015-04-03 18:49:19 UTC
+++ build/make/configure.sh
-@@ -379,6 +379,7 @@ write_common_config_banner() {
- print_webm_license config.mk "##" ""
- echo '# This file automatically generated by configure. Do not edit!' >> config.mk
- echo "TOOLCHAIN := ${toolchain}" >> config.mk
-+ echo "CLANG_NO_IAS=${CLANG_NO_IAS}" >> config.mk
-
- case ${toolchain} in
- *-linux-rvct)
@@ -831,7 +832,6 @@ process_common_toolchain() {
case ${tgt_cc} in
Modified: head/multimedia/libvpx/files/patch-configure
==============================================================================
--- head/multimedia/libvpx/files/patch-configure Fri Aug 14 16:34:30 2015 (r394230)
+++ head/multimedia/libvpx/files/patch-configure Fri Aug 14 16:35:26 2015 (r394231)
@@ -1,14 +1,17 @@
--- configure.orig
+++ configure
-@@ -164,6 +164,7 @@ all_platforms="${all_platforms} universa
- all_platforms="${all_platforms} universal-darwin12-gcc"
- all_platforms="${all_platforms} universal-darwin13-gcc"
- all_platforms="${all_platforms} universal-darwin14-gcc"
+@@ -148,6 +148,10 @@ all_platforms="${all_platforms} x86_64-w
+ all_platforms="${all_platforms} x86_64-win64-vs10"
+ all_platforms="${all_platforms} x86_64-win64-vs11"
+ all_platforms="${all_platforms} x86_64-win64-vs12"
+all_platforms="${all_platforms} ia64-linux-gcc"
++all_platforms="${all_platforms} ppc32-linux-gcc"
++all_platforms="${all_platforms} ppc64-linux-gcc"
++all_platforms="${all_platforms} sparc64-linux-gcc"
all_platforms="${all_platforms} generic-gnu"
# all_targets is a list of all targets that can be configured
-@@ -611,15 +612,15 @@
+@@ -611,15 +612,14 @@
check_add_cflags -Wimplicit-function-declaration
check_add_cflags -Wuninitialized
check_add_cflags -Wunused-variable
@@ -26,7 +29,6 @@
+ # https://code.google.com/p/webm/issues/detail?id=603
+ # work around them until they are fixed
+ check_add_cflags -fno-strict-aliasing
-+ CLANG_NO_IAS=-no-integrated-as
+ else
+ check_add_cflags -Wunused-but-set-variable
+ fi
Added: head/multimedia/libvpx/files/patch-vp9_common_vp9__filter.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/multimedia/libvpx/files/patch-vp9_common_vp9__filter.c Fri Aug 14 16:35:26 2015 (r394231)
@@ -0,0 +1,27 @@
+commit 33b3953c548a20c0aee705657df0440a740c28b7
+Author: James Zern <jzern at google.com>
+Date: Thu Jun 11 15:12:22 2015 -0700
+
+ vp9_filter: restore vp9_bilinear_filters alignment
+
+ the declaration containing the alignment in vp9_filter.h was removed in:
+ eb88b17 Make vp9 subpixel match vp8
+
+ fixes a crash in 32-bit builds
+
+ Change-Id: I9a97e6b4e8e94698e43ff79d0d8bb85043b73c61
+
+diff --git a/vp9/common/vp9_filter.c b/vp9/common/vp9_filter.c
+index afcdf22..b256d4a 100644
+--- vp9/common/vp9_filter.c
++++ vp9/common/vp9_filter.c
+@@ -12,7 +12,8 @@
+
+ #include "vp9/common/vp9_filter.h"
+
+-const InterpKernel vp9_bilinear_filters[SUBPEL_SHIFTS] = {
++DECLARE_ALIGNED(256, const InterpKernel,
++ vp9_bilinear_filters[SUBPEL_SHIFTS]) = {
+ { 0, 0, 0, 128, 0, 0, 0, 0 },
+ { 0, 0, 0, 120, 8, 0, 0, 0 },
+ { 0, 0, 0, 112, 16, 0, 0, 0 },
More information about the svn-ports-all
mailing list