<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/604bc82f7378739d7b282bc728c751d4f732e0ba">https://github.com/macports/macports-ports/commit/604bc82f7378739d7b282bc728c751d4f732e0ba</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 604bc82f7378739d7b282bc728c751d4f732e0ba
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sat Jun 22 13:14:44 2019 +0100
<span style='display:block; white-space:pre;color:#404040;'> py-tensorflow: Fix file patching to not rely on hardcoded paths, fix non-native base build
</span>---
python/py-tensorflow/Portfile | 37 ++++++++++++++++++++++++++-----------
1 file changed, 26 insertions(+), 11 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-tensorflow/Portfile b/python/py-tensorflow/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d6cc906..86abbd1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-tensorflow/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-tensorflow/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,7 +11,7 @@ PortGroup compiler_blacklist_versions 1.0
</span>
name py-tensorflow
version 1.14.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 1
</span> github.setup tensorflow tensorflow ${version} v
platforms darwin
supported_archs x86_64
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,7 +58,8 @@ if {${name} ne ${subport}} {
</span>
depends_build-append \
port:py${python.version}-pip \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- port:bazel25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:bazel25 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:cctools
</span>
depends_lib-append \
port:py${python.version}-wheel \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -85,8 +86,10 @@ if {${name} ne ${subport}} {
</span> configure.env-append JAVA_HOME=${java.home}
build.env-append TMPDIR=${workpath}/tmp
build.env-append JAVA_HOME=${java.home}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set base_march "-march=ivybridge"
</span> if {![variant_isset native]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.env-append CC_OPT_FLAGS=-march=ivybridge
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.env-append CC_OPT_FLAGS=${base_march}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.env-append CC_OPT_FLAGS=${base_march}
</span> notes "This version is built based on a base architecture for convenience,
which may not be optimized for your system. To build a version
customized for your machine, use the +native variant"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,15 +105,23 @@ if {${name} ne ${subport}} {
</span> configure.pre_args
# configure command
configure.cmd ./configure
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Path configuration if required
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Patch configuration
</span> pre-configure {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[vercmp ${xcodeversion} ${tf_min_xcode}] < 0} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach f { configure.py third_party/toolchains/cpus/arm/CROSSTOOL.tpl third_party/toolchains/gpus/crosstool/CROSSTOOL third_party/gpus/crosstool/CROSSTOOL.tpl third_party/sycl/crosstool/CROSSTOOL.tpl } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach cmd {ar nm strip libtool ld objdump} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -q "s|/usr/bin/${cmd}|${prefix}/bin/${cmd}|g" ${f}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -q "s|/usr/bin/clang|\"${configure.cc}\"|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:#e0ffe0;'>+ # enforce correct build settings
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach f [ exec find ${worksrcpath} -name "*.tpl" -or -name "*.bzl" -or -name "CROSSTOOL" -or -name "configure.py" ] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach cmd {ar nm strip libtool ld objdump} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|/usr/bin/${cmd}|${prefix}/bin/${cmd}|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|/usr/bin/clang|\"${configure.cc}\"|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|\"clang\"|\"${configure.cc}\"|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s| clang | ${configure.cc} |g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|/usr/local/include|${prefix}/include|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|std=c++0x|std=c++11|g" ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If not native build, make sure not used...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![variant_isset native]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach f [ exec find ${worksrcpath} -name "configure" -or -name "configure.py" -or -name "CMakeLists.txt" -or -name "Makefile" -or -name "*.sh" ] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -q "s|-march=native|${base_march}|g" ${f}
</span> }
}
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -133,6 +144,10 @@ if {${name} ne ${subport}} {
</span> set tf_bazel_build_opts "${tf_bazel_build_opts} --action_env CC=${configure.cc}"
set tf_bazel_cmd "BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 ${tf_bazel_cmd}"
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![variant_isset native]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set tf_bazel_build_opts "${tf_bazel_build_opts} --copt=${base_march}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set tf_bazel_cmd "CC_OPT_FLAGS=${base_march} ${tf_bazel_cmd}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> system -W ${worksrcpath} "${tf_bazel_cmd} build ${tf_bazel_build_opts} //tensorflow/tools/pip_package:build_pip_package"
# Build the python wheel
system -W ${worksrcpath} "./bazel-bin/tensorflow/tools/pip_package/build_pip_package ${workpath}"
</pre><pre style='margin:0'>
</pre>