Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Aug 2015 16:35:27 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r394231 - in head/multimedia/libvpx: . files
Message-ID:  <201508141635.t7EGZRPq034558@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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@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),@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@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 },



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201508141635.t7EGZRPq034558>