Get all our roborio tools loading downloaded .sos
This is the last piece to make `bazel build --cpu=roborio //...` work on
a barebones Stretch system.
Change-Id: I87b8737ee479dd16c9421f81a42c5ecf6413f822
diff --git a/README.md b/README.md
index 42faed2..eef71a6 100644
--- a/README.md
+++ b/README.md
@@ -101,14 +101,12 @@
setup_roborio.sh roboRIO-971-frc.local
```
-# ============================ Notes for running under Stretch ===================
-#
-# Parker and Austin helped me compile the code under the Stretch version of Debian.
-# Below are my notes on what was done differently. I started with a cleanly
-# installed Debian Stretch OS. Michael Schuh, May 13, 2018.
-#
+### Some other useful packages
+These aren't strictly necessary to build the code, but Michael found the
+additional tools provided by these packages useful to install when working with
+the code on May 13, 2018.
-# Install different packages than those listed above:
+```console
# Get some useful packages including git and subversion.
apt-get update
apt-get install git subversion ruby python vim-gtk3 subversion-tools
@@ -132,124 +130,4 @@
# understanding the revision history of the repository and viewing
# log messages and changes.
apt-get install gitg
-
-# Make the following changes to the configuration files.
-# The one change to the graph.cc file is to update it to work with current
-# complilers. The other changes are required to work with a newer version
-# of clang.
-#
-# The sed commands can be run by copying and pasting them to the command line.
-# The sed commands will change the file contents and replace the file with the
-# updated changes.
-
-#
-# aos/build/queues/compiler.rb
-#
-sed -i -e 's/clang-format-3.5/clang-format-3.8/' aos/build/queues/compiler.rb
-
-diff --git a/aos/build/queues/compiler.rb b/aos/build/queues/compiler.rb
-index 51646702..6a273ae9 100644
---- a/aos/build/queues/compiler.rb
-+++ b/aos/build/queues/compiler.rb
-@@ -77,7 +77,7 @@ def parse_args(globals,args)
- end
- def format_pipeline(output)
- read_in, write_in = IO.pipe()
-- child = Process.spawn('/usr/bin/clang-format-3.5 --style=google',
-+ child = Process.spawn('/usr/bin/clang-format-3.8 --style=google',
- {:in=>read_in, write_in=>:close,
- :out=>output.fileno})
- read_in.close
-
-#
-# tools/cpp/CROSSTOOL
-#
-sed -e 's?clang/3.6.2?clang/3.8.1?' \
- -e 's/clang-3.6/clang-3.8/' \
- -e 's/clang_3.6/clang_3.8/' \
- -e 's/llvm-3.6/llvm-3.8/' \
- -e 's?clang/3.6?clang/3.8?' \
- -i tools/cpp/CROSSTOOL
-
-diff --git a/tools/cpp/CROSSTOOL b/tools/cpp/CROSSTOOL
-index d4e7fbb1..caa2f633 100644
---- a/tools/cpp/CROSSTOOL
-+++ b/tools/cpp/CROSSTOOL
-@@ -83,7 +83,7 @@ toolchain {
- tool_path { name: "compat-ld" path: "/usr/bin/ld" }
- tool_path { name: "cpp" path: "/usr/bin/cpp" }
- tool_path { name: "dwp" path: "/usr/bin/dwp" }
-- tool_path { name: "gcc" path: "/usr/bin/clang-3.6" }
-+ tool_path { name: "gcc" path: "/usr/bin/clang-3.8" }
- tool_path { name: "gcov" path: "/usr/bin/gcov" }
- # C(++) compiles invoke the compiler (as that is the one knowing where
- # to find libraries), but we provide LD so other rules can invoke the linker.
-@@ -104,10 +104,10 @@ toolchain {
- cxx_builtin_include_directory: '/usr/include/x86_64-linux-gnu/c++/4.9'
- cxx_builtin_include_directory: '/usr/include/c++/4.9/backward'
- cxx_builtin_include_directory: '/usr/local/include'
-- cxx_builtin_include_directory: '/usr/lib/llvm-3.6/lib/clang/3.6.2/include'
-+ cxx_builtin_include_directory: '/usr/lib/llvm-3.8/lib/clang/3.8.1/include'
- cxx_builtin_include_directory: '/usr/include/x86_64-linux-gnu'
- cxx_builtin_include_directory: '/usr/include'
-- cxx_builtin_include_directory: '/usr/lib/clang/3.6.2/include'
-+ cxx_builtin_include_directory: '/usr/lib/clang/3.8.1/include'
-
- linker_flag: "-lstdc++"
- linker_flag: "-B/usr/bin/"
-@@ -535,7 +535,7 @@ toolchain {
- }
-
- toolchain {
-- abi_version: "clang_3.6"
-+ abi_version: "clang_3.8"
- abi_libc_version: "glibc_2.19"
- builtin_sysroot: ""
- compiler: "clang"
-@@ -578,7 +578,7 @@ toolchain {
-
- compiler_flag: "-nostdinc"
- compiler_flag: "-isystem"
-- compiler_flag: "/usr/lib/clang/3.6/include"
-+ compiler_flag: "/usr/lib/clang/3.8/include"
- compiler_flag: "-isystem"
- compiler_flag: "external/linaro_linux_gcc_4_9_repo/lib/gcc/arm-linux-gnueabihf/4.9.3/include"
- compiler_flag: "-isystem"
-@@ -604,7 +604,7 @@ toolchain {
- cxx_builtin_include_directory: "%package(@linaro_linux_gcc_4_9_repo//lib/gcc/arm-linux-gnueabihf/4.9.3/include)%"
- cxx_builtin_include_directory: "%package(@linaro_linux_gcc_4_9_repo//lib/gcc/arm-linux-gnueabihf/4.9.3/include-fixed)%"
- cxx_builtin_include_directory: "%package(@linaro_linux_gcc_4_9_repo//arm-linux-gnueabihf/include)%/c++/4.9.3"
-- cxx_builtin_include_directory: '/usr/lib/clang/3.6/include'
-+ cxx_builtin_include_directory: '/usr/lib/clang/3.8/include'
-
- linker_flag: "-target"
- linker_flag: "armv7a-arm-linux-gnueabif"
-
-#
-# To compile the code for the robot, libisl.so.10 is needed. It is not
-# available on stretch package servers so download the amd64 jessie package
-# from https://packages.debian.org/jessie/libisl10
-# and install it with dpkg.
-# This installs
-# /usr/lib/x86_64-linux-gnu/libisl.so.10
-# /usr/lib/x86_64-linux-gnu/libisl.so.10.2.2
-# /usr/share/doc/libisl10/changelog.Debian.gz
-# /usr/share/doc/libisl10/changelog.gz
-# /usr/share/doc/libisl10/copyright
-#
-wget http://ftp.us.debian.org/debian/pool/main/i/isl/libisl10_0.12.2-2_amd64.deb
-dpkg -i libisl10_0.12.2-2_amd64.deb
-
-# After doing this, this compile command should work.
-time bazel build --cpu=roborio --compilation_mode=opt //y2018:download
-# On Michael's Lenovo ThinkPad X270 with an
-# Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
-# compiling the 2018 robot code takes
-# INFO: Elapsed time: 499.177s, Critical Path: 63.33s
-# INFO: Build completed successfully, 4901 total actions
-#
-# real 8m19.234s
-# user 0m0.277s
-# sys 0m0.518s
-
-
+```
diff --git a/WORKSPACE b/WORKSPACE
index 3921318..eb49852 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -32,6 +32,10 @@
"//debian:matplotlib.bzl",
matplotlib_debs = "files",
)
+load(
+ "//debian:arm_frc_gnueabi_deps.bzl",
+ arm_frc_gnueabi_deps_debs = "files",
+)
load("//debian:packages.bzl", "generate_repositories_for_debs")
generate_repositories_for_debs(python_debs)
@@ -50,6 +54,8 @@
generate_repositories_for_debs(matplotlib_debs)
+generate_repositories_for_debs(arm_frc_gnueabi_deps_debs)
+
new_http_archive(
name = "python_repo",
build_file = "debian/python.BUILD",
@@ -234,3 +240,10 @@
sha256 = "bf8b709909d7d9e30815dd228eeded7dc282e3ce3919d0589ccbb56ac8632abc",
url = "http://frc971.org/Build-Dependencies/patchelf.tar.gz",
)
+
+new_http_archive(
+ name = "arm_frc_gnueabi_deps",
+ build_file = "debian/arm_frc_gnueabi_deps.BUILD",
+ sha256 = "4b26fe45010817dc136488ee1604ade21bd7c264c29f17d864fc6eba9d7442c4",
+ url = "http://frc971.org/Build-Dependencies/arm_frc_gnueabi_deps.tar.gz",
+)
diff --git a/debian/BUILD b/debian/BUILD
index aa1b85f..a052657 100644
--- a/debian/BUILD
+++ b/debian/BUILD
@@ -32,6 +32,10 @@
":matplotlib.bzl",
matplotlib_debs = "files",
)
+load(
+ ":arm_frc_gnueabi_deps.bzl",
+ arm_frc_gnueabi_deps_debs = "files",
+)
load("//debian:packages.bzl", "download_packages", "generate_deb_tarball")
filegroup(
@@ -143,6 +147,23 @@
],
)
+# This list was obtained by manually looking at the output from:
+# find bazel-out/../../../external/arm_frc_linux_gnueabi_repo/ -executable -type f -exec ldd {} + | sed 's/=>.*//g' | sort -u
+download_packages(
+ name = "download_arm_frc_gnueabi_deps",
+ packages = [
+ "libexpat1",
+ "libgmp10",
+ "libisl10",
+ "liblzma5",
+ "libmpc3",
+ "libmpfr4",
+ "libncurses5",
+ "libtinfo5",
+ "zlib1g",
+ ],
+)
+
generate_deb_tarball(
name = "python",
files = python_debs,
@@ -182,3 +203,8 @@
name = "matplotlib",
files = matplotlib_debs,
)
+
+generate_deb_tarball(
+ name = "arm_frc_gnueabi_deps",
+ files = arm_frc_gnueabi_deps_debs,
+)
diff --git a/debian/arm_frc_gnueabi_deps.BUILD b/debian/arm_frc_gnueabi_deps.BUILD
new file mode 100644
index 0000000..8d1034d
--- /dev/null
+++ b/debian/arm_frc_gnueabi_deps.BUILD
@@ -0,0 +1,8 @@
+filegroup(
+ name = "arm_frc_gnueabi_deps",
+ srcs = glob([
+ "lib/x86_64-linux-gnu/*.so*",
+ "usr/lib/x86_64-linux-gnu/*.so*",
+ ]),
+ visibility = ["@arm_frc_linux_gnueabi_repo//:__pkg__"],
+)
diff --git a/debian/arm_frc_gnueabi_deps.bzl b/debian/arm_frc_gnueabi_deps.bzl
new file mode 100644
index 0000000..69a568e
--- /dev/null
+++ b/debian/arm_frc_gnueabi_deps.bzl
@@ -0,0 +1,9 @@
+files = {
+ "libexpat1_2.1.0-6+deb8u4_amd64.deb": "de7979297d0298271d71b4554772ba4da60ba6895ed86ca8fc9c1159c58913e4",
+ "libgmp10_6.0.0+dfsg-6_amd64.deb": "155a31b0f716aa3dcd7ee68e9bd57e0b76a6b31f4e41fb2d953e986315437082",
+ "libisl10_0.12.2-2_amd64.deb": "5a091cf30221e183d319f4906a746043be7220061f3b742b2ad958ee79ac01f7",
+ "libmpc3_1.0.2-1_amd64.deb": "0a252dcf89843ee8b402fd226c8fb552d69c82c7013a28e335ba36878468d959",
+ "libmpfr4_3.1.2-2_amd64.deb": "1b6ef16024e7850c4f2d47dbe06cba1143ac36d5584db515f63d5fbd873e3eb2",
+ "libncurses5_5.9+20140913-1+deb8u3_amd64.deb": "529417741277e91ed343e1e01aa68a0e4bca33b1fee5bdfb19093634b21ed0c5",
+ "libtinfo5_5.9+20140913-1+deb8u3_amd64.deb": "36a0f120da15f82c0c729535ac48d95e126c5d7fc2c4aceb94bf27ced5a4cecc",
+}
diff --git a/tools/cpp/BUILD b/tools/cpp/BUILD
index 3bee68e..e5cdcc7 100644
--- a/tools/cpp/BUILD
+++ b/tools/cpp/BUILD
@@ -133,6 +133,14 @@
],
)
+filegroup(
+ name = "roborio_strip_files",
+ srcs = [
+ "//tools/cpp/arm-frc-linux-gnueabi:strip",
+ "@arm_frc_linux_gnueabi_repo//:compiler_pieces",
+ ],
+)
+
cc_toolchain(
name = "cc-compiler-roborio",
all_files = ":roborio-compiler-files",
@@ -143,7 +151,7 @@
linker_files = ":roborio_linker_files",
objcopy_files = "//tools/cpp/arm-frc-linux-gnueabi:objcopy",
static_runtime_libs = [":empty"],
- strip_files = "//tools/cpp/arm-frc-linux-gnueabi:strip",
+ strip_files = ":roborio_strip_files",
supports_param_files = 1,
)
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ar b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ar
index d70337f..5725bbb 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ar
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ar
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-ar \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-ar" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-as b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-as
index 5f1a2fc..6e67db8 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-as
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-as
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-as \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-as" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-cpp b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-cpp
index 3262658..d2968e3 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-cpp
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-cpp
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-cpp \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-cpp" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-dwp b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-dwp
index dbd074b..697f65a 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-dwp
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-dwp
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-dwp \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-dwp" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcc b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcc
index aab008a..7b127aa 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcc
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcc
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-gcc" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcov b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcov
index a3c71c3..35d71c2 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcov
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-gcov
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-gcov \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-gcov" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ld b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ld
index d5dce71..f3dc5ef 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ld
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-ld
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-ld \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-ld" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-nm b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-nm
index 4163be0..b9bc2b8 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-nm
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-nm
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-nm \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-nm" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objcopy b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objcopy
index a77d3a9..04381fa 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objcopy
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objcopy
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-objcopy \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-objcopy" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objdump b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objdump
index 0de0532..2c6a99c 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objdump
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-objdump
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-objdump \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-objdump" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-strip b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-strip
index 15cc2f9..78a0f65 100755
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-strip
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi-strip
@@ -1,5 +1,9 @@
#!/bin/bash --norc
+LD_LIBRARY_PATH="${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/usr/lib/x86_64-linux-gnu"
+LD_LIBRARY_PATH+=":${BAZEL_OUTPUT_ROOT}external/arm_frc_gnueabi_deps/lib/x86_64-linux-gnu"
+export LD_LIBRARY_PATH
+
exec -a arm-frc-linux-gnueabi-strip \
"${BAZEL_OUTPUT_ROOT}external/arm_frc_linux_gnueabi_repo/usr/bin/arm-frc-linux-gnueabi-strip" \
"$@"
diff --git a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi.BUILD b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi.BUILD
index 438c9f1..a2725fe 100644
--- a/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi.BUILD
+++ b/tools/cpp/arm-frc-linux-gnueabi/arm-frc-linux-gnueabi.BUILD
@@ -1,108 +1,84 @@
package(default_visibility = ["//visibility:public"])
filegroup(
- name = 'gcc',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-gcc',
- ],
+ name = "gcc",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-gcc",
+ ],
)
filegroup(
- name = 'ar',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-ar',
- ],
+ name = "ar",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-ar",
+ ],
)
filegroup(
- name = 'as',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-as',
- ],
+ name = "as",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-as",
+ ],
)
filegroup(
- name = 'ld',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-ld',
- ],
+ name = "ld",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-ld",
+ ],
)
filegroup(
- name = 'nm',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-nm',
- ],
+ name = "nm",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-nm",
+ ],
)
filegroup(
- name = 'objcopy',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-objcopy',
- ],
+ name = "objcopy",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-objcopy",
+ ],
)
filegroup(
- name = 'objdump',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-objdump',
- ],
+ name = "objdump",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-objdump",
+ ],
)
filegroup(
- name = 'strip',
- srcs = [
- 'usr/bin/arm-frc-linux-gnueabi-strip',
- ],
+ name = "strip",
+ srcs = [
+ "usr/bin/arm-frc-linux-gnueabi-strip",
+ ],
)
filegroup(
- name = 'compiler_pieces',
- srcs = glob([
- 'usr/bin/**/*',
- 'usr/include/**/*',
- 'usr/lib/**/*',
- 'usr/arm-frc-linux-gnueabi/**/*',
- 'usr/lib/x86_64-linux-gnu/gcc/**/*',
- ]),
+ name = "compiler_pieces",
+ srcs = glob([
+ "usr/bin/**/*",
+ "usr/include/**/*",
+ "usr/lib/**/*",
+ "usr/arm-frc-linux-gnueabi/**/*",
+ "usr/lib/x86_64-linux-gnu/gcc/**/*",
+ ]) + [
+ "@arm_frc_gnueabi_deps",
+ ],
)
filegroup(
- name = 'compiler_components',
- srcs = [
- ':gcc',
- ':ar',
- ':as',
- ':ld',
- ':nm',
- ':objcopy',
- ':objdump',
- ':strip',
- ],
+ name = "compiler_components",
+ srcs = [
+ ":ar",
+ ":as",
+ ":gcc",
+ ":ld",
+ ":nm",
+ ":objcopy",
+ ":objdump",
+ ":strip",
+ ],
)
-
-cc_library(
- name = 'librt',
- srcs = [
- 'usr/arm-frc-linux-gnueabi/usr/lib/librt.so'
- ],
-)
-
-cc_library(
- name = 'libdl',
- srcs = [
- 'usr/arm-frc-linux-gnueabi/usr/lib/libdl.so'
- ],
-)
-
-cc_library(
- name = 'libm',
- srcs = [
- 'usr/arm-frc-linux-gnueabi/usr/lib/libm.so'
- ],
-)
-
-cc_library(
- name = 'libpthread',
-)
-