<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/95316b555098a78b9ae5e9fe70b2a47695e63218">https://github.com/macports/macports-ports/commit/95316b555098a78b9ae5e9fe70b2a47695e63218</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 95316b555098a78b9ae5e9fe70b2a47695e63218
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Sun Jan 31 00:00:17 2021 -0800

<span style='display:block; white-space:pre;color:#404040;'>    x265: use three part build
</span><span style='display:block; white-space:pre;color:#404040;'>    replicates multilib.sh using MacPorts tcl commands
</span><span style='display:block; white-space:pre;color:#404040;'>    default to highdepth if possible
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    at present, highdepth conflicts with universal
</span><span style='display:block; white-space:pre;color:#404040;'>    although that might be fixable if we can see
</span><span style='display:block; white-space:pre;color:#404040;'>    a way to do the multi-build-folder tweak such
</span><span style='display:block; white-space:pre;color:#404040;'>    that the muniversal portgroup will be happy
</span>---
 multimedia/x265/Portfile | 62 ++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 57 insertions(+), 5 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/x265/Portfile b/multimedia/x265/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8e1702ae70f..17c5562b4e1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/multimedia/x265/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/x265/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,6 +33,8 @@ homepage            https://www.videolan.org/developers/x265.html
</span> github.tarball_from archive
 worksrcdir          ${name}-${version}/source
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# nasm is only needed to compile Intel code I believe, so investigate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# whether this dep can be restricted to Intel builds
</span> depends_build-append \
                     port:gmake \
                     port:nasm
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -54,11 +56,61 @@ if {${universal_possible} && [variant_isset universal]} {
</span>     configure.ldflags-append -Wl,-read_only_relocs,suppress
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant main10 description {Enable 10-bit encoding} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append -DHIGH_BIT_DEPTH=ON
</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;'>+    # TODO: explore how this variant is supported on other archs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${configure.build_arch} eq "x86_64"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default_variants +highdepth
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant main12 description {Cannot be used with 10-bit} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append -DHIGH_BIT_DEPTH=ON \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                          -DMAIN12=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant highdepth conflicts universal description {Enable 10-bit and 12-bit encoding} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # this builds the recommended multi-library interface
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # https://x265.readthedocs.io/en/master/api.html#multi-library-interface
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # with the default ABI being the standard 8bit ABI as always
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # we need to explore how to use the method below with the muniversal PG.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    universal_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_build-append    port:libtool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "mkdir ${workpath}/10bit"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "mkdir ${workpath}/12bit"
</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;'>+    configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set configure.dir ${workpath}/10bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_SHARED=OFF -DENABLE_CLI=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portconfigure::configure_main
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set configure.dir ${workpath}/12bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_SHARED=OFF -DENABLE_CLI=OFF -DMAIN12=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portconfigure::configure_main
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set configure.dir ${workpath}/build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args -DEXTRA_LIB="x265_main10.a\;x265_main12.a" -DEXTRA_LINK_FLAGS=-L. -DLINKED_10BIT=ON -DLINKED_12BIT=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portconfigure::configure_main
</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;'>+    build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set build.dir ${workpath}/10bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portbuild::build_main
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set build.dir ${workpath}/12bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portbuild::build_main
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln ${workpath}/10bit/libx265.a ${workpath}/build/libx265_main10.a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ln ${workpath}/12bit/libx265.a ${workpath}/build/libx265_main12.a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set build.dir ${workpath}/build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portbuild::build_main
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${workpath}/build "mv libx265.a libx265_main.a"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${workpath}/build "libtool -static -o libx265.a libx265_main.a libx265_main10.a libx265_main12.a"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
</pre><pre style='margin:0'>

</pre>