<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/326f83e4236704d6231f3fe85f81fcb17886b48c">https://github.com/macports/macports-ports/commit/326f83e4236704d6231f3fe85f81fcb17886b48c</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 326f83e4236704d6231f3fe85f81fcb17886b48c
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sat May 30 10:14:15 2020 +0100
<span style='display:block; white-space:pre;color:#404040;'> castxml: clean up code to generate clang variants
</span>---
lang/castxml/Portfile | 72 ++++++++++++++++++++-------------------------------
1 file changed, 28 insertions(+), 44 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/castxml/Portfile b/lang/castxml/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2479a9b..d71b00b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/castxml/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/castxml/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,56 +34,40 @@ depends_lib-append port:zlib \
</span> configure.args-append \
-DCastXML_INSTALL_DOC_DIR=share/doc/castxml
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant clang60 conflicts clang70 clang80 clang90 clang10 description {Use clang 6.0 toolchain.} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append port:llvm-6.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:clang-6.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLLVM_DIR=${prefix}/libexec/llvm-6.0/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${prefix}/libexec/llvm-6.0/lib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# List of clang versions to offer variants for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set clang_vers { 6.0 7.0 8.0 9.0 10 }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant clang70 conflicts clang60 clang80 clang90 clang10 description {Use clang 7.0 toolchain.} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append port:llvm-7.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:clang-7.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLLVM_DIR=${prefix}/libexec/llvm-7.0/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${prefix}/libexec/llvm-7.0/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc variant_name {ver} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return clang[string map {. {}} ${ver}]
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant clang80 conflicts clang60 clang70 clang90 clang10 description {Use clang 8.0 toolchain.} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append port:llvm-8.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:clang-8.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLLVM_DIR=${prefix}/libexec/llvm-8.0/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${prefix}/libexec/llvm-8.0/lib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# build list of all clang variant names
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set clang_variants {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${clang_vers} { lappend clang_variants [variant_name $ver] }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant clang90 conflicts clang60 clang70 clang80 clang10 description {Use clang 9.0 toolchain.} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append port:llvm-9.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:clang-9.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLLVM_DIR=${prefix}/libexec/llvm-9.0/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${prefix}/libexec/llvm-9.0/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc build_conflicts {v} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global clang_variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set i [lsearch -exact ${clang_variants} ${v}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return [lreplace ${clang_variants} ${i} ${i}]
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant clang10 conflicts clang60 clang70 clang80 clang90 description {Use clang 10 toolchain.} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib-append port:llvm-10
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:clang-10
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLLVM_DIR=${prefix}/libexec/llvm-10/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${prefix}/libexec/llvm-10/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set has_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${clang_vers} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set v_name [variant_name ${ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set c [build_conflicts ${v_name}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant ${v_name} conflicts {*}${c} description "Use clang ${ver} toolchain" { }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset ${v_name}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set has_variant yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {!$has_variant} { default_variants +clang90 }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset clang60] && ![variant_isset clang70] && ![variant_isset clang80] && ![variant_isset clang90] && ![variant_isset clang10]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- default_variants +clang90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${clang_vers} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set v_name [variant_name ${ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset ${v_name}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:llvm-${ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:clang-${ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append -DLLVM_DIR=${prefix}/libexec/llvm-${ver}/lib/cmake/llvm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cmake.install_rpath-append ${prefix}/libexec/llvm-${ver}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
</pre><pre style='margin:0'>
</pre>