blob: 23c4580c0d9f3afc9b509a2b3720b14e158db8d8 [file] [log] [blame]
Brian Silverman7bda6212018-08-05 11:42:11 -07001workspace(name = "org_frc971")
Brian Silvermand1c19fb2016-07-07 00:10:57 -07002
Austin Schuh0ca51f32020-12-25 21:51:45 -08003load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository", "new_git_repository")
Austin Schuhf093fa52019-06-23 20:47:23 -07004load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file")
Brian Silverman7bda6212018-08-05 11:42:11 -07005load(
6 "//debian:python.bzl",
7 python_debs = "files",
8)
9load(
10 "//debian:clang.bzl",
11 clang_debs = "files",
12)
13load(
14 "//debian:patch.bzl",
15 patch_debs = "files",
16)
Brian Silverman7297c0c2018-08-05 13:43:00 -070017load(
Austin Schuh71f6fa72019-08-31 18:23:02 -070018 "//debian:rsync.bzl",
19 rsync_debs = "files",
20)
21load(
22 "//debian:ssh.bzl",
23 ssh_debs = "files",
24)
25load(
Brian Silverman7297c0c2018-08-05 13:43:00 -070026 "//debian:pandoc.bzl",
27 pandoc_debs = "files",
28)
Brian Silverman4f6ba442018-08-05 14:34:58 -070029load(
30 "//debian:libusb.bzl",
31 libusb_debs = "files",
32)
Brian Silvermanb80dc9f2018-08-05 14:59:24 -070033load(
34 "//debian:mingw_compiler.bzl",
35 mingw_compiler_debs = "files",
36)
Brian Silverman6470f442018-08-05 12:08:16 -070037load(
38 "//debian:patchelf.bzl",
39 patchelf_debs = "files",
40)
41load(
42 "//debian:matplotlib.bzl",
43 matplotlib_debs = "files",
44)
Brian Silverman50b9ac02018-08-12 13:24:10 -070045load(
46 "//debian:arm_frc_gnueabi_deps.bzl",
47 arm_frc_gnueabi_deps_debs = "files",
48)
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -070049load(
50 "//debian:python_gtk.bzl",
51 python_gtk_debs = "files",
52)
Brian Silvermand4260c72020-01-14 00:08:02 -080053load(
54 "//debian:opencv_armhf.bzl",
55 opencv_armhf_debs = "files",
56)
Brian Silvermand97a47c2020-01-16 00:47:53 -080057load(
58 "//debian:opencv_amd64.bzl",
59 opencv_amd64_debs = "files",
60)
Tyler Chatow60671d32020-02-26 19:49:30 -080061load(
62 "//debian:gstreamer_amd64.bzl",
James Kuszmaulc91e4402020-05-10 18:47:20 -070063 gstreamer_amd64_debs = "files",
Tyler Chatow60671d32020-02-26 19:49:30 -080064)
65load(
66 "//debian:gstreamer_armhf.bzl",
James Kuszmaulc91e4402020-05-10 18:47:20 -070067 gstreamer_armhf_debs = "files",
Tyler Chatow60671d32020-02-26 19:49:30 -080068)
Austin Schuh023e7f52020-08-18 21:24:37 -070069load(
70 "//debian:m4.bzl",
71 m4_debs = "files",
72)
Brian Silvermanf59fe3f2020-09-22 21:04:09 -070073load(
74 "//debian:lzma_amd64.bzl",
75 lzma_amd64_debs = "files",
76)
77load(
78 "//debian:lzma_arm64.bzl",
79 lzma_arm64_debs = "files",
80)
Philipp Schrader0e19c602018-03-07 21:07:22 -080081load("//debian:packages.bzl", "generate_repositories_for_debs")
82
83generate_repositories_for_debs(python_debs)
Brian Silverman7bda6212018-08-05 11:42:11 -070084
Philipp Schraderaedfc5c2018-03-10 19:32:30 -080085generate_repositories_for_debs(clang_debs)
Philipp Schrader0e19c602018-03-07 21:07:22 -080086
Austin Schuh71f6fa72019-08-31 18:23:02 -070087generate_repositories_for_debs(rsync_debs)
88
89generate_repositories_for_debs(ssh_debs)
90
Brian Silverman7bda6212018-08-05 11:42:11 -070091generate_repositories_for_debs(patch_debs)
92
Brian Silverman7297c0c2018-08-05 13:43:00 -070093generate_repositories_for_debs(pandoc_debs)
94
Brian Silverman4f6ba442018-08-05 14:34:58 -070095generate_repositories_for_debs(libusb_debs)
96
Brian Silvermanb80dc9f2018-08-05 14:59:24 -070097generate_repositories_for_debs(mingw_compiler_debs)
98
Brian Silverman6470f442018-08-05 12:08:16 -070099generate_repositories_for_debs(patchelf_debs)
100
101generate_repositories_for_debs(matplotlib_debs)
102
Brian Silverman50b9ac02018-08-12 13:24:10 -0700103generate_repositories_for_debs(arm_frc_gnueabi_deps_debs)
104
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700105generate_repositories_for_debs(python_gtk_debs)
106
Brian Silvermand4260c72020-01-14 00:08:02 -0800107generate_repositories_for_debs(opencv_armhf_debs)
108
Brian Silvermand97a47c2020-01-16 00:47:53 -0800109generate_repositories_for_debs(opencv_amd64_debs)
110
Tyler Chatow60671d32020-02-26 19:49:30 -0800111generate_repositories_for_debs(gstreamer_amd64_debs)
112
113generate_repositories_for_debs(gstreamer_armhf_debs)
114
Austin Schuh023e7f52020-08-18 21:24:37 -0700115generate_repositories_for_debs(m4_debs)
116
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700117generate_repositories_for_debs(lzma_amd64_debs)
118
119generate_repositories_for_debs(lzma_arm64_debs)
120
Philipp Schraderdada1072020-11-24 11:34:46 -0800121register_toolchains(
122 "//tools/cpp:cc-toolchain-k8",
123 "//tools/cpp:cc-toolchain-armhf-debian",
124 "//tools/cpp:cc-toolchain-roborio",
125 "//tools/cpp:cc-toolchain-cortex-m4f",
126 # Find a good way to select between these two M4F toolchains.
127 #"//tools/cpp:cc-toolchain-cortex-m4f-k22",
128)
129
130http_archive(
131 name = "platforms",
132 sha256 = "3c4057c53b64dd3f2c753e0a80bbb6ccb29fb437910200c911dd51454baf619b",
Philipp Schraderdada1072020-11-24 11:34:46 -0800133 strip_prefix = "platforms-10b4d2bdde25ea1e66c02c3f83a6d921000a7272",
Austin Schuh4c3b4f02020-12-21 11:51:42 -0800134 url = "https://www.frc971.org/Build-Dependencies/platforms_10b4d2bdde25ea1e66c02c3f83a6d921000a7272.zip",
Philipp Schraderdada1072020-11-24 11:34:46 -0800135)
136
137http_archive(
138 name = "bazel_skylib",
Austin Schuh4c3b4f02020-12-21 11:51:42 -0800139 sha256 = "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c",
Philipp Schraderdada1072020-11-24 11:34:46 -0800140 urls = [
141 "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz",
142 "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz",
143 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800144)
145
Austin Schuhf093fa52019-06-23 20:47:23 -0700146http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700147 name = "python_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700148 build_file = "@//debian:python.BUILD",
Austin Schuh085eab92020-11-26 13:54:51 -0800149 sha256 = "c2e293cd8bab436c2bd03648d2a0853ff3e2d954644698473fcd263bb9bab037",
150 url = "https://www.frc971.org/Build-Dependencies/python-5.tar.gz",
Philipp Schrader9fc87e02018-03-10 20:36:39 -0800151)
152
Austin Schuhf093fa52019-06-23 20:47:23 -0700153http_archive(
James Kuszmaul3ae42262019-11-08 12:33:41 -0800154 name = "clang_6p0_repo",
155 build_file = "@//tools/cpp/clang_6p0:clang_6p0.BUILD",
156 sha256 = "7c5dc0f124fbd26e440797a851466e7f852da27d9f1562c74059b5a34c294cc9",
Austin Schuha5778ae2020-10-21 21:15:35 -0700157 url = "https://www.frc971.org/Build-Dependencies/clang_6p0.tar.gz",
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800158)
159
Austin Schuh7466fe12020-12-29 23:01:47 -0800160http_archive(
161 name = "com_github_stevengj_nlopt",
162 build_file = "@//debian:nlopt.BUILD",
163 patch_args = ["-p1"],
164 patches = ["//debian:nlopt.patch"],
165 sha256 = "2d65815b21c30813499fe19c63947f7da56b10c0d4a459dce05417899b43e461",
166 strip_prefix = "nlopt-496be736b8b249273838b891f4c8ca3669551127",
167 url = "https://www.frc971.org/Build-Dependencies/nlopt-496be736b8b249273838b891f4c8ca3669551127.zip",
168)
169
Austin Schuhd57edc42019-09-21 17:52:38 -0700170local_repository(
171 name = "com_google_absl",
172 path = "third_party/abseil",
Austin Schuh36244a12019-09-21 17:52:38 -0700173)
174
Alex Perrycb7da4b2019-08-28 19:35:56 -0700175local_repository(
176 name = "org_tuxfamily_eigen",
177 path = "third_party/eigen",
178)
179
James Kuszmaulbc02ff42021-01-15 20:41:30 -0800180local_repository(
181 name = "com_github_rawrtc_re",
182 path = "third_party/rawrtc/re",
183)
184
185local_repository(
186 name = "com_github_rawrtc_rew",
187 path = "third_party/rawrtc/rew",
188)
189
190local_repository(
191 name = "com_github_rawrtc_usrsctp",
192 path = "third_party/rawrtc/usrsctp",
193)
194
195local_repository(
196 name = "com_github_rawrtc_rawrtc_common",
197 path = "third_party/rawrtc/rawrtc-common",
198)
199
200local_repository(
201 name = "com_github_rawrtc_rawrtc_data_channel",
202 path = "third_party/rawrtc/rawrtc-data-channel",
203)
204
205local_repository(
206 name = "com_github_rawrtc_rawrtc",
207 path = "third_party/rawrtc/rawrtc",
208)
209
Austin Schuh0ca51f32020-12-25 21:51:45 -0800210http_archive(
211 name = "boringssl",
212 patch_args = ["-p1"],
213 patches = ["//debian:boringssl.patch"],
214 sha256 = "bcab08a22c28f5322316542aa2c3a9ef0a9f9fde9be22d489cee574867b24675",
215 strip_prefix = "boringssl-613fe9dbe74b58d6aaaf0d22fe57dccd964c7413",
216 urls = ["https://www.frc971.org/Build-Dependencies/boringssl-613fe9dbe74b58d6aaaf0d22fe57dccd964c7413.zip"],
217)
218
Austin Schuh36244a12019-09-21 17:52:38 -0700219# C++ rules for Bazel.
220http_archive(
221 name = "rules_cc",
Austin Schuh968174a2021-03-31 20:04:01 -0700222 sha256 = "ed36cc7a6f46b7c28ab4009db4a37e350e1ba367446b0886bcc9cdc1df92752e",
223 strip_prefix = "rules_cc-608c7b605fb844a20e96a3eddc9b49ad2542adab",
Austin Schuh36244a12019-09-21 17:52:38 -0700224 urls = [
Austin Schuh968174a2021-03-31 20:04:01 -0700225 "https://www.frc971.org/Build-Dependencies/rules_cc-608c7b605fb844a20e96a3eddc9b49ad2542adab.zip",
Austin Schuh36244a12019-09-21 17:52:38 -0700226 ],
227)
Austin Schuhd57edc42019-09-21 17:52:38 -0700228
James Kuszmaulf4bf9fe2021-05-10 22:58:24 -0700229# Note that rules_python is currently only imported to make googletest happy.
230# TODO: add frc971.org URL
231http_archive(
232 name = "rules_python",
James Kuszmaulf4bf9fe2021-05-10 22:58:24 -0700233 sha256 = "778197e26c5fbeb07ac2a2c5ae405b30f6cb7ad1f5510ea6fdac03bded96cc6f",
Austin Schuh6103b012021-07-15 23:29:05 -0700234 url = "https://github.com/bazelbuild/rules_python/releases/download/0.2.0/rules_python-0.2.0.tar.gz",
James Kuszmaulf4bf9fe2021-05-10 22:58:24 -0700235)
236
Austin Schuh4759ffc2015-10-07 20:39:56 -0700237new_local_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700238 name = "usr_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700239 build_file = "@//debian:usr.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700240 path = "/usr",
Austin Schuh4759ffc2015-10-07 20:39:56 -0700241)
242
Austin Schuh1f9aeb42015-11-12 23:34:49 -0800243new_git_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700244 name = "slycot_repo",
Tyler Chatow2584bb12018-10-27 20:48:35 -0700245 build_file = "@//debian:slycot.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700246 commit = "5af5f283cb23cbe23c4dfea4d5e56071bdbd6e70",
247 remote = "https://github.com/avventi/Slycot.git",
Austin Schuh1f9aeb42015-11-12 23:34:49 -0800248)
249
Austin Schuh9950f682021-11-06 15:27:58 -0700250# TODO(austin): https://github.com/wpilibsuite/roborio-toolchain/releases/tag/v2022-1
Austin Schuhf093fa52019-06-23 20:47:23 -0700251http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700252 name = "arm_frc_linux_gnueabi_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700253 build_file = "@//tools/cpp/arm-frc-linux-gnueabi:arm-frc-linux-gnueabi.BUILD",
Austin Schuhe991fe22020-11-18 16:53:39 -0800254 patches = ["//debian:fts.patch"],
James Kuszmaul3ae42262019-11-08 12:33:41 -0800255 sha256 = "043a5b047c2af9cf80d146d8327b588264c98a01e0f3f41e3564dd2bbbc95c0e",
256 strip_prefix = "frc2020/roborio/",
Austin Schuha5778ae2020-10-21 21:15:35 -0700257 url = "https://www.frc971.org/Build-Dependencies/FRC-2020-Linux-Toolchain-7.3.0.tar.gz",
Austin Schuh55139fe2015-10-14 23:55:24 -0700258)
Austin Schuhe456f152015-11-27 13:44:39 -0800259
Brian Silverman0d57fc82016-01-24 21:02:53 -0500260# Recompressed version of the one downloaded from Linaro at
James Kuszmaul3ae42262019-11-08 12:33:41 -0800261# <https://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/arm-linux-gnueabihf/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz>
Brian Silverman0d57fc82016-01-24 21:02:53 -0500262# with workarounds for <https://github.com/bazelbuild/bazel/issues/574> and the
263# top-level folder stripped off.
Austin Schuhf093fa52019-06-23 20:47:23 -0700264http_archive(
James Kuszmaul3ae42262019-11-08 12:33:41 -0800265 name = "linaro_linux_gcc_repo",
266 build_file = "@//:compilers/linaro_linux_gcc.BUILD",
267 sha256 = "3c951cf1941d0fa06d64cc0d5e88612b209d8123b273fa26c16d70bd7bc6b163",
268 strip_prefix = "gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf",
Austin Schuha5778ae2020-10-21 21:15:35 -0700269 url = "https://www.frc971.org/Build-Dependencies/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz",
Brian Silverman0d57fc82016-01-24 21:02:53 -0500270)
271
Brian Silvermanbf4c1312020-01-12 11:35:45 -0800272# The main partition from https://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2019-09-30/2019-09-26-raspbian-buster-lite.zip.
273# The following folders are removed to make bazel happy with it:
274# usr/share/ca-certificates
275# This copy command to make clang happy: `cp usr/lib/arm-linux-gnueabihf/*.o usr/lib`
276http_archive(
277 name = "armhf_debian_rootfs",
Brian Silverman60606c92020-01-15 22:45:04 -0800278 build_file = "@//:compilers/debian_rootfs.BUILD",
Brian Silvermanbf4c1312020-01-12 11:35:45 -0800279 sha256 = "8c827bdb79615046ee3e13e85664e5d01286ca1721f7169341667a634e599eb6",
Austin Schuha5778ae2020-10-21 21:15:35 -0700280 url = "https://www.frc971.org/Build-Dependencies/2019-09-26-raspbian-buster-lite_rootfs.tar.bz2",
Brian Silvermanbf4c1312020-01-12 11:35:45 -0800281)
282
Brian Silverman60606c92020-01-15 22:45:04 -0800283# Created with:
284# `debootstrap buster buster_sysroot`
285# and then chrooting in and running:
286# apt install libc6-dev libstdc++-7-dev
287# and then tarring up the result
288http_archive(
289 name = "amd64_debian_sysroot",
290 build_file = "@//:compilers/debian_rootfs.BUILD",
291 sha256 = "fb0a4f0b35b4c99fcfc83902d2d2eaac7062024b2ff2f998e68736aac92c8e59",
Austin Schuha5778ae2020-10-21 21:15:35 -0700292 url = "https://www.frc971.org/Build-Dependencies/2019-01-14-debian-buster_rootfs.tar.bz2",
Brian Silverman60606c92020-01-15 22:45:04 -0800293)
294
Austin Schuhe456f152015-11-27 13:44:39 -0800295new_git_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700296 name = "python_gflags_repo",
Tyler Chatow2584bb12018-10-27 20:48:35 -0700297 build_file = "@//debian:gflags.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700298 commit = "41c4571864f0db5823e07715317e7388e94faabc",
299 remote = "https://github.com/gflags/python-gflags.git",
Austin Schuhe456f152015-11-27 13:44:39 -0800300)
301
302bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700303 name = "python-gflags",
304 actual = "@python_gflags_repo//:gflags",
Austin Schuhe456f152015-11-27 13:44:39 -0800305)
306
Brian Silverman16a923c2018-10-31 19:40:51 -0700307local_repository(
308 name = "com_github_gflags_gflags",
309 path = "third_party/gflags",
310)
311
Brian Silverman8d644032020-02-02 12:15:43 -0800312# Downloaded from:
313# https://pypi.python.org/packages/source/g/glog/glog-0.1.tar.gz
Austin Schuhf093fa52019-06-23 20:47:23 -0700314http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700315 name = "python_glog_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700316 build_file = "@//debian:glog.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700317 sha256 = "953fd80122c48023d1148e6d1bda2763fcab59c8a81682bb298238a5935547b0",
318 strip_prefix = "glog-0.1",
Austin Schuha5778ae2020-10-21 21:15:35 -0700319 url = "https://www.frc971.org/Build-Dependencies/glog-0.1.tar.gz",
Austin Schuhe456f152015-11-27 13:44:39 -0800320)
321
322bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700323 name = "python-glog",
324 actual = "@python_glog_repo//:glog",
Austin Schuhe456f152015-11-27 13:44:39 -0800325)
Brian Silvermancee260a2015-12-24 16:27:51 -0800326
Brian Silverman82a12b92019-01-19 21:52:10 -0800327# Generated with:
Austin Schuh9950f682021-11-06 15:27:58 -0700328# git fetch https://github.com/wpilibsuite/ni-libraries main
329# git archive --output=allwpilib_ni-libraries_987ab82a80232691d8e21c57c9f13d35d2c31f24.tar.gz --format=tar.gz 987ab82a80232691d8e21c57c9f13d35d2c31f24
Austin Schuhf093fa52019-06-23 20:47:23 -0700330http_archive(
James Kuszmaulc9c46b32019-12-08 21:10:00 -0800331 name = "allwpilib_ni_libraries",
332 build_file = "@//debian:ni-libraries.BUILD",
Austin Schuh9950f682021-11-06 15:27:58 -0700333 sha256 = "f57dfc76ee3d8680aba8cfa6077e20cd47a2e5b2badd918ec3095d2c6300588f",
334 url = "https://www.frc971.org/Build-Dependencies/allwpilib_ni-libraries_987ab82a80232691d8e21c57c9f13d35d2c31f24.tar.gz",
Brian Silverman82a12b92019-01-19 21:52:10 -0800335)
336
Brian Silverman3fca9d72016-02-20 02:32:51 -0500337# Downloaded from:
338# https://pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz
Austin Schuhf093fa52019-06-23 20:47:23 -0700339http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700340 name = "six_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700341 build_file = "@//debian:six.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700342 sha256 = "105f8d68616f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a",
343 strip_prefix = "six-1.10.0",
Austin Schuha5778ae2020-10-21 21:15:35 -0700344 url = "https://www.frc971.org/Build-Dependencies/six-1.10.0.tar.gz",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500345)
346
347# For protobuf. Don't use these.
348bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700349 name = "six",
350 actual = "@six_repo//:six",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500351)
Brian Silverman7bda6212018-08-05 11:42:11 -0700352
Brian Silverman3fca9d72016-02-20 02:32:51 -0500353bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700354 name = "gtest",
355 actual = "//third_party/googletest:googlemock",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500356)
Brian Silverman7bda6212018-08-05 11:42:11 -0700357
Brian Silverman3fca9d72016-02-20 02:32:51 -0500358bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700359 name = "gtest_main",
360 actual = "//third_party/googletest:googlemock_main",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500361)
362
Brian Silverman4aa83042018-01-05 12:47:31 -0800363# Recompressed from libusb-1.0.21.7z.
364http_file(
Brian Silverman7bda6212018-08-05 11:42:11 -0700365 name = "libusb_1_0_windows",
Austin Schuh4ac96a82019-08-14 20:24:23 -0700366 downloaded_file_path = "libusb-1.0.21-windows.tar.xz",
Brian Silverman7bda6212018-08-05 11:42:11 -0700367 sha256 = "fc2ba03992f343aabbaf9eb90559c6e00cdc6a2bd914d7cebea85857d5244015",
Austin Schuha5778ae2020-10-21 21:15:35 -0700368 urls = ["https://www.frc971.org/Build-Dependencies/libusb-1.0.21-windows.tar.xz"],
Brian Silverman4aa83042018-01-05 12:47:31 -0800369)
Brian Silvermand3ad1652018-02-18 22:16:29 -0500370
371# The data tarball of the same-named Debian package.
Austin Schuhf093fa52019-06-23 20:47:23 -0700372http_archive(
Brian Silvermand3ad1652018-02-18 22:16:29 -0500373 name = "f2c",
Austin Schuhf093fa52019-06-23 20:47:23 -0700374 build_file = "@//debian:f2c.BUILD",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500375 sha256 = "2c677437f8217a2e2b23e41b33995d0571644fc1bea46de858f8913a5053e3f4",
Austin Schuha5778ae2020-10-21 21:15:35 -0700376 url = "https://www.frc971.org/Build-Dependencies/f2c_20100827-1_amd64.xz.tar.xz",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500377)
378
379# Downloaded from http://www.netlib.org/clapack/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700380http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700381 name = "clapack",
Austin Schuhf093fa52019-06-23 20:47:23 -0700382 build_file = "@//debian:clapack.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700383 sha256 = "6dc4c382164beec8aaed8fd2acc36ad24232c406eda6db462bd4c41d5e455fac",
384 strip_prefix = "CLAPACK-3.2.1/",
Austin Schuha5778ae2020-10-21 21:15:35 -0700385 url = "https://www.frc971.org/Build-Dependencies/clapack-3.2.1.tgz",
Brian Silverman7bda6212018-08-05 11:42:11 -0700386)
387
Austin Schuhf093fa52019-06-23 20:47:23 -0700388http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700389 name = "patch",
Austin Schuhf093fa52019-06-23 20:47:23 -0700390 build_file = "@//debian:patch.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700391 sha256 = "b5ce139648a2e04f5585948ddad2fdae24dd4ee7976ac5a22d6ae7bd5674631e",
Austin Schuha5778ae2020-10-21 21:15:35 -0700392 url = "https://www.frc971.org/Build-Dependencies/patch.tar.gz",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500393)
Brian Silverman7297c0c2018-08-05 13:43:00 -0700394
Austin Schuhf093fa52019-06-23 20:47:23 -0700395http_archive(
Austin Schuh71f6fa72019-08-31 18:23:02 -0700396 name = "rsync",
397 build_file = "@//debian:rsync.BUILD",
398 sha256 = "53be65a9214aaa6d1b9176f135184fb4a78ccefd58f95ce0da37e6a392dfeb60",
Austin Schuha5778ae2020-10-21 21:15:35 -0700399 url = "https://www.frc971.org/Build-Dependencies/rsync.tar.gz",
Austin Schuh71f6fa72019-08-31 18:23:02 -0700400)
401
Brian Silvermanbd7860e2020-01-05 17:52:40 -0800402# //debian:ssh
Austin Schuh71f6fa72019-08-31 18:23:02 -0700403http_archive(
404 name = "ssh",
405 build_file = "@//debian:ssh.BUILD",
Brian Silvermanbd7860e2020-01-05 17:52:40 -0800406 sha256 = "470fdc1252a2133a9d3c3da778e892a5b88f04f402cb04d8eb1cff7853242034",
Austin Schuha5778ae2020-10-21 21:15:35 -0700407 url = "https://www.frc971.org/Build-Dependencies/ssh_v3.tar.gz",
Austin Schuh71f6fa72019-08-31 18:23:02 -0700408)
409
410http_archive(
Brian Silverman7297c0c2018-08-05 13:43:00 -0700411 name = "pandoc",
Austin Schuhf093fa52019-06-23 20:47:23 -0700412 build_file = "@//debian:pandoc.BUILD",
Brian Silverman7297c0c2018-08-05 13:43:00 -0700413 sha256 = "9f7a7adb3974a1f14715054c349ff3edc2909e920dbe3438fca437a83845f3c4",
Austin Schuha5778ae2020-10-21 21:15:35 -0700414 url = "https://www.frc971.org/Build-Dependencies/pandoc.tar.gz",
Brian Silverman7297c0c2018-08-05 13:43:00 -0700415)
Brian Silverman4f6ba442018-08-05 14:34:58 -0700416
Austin Schuhf093fa52019-06-23 20:47:23 -0700417http_archive(
Brian Silverman4f6ba442018-08-05 14:34:58 -0700418 name = "libusb",
Austin Schuhf093fa52019-06-23 20:47:23 -0700419 build_file = "@//debian:libusb.BUILD",
Brian Silverman4f6ba442018-08-05 14:34:58 -0700420 sha256 = "3ca5cc2d317226f6646866ff9e8c443db3b0f6c82f828e800240982727531590",
Austin Schuha5778ae2020-10-21 21:15:35 -0700421 url = "https://www.frc971.org/Build-Dependencies/libusb.tar.gz",
Brian Silverman4f6ba442018-08-05 14:34:58 -0700422)
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700423
Austin Schuhf093fa52019-06-23 20:47:23 -0700424http_archive(
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700425 name = "mingw_compiler",
Austin Schuhf093fa52019-06-23 20:47:23 -0700426 build_file = "@//debian:mingw_compiler.BUILD",
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700427 sha256 = "45e86a8460f2151a4f0306e7ae7b06761029d2412ee16f63d1e8d2d29354e378",
Austin Schuha5778ae2020-10-21 21:15:35 -0700428 url = "https://www.frc971.org/Build-Dependencies/mingw_compiler.tar.gz",
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700429)
Brian Silverman6470f442018-08-05 12:08:16 -0700430
James Kuszmaul910f92b2020-01-01 15:30:38 -0800431# Note that we should generally keep the matplotlib repo in a folder not
432# named matplotlib, because otherwise the repository itself tends to end up
433# on the PYTHONPATH, rather than the matplotlib folder within this repo.
Austin Schuhf093fa52019-06-23 20:47:23 -0700434http_archive(
James Kuszmaul910f92b2020-01-01 15:30:38 -0800435 name = "matplotlib_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700436 build_file = "@//debian:matplotlib.BUILD",
Austin Schuh085eab92020-11-26 13:54:51 -0800437 sha256 = "a3db08d5951c1fc73f2203e3ab1f9ff4a647fff7b384c1b87f89adec61a0d77f",
438 url = "https://www.frc971.org/Build-Dependencies/matplotlib-5.tar.gz",
Brian Silverman6470f442018-08-05 12:08:16 -0700439)
440
Austin Schuhf093fa52019-06-23 20:47:23 -0700441http_archive(
Brian Silverman6470f442018-08-05 12:08:16 -0700442 name = "patchelf",
Austin Schuhf093fa52019-06-23 20:47:23 -0700443 build_file = "@//debian:patchelf.BUILD",
Brian Silverman6470f442018-08-05 12:08:16 -0700444 sha256 = "bf8b709909d7d9e30815dd228eeded7dc282e3ce3919d0589ccbb56ac8632abc",
Austin Schuha5778ae2020-10-21 21:15:35 -0700445 url = "https://www.frc971.org/Build-Dependencies/patchelf.tar.gz",
Brian Silverman6470f442018-08-05 12:08:16 -0700446)
Brian Silverman50b9ac02018-08-12 13:24:10 -0700447
Austin Schuhf093fa52019-06-23 20:47:23 -0700448http_archive(
Brian Silverman50b9ac02018-08-12 13:24:10 -0700449 name = "arm_frc_gnueabi_deps",
Austin Schuhf093fa52019-06-23 20:47:23 -0700450 build_file = "@//debian:arm_frc_gnueabi_deps.BUILD",
Brian Silverman50b9ac02018-08-12 13:24:10 -0700451 sha256 = "4b26fe45010817dc136488ee1604ade21bd7c264c29f17d864fc6eba9d7442c4",
Austin Schuha5778ae2020-10-21 21:15:35 -0700452 url = "https://www.frc971.org/Build-Dependencies/arm_frc_gnueabi_deps.tar.gz",
Brian Silverman50b9ac02018-08-12 13:24:10 -0700453)
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700454
Austin Schuhf093fa52019-06-23 20:47:23 -0700455http_archive(
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700456 name = "python_gtk",
Austin Schuhf093fa52019-06-23 20:47:23 -0700457 build_file = "@//debian:python_gtk.BUILD",
Austin Schuh903b99a2021-02-06 13:41:34 -0800458 sha256 = "d8310f3a8b8bd7d7b0040bfec4bb7818ab6221031ffd334525de3618585148b8",
459 url = "https://www.frc971.org/Build-Dependencies/python_gtk-3.tar.gz",
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700460)
461
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700462# Downloaded from
463# https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2?revision=bc2c96c0-14b5-4bb4-9f18-bceb4050fee7?product=GNU%20Arm%20Embedded%20Toolchain,64-bit,,Linux,7-2018-q2-update
Austin Schuhf093fa52019-06-23 20:47:23 -0700464http_archive(
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700465 name = "gcc_arm_none_eabi",
Austin Schuhf093fa52019-06-23 20:47:23 -0700466 build_file = "@//:compilers/gcc_arm_none_eabi.BUILD",
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700467 sha256 = "bb17109f0ee697254a5d4ae6e5e01440e3ea8f0277f2e8169bf95d07c7d5fe69",
468 strip_prefix = "gcc-arm-none-eabi-7-2018-q2-update/",
Austin Schuha5778ae2020-10-21 21:15:35 -0700469 url = "https://www.frc971.org/Build-Dependencies/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2",
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700470)
Austin Schuhad596222018-01-31 23:34:03 -0800471
Austin Schuhf093fa52019-06-23 20:47:23 -0700472http_archive(
Austin Schuhad596222018-01-31 23:34:03 -0800473 name = "cgal_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700474 build_file = "@//debian:cgal.BUILD",
Austin Schuhad596222018-01-31 23:34:03 -0800475 sha256 = "d564dda558570344b4caa66c5bae2cdae9ef68e07829d64f5651b25f2c6a0e9e",
Austin Schuha5778ae2020-10-21 21:15:35 -0700476 url = "https://www.frc971.org/Build-Dependencies/cgal-dev-4.5-2.tar.gz",
Austin Schuhad596222018-01-31 23:34:03 -0800477)
Austin Schuhe18baff2018-10-20 17:40:42 -0700478
479# Java9 JDK.
Austin Schuhf093fa52019-06-23 20:47:23 -0700480http_archive(
Austin Schuhe18baff2018-10-20 17:40:42 -0700481 name = "openjdk_linux_archive",
482 build_file_content = """
483java_runtime(
484 name = 'jdk',
485 srcs = glob(['**']),
Austin Schuhf6b94632019-02-02 22:11:27 -0800486 visibility = ['//visibility:public'],
Austin Schuhe18baff2018-10-20 17:40:42 -0700487)
488""",
489 sha256 = "f27cb933de4f9e7fe9a703486cf44c84bc8e9f138be0c270c9e5716a32367e87",
490 strip_prefix = "zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules",
491 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700492 "https://www.frc971.org/Build-Dependencies/zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules.tar.gz",
Austin Schuhe18baff2018-10-20 17:40:42 -0700493 ],
494)
495
Austin Schuhf9724442018-10-28 20:30:21 -0700496local_repository(
497 name = "com_google_protobuf",
498 path = "third_party/protobuf",
Brian Silverman9c614bc2016-02-15 20:20:02 -0500499)
Austin Schuh10358f22019-01-21 20:25:11 -0800500
501local_repository(
502 name = "com_github_google_glog",
503 path = "third_party/google-glog",
504)
Austin Schuh6defdeb2019-01-21 21:00:30 -0800505
Alex Perrycb7da4b2019-08-28 19:35:56 -0700506local_repository(
507 name = "com_google_googletest",
508 path = "third_party/googletest",
509)
510
Austin Schuh6defdeb2019-01-21 21:00:30 -0800511# External dependency: Google Benchmark; has no Bazel build.
512local_repository(
513 name = "com_github_google_benchmark",
514 path = "third_party/google-benchmark",
Austin Schuhcbc17402019-01-21 21:00:30 -0800515)
Austin Schuh033df092019-01-21 19:46:48 -0800516
517local_repository(
518 name = "com_google_ceres_solver",
519 path = "third_party/ceres",
Austin Schuh70cc9552019-01-21 19:46:48 -0800520)
Austin Schuhf6b94632019-02-02 22:11:27 -0800521
Austin Schuh9950f682021-11-06 15:27:58 -0700522# TODO(austin): Update!
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800523# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/api-cpp/5.18.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700524http_archive(
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800525 name = "ctre_phoenix_api_cpp_headers",
Austin Schuhf6b94632019-02-02 22:11:27 -0800526 build_file_content = """
527cc_library(
528 name = 'api-cpp',
529 visibility = ['//visibility:public'],
530 hdrs = glob(['ctre/phoenix/**/*.h']),
531)
532""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800533 sha256 = "230ff927e36b2f75e746da0f0bf9852e5a049bb3e95c4617138ef0618b2e80d9",
Austin Schuhf6b94632019-02-02 22:11:27 -0800534 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700535 "https://www.frc971.org/Build-Dependencies/api-cpp-5.18.1-headers.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800536 ],
537)
538
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800539# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/api-cpp/5.18.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700540http_archive(
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800541 name = "ctre_phoenix_api_cpp_athena",
Austin Schuhf6b94632019-02-02 22:11:27 -0800542 build_file_content = """
543cc_library(
544 name = 'api-cpp',
545 visibility = ['//visibility:public'],
546 srcs = ['linux/athena/static/libCTRE_Phoenix.a'],
Philipp Schraderdada1072020-11-24 11:34:46 -0800547 target_compatible_with = ['@//tools/platforms/hardware:roborio'],
Austin Schuhf6b94632019-02-02 22:11:27 -0800548 deps = [
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800549 '@ctre_phoenix_core_headers//:core',
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800550 '@ctre_phoenix_core_athena//:core',
Austin Schuhf6b94632019-02-02 22:11:27 -0800551 ],
552)
553""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800554 sha256 = "a4de1930e1e946e1c72c13ee272dae38c12c4b7b85b44477dbb67312724d96b1",
Austin Schuhf6b94632019-02-02 22:11:27 -0800555 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700556 "https://www.frc971.org/Build-Dependencies/api-cpp-5.18.1-linuxathenastatic.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800557 ],
558)
559
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800560# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/diagnostics/5.18.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700561http_archive(
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800562 name = "ctre_phoenix_diagnostics_headers",
563 build_file_content = """
564cc_library(
565 name = 'diagnostics',
566 visibility = ['//visibility:public'],
567 hdrs = glob(['ctre/phoenix/**/*.h']),
568)
569""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800570 sha256 = "a94bff6c241de8dc2396a1cece9e2822fe4a7e4980aedaaea682c3e8c5de008c",
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800571 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700572 "https://www.frc971.org/Build-Dependencies/diagnostics-5.18.1-headers.zip",
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800573 ],
574)
575
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800576# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/diagnostics/5.18.1/.
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800577http_archive(
578 name = "ctre_phoenix_diagnostics_athena",
579 build_file_content = """
580cc_library(
581 name = 'diagnostics',
582 visibility = ['//visibility:public'],
583 srcs = ['linux/athena/static/libCTRE_PhoenixDiagnostics.a'],
Philipp Schraderdada1072020-11-24 11:34:46 -0800584 target_compatible_with = ['@//tools/platforms/hardware:roborio'],
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800585 deps = [
586 '@ctre_phoenix_core_headers//:core',
587 '@ctre_phoenix_core_athena//:core',
588 ],
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800589)
590""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800591 sha256 = "638a4a4d7400942baa040619ea6cde2bdef0e7721300a9427424a577ce0f56db",
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800592 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700593 "https://www.frc971.org/Build-Dependencies/diagnostics-5.18.1-linuxathenastatic.zip",
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800594 ],
595)
596
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800597# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/cci/5.18.1/.
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800598http_archive(
599 name = "ctre_phoenix_cci_headers",
Austin Schuhf6b94632019-02-02 22:11:27 -0800600 build_file_content = """
601cc_library(
602 name = 'cci',
603 visibility = ['//visibility:public'],
604 hdrs = glob(['ctre/phoenix/**/*.h']),
605)
606""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800607 sha256 = "31e4d8f7fd9612ba687661e19aabc3d89dc076f66756d4696aa7799f31bbc72f",
Austin Schuhf6b94632019-02-02 22:11:27 -0800608 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700609 "https://www.frc971.org/Build-Dependencies/cci-5.18.1-headers.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800610 ],
611)
612
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800613# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/cci/5.18.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700614http_archive(
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800615 name = "ctre_phoenix_cci_athena",
Austin Schuhf6b94632019-02-02 22:11:27 -0800616 build_file_content = """
617cc_library(
618 name = 'cci',
619 visibility = ['//visibility:public'],
620 srcs = ['linux/athena/static/libCTRE_PhoenixCCI.a'],
Philipp Schraderdada1072020-11-24 11:34:46 -0800621 target_compatible_with = ['@//tools/platforms/hardware:roborio'],
Austin Schuhf6b94632019-02-02 22:11:27 -0800622)
623""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800624 sha256 = "e5d9b58072002dbd2daa8cc8d42e047e5c90d26bd5a2b1d63dc1b89112ac3837",
Austin Schuhf6b94632019-02-02 22:11:27 -0800625 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700626 "https://www.frc971.org/Build-Dependencies/cci-5.18.1-linuxathenastatic.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800627 ],
628)
629
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800630# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/core/5.18.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700631http_archive(
James Kuszmaul02eb05e2019-12-22 12:32:18 -0800632 name = "ctre_phoenix_core_headers",
Austin Schuhf6b94632019-02-02 22:11:27 -0800633 build_file_content = """
634cc_library(
635 name = 'core',
636 visibility = ['//visibility:public'],
637 hdrs = glob(['ctre/phoenix/**/*.h']),
638)
639""",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800640 sha256 = "af2db0f9c3693cbb74216882ee140e4d6b722a416f2d384062378a8ae37f65ee",
Austin Schuhf6b94632019-02-02 22:11:27 -0800641 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700642 "https://www.frc971.org/Build-Dependencies/core-5.18.1-headers.zip",
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800643 ],
644)
645
646# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/core/5.18.1/.
647http_archive(
648 name = "ctre_phoenix_core_athena",
649 build_file_content = """
650cc_library(
651 name = 'core',
652 visibility = ['//visibility:public'],
653 srcs = ['linux/athena/static/libCTRE_PhoenixCore.a'],
Philipp Schraderdada1072020-11-24 11:34:46 -0800654 target_compatible_with = ['@//tools/platforms/hardware:roborio'],
James Kuszmaulb656f2e2020-02-17 18:08:09 -0800655)
656""",
657 sha256 = "cd827bc68c0f4ef2fe6c363a7f9f5a08f7d944b574c65a2c7fb823686501f43f",
658 urls = [
Austin Schuha5778ae2020-10-21 21:15:35 -0700659 "https://www.frc971.org/Build-Dependencies/core-5.18.1-linuxathenastatic.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800660 ],
661)
Austin Schuheed14442019-03-23 14:42:46 -0700662
663http_archive(
664 name = "build_bazel_rules_typescript",
665 strip_prefix = "rules_typescript-0.21.0",
666 url = "https://github.com/bazelbuild/rules_typescript/archive/0.21.0.zip",
667)
668
Philipp Schrader5561af72020-11-08 10:05:45 -0800669http_archive(
Austin Schuhda9d0602019-09-15 17:29:38 -0700670 name = "build_bazel_rules_nodejs",
671 sha256 = "0d9660cf0894f1fe1e9840818553e0080fbce0851169812d77a70bdb9981c946",
672 urls = ["https://www.frc971.org/Build-Dependencies/rules_nodejs-0.37.0.tar.gz"],
673)
Austin Schuheed14442019-03-23 14:42:46 -0700674
675# Setup the NodeJS toolchain
676load("@build_bazel_rules_nodejs//:defs.bzl", "node_repositories", "yarn_install")
677
678node_repositories()
679
680# Setup Bazel managed npm dependencies with the `yarn_install` rule.
Austin Schuhda9d0602019-09-15 17:29:38 -0700681#
682# To run yarn by hand, use:
683# bazel run @nodejs_linux_amd64//:bin/yarn -- list
684# I'm sure there is a better path, but that works...
Austin Schuheed14442019-03-23 14:42:46 -0700685yarn_install(
686 name = "npm",
687 package_json = "//:package.json",
Austin Schuhda9d0602019-09-15 17:29:38 -0700688 symlink_node_modules = False,
Austin Schuheed14442019-03-23 14:42:46 -0700689 yarn_lock = "//:yarn.lock",
690)
Austin Schuh4ac96a82019-08-14 20:24:23 -0700691
Austin Schuhda9d0602019-09-15 17:29:38 -0700692# Install all Bazel dependencies needed for npm packages that supply Bazel rules
693load("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies")
694
695install_bazel_dependencies()
696
697load("@npm_bazel_typescript//:index.bzl", "ts_setup_workspace")
698
699ts_setup_workspace()
700
Austin Schuh4ac96a82019-08-14 20:24:23 -0700701# Flatbuffers
702local_repository(
703 name = "com_github_google_flatbuffers",
704 path = "third_party/flatbuffers",
705)
James Kuszmaul7daef362019-12-31 18:28:17 -0800706
707http_file(
708 name = "sample_logfile",
709 downloaded_file_path = "log.fbs",
milind945708b2021-07-03 13:30:15 -0700710 sha256 = "45d1d19fb82786c476d3f21a8d62742abaeeedf4c16a00ec37ae350dcb61f1fc",
711 urls = ["https://www.frc971.org/Build-Dependencies/small_sample_logfile2.fbs"],
James Kuszmaul7daef362019-12-31 18:28:17 -0800712)
Brian Silvermand4260c72020-01-14 00:08:02 -0800713
James Kuszmaul9c128122021-03-22 22:24:36 -0700714http_archive(
James Kuszmaul531609d2020-02-18 17:12:23 -0800715 name = "drivetrain_replay",
James Kuszmaul9c128122021-03-22 22:24:36 -0700716 build_file_content = """
717filegroup(
718 name = "drivetrain_replay",
719 srcs = glob(["**/*.bfbs"]),
720 visibility = ["//visibility:public"],
721)
722 """,
723 sha256 = "115dcd2fe005cb9cad3325707aa7f4466390c43a08555edf331c06c108bdf692",
724 url = "https://www.frc971.org/Build-Dependencies/2021-03-20_drivetrain_spin_wheels.tar.gz",
James Kuszmaul531609d2020-02-18 17:12:23 -0800725)
726
milind-u7baf7342021-08-25 18:31:26 -0700727http_archive(
728 name = "superstructure_replay",
729 build_file_content = """
730filegroup(
731 name = "superstructure_replay",
732 srcs = glob(["**/*.bfbs"]),
733 visibility = ["//visibility:public"],
734)
735 """,
milind-u200b2762021-11-06 19:36:15 -0700736 sha256 = "2b9a3ecc83f2aba89a1909ae38fe51e6718a5b4d0e7c131846dfb2845df9cd19",
737 url = "https://www.frc971.org/Build-Dependencies/2021-10-03_superstructure_shoot_balls.tar.gz",
milind-u7baf7342021-08-25 18:31:26 -0700738)
739
Brian Silvermand4260c72020-01-14 00:08:02 -0800740# OpenCV armhf (for raspberry pi)
741http_archive(
742 name = "opencv_armhf",
743 build_file = "@//debian:opencv.BUILD",
744 sha256 = "1dd496ad0947ed6ce5d89cbefcfa55ea15ccb5bf70fa6ad7701c62cf2fcdd657",
Austin Schuha5778ae2020-10-21 21:15:35 -0700745 url = "https://www.frc971.org/Build-Dependencies/opencv_armhf_v3.tar.gz",
Brian Silvermand4260c72020-01-14 00:08:02 -0800746)
Brian Silvermand97a47c2020-01-16 00:47:53 -0800747
748http_archive(
749 name = "opencv_k8",
750 build_file = "@//debian:opencv.BUILD",
Austin Schuh5e7bbd72020-11-04 21:43:21 -0800751 sha256 = "5ae1b473c2d47576d6cbea61d46423d8782936c057b578f1236809e43d0a62d1",
752 url = "https://www.frc971.org/Build-Dependencies/opencv_amd64_v2.tar.gz",
Brian Silvermand97a47c2020-01-16 00:47:53 -0800753)
Brian Silverman764945b2020-01-16 23:40:43 -0800754
755# Downloaded from:
756# https://github.com/halide/Halide/releases/download/release_2019_08_27/halide-linux-64-gcc53-800-65c26cba6a3eca2d08a0bccf113ca28746012cc3.tgz
757# which is "Halide 2019/08/27" at https://github.com/halide/Halide/releases.
758http_archive(
759 name = "halide_k8",
760 build_file = "@//debian:halide.BUILD",
Brian Silvermanbe23ed62020-06-18 14:35:25 -0700761 sha256 = "c67185d50a99adba86f6b2cc43c7e2cf11bcdfba9052d05e764a89b456a50446",
Brian Silverman764945b2020-01-16 23:40:43 -0800762 strip_prefix = "halide/",
Austin Schuha5778ae2020-10-21 21:15:35 -0700763 url = "https://www.frc971.org/Build-Dependencies/halide-linux-64-gcc53-800-65c26cba6a3eca2d08a0bccf113ca28746012cc3.tgz",
Brian Silverman764945b2020-01-16 23:40:43 -0800764)
765
766# Downloaded from:
767# https://github.com/halide/Halide/releases/download/release_2019_08_27/halide-arm32-linux-32-trunk-65c26cba6a3eca2d08a0bccf113ca28746012cc3.tgz
768# which is "Halide 2019/08/27" at https://github.com/halide/Halide/releases.
769http_archive(
770 name = "halide_armhf",
771 build_file = "@//debian:halide.BUILD",
Brian Silvermanbe23ed62020-06-18 14:35:25 -0700772 sha256 = "10564c559c9e04a173823413916d05fadd6e697d91bab21ddc5041190fa8f0f0",
Brian Silverman764945b2020-01-16 23:40:43 -0800773 strip_prefix = "halide/",
Austin Schuha5778ae2020-10-21 21:15:35 -0700774 url = "https://www.frc971.org/Build-Dependencies/halide-arm32-linux-32-trunk-65c26cba6a3eca2d08a0bccf113ca28746012cc3.tgz",
Brian Silverman764945b2020-01-16 23:40:43 -0800775)
Brian Silverman4fe44ea2020-02-02 12:56:42 -0800776
777# Downloaded from:
Austin Schuh085eab92020-11-26 13:54:51 -0800778# https://files.pythonhosted.org/packages/0f/13/192104516c4a3d92dc6b5e106ffcfbf0fe35f3c4faa49650205ff652af72/opencv_python-4.5.1.48-cp37-cp37m-manylinux2014_x86_64.whl
Brian Silverman4fe44ea2020-02-02 12:56:42 -0800779http_archive(
780 name = "opencv_contrib_nonfree_amd64",
781 build_file = "@//debian:opencv_python.BUILD",
Austin Schuh085eab92020-11-26 13:54:51 -0800782 sha256 = "6d8434a45e8f75c4da5fd0068ce001f4f8e35771cc851d746d4721eeaf517e25",
Brian Silverman4fe44ea2020-02-02 12:56:42 -0800783 type = "zip",
Austin Schuh085eab92020-11-26 13:54:51 -0800784 url = "https://www.frc971.org/Build-Dependencies/opencv_python-4.5.1.48-cp37-cp37m-manylinux2014_x86_64.whl",
Brian Silverman4fe44ea2020-02-02 12:56:42 -0800785)
Tyler Chatow60671d32020-02-26 19:49:30 -0800786
787http_archive(
788 name = "gstreamer_k8",
789 build_file = "@//debian:gstreamer.BUILD",
790 sha256 = "4d74d4a82f7a73dc9fe9463d5fae409b17845eef7cd64ef9c4c4553816c53589",
Austin Schuha5778ae2020-10-21 21:15:35 -0700791 url = "https://www.frc971.org/Build-Dependencies/gstreamer_amd64.tar.gz",
Tyler Chatow60671d32020-02-26 19:49:30 -0800792)
793
794http_archive(
795 name = "gstreamer_armhf",
796 build_file = "@//debian:gstreamer.BUILD",
797 sha256 = "c5ac4c604952c274a50636e244f0d091bd1de302032446f24f0e9e03ae9c76f7",
Austin Schuha5778ae2020-10-21 21:15:35 -0700798 url = "https://www.frc971.org/Build-Dependencies/gstreamer_armhf.tar.gz",
Tyler Chatow60671d32020-02-26 19:49:30 -0800799)
James Kuszmaulc91e4402020-05-10 18:47:20 -0700800
801# Downloaded from:
802# https://files.pythonhosted.org/packages/64/a7/45e11eebf2f15bf987c3bc11d37dcc838d9dc81250e67e4c5968f6008b6c/Jinja2-2.11.2.tar.gz
803http_archive(
804 name = "python_jinja2",
805 build_file = "@//debian:python_jinja2.BUILD",
806 sha256 = "89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0",
807 strip_prefix = "Jinja2-2.11.2",
Austin Schuha5778ae2020-10-21 21:15:35 -0700808 url = "https://www.frc971.org/Build-Dependencies/Jinja2-2.11.2.tar.gz",
James Kuszmaulc91e4402020-05-10 18:47:20 -0700809)
810
811# Downloaded from:
812# https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz
813http_archive(
814 name = "python_markupsafe",
815 build_file = "@//debian:python_markupsafe.BUILD",
816 sha256 = "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b",
817 strip_prefix = "MarkupSafe-1.1.1",
Austin Schuha5778ae2020-10-21 21:15:35 -0700818 url = "https://www.frc971.org/Build-Dependencies/MarkupSafe-1.1.1.tar.gz",
James Kuszmaulc91e4402020-05-10 18:47:20 -0700819)
Austin Schuh023e7f52020-08-18 21:24:37 -0700820
821http_archive(
822 name = "m4_v1.4.18",
823 build_file = "@//debian:m4.BUILD",
824 sha256 = "ee8dfe664ac8c1d066bab64f71bd076a021875581b3cc47dac4a14a475f50b15",
Austin Schuha5778ae2020-10-21 21:15:35 -0700825 url = "https://www.frc971.org/Build-Dependencies/m4.tar.gz",
Austin Schuh023e7f52020-08-18 21:24:37 -0700826)
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700827
828# //debian:lzma_amd64
829http_archive(
830 name = "lzma_amd64",
831 build_file_content = """
832cc_library(
833 name = "lib",
834 srcs = [
835 "usr/lib/x86_64-linux-gnu/liblzma.a",
836 ],
837 hdrs = glob([
838 "usr/include/lzma/*.h",
839 "usr/include/*.h",
840 ]),
841 strip_include_prefix = "usr/include",
842 visibility = ["//visibility:public"],
843)
844""",
845 sha256 = "e0ccaa7f793e44638e9f89570e00f146073a98a5928e0b547146c8184488bb19",
Austin Schuha5778ae2020-10-21 21:15:35 -0700846 urls = ["https://www.frc971.org/Build-Dependencies/lzma_amd64.tar.gz"],
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700847)
848
849# //debian:lzma_arm64
850http_archive(
851 name = "lzma_arm64",
852 build_file_content = """
853cc_library(
854 name = "lib",
855 srcs = [
856 "usr/lib/aarch64-linux-gnu/liblzma.a",
857 ],
858 hdrs = glob([
859 "usr/include/lzma/*.h",
860 "usr/include/*.h",
861 ]),
862 strip_include_prefix = "usr/include",
863 visibility = ["//visibility:public"],
864)
865""",
866 sha256 = "18db35669ee49a5f8324a344071dd4ab553e716f385fb75747b909bd1de959f5",
Austin Schuha5778ae2020-10-21 21:15:35 -0700867 urls = ["https://www.frc971.org/Build-Dependencies/lzma_arm64.tar.gz"],
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700868)
James Kuszmaul2cffe852021-10-27 20:17:49 -0700869
870local_repository(
871 name = "snappy",
872 path = "third_party/snappy",
873)