[Midnightbsd-cvs] mports [21969] trunk/multimedia: add openh264

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Thu Sep 29 18:23:15 EDT 2016


Revision: 21969
          http://svnweb.midnightbsd.org/mports/?rev=21969
Author:   laffer1
Date:     2016-09-29 18:23:15 -0400 (Thu, 29 Sep 2016)
Log Message:
-----------
add openh264

Modified Paths:
--------------
    trunk/multimedia/Makefile

Added Paths:
-----------
    trunk/multimedia/openh264/
    trunk/multimedia/openh264/Makefile
    trunk/multimedia/openh264/distinfo
    trunk/multimedia/openh264/files/
    trunk/multimedia/openh264/files/gmpopenh264.js.in
    trunk/multimedia/openh264/files/patch-Makefile
    trunk/multimedia/openh264/files/patch-codec_common_src_cpu.cpp
    trunk/multimedia/openh264/pkg-descr
    trunk/multimedia/openh264/pkg-plist

Modified: trunk/multimedia/Makefile
===================================================================
--- trunk/multimedia/Makefile	2016-09-29 22:21:53 UTC (rev 21968)
+++ trunk/multimedia/Makefile	2016-09-29 22:23:15 UTC (rev 21969)
@@ -86,6 +86,7 @@
 SUBDIR += mpeg2codec
 SUBDIR += mplayer
 SUBDIR += mplayer-skins
+SUBDIR += openh264
 SUBDIR += phonon
 SUBDIR += phonon-gstreamer
 SUBDIR += plexmediaserver

Added: trunk/multimedia/openh264/Makefile
===================================================================
--- trunk/multimedia/openh264/Makefile	                        (rev 0)
+++ trunk/multimedia/openh264/Makefile	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,70 @@
+# $MidnightBSD$
+# $FreeBSD: head/multimedia/openh264/Makefile 418413 2016-07-12 04:30:32Z jbeich $
+
+PORTNAME=	openh264
+PORTVERSION=	1.5.0
+DISTVERSIONPREFIX=v
+PORTEPOCH=	2
+CATEGORIES=	multimedia
+
+MAINTAINER=	ports at MidnightBSD.org
+COMMENT=	Cisco implementation of H.264 codec
+
+LICENSE=	bsd2
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	cisco
+
+USES=		compiler cpe gmake
+CPE_VENDOR=	cisco
+USE_LDCONFIG=	yes
+ASFLAGS+=	${ASFLAGS_${MACHINE}_${CHOSEN_COMPILER_TYPE}}
+ASFLAGS_arm_clang=	-no-integrated-as
+ASFLAGS_arm64_clang=	-no-integrated-as
+MAKE_ARGS=	PREFIX="${PREFIX}" \
+		OS=bsd ARCH="${ARCH:S/amd64/x86_64/}" \
+		CCASFLAGS='$$(CFLAGS) ${ASFLAGS}' \
+		CFLAGS_OPT="" CFLAGS_DEBUG=""
+ALL_TARGET=	all
+
+OPTIONS_DEFINE=	DEBUG PLUGINS TEST
+OPTIONS_DEFAULT=PLUGINS
+OPTIONS_SUB=	yes
+
+DEBUG_BUILD_DEPENDS_OFF=	${DEBUG_BUILD_DEPENDS_OFF_${ARCH}}
+DEBUG_BUILD_DEPENDS_OFF_amd64=	nasm:${PORTSDIR}/devel/nasm
+DEBUG_BUILD_DEPENDS_OFF_i386=	nasm:${PORTSDIR}/devel/nasm
+DEBUG_MAKE_ARGS=BUILDTYPE=Debug
+PLUGINS_BUILD_DEPENDS=gmp-api>=34.0:${PORTSDIR}/multimedia/gmp-api
+#			gmp-api<36.0:${PORTSDIR}/multimedia/gmp-api
+PLUGINS_CFLAGS=	-I${LOCALBASE}/include/gmp-api
+PLUGINS_MAKE_ARGS=HAVE_GMP_API=Yes
+PLUGINS_ALL_TARGET=plugin
+PLUGINS_USES=	webplugin:gecko
+WEBPLUGIN_NAME=	gmp-gmp${PORTNAME}
+WEBPLUGIN_FILES=gmp${PORTNAME}.info libgmp${PORTNAME}.so
+SUB_FILES+=	gmp${PORTNAME}.js
+SUB_LIST+=	PORTVERSION=${PORTVERSION} TIMESTAMP="`date +%s`"
+
+TEST_BUILD_DEPENDS=googletest>=1.6.0:${PORTSDIR}/devel/googletest
+TEST_CFLAGS=	-I${LOCALBASE}/include
+TEST_MAKE_ARGS=	HAVE_GTEST=Yes
+TEST_ALL_TARGET=test
+
+post-patch:
+	${REINPLACE_CMD} -e '/gtest-targets\.mk/d' \
+		-e '/pkgconfig/s/$$(LIBDIR_NAME)/libdata/' \
+		${WRKSRC}/Makefile
+
+pre-build:
+	${LN} -sf ${LOCALBASE}/lib/libgtest.so ${WRKSRC}/libgtest.a
+
+post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.*
+	${MKDIR} ${STAGEDIR}${WEBPLUGIN_DIR}
+	${INSTALL_DATA} ${WRKSRC}/gmp${PORTNAME}.info ${STAGEDIR}${WEBPLUGIN_DIR}
+	${INSTALL_LIB} ${WRKSRC}/libgmp${PORTNAME}.so ${STAGEDIR}${WEBPLUGIN_DIR}
+	${INSTALL_DATA} ${WRKDIR}/gmp${PORTNAME}.js ${STAGEDIR}${WEBPLUGIN_DIR}
+
+.include <bsd.port.mk>


