<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/4305d8dac54cec257e10f414d414143bb21b4416">https://github.com/macports/macports-ports/commit/4305d8dac54cec257e10f414d414143bb21b4416</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 4305d8dac54 bazel PG: Wrap compilers instead of ccache
</span>4305d8dac54 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 4305d8dac54cec257e10f414d414143bb21b4416
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sun May 2 14:18:23 2021 +0100
<span style='display:block; white-space:pre;color:#404040;'> bazel PG: Wrap compilers instead of ccache
</span>---
_resources/port1.0/group/bazel-1.0.tcl | 26 ++++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/bazel-1.0.tcl b/_resources/port1.0/group/bazel-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 721a222d98e..5ab46f06f9f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/bazel-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/bazel-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -219,25 +219,27 @@ pre-build {
</span> return -code error "build error"
}
if { [option bazel.build_cmd] ne "" && [file exists ${worksrcpath}] } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Create ccache wrapper with CCACHE_DIR enforced...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Create compiler wrappers
</span> set wrapdir ${workpath}/bazelwrap
xinstall -m 755 -d ${wrapdir}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set f [ open ${wrapdir}/ccache w 0755 ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${f} "#!/bin/bash"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${f} "export CCACHE_DIR=[bazel::get_ccache_dir]"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${f} "exec ${prefix}/bin/ccache \"\$\{\@\}\""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- close ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach comp {cc cxx} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set f [ open ${wrapdir}/${comp} w 0755 ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${f} "#!/bin/bash"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${f} "export CCACHE_DIR=[bazel::get_ccache_dir]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { [option configure.ccache] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${f} "exec ${prefix}/bin/ccache [set configure.${comp}] $\{MACPORTS_LEGACY_SUPPORT_CPPFLAGS\} \"\$\{\@\}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${f} "exec [set configure.${comp}] $\{MACPORTS_LEGACY_SUPPORT_CPPFLAGS\} \"\$\{\@\}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ close ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> # Run fetch
system -W ${worksrcpath} "[bazel::get_build_env] [option bazel.build_cmd] [option bazel.build_cmd_opts] fetch [option bazel.build_target]"
# Patch the bazel clang wrapper script for use MacPorts selection and support ccache
foreach f [ exec find [bazel::get_bazel_build_area] -name "wrapped_clang.cc" ] {
# Switch to selected compiler
<span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -q "s|\"clang++\"|\"${configure.cxx}\"|g" ${f}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -q "s|\"clang\"|\"${configure.cc}\"|g" ${f}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # If required use ccache
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if { [option configure.ccache] } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -q "s|\"/usr/bin/xcrun\"\, tool_name|\"/usr/bin/xcrun\"\, \"${wrapdir}/ccache\"\, tool_name|g" ${f}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|\"clang++\"|\"${wrapdir}/cxx\"|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|\"clang\"|\"${wrapdir}/cc\"|g" ${f}
</span> # Bazel **really** doesn't want you changing stuff ;)
# https://stackoverflow.com/questions/47775668/bazel-how-to-skip-corrupt-installation-on-centos6
system "touch -m -t 210012120101 ${f}"
</pre><pre style='margin:0'>
</pre>