<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/b519a2f95a6f826acabc231d703b2f5cf666e914">https://github.com/macports/macports-ports/commit/b519a2f95a6f826acabc231d703b2f5cf666e914</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit b519a2f95a6f826acabc231d703b2f5cf666e914
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Mon Nov 1 12:20:14 2021 -0400
<span style='display:block; white-space:pre;color:#404040;'> libvpx-devel: new port for testing
</span>---
multimedia/libvpx-devel/Portfile | 136 ++++++++++++++++++++++
multimedia/libvpx-devel/files/patch-Makefile.diff | 11 ++
2 files changed, 147 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/libvpx-devel/Portfile b/multimedia/libvpx-devel/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..357e906f161
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/libvpx-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,136 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup muniversal 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name libvpx-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts libvpx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_name libvpx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 1.11.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories multimedia
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {devans @dbevans} {mascguy @mascguy} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license Permissive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description WebM VP8/VP9 Codec SDK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description The WebM VP8/VP9 codecs are being developed \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ specifically to meet the demand for the consumption \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ of video over the Internet, including professionally \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ and amateur produced video-on-demand and conversational \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ video content. VP9 is an evolution of the VP8 video \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ codec and includes a number of enhancements and new \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ coding tools that have been added to improve coding efficiency. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The VP9 encoder in this release is not, as yet, feature complete.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage http://webmproject.org/tools/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname ${my_name}-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dist_subdir ${my_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# use git fetch rather than downloading a snapshot tarball
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# which delivers a different checksum and size on each download
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# this is not a stealth upgrade but a "feature" of this repo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fetch.type git
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+git.url https://chromium.googlesource.com/webm/${my_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+git.branch v${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# support for non-intel archs removed in version 1.5.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs x86_64 i386 arm64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles patch-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# uses newer assembly features on Intel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {*gcc-[3-4].*} {clang < 800} {macports-clang-3.*}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# As of 1.7.0: builds both static and shared libraries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# doesn't install docs or examples correctly, so disable them.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args --enable-vp8 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-vp9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-internal-stats \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-pic \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-postproc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-multithread \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-experimental \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-shared \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-install-docs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-debug-libs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-examples \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-unit-tests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args verbose=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.args verbose=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![info exists universal_possible]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${universal_possible} && [variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # universal build using muniversal portgroup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach my_arch {i386 x86_64 arm64} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # strip the automatic setting of host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set merger_host(${my_arch}) ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # force the target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set merger_configure_args(${my_arch}) --force-target=${my_arch}-${os.platform}${os.major}-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set LD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set merger_configure_env(${my_arch}) LD=${configure.cc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {"x86_64" in ${configure.universal_archs} || "i386" in ${configure.universal_archs}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:yasm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_skip_archcheck-append yasm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # for Intel archs, allow runtime cpu detection
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_configure_args(i386) --enable-runtime-cpu-detect
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_configure_args(x86_64) --enable-runtime-cpu-detect
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # parses the assembly output by default even when emitting assembly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[string match {*clang*} ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_build_args(i386) CFLAGS_S=-fno-integrated-as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_build_args(x86_64) CFLAGS_S=-fno-integrated-as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # normal build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # force the target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --force-target=${configure.build_arch}-${os.platform}${os.major}-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set LD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.env-append LD=${configure.cc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${configure.build_arch} in {i386 x86_64}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:yasm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_skip_archcheck-append yasm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-runtime-cpu-detect
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # parses the assembly output by default even when emitting assembly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[string match {*clang*} ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args-append CFLAGS_S=-fno-integrated-as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# shared library uses relative path in install name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# override with absolute path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach f [glob ${destroot}${prefix}/lib/${my_name}.*.dylib] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "install_name_tool -id [string map [list ${destroot} ""] ${f}] ${f}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url https://chromium.googlesource.com/webm/${my_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex ">v(\\d+(?:\\.\\d+)*)<"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/libvpx-devel/files/patch-Makefile.diff b/multimedia/libvpx-devel/files/patch-Makefile.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..d784526c6de
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/libvpx-devel/files/patch-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- build/make/Makefile.orig 2018-02-06 19:44:37.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ build/make/Makefile 2018-02-08 07:00:14.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -200,7 +200,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(qexec)$(AS) $(ASFLAGS) -o $@ $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PRECIOUS: %.c.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-%.c.S: CFLAGS += -DINLINE_ASM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++%.c.S: CFLAGS += -DINLINE_ASM $(CFLAGS_S)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(BUILD_PFX)%.c.S: %.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(if $(quiet),@echo " [GEN] $@")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(qexec)$(if $(CONFIG_DEPENDENCY_TRACKING),,mkdir -p $(dir $@))
</span></pre><pre style='margin:0'>
</pre>