<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/882019a99daa8fa009f03ff9e1de50c9617de0c9">https://github.com/macports/macports-ports/commit/882019a99daa8fa009f03ff9e1de50c9617de0c9</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 882019a99da gccN-libcxx: Take copy of libc++ headers insstead of symlink to originals Allows runtime dependency on clang-N port to be dropped.
</span>882019a99da is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 882019a99daa8fa009f03ff9e1de50c9617de0c9
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Thu Nov 17 11:14:12 2022 +0000
<span style='display:block; white-space:pre;color:#404040;'> gccN-libcxx: Take copy of libc++ headers insstead of symlink to originals
</span><span style='display:block; white-space:pre;color:#404040;'> Allows runtime dependency on clang-N port to be dropped.
</span>---
lang/gcc-devel/Portfile | 28 +++++++++++++++++-----------
lang/gcc10/Portfile | 28 +++++++++++++++++-----------
lang/gcc11/Portfile | 28 +++++++++++++++++-----------
lang/gcc12/Portfile | 28 +++++++++++++++++-----------
4 files changed, 68 insertions(+), 44 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc-devel/Portfile b/lang/gcc-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d02e2da1030..2a1c0ace8b5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -211,29 +211,31 @@ pre-configure {
</span>
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set libcxx_incpath ${prefix}/libexec/${name}/libc++/include/c++/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> subport ${libcxxname} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- PortGroup compilers 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup compilers 1.0
</span> compilers.choose cxx
<span style='display:block; white-space:pre;background:#ffe0e0;'>- compilers.setup -gcc -fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compilers.setup -gcc -fortran -clangdevel -clang34 -clang35 -clang36 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -clang37 -clang50 -clang60 -clang70 -clang80 -clang90
</span> if { ![clang_variant_isset] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Default default clang version to use
</span> if { ${os.platform} eq "darwin" && ${os.major} < 11 } {
default_variants-append +clang11
} else {
default_variants-append +clang14
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision [ expr ${revision} + 0 ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description Link to libc++ implementation to be used by ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision [ expr ${revision} + 1 ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description libc++ header implementation to be used by ${name}
</span> long_description {*}${description}
depends_build
depends_extract
depends_run
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib
</span> distfiles
patchfiles
use_configure no
supported_archs noarch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build {}
</span> # Find clang/llvm version to use from active variant
proc getClangVersion {} {
if { [regexp {clang(.*)} [clang_variant_name] -> clang_v] } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -242,11 +244,15 @@ subport ${libcxxname} {
</span> return ""
}
set mp_clang_ver [getClangVersion]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib port:clang-${mp_clang_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Copy headers from clang-N during build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${worksrcpath}/headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${worksrcpath}/headers/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set incpath ${destroot}${prefix}/libexec/${name}/libc++/include/c++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file mkdir ${incpath}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${incpath}/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set base_dir [file dirname ${libcxx_incpath}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${destroot}${base_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/headers/v1 ${destroot}${base_dir}
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -263,7 +269,7 @@ if { ${subport} ne ${libcxxname} } {
</span> if {${subport} eq ${name}} {
depends_run-append port:${libcxxname}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --with-gxx-libcxx-include-dir="${prefix}/libexec/${name}/libc++/include/c++/v1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-gxx-libcxx-include-dir="${libcxx_incpath}"
</span> }
# libcxx is unavailable on PPC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc10/Portfile b/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 7637a8014df..40a9543d393 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -192,29 +192,31 @@ pre-configure {
</span>
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set libcxx_incpath ${prefix}/libexec/${name}/libc++/include/c++/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> subport ${libcxxname} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- PortGroup compilers 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup compilers 1.0
</span> compilers.choose cxx
<span style='display:block; white-space:pre;background:#ffe0e0;'>- compilers.setup -gcc -fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compilers.setup -gcc -fortran -clangdevel -clang34 -clang35 -clang36 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -clang37 -clang50 -clang60 -clang70 -clang80 -clang90
</span> if { ![clang_variant_isset] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Default default clang version to use
</span> if { ${os.platform} eq "darwin" && ${os.major} < 11 } {
default_variants-append +clang11
} else {
default_variants-append +clang14
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision [ expr ${revision} + 0 ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description Link to libc++ implementation to be used by ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision [ expr ${revision} + 1 ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description libc++ header implementation to be used by ${name}
</span> long_description {*}${description}
depends_build
depends_extract
depends_run
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib
</span> distfiles
patchfiles
use_configure no
supported_archs noarch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build {}
</span> # Find clang/llvm version to use from active variant
proc getClangVersion {} {
if { [regexp {clang(.*)} [clang_variant_name] -> clang_v] } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -223,11 +225,15 @@ subport ${libcxxname} {
</span> return ""
}
set mp_clang_ver [getClangVersion]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib port:clang-${mp_clang_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Copy headers from clang-N during build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${worksrcpath}/headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${worksrcpath}/headers/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set incpath ${destroot}${prefix}/libexec/${name}/libc++/include/c++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file mkdir ${incpath}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${incpath}/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set base_dir [file dirname ${libcxx_incpath}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${destroot}${base_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/headers/v1 ${destroot}${base_dir}
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -244,7 +250,7 @@ if { ${subport} ne ${libcxxname} } {
</span> if {${subport} eq ${name}} {
depends_run-append port:${libcxxname}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --with-gxx-libcxx-include-dir="${prefix}/libexec/${name}/libc++/include/c++/v1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-gxx-libcxx-include-dir="${libcxx_incpath}"
</span> }
# libcxx is unavailable on PPC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc11/Portfile b/lang/gcc11/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 29efc7e5c56..4ac0148aa02 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc11/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc11/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -214,29 +214,31 @@ pre-configure {
</span>
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set libcxx_incpath ${prefix}/libexec/${name}/libc++/include/c++/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> subport ${libcxxname} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- PortGroup compilers 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup compilers 1.0
</span> compilers.choose cxx
<span style='display:block; white-space:pre;background:#ffe0e0;'>- compilers.setup -gcc -fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compilers.setup -gcc -fortran -clangdevel -clang34 -clang35 -clang36 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -clang37 -clang50 -clang60 -clang70 -clang80 -clang90
</span> if { ![clang_variant_isset] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Default default clang version to use
</span> if { ${os.platform} eq "darwin" && ${os.major} < 11 } {
default_variants-append +clang11
} else {
default_variants-append +clang14
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision [ expr ${revision} + 0 ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description Link to libc++ implementation to be used by ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision [ expr ${revision} + 1 ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description libc++ header implementation to be used by ${name}
</span> long_description {*}${description}
depends_build
depends_extract
depends_run
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib
</span> distfiles
patchfiles
use_configure no
supported_archs noarch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build {}
</span> # Find clang/llvm version to use from active variant
proc getClangVersion {} {
if { [regexp {clang(.*)} [clang_variant_name] -> clang_v] } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -245,11 +247,15 @@ subport ${libcxxname} {
</span> return ""
}
set mp_clang_ver [getClangVersion]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib port:clang-${mp_clang_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Copy headers from clang-N during build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${worksrcpath}/headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${worksrcpath}/headers/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set incpath ${destroot}${prefix}/libexec/${name}/libc++/include/c++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file mkdir ${incpath}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${incpath}/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set base_dir [file dirname ${libcxx_incpath}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${destroot}${base_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/headers/v1 ${destroot}${base_dir}
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -266,7 +272,7 @@ if { ${subport} ne ${libcxxname} } {
</span> if {${subport} eq ${name}} {
depends_run-append port:${libcxxname}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --with-gxx-libcxx-include-dir="${prefix}/libexec/${name}/libc++/include/c++/v1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-gxx-libcxx-include-dir="${libcxx_incpath}"
</span> }
# libcxx is unavailable on PPC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc12/Portfile b/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e7ff52f52b1..a0d3850647c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -183,29 +183,31 @@ pre-configure {
</span>
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set libcxx_incpath ${prefix}/libexec/${name}/libc++/include/c++/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> subport ${libcxxname} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- PortGroup compilers 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup compilers 1.0
</span> compilers.choose cxx
<span style='display:block; white-space:pre;background:#ffe0e0;'>- compilers.setup -gcc -fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compilers.setup -gcc -fortran -clangdevel -clang34 -clang35 -clang36 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -clang37 -clang50 -clang60 -clang70 -clang80 -clang90
</span> if { ![clang_variant_isset] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Default default clang version to use
</span> if { ${os.platform} eq "darwin" && ${os.major} < 11 } {
default_variants-append +clang11
} else {
default_variants-append +clang14
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision [ expr ${revision} + 0 ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- description Link to libc++ implementation to be used by ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision [ expr ${revision} + 1 ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description libc++ header implementation to be used by ${name}
</span> long_description {*}${description}
depends_build
depends_extract
depends_run
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib
</span> distfiles
patchfiles
use_configure no
supported_archs noarch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build {}
</span> # Find clang/llvm version to use from active variant
proc getClangVersion {} {
if { [regexp {clang(.*)} [clang_variant_name] -> clang_v] } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -214,11 +216,15 @@ subport ${libcxxname} {
</span> return ""
}
set mp_clang_ver [getClangVersion]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_lib port:clang-${mp_clang_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Copy headers from clang-N during build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${worksrcpath}/headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${worksrcpath}/headers/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set incpath ${destroot}${prefix}/libexec/${name}/libc++/include/c++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file mkdir ${incpath}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${prefix}/libexec/llvm-${mp_clang_ver}/include/c++/v1 ${incpath}/v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set base_dir [file dirname ${libcxx_incpath}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${destroot}${base_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/headers/v1 ${destroot}${base_dir}
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -235,7 +241,7 @@ if { ${subport} ne ${libcxxname} } {
</span> if {${subport} eq ${name}} {
depends_run-append port:${libcxxname}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --with-gxx-libcxx-include-dir="${prefix}/libexec/${name}/libc++/include/c++/v1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-gxx-libcxx-include-dir="${libcxx_incpath}"
</span> }
# libcxx is unavailable on PPC
</pre><pre style='margin:0'>
</pre>