Property changes on: trunk/multimedia/openh264/Makefile
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/distinfo
===================================================================
--- trunk/multimedia/openh264/distinfo	                        (rev 0)
+++ trunk/multimedia/openh264/distinfo	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,2 @@
+SHA256 (openh264-v1.5.0_GH0.tar.gz) = 98077bd5d113c183ce02b678733b0cada2cf36750370579534c4d70f0b6c27b5
+SIZE (openh264-v1.5.0_GH0.tar.gz) = 37851166


Property changes on: trunk/multimedia/openh264/distinfo
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/files/gmpopenh264.js.in
===================================================================
--- trunk/multimedia/openh264/files/gmpopenh264.js.in	                        (rev 0)
+++ trunk/multimedia/openh264/files/gmpopenh264.js.in	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,3 @@
+pref("media.gmp-gmpopenh264.autoupdate", false);
+pref("media.gmp-gmpopenh264.lastUpdate", %%TIMESTAMP%%);
+pref("media.gmp-gmpopenh264.version", "%%PORTVERSION%%");


Property changes on: trunk/multimedia/openh264/files/gmpopenh264.js.in
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/files/patch-Makefile
===================================================================
--- trunk/multimedia/openh264/files/patch-Makefile	                        (rev 0)
+++ trunk/multimedia/openh264/files/patch-Makefile	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,13 @@
+# Force gmp plugin to link dynamically against libopenh264
+
+--- Makefile~
++++ Makefile
+@@ -210,7 +210,7 @@ plugin:
+ 	@echo "You do not have gmp-api.  Run make gmp-bootstrap to get the gmp-api headers."
+ endif
+ 
+-$(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXVER): $(MODULE_OBJS) $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
++$(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXVER): $(MODULE_OBJS) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
+ 	$(QUIET)rm -f $@
+ 	$(QUIET_CXX)$(CXX) $(SHARED) $(CXX_LINK_O) $+ $(LDFLAGS) $(SHLDFLAGS) $(MODULE_LDFLAGS)
+ 


Property changes on: trunk/multimedia/openh264/files/patch-Makefile
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/files/patch-codec_common_src_cpu.cpp
===================================================================
--- trunk/multimedia/openh264/files/patch-codec_common_src_cpu.cpp	                        (rev 0)
+++ trunk/multimedia/openh264/files/patch-codec_common_src_cpu.cpp	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,23 @@
+--- codec/common/src/cpu.cpp.orig	2015-03-25 07:43:00 UTC
++++ codec/common/src/cpu.cpp
+@@ -276,9 +276,17 @@ uint32_t WelsCPUFeatureDetect (int32_t* 
+  * that NEON and all associated features are available. */
+ 
+ uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
+-  return WELS_CPU_ARMv7 |
+-         WELS_CPU_VFPv3 |
+-         WELS_CPU_NEON;
++  int flags = 0;
++# if __ARM_ARCH >= 7
++  flags |= WELS_CPU_ARMv7;
++# endif
++# ifdef __ARM_VFPV3__
++  flags |= WELS_CPU_VFPv3;
++# endif
++# ifdef __ARM_NEON
++  flags |= WELS_CPU_NEON;
++# endif
++  return flags;
+ }
+ #endif
+ #elif defined(HAVE_NEON_AARCH64)


Property changes on: trunk/multimedia/openh264/files/patch-codec_common_src_cpu.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/pkg-descr
===================================================================
--- trunk/multimedia/openh264/pkg-descr	                        (rev 0)
+++ trunk/multimedia/openh264/pkg-descr	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,4 @@
+OpenH264 is a codec library which supports H.264 encoding and decoding.
+It is suitable for use in real time applications such as WebRTC.
+
+WWW: http://www.openh264.org/


Property changes on: trunk/multimedia/openh264/pkg-descr
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/multimedia/openh264/pkg-plist
===================================================================
--- trunk/multimedia/openh264/pkg-plist	                        (rev 0)
+++ trunk/multimedia/openh264/pkg-plist	2016-09-29 22:23:15 UTC (rev 21969)
@@ -0,0 +1,17 @@
+include/wels/codec_api.h
+include/wels/codec_app_def.h
+include/wels/codec_def.h
+include/wels/codec_ver.h
+%%PLUGINS%%%%WEBPLUGIN_DIR%%/gmpopenh264.info
+%%PLUGINS%%@rmtry lib/firefox-nightly/defaults/pref/gmpopenh264.js
+%%PLUGINS%%@rmtry lib/firefox/defaults/pref/gmpopenh264.js
+%%PLUGINS%%@rmtry lib/seamonkey/defaults/pref/gmpopenh264.js
+%%PLUGINS%%%%WEBPLUGIN_DIR%%/gmpopenh264.js
+%%PLUGINS%%@postexec ln -sf %D/%F %D/lib/firefox-nightly/defaults/pref/ 2>/dev/null || true
+%%PLUGINS%%@postexec ln -sf %D/%F %D/lib/firefox/defaults/pref/ 2>/dev/null || true
+%%PLUGINS%%@postexec ln -sf %D/%F %D/lib/seamonkey/defaults/pref/ 2>/dev/null || true
+%%PLUGINS%%%%WEBPLUGIN_DIR%%/libgmpopenh264.so
+lib/libopenh264.a
+lib/libopenh264.so
+lib/libopenh264.so.1
+libdata/pkgconfig/openh264.pc


Property changes on: trunk/multimedia/openh264/pkg-plist
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property


More information about the Midnightbsd-cvs mailing list