<pre style='margin:0'>
Ken (kencu) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f0c882ca9071adff4c2e5e3bf2b35f0098bc384d">https://github.com/macports/macports-ports/commit/f0c882ca9071adff4c2e5e3bf2b35f0098bc384d</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit f0c882ca9071adff4c2e5e3bf2b35f0098bc384d
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Wed Feb 3 22:06:22 2021 -0800

<span style='display:block; white-space:pre;color:#404040;'>    libvpx: use newer commit to support arm64
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    rework universal building to current MP standards
</span>---
 multimedia/libvpx/Portfile                         | 129 ++++++++++-----------
 .../files/patch-build-make-configure.sh.diff       |  30 -----
 2 files changed, 60 insertions(+), 99 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/libvpx/Portfile b/multimedia/libvpx/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 9188373cffe..dc10561075b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/multimedia/libvpx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/libvpx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,30 +31,21 @@ fetch.type          git
</span> git.url             https://chromium.googlesource.com/webm/${name}
 git.branch          v${version}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# support for non-intel archs removed in version 1.5.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs     x86_64 i386 arm64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# on BigSur or newer, use a recent 20210203 commit with the arm64 fixes in it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# because we also need to support +universal, do this for all builds for now
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append port:yasm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles          patch-build-make-configure.sh.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    patch-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} >= 20} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    git.branch      5a4cfa95630ee3ebb5d74cd6c21336492e8707a4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version         1.9.0-20210203
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# clang 425.0.28 with libvpx-1.4.0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# vp9/common/x86/vp9_subpixel_8t_intrin_avx2.c:77:16: error: assigning to '__m256i' from incompatible type 'int'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  filtersReg32 = MM256_BROADCASTSI128_SI256(filtersReg);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# apple gcc-4.2 with libvpx-1.6.0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# vp9/encoder/x86/vp9_frame_scale_ssse3.c: In function ‘eight_tap_row_ssse3’:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# vp9/encoder/x86/vp9_frame_scale_ssse3.c:93: internal compiler error: Segmentation fault
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# {standard input}:unknown:Undefined local symbol LC2
</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:#ffe0e0;'>-compiler.blacklist  *gcc-3.* *gcc-4.* {clang < 800} macports-clang-3.3 macports-clang-3.4 macports-clang-3.7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Make sure that mp-clang-5.0 is picked if all compilers were blacklisted.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Especially important for 10.6 on libc++, since the fallback list contains macports-clang-3.7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# as the first, and thus selected, fallback option (even though it has been blacklisted earlier).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.fallback-append macports-clang-5.0 macports-clang-6.0 macports-clang-7.0 macports-clang-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-Makefile.diff
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-license_noconflict  clang-5.0 clang-6.0 clang-7.0
</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> 
 # As of 1.7.0: builds both static and shared libraries
 # doesn't install docs or examples correctly, so disable them.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -64,7 +55,6 @@ configure.args      --enable-vp8 \
</span>                     --enable-pic \
                     --enable-postproc \
                     --enable-multithread \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --enable-runtime-cpu-detect \
</span>                     --enable-experimental \
                     --enable-shared \
                     --disable-install-docs \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -72,65 +62,66 @@ configure.args      --enable-vp8 \
</span>                     --disable-examples \
                     --disable-unit-tests
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# libvpx does not yet support runtime detection of NEON features on macOS/iOS.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# For arm64 builds (and universal builds targeting arm) we disable this feature,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# meaning NEON support is determined at compile time.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# For x86* architectures in universal builds, this feature is re-enabled below.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if { ${build_arch} eq "arm64" || [variant_isset universal] } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-delete --enable-runtime-cpu-detect
</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:#ffe0e0;'>-configure.env       LD=${configure.cc}
</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:#ffe0e0;'>-# add in when docs are installed correctly
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#variant docs description {Build documentation} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    depends_build-append path:bin/php:php5 port:doxygen
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    configure.args-delete --disable-install-docs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    configure.args-append --enable-install-docs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # universal build using muniversal portgroup
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.target
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-build.args          verbose=1
</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:#ffe0e0;'>-destroot.args       verbose=1
</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:#ffe0e0;'>-# Build fix for MacPorts clang-3.5 and later:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# This is an intentional change to Clang. It now parses the assembly output by default even when emitting assembly so that the diagnostics are consistent between "clang -c" and "clang -S".
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# The solution is either to pass -fno-integrated-as to the compiler, or change the assembly produced (& probably the script that processes it) so that it's valid. Note that commenting out the line won't work: comments get stripped by the same process.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Current Xcode versions of clang > 602 corresponding to Xcode 6.3 or greater also need this fix.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[string match {macports-clang-3.[5-9]} ${configure.compiler}] ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    [string match {macports-clang-[4-9].*} ${configure.compiler}] ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    [string match {macports-clang-[1-9][0-9].*} ${configure.compiler}] ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    (${configure.compiler} eq "clang" && [compiler.command_line_tools_version ${configure.compiler}] > 602)} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        build.args-append CFLAGS_S=-fno-integrated-as
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</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:#ffe0e0;'>-configure.universal_args-delete --disable-dependency-tracking
</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:#ffe0e0;'>-# As of 1.5.0 ppc build targets are no longer supported
</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:#ffe0e0;'>-set my_targets(i386)    x86
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set my_targets(x86_64)  x86_64
</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:#ffe0e0;'>-# We must specify the target, otherwise the configure script will guess,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# and that may not match what the user requested in macports.conf.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach my_arch {i386 x86_64} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set merger_host(${my_arch}) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[info exists my_targets(${my_arch})]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set merger_configure_args(${my_arch}) --force-target=$my_targets(${my_arch})-${os.platform}-gcc
</span>     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    lappend merger_configure_args(${my_arch}) --enable-runtime-cpu-detect
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![info exists universal_possible]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {!${universal_possible} || ![variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[info exists merger_configure_args(${build_arch})]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append $merger_configure_args(${build_arch})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append --force-target=${os.arch}-${os.platform}-gcc
</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;color:#808080;'>diff --git a/multimedia/libvpx/files/patch-build-make-configure.sh.diff b/multimedia/libvpx/files/patch-build-make-configure.sh.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 72bcd70f794..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/multimedia/libvpx/files/patch-build-make-configure.sh.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,30 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- build/make/configure.sh.orig   2020-11-26 14:23:30.000000000 -0800
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ build/make/configure.sh        2020-11-26 14:26:37.000000000 -0800
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -845,16 +845,8 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   # Handle darwin variants. Newer SDKs allow targeting older
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   # platforms, so use the newest one available.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   case ${toolchain} in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    arm*-darwin*)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      add_cflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      iphoneos_sdk_dir="$(show_darwin_sdk_path iphoneos)"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      if [ -d "${iphoneos_sdk_dir}" ]; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        add_cflags  "-isysroot ${iphoneos_sdk_dir}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        add_ldflags "-isysroot ${iphoneos_sdk_dir}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      ;;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    x86*-darwin*)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      osx_sdk_dir="$(show_darwin_sdk_path macosx)"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    *-darwin*)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      osx_sdk_dir="$(configure.sdkroot)"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       if [ -d "${osx_sdk_dir}" ]; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         add_cflags  "-isysroot ${osx_sdk_dir}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         add_ldflags "-isysroot ${osx_sdk_dir}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1085,7 +1077,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           ;;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         darwin*)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--          if ! enabled external_build; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          if false; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             XCRUN_FIND="xcrun --sdk iphoneos --find"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             CXX="$(${XCRUN_FIND} clang++)"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             CC="$(${XCRUN_FIND} clang)"
</span></pre><pre style='margin:0'>

</pre>