diff --git a/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.47.0-llvm-tensorflow-fix.patch b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.47.0-llvm-tensorflow-fix.patch new file mode 100644 index 0000000000..5b12c15ff4 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.47.0-llvm-tensorflow-fix.patch @@ -0,0 +1,55 @@ +From 8dcb88f7705fb3927938dd9bd103efcabafcefb0 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev +Date: Tue, 27 Oct 2020 18:20:56 -0700 +Subject: [PATCH] backport D88371, guard `find_library(tensorflow_c_api ...)` + +Differential Revision: https://reviews.llvm.org/D88371 +Signed-off-by: Georgy Yakovlev +--- + src/llvm-project/llvm/CMakeLists.txt | 15 +++++++-------- + 1 file changed, 7 insertions(+), 8 deletions(-) + +diff --git a/src/llvm-project/llvm/CMakeLists.txt b/src/llvm-project/llvm/CMakeLists.txt +index 1f137f0..4112def 100644 +--- a/src/llvm-project/llvm/CMakeLists.txt ++++ b/src/llvm-project/llvm/CMakeLists.txt +@@ -832,6 +832,11 @@ configure_file( + ${LLVM_INCLUDE_DIR}/llvm/Config/Targets.def + ) + ++# They are not referenced. See set_output_directory(). ++set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/bin ) ++set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} ) ++set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} ) ++ + # For up-to-date instructions for installing the Tensorflow dependency, refer to + # the bot setup script: https://github.com/google/ml-compiler-opt/blob/master/buildbot/buildbot_init.sh + # In this case, the latest C API library is available for download from +@@ -840,9 +845,9 @@ configure_file( + # LLVM_HAVE_TF_API, through llvm-config.h, so that a user of the LLVM library may + # also leverage the dependency. + set(TENSORFLOW_C_LIB_PATH "" CACHE PATH "Path to TensorFlow C library install") +-find_library(tensorflow_c_api tensorflow PATHS ${TENSORFLOW_C_LIB_PATH}/lib) + +-if (tensorflow_c_api) ++if (TENSORFLOW_C_LIB_PATH) ++ find_library(tensorflow_c_api tensorflow PATHS ${TENSORFLOW_C_LIB_PATH}/lib NO_DEFAULT_PATH REQUIRED) + set(LLVM_HAVE_TF_API "ON" CACHE BOOL "Full Tensorflow API available") + include_directories(${TENSORFLOW_C_LIB_PATH}/include) + endif() +@@ -877,12 +882,6 @@ add_custom_target(srpm + COMMAND rpmbuild -bs --define '_topdir ${LLVM_SRPM_DIR}' ${LLVM_SRPM_BINARY_SPECFILE}) + set_target_properties(srpm PROPERTIES FOLDER "Misc") + +- +-# They are not referenced. See set_output_directory(). +-set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/bin ) +-set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} ) +-set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} ) +- + if(APPLE AND DARWIN_LTO_LIBRARY) + set(CMAKE_EXE_LINKER_FLAGS + "${CMAKE_EXE_LINKER_FLAGS} -Wl,-lto_library -Wl,${DARWIN_LTO_LIBRARY}") +-- +2.26.2 + diff --git a/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/gentoo-musl-target-specs.patch b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.48.0-gentoo-musl-target-specs.patch similarity index 56% rename from sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/gentoo-musl-target-specs.patch rename to sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.48.0-gentoo-musl-target-specs.patch index 0661a26841..850257f932 100644 --- a/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/gentoo-musl-target-specs.patch +++ b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/files/1.48.0-gentoo-musl-target-specs.patch @@ -1,35 +1,31 @@ -From 9fb44efd4a6270443ca2a06a098c83cf9820cc8b Mon Sep 17 00:00:00 2001 +From 671ef2d1c228aed031b4232b8bea96f17b825263 Mon Sep 17 00:00:00 2001 From: Georgy Yakovlev -Date: Thu, 8 Oct 2020 22:38:54 -0700 +Date: Mon, 23 Nov 2020 14:52:04 -0800 Subject: [PATCH] add gentoo musl target specs -Directly based on patch by Samuel Holland -Found at: https://github.com/smaeul/portage-overlay/blob/master/dev-lang/rust/files/ - -Signed-off-by: Georgy Yakovlev --- - src/librustc_target/spec/aarch64_gentoo_linux_musl.rs | 11 +++++++++++ - .../spec/armv7_gentoo_linux_musleabihf.rs | 11 +++++++++++ - src/librustc_target/spec/i686_gentoo_linux_musl.rs | 11 +++++++++++ - src/librustc_target/spec/mod.rs | 8 ++++++++ - .../spec/powerpc64_gentoo_linux_musl.rs | 11 +++++++++++ - .../spec/powerpc64le_gentoo_linux_musl.rs | 11 +++++++++++ - src/librustc_target/spec/powerpc_gentoo_linux_musl.rs | 11 +++++++++++ - src/librustc_target/spec/x86_64_gentoo_linux_musl.rs | 11 +++++++++++ + .../src/spec/aarch64_gentoo_linux_musl.rs | 11 +++++++++++ + .../src/spec/armv7_gentoo_linux_musleabihf.rs | 11 +++++++++++ + .../rustc_target/src/spec/i686_gentoo_linux_musl.rs | 11 +++++++++++ + compiler/rustc_target/src/spec/mod.rs | 8 ++++++++ + .../src/spec/powerpc64_gentoo_linux_musl.rs | 11 +++++++++++ + .../src/spec/powerpc64le_gentoo_linux_musl.rs | 11 +++++++++++ + .../src/spec/powerpc_gentoo_linux_musl.rs | 11 +++++++++++ + .../rustc_target/src/spec/x86_64_gentoo_linux_musl.rs | 11 +++++++++++ 8 files changed, 85 insertions(+) - create mode 100644 src/librustc_target/spec/aarch64_gentoo_linux_musl.rs - create mode 100644 src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs - create mode 100644 src/librustc_target/spec/i686_gentoo_linux_musl.rs - create mode 100644 src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs - create mode 100644 src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs - create mode 100644 src/librustc_target/spec/powerpc_gentoo_linux_musl.rs - create mode 100644 src/librustc_target/spec/x86_64_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs + create mode 100644 compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs + create mode 100644 compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs -diff --git a/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs b/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs new file mode 100644 index 0000000..420fe7c --- /dev/null -+++ b/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -42,11 +38,11 @@ index 0000000..420fe7c + + Ok(base) +} -diff --git a/src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs b/src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs +diff --git a/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs b/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs new file mode 100644 index 0000000..067e2d6 --- /dev/null -+++ b/src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs ++++ b/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -59,11 +55,11 @@ index 0000000..067e2d6 + + Ok(base) +} -diff --git a/src/librustc_target/spec/i686_gentoo_linux_musl.rs b/src/librustc_target/spec/i686_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs new file mode 100644 index 0000000..1cd39cd --- /dev/null -+++ b/src/librustc_target/spec/i686_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -76,10 +72,10 @@ index 0000000..1cd39cd + + Ok(base) +} -diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs -index fa29ff3..a685600 100644 ---- a/src/librustc_target/spec/mod.rs -+++ b/src/librustc_target/spec/mod.rs +diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs +index f1e8330..d8c0ba0 100644 +--- a/compiler/rustc_target/src/spec/mod.rs ++++ b/compiler/rustc_target/src/spec/mod.rs @@ -490,6 +490,14 @@ macro_rules! supported_targets { } @@ -95,11 +91,11 @@ index fa29ff3..a685600 100644 ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu), ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32), ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), -diff --git a/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs new file mode 100644 index 0000000..e840bb2 --- /dev/null -+++ b/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -112,11 +108,11 @@ index 0000000..e840bb2 + + Ok(base) +} -diff --git a/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs new file mode 100644 index 0000000..1037d82 --- /dev/null -+++ b/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -129,11 +125,11 @@ index 0000000..1037d82 + + Ok(base) +} -diff --git a/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs new file mode 100644 index 0000000..a623ffe --- /dev/null -+++ b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -146,11 +142,11 @@ index 0000000..a623ffe + + Ok(base) +} -diff --git a/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs b/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs +diff --git a/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs new file mode 100644 index 0000000..f330473 --- /dev/null -+++ b/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs @@ -0,0 +1,11 @@ +use crate::spec::TargetResult; + @@ -164,5 +160,5 @@ index 0000000..f330473 + Ok(base) +} -- -2.28.0 +2.29.2 diff --git a/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/rust-1.48.0.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/rust-1.48.0.ebuild index d5039da6d8..88ed641ba2 100644 --- a/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/rust-1.48.0.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/dev-lang/rust/rust-1.48.0.ebuild @@ -119,7 +119,8 @@ PATCHES=( "${FILESDIR}"/1.47.0-libressl.patch "${FILESDIR}"/1.46.0-don-t-create-prefix-at-time-of-check.patch "${FILESDIR}"/1.47.0-ignore-broken-and-non-applicable-tests.patch - "${FILESDIR}"/gentoo-musl-target-specs.patch + "${FILESDIR}"/1.47.0-llvm-tensorflow-fix.patch + "${FILESDIR}"/1.48.0-gentoo-musl-target-specs.patch ) S="${WORKDIR}/${MY_P}-src"