aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoachim Gehweiler <44170764+jgehw@users.noreply.github.com>2021-09-30 05:43:32 +0200
committerGitHub <noreply@github.com>2021-09-29 20:43:32 -0700
commit8ad33ead9075cd8d6d357e0b870ba8d501efe35c (patch)
treeab3a6b7785b5b34da890e0db63f50bbe60362bf6
parentdd991ef5b82051cb7481a92c71dc5706325ba7c2 (diff)
downloadvcpkg-8ad33ead9075cd8d6d357e0b870ba8d501efe35c.tar.gz
vcpkg-8ad33ead9075cd8d6d357e0b870ba8d501efe35c.zip
[tensorflow] update to 2.6 (#20015)
* Revert "incorporate changes from microsoft:master" * Revert "Revert "incorporate changes from microsoft:master"" * WIP: update to tensorflow 2.6 * update patch * update more patches * fix patch again * fix new Windows compile/linkage errors * fix patch * fix patch again * temporarily revert Windows build option fix to test whether upstream fix doesn't work * check if constexpr is sufficient (is_same_v requires C++17) * try patch for build parameters * remove fastbuild patch and improve constexpr patch (no C++17 requirement) (fastbuild patch didn't work because bazel overrides it with /DEBUG:FULL) * x-add-version * add C++17 preprocessor switch for "if constexpr" * x-add-version * remove pre-processor switch (doesn't work without) * x-add-version * work-around toolchain issues on macOS * x-add-version * fix Windows build options (must be string, not list) * x-add-version * temporarily add code to debug CI * temporarily add more debug output as build doesn't even start on macOS CI * remove debug code, add switch for linker parameters on macOS and re-introduce old behaviour (some platforms still use old behaviour) * x-add-version * fix broken string termination * x-add-version * fix function name * x-add-version Co-authored-by: jgehw <Joachim_Gehweiler@McAfee.com> Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
-rw-r--r--ports/tensorflow-cc/vcpkg.json3
-rw-r--r--ports/tensorflow-common/Update-bazel-max-version.patch5
-rw-r--r--ports/tensorflow-common/change-macros-for-static-lib.patch57
-rw-r--r--ports/tensorflow-common/convert_lib_params_macos.py26
-rw-r--r--ports/tensorflow-common/fix-build-error.patch3
-rw-r--r--ports/tensorflow-common/fix-linux-build.patch25
-rw-r--r--ports/tensorflow-common/fix-windows-build.patch65
-rw-r--r--ports/tensorflow-common/generate_static_link_cmd_linux.py4
-rw-r--r--ports/tensorflow-common/generate_static_link_cmd_macos.py81
-rw-r--r--ports/tensorflow-common/generate_static_link_cmd_windows.py4
-rw-r--r--ports/tensorflow-common/portfile.cmake1
-rw-r--r--ports/tensorflow-common/tensorflow-common.cmake19
-rw-r--r--ports/tensorflow-common/vcpkg.json3
-rw-r--r--ports/tensorflow/vcpkg.json2
-rw-r--r--versions/baseline.json10
-rw-r--r--versions/t-/tensorflow-cc.json5
-rw-r--r--versions/t-/tensorflow-common.json5
-rw-r--r--versions/t-/tensorflow.json5
18 files changed, 228 insertions, 95 deletions
diff --git a/ports/tensorflow-cc/vcpkg.json b/ports/tensorflow-cc/vcpkg.json
index d67e50c93..b2f1edcc7 100644
--- a/ports/tensorflow-cc/vcpkg.json
+++ b/ports/tensorflow-cc/vcpkg.json
@@ -1,7 +1,6 @@
{
"name": "tensorflow-cc",
- "version-semver": "2.4.1",
- "port-version": 1,
+ "version-semver": "2.6.0",
"description": "Library for computation using data flow graphs for scalable machine learning (C++ API version)",
"homepage": "https://github.com/tensorflow/tensorflow",
"supports": "!(x86 | arm | uwp)",
diff --git a/ports/tensorflow-common/Update-bazel-max-version.patch b/ports/tensorflow-common/Update-bazel-max-version.patch
index 9dffd884b..172a6439d 100644
--- a/ports/tensorflow-common/Update-bazel-max-version.patch
+++ b/ports/tensorflow-common/Update-bazel-max-version.patch
@@ -1,11 +1,10 @@
diff --git a/configure.py b/configure.py
-index e5428a6..9324d7b 100644
--- a/configure.py
+++ b/configure.py
-@@ -47,7 +47,7 @@ _TF_WORKSPACE_ROOT = ''
+@@ -50,7 +50,7 @@
_TF_BAZELRC = ''
_TF_CURRENT_BAZEL_VERSION = None
- _TF_MIN_BAZEL_VERSION = '3.1.0'
+ _TF_MIN_BAZEL_VERSION = '3.7.2'
-_TF_MAX_BAZEL_VERSION = '3.99.0'
+_TF_MAX_BAZEL_VERSION = '4.1.0'
diff --git a/ports/tensorflow-common/change-macros-for-static-lib.patch b/ports/tensorflow-common/change-macros-for-static-lib.patch
index daff655ce..a9d5fe7a0 100644
--- a/ports/tensorflow-common/change-macros-for-static-lib.patch
+++ b/ports/tensorflow-common/change-macros-for-static-lib.patch
@@ -103,7 +103,7 @@ diff --git a/tensorflow/c/c_api_macros.h b/tensorflow/c/c_api_macros.h
diff --git a/tensorflow/c/kernels.h b/tensorflow/c/kernels.h
--- a/tensorflow/c/kernels.h
+++ b/tensorflow/c/kernels.h
-@@ -23,24 +23,7 @@
+@@ -24,24 +24,7 @@
#include "tensorflow/c/tf_status.h"
#include "tensorflow/c/tf_tensor.h"
@@ -129,6 +129,35 @@ diff --git a/tensorflow/c/kernels.h b/tensorflow/c/kernels.h
#ifdef __cplusplus
extern "C" {
+diff --git a/tensorflow/c/kernels_experimental.h b/tensorflow/c/kernels_experimental.h
+--- a/tensorflow/c/kernels_experimental.h
++++ b/tensorflow/c/kernels_experimental.h
+@@ -25,24 +25,7 @@
+ // The API here is subject to changes in the future.
+ // --------------------------------------------------------------------------
+
+-// Macro to control visibility of exported symbols in the shared library (.so,
+-// .dylib, .dll).
+-// This duplicates the TF_EXPORT macro definition in
+-// tensorflow/core/platform/macros.h in order to keep this .h file independent
+-// of any other includes.
+-#ifdef SWIG
+ #define TF_CAPI_EXPORT
+-#else
+-#if defined(_WIN32)
+-#ifdef TF_COMPILE_LIBRARY
+-#define TF_CAPI_EXPORT __declspec(dllexport)
+-#else
+-#define TF_CAPI_EXPORT __declspec(dllimport)
+-#endif // TF_COMPILE_LIBRARY
+-#else
+-#define TF_CAPI_EXPORT __attribute__((visibility("default")))
+-#endif // _WIN32
+-#endif // SWIG
+
+ #ifdef __cplusplus
+ extern "C" {
+
diff --git a/tensorflow/c/ops.h b/tensorflow/c/ops.h
--- a/tensorflow/c/ops.h
+++ b/tensorflow/c/ops.h
@@ -212,7 +241,7 @@ diff --git a/tensorflow/c/tf_tensor.h b/tensorflow/c/tf_tensor.h
@@ -23,24 +23,7 @@
#include "tensorflow/c/tf_datatype.h"
#include "tensorflow/c/tf_status.h"
-
+
-// Macro to control visibility of exported symbols in the shared library (.so,
-// .dylib, .dll).
-// This duplicates the TF_EXPORT macro definition in
@@ -231,7 +260,31 @@ diff --git a/tensorflow/c/tf_tensor.h b/tensorflow/c/tf_tensor.h
-#define TF_CAPI_EXPORT __attribute__((visibility("default")))
-#endif // _WIN32
-#endif // SWIG
+
+ #ifdef __cplusplus
+ extern "C" {
+diff --git a/tensorflow/c/tf_tstring.h b/tensorflow/c/tf_tstring.h
+--- a/tensorflow/c/tf_tstring.h
++++ b/tensorflow/c/tf_tstring.h
+@@ -18,19 +18,7 @@
+ #include "tensorflow/c/tf_tensor.h"
+ #include "tensorflow/core/platform/ctstring.h"
+
+-#ifdef SWIG
+ #define TF_CAPI_EXPORT
+-#else
+-#if defined(_WIN32)
+-#ifdef TF_COMPILE_LIBRARY
+-#define TF_CAPI_EXPORT __declspec(dllexport)
+-#else
+-#define TF_CAPI_EXPORT __declspec(dllimport)
+-#endif // TF_COMPILE_LIBRARY
+-#else
+-#define TF_CAPI_EXPORT __attribute__((visibility("default")))
+-#endif // _WIN32
+-#endif // SWIG
+
#ifdef __cplusplus
extern "C" {
diff --git a/ports/tensorflow-common/convert_lib_params_macos.py b/ports/tensorflow-common/convert_lib_params_macos.py
index b3c419363..d49f4d581 100644
--- a/ports/tensorflow-common/convert_lib_params_macos.py
+++ b/ports/tensorflow-common/convert_lib_params_macos.py
@@ -1,18 +1,20 @@
+import os.path
import sys
version = sys.argv[1]
lib_suffix = "" if len(sys.argv) < 3 else sys.argv[2]
-with open(f"libtensorflow{lib_suffix}.{version}.a-2.params", "w") as f_out:
- parts = []
- with open(f"libtensorflow_framework.{version}.dylib-2.params", "r") as f_in:
- for line in f_in:
- if line.startswith("-Wl,-force_load,"):
- f_out.write(line[16:])
- parts.append(line[16:])
- parts = set(parts)
- with open(f"libtensorflow{lib_suffix}.{version}.dylib-2.params", "r") as f_in:
- for line in f_in:
- if line.startswith("-Wl,-force_load,"):
- if line[16:] not in parts:
+if os.path.isfile(f"libtensorflow_framework.{version}.dylib-2.params"):
+ with open(f"libtensorflow{lib_suffix}.{version}.a-2.params", "w") as f_out:
+ parts = []
+ with open(f"libtensorflow_framework.{version}.dylib-2.params", "r") as f_in:
+ for line in f_in:
+ if line.startswith("-Wl,-force_load,"):
f_out.write(line[16:])
+ parts.append(line[16:])
+ parts = set(parts)
+ with open(f"libtensorflow{lib_suffix}.{version}.dylib-2.params", "r") as f_in:
+ for line in f_in:
+ if line.startswith("-Wl,-force_load,"):
+ if line[16:] not in parts:
+ f_out.write(line[16:])
diff --git a/ports/tensorflow-common/fix-build-error.patch b/ports/tensorflow-common/fix-build-error.patch
index 89a15f17a..eb2a91c97 100644
--- a/ports/tensorflow-common/fix-build-error.patch
+++ b/ports/tensorflow-common/fix-build-error.patch
@@ -1,8 +1,7 @@
diff --git a/tensorflow/core/platform/default/logging.h b/tensorflow/core/platform/default/logging.h
-index 99dd6de..3cbe8ed 100644
--- a/tensorflow/core/platform/default/logging.h
+++ b/tensorflow/core/platform/default/logging.h
-@@ -82,13 +82,13 @@ class LogMessageFatal : public LogMessage {
+@@ -104,13 +104,13 @@ class LogMessageFatal : public LogMessage {
};
#define _TF_LOG_INFO \
diff --git a/ports/tensorflow-common/fix-linux-build.patch b/ports/tensorflow-common/fix-linux-build.patch
deleted file mode 100644
index e3eaca517..000000000
--- a/ports/tensorflow-common/fix-linux-build.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/tensorflow/core/kernels/data/experimental/snapshot_dataset_op.cc b/tensorflow/core/kernels/data/experimental/snapshot_dataset_op.cc
---- a/tensorflow/core/kernels/data/experimental/snapshot_dataset_op.cc
-+++ b/tensorflow/core/kernels/data/experimental/snapshot_dataset_op.cc
-@@ -72,6 +72,8 @@
- SnapshotDatasetV2Op::kReaderFuncTarguments;
- /* static */ constexpr const char* const
- SnapshotDatasetV2Op::kShardFuncTarguments;
-+/* static */ constexpr const char* const SnapshotDatasetV2Op::kReaderPrefix;
-+/* static */ constexpr const char* const SnapshotDatasetV2Op::kWriterPrefix;
- /* static */ constexpr const int SnapshotDatasetV2Op::kFileFormatVersion;
-
- // ==== Snapshot Implementation ====
-
-diff --git a/tensorflow/core/kernels/data/experimental/data_service_dataset_op.cc b/tensorflow/core/kernels/data/experimental/data_service_dataset_op.cc
---- a/tensorflow/core/kernels/data/experimental/data_service_dataset_op.cc
-+++ b/tensorflow/core/kernels/data/experimental/data_service_dataset_op.cc
-@@ -53,6 +53,8 @@
- /* static */ constexpr const char* const
- DataServiceDatasetOp::kMaxOutstandingRequests;
- /* static */ constexpr const char* const
-+ DataServiceDatasetOp::kTaskRefreshIntervalHintMs;
-+/* static */ constexpr const char* const
- DataServiceDatasetOp::kIterationCounter;
- /* static */ constexpr const char* const DataServiceDatasetOp::kOutputTypes;
- /* static */ constexpr const char* const DataServiceDatasetOp::kOutputShapes;
diff --git a/ports/tensorflow-common/fix-windows-build.patch b/ports/tensorflow-common/fix-windows-build.patch
index 89536836f..8450299e8 100644
--- a/ports/tensorflow-common/fix-windows-build.patch
+++ b/ports/tensorflow-common/fix-windows-build.patch
@@ -1,12 +1,57 @@
-diff --git a/core/platform/default/logging.h b/core/platform/default/logging.h
---- a/tensorflow/core/platform/default/logging.h
-+++ b/tensorflow/core/platform/default/logging.h
-@@ -13,6 +13,8 @@
- limitations under the License.
- ==============================================================================*/
+diff --git a/tensorflow/core/kernels/depthtospace_op.cc b/tensorflow/core/kernels/depthtospace_op.cc
+--- a/tensorflow/core/kernels/depthtospace_op.cc
++++ b/tensorflow/core/kernels/depthtospace_op.cc
+@@ -112,7 +112,7 @@
+ auto Tinput = input.tensor<T, kDims>();
+ auto Toutput = outputs_tensor->tensor<T, kDims>();
+
+- if (std::is_same<Device, GPUDevice>::value) {
++ if constexpr (std::is_same<Device, GPUDevice>::value) {
+ if (is_int8x4) {
+ // NCHW_VECT_C with 4 x qint8 can be treated as NCHW int32.
+ auto Tinput_v = input.template reinterpret_last_dimension<int32, 4>();
+@@ -173,15 +173,6 @@
+ }
+ };
+
+-#ifdef WIN32
+-template <typename T>
+-struct DepthToSpaceOpFunctor<CPUDevice, T, FORMAT_NCHW> {
+- void operator()(const CPUDevice& d, typename TTypes<T, 4>::ConstTensor input,
+- int block_size, typename TTypes<T, 4>::Tensor output) {
+- LOG(FATAL) << "Trivial implementation to make debug build compile.";
+- }
+-};
+-#endif
+ } // namespace functor
+
+ #define REGISTER(type) \
-+#pragma warning(disable:4716)
-+
- #ifndef TENSORFLOW_CORE_PLATFORM_DEFAULT_LOGGING_H_
- #define TENSORFLOW_CORE_PLATFORM_DEFAULT_LOGGING_H_
+diff --git a/tensorflow/core/kernels/spacetodepth_op.cc b/tensorflow/core/kernels/spacetodepth_op.cc
+--- a/tensorflow/core/kernels/spacetodepth_op.cc
++++ b/tensorflow/core/kernels/spacetodepth_op.cc
+@@ -126,7 +126,7 @@
+ output_width, output_depth),
+ &outputs_tensor));
+
+- if (std::is_same<Device, GPUDevice>::value) {
++ if constexpr (std::is_same<Device, GPUDevice>::value) {
+ using RT = typename RawType<T>::type;
+ if (data_format_ == FORMAT_NCHW_VECT_C) {
+ // NCHW_VECT_C with 4 x qint8 can be treated as NCHW int32.
+@@ -189,15 +189,6 @@
+ }
+ };
+
+-#ifdef WIN32
+-template <typename T>
+-struct SpaceToDepthOpFunctor<CPUDevice, T, FORMAT_NCHW> {
+- void operator()(const CPUDevice& d, typename TTypes<T, 4>::ConstTensor input,
+- int block_size, typename TTypes<T, 4>::Tensor output) {
+- LOG(FATAL) << "Trivial implementation to make debug build compile.";
+- }
+-};
+-#endif
+ } // namespace functor
+ #define REGISTER(type) \
diff --git a/ports/tensorflow-common/generate_static_link_cmd_linux.py b/ports/tensorflow-common/generate_static_link_cmd_linux.py
index 7b1755215..fa1f73656 100644
--- a/ports/tensorflow-common/generate_static_link_cmd_linux.py
+++ b/ports/tensorflow-common/generate_static_link_cmd_linux.py
@@ -1,7 +1,9 @@
import re
import sys
-lib_suffix = "" if len(sys.argv) < 3 else sys.argv[2]
+version = sys.argv[2]
+lib_suffix = "" if len(sys.argv) < 4 else sys.argv[3]
+
with open(sys.argv[1], "r") as f_in:
with open("static_link.sh", "w") as f_out:
p_cd = re.compile(r"^\((cd .*) && \\$")
diff --git a/ports/tensorflow-common/generate_static_link_cmd_macos.py b/ports/tensorflow-common/generate_static_link_cmd_macos.py
index 5894c99b0..f7b99763e 100644
--- a/ports/tensorflow-common/generate_static_link_cmd_macos.py
+++ b/ports/tensorflow-common/generate_static_link_cmd_macos.py
@@ -1,23 +1,70 @@
+import os.path
import re
import sys
-lib_suffix = "" if len(sys.argv) < 3 else sys.argv[2]
+version = sys.argv[2]
+lib_suffix = "" if len(sys.argv) < 4 else sys.argv[3]
+
with open(sys.argv[1], "r") as f_in:
with open("static_link.sh", "w") as f_out:
- p_cd = re.compile(r"^\((cd .*) && \\$")
- p_linker = re.compile(fr"^\s*.+cc_wrapper.sh.+(@bazel-out\S+libtensorflow{lib_suffix}\.\d\.\d\.\d\.dylib-2\.params).*")
- f_out.write("#!/bin/bash\n# note: ar/binutils version 2.27 required to support output files > 4GB\n")
- env = []
- for line in f_in:
- if line.startswith("(cd"):
- # new command, reset
- env = [line]
- else:
- m1 = p_linker.match(line)
- if m1:
- m2 = p_cd.match(env[0])
- f_out.write(m2.group(1) + "\n")
- line = f'"/usr/bin/libtool" -static -o {m1.group(1)[1:-9].replace(".dylib", ".a")} {m1.group(1).replace(".dylib", ".a")}\n'
- f_out.write(line)
+ if os.path.isfile(f"libtensorflow_framework.{version}.dylib-2.params"):
+ p_cd = re.compile(r"^\((cd .*) && \\$")
+ p_linker = re.compile(fr"^\s*.+cc_wrapper.sh.+(@bazel-out\S+libtensorflow{lib_suffix}\.\d\.\d\.\d\.dylib-2\.params).*")
+ f_out.write("#!/bin/bash\n# note: ar/binutils version 2.27 required to support output files > 4GB\n")
+ env = []
+ for line in f_in:
+ if line.startswith("(cd"):
+ # new command, reset
+ env = [line]
+ else:
+ m1 = p_linker.match(line)
+ if m1:
+ m2 = p_cd.match(env[0])
+ f_out.write(m2.group(1) + "\n")
+ line = f'"/usr/bin/libtool" -static -o {m1.group(1)[1:-9].replace(".dylib", ".a")} {m1.group(1).replace(".dylib", ".a")}\n'
+ f_out.write(line)
+ else:
+ env.append(line)
+ else:
+ # old behaviour (still on some platforms): inline all parameters instead of using -2.params file
+ p_cd = re.compile(r"^\((cd .*) && \\$")
+ p_linker1 = re.compile(fr"^.*cc_wrapper.sh.+-shared.+-o (bazel-out\S+libtensorflow{lib_suffix}\.\d\.\d\.\d\.dylib)")
+ p_linker2 = re.compile("^.*cc_wrapper.sh.+-shared.+-o (bazel-out\\S+libtensorflow_framework\\.\\d\\.\\d\\.\\d\\.dylib)")
+ f_out.write("#!/bin/bash\n# note: ar/binutils version 2.27 required to support output files > 4GB\n")
+ env = []
+ parts = None
+ for line in f_in:
+ if line.startswith("(cd"):
+ # new command, reset
+ env = [line]
else:
- env.append(line)
+ m1 = p_linker1.match(line)
+ m2 = p_linker2.match(line)
+ if m1:
+ tokens = line.split()
+ if parts is None:
+ parts = [t[16:] for t in tokens if t.startswith("-Wl,-force_load,")]
+ else:
+ m = p_cd.match(env[0])
+ f_out.write(m.group(1) + "\n")
+ tmp = [t[16:] for t in tokens if t.startswith("-Wl,-force_load,")]
+ old = set(parts)
+ parts += [t for t in tmp if t not in old]
+ line = f"libtool -static -o {m1.group(1).replace('.dylib', '.a')} {' '.join(parts)}\n"
+ f_out.write(line)
+ break
+ elif m2 and len(env) > 6:
+ tokens = line.split()
+ if parts is None:
+ parts = [t[16:] for t in tokens if t.startswith("-Wl,-force_load,")]
+ else:
+ m = p_cd.match(env[0])
+ f_out.write(m.group(1) + "\n")
+ tmp = [t[16:] for t in tokens if t.startswith("-Wl,-force_load,")]
+ old = set(parts)
+ parts += [t for t in tmp if t not in old]
+ line = f"libtool -static -o {m2.group(1).replace('_framework', lib_suffix).replace('.dylib', '.a')} {' '.join(parts)}\n"
+ f_out.write(line)
+ break
+ else:
+ env.append(line)
diff --git a/ports/tensorflow-common/generate_static_link_cmd_windows.py b/ports/tensorflow-common/generate_static_link_cmd_windows.py
index 84ec9eede..82f01a768 100644
--- a/ports/tensorflow-common/generate_static_link_cmd_windows.py
+++ b/ports/tensorflow-common/generate_static_link_cmd_windows.py
@@ -2,7 +2,9 @@ import os.path
import re
import sys
-lib_suffix = "" if len(sys.argv) < 3 else sys.argv[2]
+version = sys.argv[2]
+lib_suffix = "" if len(sys.argv) < 4 else sys.argv[3]
+
with open(sys.argv[1], "r") as f_in:
with open("static_link.bat", "w") as f_out:
p_setenv = re.compile(r"^\s*(SET .+=.*)$")
diff --git a/ports/tensorflow-common/portfile.cmake b/ports/tensorflow-common/portfile.cmake
index edd171aa4..bbfc287df 100644
--- a/ports/tensorflow-common/portfile.cmake
+++ b/ports/tensorflow-common/portfile.cmake
@@ -6,7 +6,6 @@ set(TENSORFLOW_FILES
"${CMAKE_CURRENT_LIST_DIR}/convert_lib_params_macos.py"
"${CMAKE_CURRENT_LIST_DIR}/convert_lib_params_windows.py"
"${CMAKE_CURRENT_LIST_DIR}/fix-build-error.patch"
- "${CMAKE_CURRENT_LIST_DIR}/fix-linux-build.patch"
"${CMAKE_CURRENT_LIST_DIR}/fix-windows-build.patch"
"${CMAKE_CURRENT_LIST_DIR}/generate_static_link_cmd_linux.py"
"${CMAKE_CURRENT_LIST_DIR}/generate_static_link_cmd_macos.py"
diff --git a/ports/tensorflow-common/tensorflow-common.cmake b/ports/tensorflow-common/tensorflow-common.cmake
index 55387eb0d..0813dd94e 100644
--- a/ports/tensorflow-common/tensorflow-common.cmake
+++ b/ports/tensorflow-common/tensorflow-common.cmake
@@ -1,5 +1,5 @@
-set(TF_VERSION 2.4.1)
-set(TF_VERSION_SHORT 2.4)
+set(TF_VERSION 2.6.0)
+set(TF_VERSION_SHORT 2.6)
vcpkg_find_acquire_program(BAZEL)
get_filename_component(BAZEL_DIR "${BAZEL}" DIRECTORY)
@@ -129,28 +129,23 @@ foreach(BUILD_TYPE dbg rel)
# prefer repeated source extraction here for each build type over extracting once above the loop and copying because users reported issues with copying symlinks
set(STATIC_ONLY_PATCHES)
set(WINDOWS_ONLY_PATCHES)
- set(LINUX_ONLY_PATCHES)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
set(STATIC_ONLY_PATCHES "${CMAKE_CURRENT_LIST_DIR}/change-macros-for-static-lib.patch") # there is no static build option - change macros via patch and link library manually at the end
endif()
if(VCPKG_TARGET_IS_WINDOWS)
set(WINDOWS_ONLY_PATCHES "${CMAKE_CURRENT_LIST_DIR}/fix-windows-build.patch")
endif()
- if(VCPKG_TARGET_IS_LINUX)
- set(LINUX_ONLY_PATCHES "${CMAKE_CURRENT_LIST_DIR}/fix-linux-build.patch")
- endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO tensorflow/tensorflow
REF "v${TF_VERSION}"
- SHA512 be8273f464c1c1c392f3ab0190dbba36d56a0edcc7991c1a86f16604c859056d3188737d11c3b41ec7918e1cf46d13814c50c00be8f459dde9f0fb618740ee3c
+ SHA512 d052da4b324f1b5ac9c904ac3cca270cefbf916be6e5968a6835ef3f8ea8c703a0b90be577ac5205edf248e8e6c7ee8817b6a1b383018bb77c381717c6205e05
HEAD_REF master
PATCHES
"${CMAKE_CURRENT_LIST_DIR}/fix-build-error.patch" # Fix namespace error
"${CMAKE_CURRENT_LIST_DIR}/Update-bazel-max-version.patch"
${STATIC_ONLY_PATCHES}
${WINDOWS_ONLY_PATCHES}
- ${LINUX_ONLY_PATCHES}
)
message(STATUS "Configuring TensorFlow (${BUILD_TYPE})")
@@ -192,8 +187,10 @@ foreach(BUILD_TYPE dbg rel)
if(BUILD_TYPE STREQUAL dbg)
if(VCPKG_TARGET_IS_WINDOWS)
set(BUILD_OPTS "--compilation_mode=dbg --features=fastbuild") # link with /DEBUG:FASTLINK instead of /DEBUG:FULL to avoid .pdb >4GB error
+ elseif(VCPKG_TARGET_IS_OSX)
+ set(BUILD_OPTS --compilation_mode=fastbuild) # debug build on macOS currently broken
else()
- set(BUILD_OPTS "--compilation_mode=dbg")
+ set(BUILD_OPTS --compilation_mode=dbg)
endif()
separate_arguments(VCPKG_C_FLAGS ${PLATFORM_COMMAND} ${VCPKG_C_FLAGS})
@@ -212,7 +209,7 @@ foreach(BUILD_TYPE dbg rel)
list(APPEND LINKOPTS "--linkopt='${OPT}'")
endforeach()
else()
- set(BUILD_OPTS "--compilation_mode=opt")
+ set(BUILD_OPTS --compilation_mode=opt)
separate_arguments(VCPKG_C_FLAGS ${PLATFORM_COMMAND} ${VCPKG_C_FLAGS})
separate_arguments(VCPKG_C_FLAGS_RELEASE ${PLATFORM_COMMAND} ${VCPKG_C_FLAGS_RELEASE})
@@ -289,7 +286,7 @@ foreach(BUILD_TYPE dbg rel)
endif()
# for some reason stdout of bazel ends up in stderr, so use err log file in the following command
vcpkg_execute_build_process(
- COMMAND ${PYTHON3} "${CMAKE_CURRENT_LIST_DIR}/generate_static_link_cmd_${PLATFORM_SUFFIX}.py" "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-${BUILD_TYPE}-err.log" ${TF_LIB_SUFFIX}
+ COMMAND ${PYTHON3} "${CMAKE_CURRENT_LIST_DIR}/generate_static_link_cmd_${PLATFORM_SUFFIX}.py" "${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-${BUILD_TYPE}-err.log" ${TF_VERSION} ${TF_LIB_SUFFIX}
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BUILD_TYPE}/bazel-${TARGET_TRIPLET}-${BUILD_TYPE}
LOGNAME postbuild2-${TARGET_TRIPLET}-${BUILD_TYPE}
)
diff --git a/ports/tensorflow-common/vcpkg.json b/ports/tensorflow-common/vcpkg.json
index 51d3fa855..dae75635c 100644
--- a/ports/tensorflow-common/vcpkg.json
+++ b/ports/tensorflow-common/vcpkg.json
@@ -1,7 +1,6 @@
{
"name": "tensorflow-common",
- "version-semver": "2.4.1",
- "port-version": 5,
+ "version-semver": "2.6.0",
"description": "This meta package holds common files for the C [tensorflow] and the C++ [tensorflow-cc] API version of TensorFlow but is not installable on its own.",
"homepage": "https://github.com/tensorflow/tensorflow"
}
diff --git a/ports/tensorflow/vcpkg.json b/ports/tensorflow/vcpkg.json
index b6fb8e613..b00a067fc 100644
--- a/ports/tensorflow/vcpkg.json
+++ b/ports/tensorflow/vcpkg.json
@@ -1,6 +1,6 @@
{
"name": "tensorflow",
- "version-semver": "2.4.1",
+ "version-semver": "2.6.0",
"description": "Library for computation using data flow graphs for scalable machine learning (C API version)",
"homepage": "https://github.com/tensorflow/tensorflow",
"supports": "!(x86 | arm | uwp)",
diff --git a/versions/baseline.json b/versions/baseline.json
index 8c4ebc40d..d19079847 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -6457,16 +6457,16 @@
"port-version": 1
},
"tensorflow": {
- "baseline": "2.4.1",
+ "baseline": "2.6.0",
"port-version": 0
},
"tensorflow-cc": {
- "baseline": "2.4.1",
- "port-version": 1
+ "baseline": "2.6.0",
+ "port-version": 0
},
"tensorflow-common": {
- "baseline": "2.4.1",
- "port-version": 5
+ "baseline": "2.6.0",
+ "port-version": 0
},
"tensorpipe": {
"baseline": "2021-04-26",
diff --git a/versions/t-/tensorflow-cc.json b/versions/t-/tensorflow-cc.json
index b43b8b239..2fb6918aa 100644
--- a/versions/t-/tensorflow-cc.json
+++ b/versions/t-/tensorflow-cc.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "b9e9f840127f8da0c67cadf0369023753c90686b",
+ "version-semver": "2.6.0",
+ "port-version": 0
+ },
+ {
"git-tree": "77875da04a151fb36abe52cce80491a9a7f16c55",
"version-semver": "2.4.1",
"port-version": 1
diff --git a/versions/t-/tensorflow-common.json b/versions/t-/tensorflow-common.json
index a647b39e3..26d4c0d26 100644
--- a/versions/t-/tensorflow-common.json
+++ b/versions/t-/tensorflow-common.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "84662f791eb9d38350a4ffe99cd80d49f562b10f",
+ "version-semver": "2.6.0",
+ "port-version": 0
+ },
+ {
"git-tree": "2160d070413af839dbe9da331350e34c91352e11",
"version-semver": "2.4.1",
"port-version": 5
diff --git a/versions/t-/tensorflow.json b/versions/t-/tensorflow.json
index c83f74066..900e6a8ed 100644
--- a/versions/t-/tensorflow.json
+++ b/versions/t-/tensorflow.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "8692b5026a3b7666e73dcaf7432e525dc103f8c5",
+ "version-semver": "2.6.0",
+ "port-version": 0
+ },
+ {
"git-tree": "bd9bf99a10fe9a9769f26dedb282f3c1954fc9bb",
"version-semver": "2.4.1",
"port-version": 0