blob: 3eacd10cdbea533c9a404013e7e7fce7c344c677 [file] [log] [blame]
Brian Silverman7bda6212018-08-05 11:42:11 -07001workspace(name = "org_frc971")
Brian Silvermand1c19fb2016-07-07 00:10:57 -07002
Tyler Chatow2584bb12018-10-27 20:48:35 -07003load("@bazel_tools//tools/build_defs/repo:git.bzl", "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)
Philipp Schrader0e19c602018-03-07 21:07:22 -080053load("//debian:packages.bzl", "generate_repositories_for_debs")
54
55generate_repositories_for_debs(python_debs)
Brian Silverman7bda6212018-08-05 11:42:11 -070056
Philipp Schraderaedfc5c2018-03-10 19:32:30 -080057generate_repositories_for_debs(clang_debs)
Philipp Schrader0e19c602018-03-07 21:07:22 -080058
Austin Schuh71f6fa72019-08-31 18:23:02 -070059generate_repositories_for_debs(rsync_debs)
60
61generate_repositories_for_debs(ssh_debs)
62
Brian Silverman7bda6212018-08-05 11:42:11 -070063generate_repositories_for_debs(patch_debs)
64
Brian Silverman7297c0c2018-08-05 13:43:00 -070065generate_repositories_for_debs(pandoc_debs)
66
Brian Silverman4f6ba442018-08-05 14:34:58 -070067generate_repositories_for_debs(libusb_debs)
68
Brian Silvermanb80dc9f2018-08-05 14:59:24 -070069generate_repositories_for_debs(mingw_compiler_debs)
70
Brian Silverman6470f442018-08-05 12:08:16 -070071generate_repositories_for_debs(patchelf_debs)
72
73generate_repositories_for_debs(matplotlib_debs)
74
Brian Silverman50b9ac02018-08-12 13:24:10 -070075generate_repositories_for_debs(arm_frc_gnueabi_deps_debs)
76
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -070077generate_repositories_for_debs(python_gtk_debs)
78
Austin Schuhf093fa52019-06-23 20:47:23 -070079http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -070080 name = "python_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -070081 build_file = "@//debian:python.BUILD",
Brian Silverman6470f442018-08-05 12:08:16 -070082 sha256 = "4ff939f90cffd8c72f9992d7420481e361b6016b0ce5c6fa701be0691d4e20fa",
johnp8a384f92019-01-03 13:10:00 -080083 url = "http://www.frc971.org/Build-Dependencies/python-2.tar.gz",
Philipp Schrader9fc87e02018-03-10 20:36:39 -080084)
85
Austin Schuhf093fa52019-06-23 20:47:23 -070086http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -070087 name = "clang_3p6_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -070088 build_file = "@//tools/cpp/clang_3p6:clang_3p6.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -070089 sha256 = "5ee9e04c55c2c99d0c0f83722102a49e98f485fc274f73111b33a7ac4e34e03e",
johnp8a384f92019-01-03 13:10:00 -080090 url = "http://www.frc971.org/Build-Dependencies/clang_3p6.tar.gz",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080091)
92
Austin Schuhd57edc42019-09-21 17:52:38 -070093local_repository(
94 name = "com_google_absl",
95 path = "third_party/abseil",
Austin Schuh36244a12019-09-21 17:52:38 -070096)
97
Alex Perrycb7da4b2019-08-28 19:35:56 -070098local_repository(
99 name = "org_tuxfamily_eigen",
100 path = "third_party/eigen",
101)
102
Austin Schuh36244a12019-09-21 17:52:38 -0700103# C++ rules for Bazel.
104http_archive(
105 name = "rules_cc",
106 sha256 = "67412176974bfce3f4cf8bdaff39784a72ed709fc58def599d1f68710b58d68b",
107 strip_prefix = "rules_cc-b7fe9697c0c76ab2fd431a891dbb9a6a32ed7c3e",
108 urls = [
109 "https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/b7fe9697c0c76ab2fd431a891dbb9a6a32ed7c3e.zip",
110 "https://github.com/bazelbuild/rules_cc/archive/b7fe9697c0c76ab2fd431a891dbb9a6a32ed7c3e.zip",
111 ],
112)
Austin Schuhd57edc42019-09-21 17:52:38 -0700113
Austin Schuh4759ffc2015-10-07 20:39:56 -0700114new_local_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700115 name = "usr_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700116 build_file = "@//debian:usr.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700117 path = "/usr",
Austin Schuh4759ffc2015-10-07 20:39:56 -0700118)
119
Austin Schuh1f9aeb42015-11-12 23:34:49 -0800120new_git_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700121 name = "slycot_repo",
Tyler Chatow2584bb12018-10-27 20:48:35 -0700122 build_file = "@//debian:slycot.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700123 commit = "5af5f283cb23cbe23c4dfea4d5e56071bdbd6e70",
124 remote = "https://github.com/avventi/Slycot.git",
Austin Schuh1f9aeb42015-11-12 23:34:49 -0800125)
126
Austin Schuhf093fa52019-06-23 20:47:23 -0700127http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700128 name = "arm_frc_linux_gnueabi_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700129 build_file = "@//tools/cpp/arm-frc-linux-gnueabi:arm-frc-linux-gnueabi.BUILD",
Austin Schuhf6b94632019-02-02 22:11:27 -0800130 sha256 = "d627c5e437db99780a938392499ef71aecbfb0e9b3fffd53bde7e402a6af4f32",
131 strip_prefix = "frc2019/roborio/",
132 url = "http://www.frc971.org/Build-Dependencies/FRC-2019-Linux-Toolchain-6.3.0-v2019-3.tar.gz",
Austin Schuh55139fe2015-10-14 23:55:24 -0700133)
Austin Schuhe456f152015-11-27 13:44:39 -0800134
Brian Silverman0d57fc82016-01-24 21:02:53 -0500135# Recompressed version of the one downloaded from Linaro at
136# <https://releases.linaro.org/15.05/components/toolchain/binaries/arm-linux-gnueabihf/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.xz>,
137# with workarounds for <https://github.com/bazelbuild/bazel/issues/574> and the
138# top-level folder stripped off.
Austin Schuhf093fa52019-06-23 20:47:23 -0700139http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700140 name = "linaro_linux_gcc_4_9_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700141 build_file = "@//:compilers/linaro_linux_gcc_4.9.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700142 sha256 = "25e97bcb0af4fd7cd626d5bb1b303c7d2cb13acf2474e335e3d431d1a53fbb52",
johnp8a384f92019-01-03 13:10:00 -0800143 url = "http://www.frc971.org/Build-Dependencies/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.gz",
Brian Silverman0d57fc82016-01-24 21:02:53 -0500144)
145
Austin Schuhe456f152015-11-27 13:44:39 -0800146new_git_repository(
Brian Silverman7bda6212018-08-05 11:42:11 -0700147 name = "python_gflags_repo",
Tyler Chatow2584bb12018-10-27 20:48:35 -0700148 build_file = "@//debian:gflags.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700149 commit = "41c4571864f0db5823e07715317e7388e94faabc",
150 remote = "https://github.com/gflags/python-gflags.git",
Austin Schuhe456f152015-11-27 13:44:39 -0800151)
152
153bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700154 name = "python-gflags",
155 actual = "@python_gflags_repo//:gflags",
Austin Schuhe456f152015-11-27 13:44:39 -0800156)
157
Brian Silverman16a923c2018-10-31 19:40:51 -0700158local_repository(
159 name = "com_github_gflags_gflags",
160 path = "third_party/gflags",
161)
162
Austin Schuhf093fa52019-06-23 20:47:23 -0700163http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700164 name = "python_glog_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700165 build_file = "@//debian:glog.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700166 sha256 = "953fd80122c48023d1148e6d1bda2763fcab59c8a81682bb298238a5935547b0",
167 strip_prefix = "glog-0.1",
168 url = "https://pypi.python.org/packages/source/g/glog/glog-0.1.tar.gz",
Austin Schuhe456f152015-11-27 13:44:39 -0800169)
170
171bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700172 name = "python-glog",
173 actual = "@python_glog_repo//:glog",
Austin Schuhe456f152015-11-27 13:44:39 -0800174)
Brian Silvermancee260a2015-12-24 16:27:51 -0800175
Brian Silverman82a12b92019-01-19 21:52:10 -0800176# Generated with:
177# git fetch https://github.com/wpilibsuite/ni-libraries master
178# git archive --output=allwpilib_ni-libraries_4785480.tar.gz --format=tar.gz 4785480
Austin Schuhf093fa52019-06-23 20:47:23 -0700179http_archive(
Brian Silverman82a12b92019-01-19 21:52:10 -0800180 name = "allwpilib_ni_libraries_2019",
Austin Schuhf093fa52019-06-23 20:47:23 -0700181 build_file = "@//debian:ni-libraries-2019.BUILD",
Brian Silverman82a12b92019-01-19 21:52:10 -0800182 sha256 = "2cdcde3391f36877b7533e15d0f36baf696b27c1107b77192a8200e26f13278c",
183 url = "http://www.frc971.org/Build-Dependencies/allwpilib_ni-libraries_4785480.tar.gz",
184)
185
Brian Silverman3fca9d72016-02-20 02:32:51 -0500186# Downloaded from:
187# https://pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz
Austin Schuhf093fa52019-06-23 20:47:23 -0700188http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700189 name = "six_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700190 build_file = "@//debian:six.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700191 sha256 = "105f8d68616f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a",
192 strip_prefix = "six-1.10.0",
johnp8a384f92019-01-03 13:10:00 -0800193 url = "http://www.frc971.org/Build-Dependencies/six-1.10.0.tar.gz",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500194)
195
196# For protobuf. Don't use these.
197bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700198 name = "six",
199 actual = "@six_repo//:six",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500200)
Brian Silverman7bda6212018-08-05 11:42:11 -0700201
Brian Silverman3fca9d72016-02-20 02:32:51 -0500202bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700203 name = "gtest",
204 actual = "//third_party/googletest:googlemock",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500205)
Brian Silverman7bda6212018-08-05 11:42:11 -0700206
Brian Silverman3fca9d72016-02-20 02:32:51 -0500207bind(
Brian Silverman7bda6212018-08-05 11:42:11 -0700208 name = "gtest_main",
209 actual = "//third_party/googletest:googlemock_main",
Brian Silverman3fca9d72016-02-20 02:32:51 -0500210)
211
Brian Silverman4aa83042018-01-05 12:47:31 -0800212# Recompressed from libusb-1.0.21.7z.
213http_file(
Brian Silverman7bda6212018-08-05 11:42:11 -0700214 name = "libusb_1_0_windows",
Austin Schuh4ac96a82019-08-14 20:24:23 -0700215 downloaded_file_path = "libusb-1.0.21-windows.tar.xz",
Brian Silverman7bda6212018-08-05 11:42:11 -0700216 sha256 = "fc2ba03992f343aabbaf9eb90559c6e00cdc6a2bd914d7cebea85857d5244015",
Austin Schuhf093fa52019-06-23 20:47:23 -0700217 urls = ["http://www.frc971.org/Build-Dependencies/libusb-1.0.21-windows.tar.xz"],
Brian Silverman4aa83042018-01-05 12:47:31 -0800218)
Brian Silvermand3ad1652018-02-18 22:16:29 -0500219
220# The data tarball of the same-named Debian package.
Austin Schuhf093fa52019-06-23 20:47:23 -0700221http_archive(
Brian Silvermand3ad1652018-02-18 22:16:29 -0500222 name = "f2c",
Austin Schuhf093fa52019-06-23 20:47:23 -0700223 build_file = "@//debian:f2c.BUILD",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500224 sha256 = "2c677437f8217a2e2b23e41b33995d0571644fc1bea46de858f8913a5053e3f4",
johnp8a384f92019-01-03 13:10:00 -0800225 url = "http://www.frc971.org/Build-Dependencies/f2c_20100827-1_amd64.xz.tar.xz",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500226)
227
228# Downloaded from http://www.netlib.org/clapack/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700229http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700230 name = "clapack",
Austin Schuhf093fa52019-06-23 20:47:23 -0700231 build_file = "@//debian:clapack.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700232 sha256 = "6dc4c382164beec8aaed8fd2acc36ad24232c406eda6db462bd4c41d5e455fac",
233 strip_prefix = "CLAPACK-3.2.1/",
johnp8a384f92019-01-03 13:10:00 -0800234 url = "http://www.frc971.org/Build-Dependencies/clapack-3.2.1.tgz",
Brian Silverman7bda6212018-08-05 11:42:11 -0700235)
236
Austin Schuhf093fa52019-06-23 20:47:23 -0700237http_archive(
Brian Silverman7bda6212018-08-05 11:42:11 -0700238 name = "patch",
Austin Schuhf093fa52019-06-23 20:47:23 -0700239 build_file = "@//debian:patch.BUILD",
Brian Silverman7bda6212018-08-05 11:42:11 -0700240 sha256 = "b5ce139648a2e04f5585948ddad2fdae24dd4ee7976ac5a22d6ae7bd5674631e",
johnp8a384f92019-01-03 13:10:00 -0800241 url = "http://www.frc971.org/Build-Dependencies/patch.tar.gz",
Brian Silvermand3ad1652018-02-18 22:16:29 -0500242)
Brian Silverman7297c0c2018-08-05 13:43:00 -0700243
Austin Schuhf093fa52019-06-23 20:47:23 -0700244http_archive(
Austin Schuh71f6fa72019-08-31 18:23:02 -0700245 name = "rsync",
246 build_file = "@//debian:rsync.BUILD",
247 sha256 = "53be65a9214aaa6d1b9176f135184fb4a78ccefd58f95ce0da37e6a392dfeb60",
248 url = "http://www.frc971.org/Build-Dependencies/rsync.tar.gz",
249)
250
251http_archive(
252 name = "ssh",
253 build_file = "@//debian:ssh.BUILD",
254 sha256 = "43c760bc5c32d5a8c24837d1b4c356424a157f59ff8a08654651856ae90b16d2",
255 url = "http://www.frc971.org/Build-Dependencies/ssh.tar.gz",
256)
257
258http_archive(
Brian Silverman7297c0c2018-08-05 13:43:00 -0700259 name = "pandoc",
Austin Schuhf093fa52019-06-23 20:47:23 -0700260 build_file = "@//debian:pandoc.BUILD",
Brian Silverman7297c0c2018-08-05 13:43:00 -0700261 sha256 = "9f7a7adb3974a1f14715054c349ff3edc2909e920dbe3438fca437a83845f3c4",
johnp8a384f92019-01-03 13:10:00 -0800262 url = "http://www.frc971.org/Build-Dependencies/pandoc.tar.gz",
Brian Silverman7297c0c2018-08-05 13:43:00 -0700263)
Brian Silverman4f6ba442018-08-05 14:34:58 -0700264
Austin Schuhf093fa52019-06-23 20:47:23 -0700265http_archive(
Brian Silverman4f6ba442018-08-05 14:34:58 -0700266 name = "libusb",
Austin Schuhf093fa52019-06-23 20:47:23 -0700267 build_file = "@//debian:libusb.BUILD",
Brian Silverman4f6ba442018-08-05 14:34:58 -0700268 sha256 = "3ca5cc2d317226f6646866ff9e8c443db3b0f6c82f828e800240982727531590",
johnp8a384f92019-01-03 13:10:00 -0800269 url = "http://www.frc971.org/Build-Dependencies/libusb.tar.gz",
Brian Silverman4f6ba442018-08-05 14:34:58 -0700270)
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700271
Austin Schuhf093fa52019-06-23 20:47:23 -0700272http_archive(
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700273 name = "mingw_compiler",
Austin Schuhf093fa52019-06-23 20:47:23 -0700274 build_file = "@//debian:mingw_compiler.BUILD",
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700275 sha256 = "45e86a8460f2151a4f0306e7ae7b06761029d2412ee16f63d1e8d2d29354e378",
johnp8a384f92019-01-03 13:10:00 -0800276 url = "http://www.frc971.org/Build-Dependencies/mingw_compiler.tar.gz",
Brian Silvermanb80dc9f2018-08-05 14:59:24 -0700277)
Brian Silverman6470f442018-08-05 12:08:16 -0700278
Austin Schuhf093fa52019-06-23 20:47:23 -0700279http_archive(
Brian Silverman6470f442018-08-05 12:08:16 -0700280 name = "matplotlib",
Austin Schuhf093fa52019-06-23 20:47:23 -0700281 build_file = "@//debian:matplotlib.BUILD",
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700282 sha256 = "dc8e04123a93180bf89727bf6b5a5a0f6d210b6c1c5eaec148f7f8183abbce24",
johnp8a384f92019-01-03 13:10:00 -0800283 url = "http://www.frc971.org/Build-Dependencies/matplotlib-2.tar.gz",
Brian Silverman6470f442018-08-05 12:08:16 -0700284)
285
Austin Schuhf093fa52019-06-23 20:47:23 -0700286http_archive(
Brian Silverman6470f442018-08-05 12:08:16 -0700287 name = "patchelf",
Austin Schuhf093fa52019-06-23 20:47:23 -0700288 build_file = "@//debian:patchelf.BUILD",
Brian Silverman6470f442018-08-05 12:08:16 -0700289 sha256 = "bf8b709909d7d9e30815dd228eeded7dc282e3ce3919d0589ccbb56ac8632abc",
johnp8a384f92019-01-03 13:10:00 -0800290 url = "http://www.frc971.org/Build-Dependencies/patchelf.tar.gz",
Brian Silverman6470f442018-08-05 12:08:16 -0700291)
Brian Silverman50b9ac02018-08-12 13:24:10 -0700292
Austin Schuhf093fa52019-06-23 20:47:23 -0700293http_archive(
Brian Silverman50b9ac02018-08-12 13:24:10 -0700294 name = "arm_frc_gnueabi_deps",
Austin Schuhf093fa52019-06-23 20:47:23 -0700295 build_file = "@//debian:arm_frc_gnueabi_deps.BUILD",
Brian Silverman50b9ac02018-08-12 13:24:10 -0700296 sha256 = "4b26fe45010817dc136488ee1604ade21bd7c264c29f17d864fc6eba9d7442c4",
johnp8a384f92019-01-03 13:10:00 -0800297 url = "http://www.frc971.org/Build-Dependencies/arm_frc_gnueabi_deps.tar.gz",
Brian Silverman50b9ac02018-08-12 13:24:10 -0700298)
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700299
Austin Schuhf093fa52019-06-23 20:47:23 -0700300http_archive(
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700301 name = "python_gtk",
Austin Schuhf093fa52019-06-23 20:47:23 -0700302 build_file = "@//debian:python_gtk.BUILD",
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700303 sha256 = "850f5c1521b94c5c049c44d9107cd8ae9110696fbf054d2cb48bae9620fd4d23",
johnp8a384f92019-01-03 13:10:00 -0800304 url = "http://www.frc971.org/Build-Dependencies/python_gtk.tar.gz",
Brian Silvermanb0ebf1d2018-10-17 23:36:40 -0700305)
306
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700307# Downloaded from
308# 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 -0700309http_archive(
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700310 name = "gcc_arm_none_eabi",
Austin Schuhf093fa52019-06-23 20:47:23 -0700311 build_file = "@//:compilers/gcc_arm_none_eabi.BUILD",
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700312 sha256 = "bb17109f0ee697254a5d4ae6e5e01440e3ea8f0277f2e8169bf95d07c7d5fe69",
313 strip_prefix = "gcc-arm-none-eabi-7-2018-q2-update/",
johnp8a384f92019-01-03 13:10:00 -0800314 url = "http://www.frc971.org/Build-Dependencies/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2",
Brian Silverman6c8b88b2018-09-03 18:17:02 -0700315)
Austin Schuhad596222018-01-31 23:34:03 -0800316
Austin Schuhf093fa52019-06-23 20:47:23 -0700317http_archive(
Austin Schuhad596222018-01-31 23:34:03 -0800318 name = "cgal_repo",
Austin Schuhf093fa52019-06-23 20:47:23 -0700319 build_file = "@//debian:cgal.BUILD",
Austin Schuhad596222018-01-31 23:34:03 -0800320 sha256 = "d564dda558570344b4caa66c5bae2cdae9ef68e07829d64f5651b25f2c6a0e9e",
johnp8a384f92019-01-03 13:10:00 -0800321 url = "http://www.frc971.org/Build-Dependencies/cgal-dev-4.5-2.tar.gz",
Austin Schuhad596222018-01-31 23:34:03 -0800322)
Austin Schuhe18baff2018-10-20 17:40:42 -0700323
324# Java9 JDK.
Austin Schuhf093fa52019-06-23 20:47:23 -0700325http_archive(
Austin Schuhe18baff2018-10-20 17:40:42 -0700326 name = "openjdk_linux_archive",
327 build_file_content = """
328java_runtime(
329 name = 'jdk',
330 srcs = glob(['**']),
Austin Schuhf6b94632019-02-02 22:11:27 -0800331 visibility = ['//visibility:public'],
Austin Schuhe18baff2018-10-20 17:40:42 -0700332)
333""",
334 sha256 = "f27cb933de4f9e7fe9a703486cf44c84bc8e9f138be0c270c9e5716a32367e87",
335 strip_prefix = "zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules",
336 urls = [
johnp8a384f92019-01-03 13:10:00 -0800337 "http://www.frc971.org/Build-Dependencies/zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules.tar.gz",
Austin Schuhe18baff2018-10-20 17:40:42 -0700338 ],
339)
340
Austin Schuhf9724442018-10-28 20:30:21 -0700341local_repository(
342 name = "com_google_protobuf",
343 path = "third_party/protobuf",
Brian Silverman9c614bc2016-02-15 20:20:02 -0500344)
Austin Schuh10358f22019-01-21 20:25:11 -0800345
346local_repository(
347 name = "com_github_google_glog",
348 path = "third_party/google-glog",
349)
Austin Schuh6defdeb2019-01-21 21:00:30 -0800350
Alex Perrycb7da4b2019-08-28 19:35:56 -0700351local_repository(
352 name = "com_google_googletest",
353 path = "third_party/googletest",
354)
355
Austin Schuh6defdeb2019-01-21 21:00:30 -0800356# External dependency: Google Benchmark; has no Bazel build.
357local_repository(
358 name = "com_github_google_benchmark",
359 path = "third_party/google-benchmark",
Austin Schuhcbc17402019-01-21 21:00:30 -0800360)
Austin Schuh033df092019-01-21 19:46:48 -0800361
362local_repository(
363 name = "com_google_ceres_solver",
364 path = "third_party/ceres",
Austin Schuh70cc9552019-01-21 19:46:48 -0800365)
Austin Schuhf6b94632019-02-02 22:11:27 -0800366
Brian Silverman9e563872019-03-02 13:29:58 -0800367# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/api-cpp/5.14.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700368http_archive(
Austin Schuhf6b94632019-02-02 22:11:27 -0800369 name = "ctre_phoenix_api_cpp_headers_2019",
370 build_file_content = """
371cc_library(
372 name = 'api-cpp',
373 visibility = ['//visibility:public'],
374 hdrs = glob(['ctre/phoenix/**/*.h']),
375)
376""",
Brian Silverman9e563872019-03-02 13:29:58 -0800377 sha256 = "f11f83ea6854229a1c4381d5e6a3917be6a062eb266ad14e4c4c9067ec3cd446",
Austin Schuhf6b94632019-02-02 22:11:27 -0800378 urls = [
Brian Silverman9e563872019-03-02 13:29:58 -0800379 "http://www.frc971.org/Build-Dependencies/api-cpp-5.14.1-headers.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800380 ],
381)
382
Brian Silverman9e563872019-03-02 13:29:58 -0800383# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/api-cpp/5.14.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700384http_archive(
Austin Schuhf6b94632019-02-02 22:11:27 -0800385 name = "ctre_phoenix_api_cpp_athena_2019",
386 build_file_content = """
387cc_library(
388 name = 'api-cpp',
389 visibility = ['//visibility:public'],
390 srcs = ['linux/athena/static/libCTRE_Phoenix.a'],
391 restricted_to = ['@//tools:roborio'],
392 deps = [
393 '@ctre_phoenix_core_headers_2019//:core',
394 ],
395)
396""",
Brian Silverman9e563872019-03-02 13:29:58 -0800397 sha256 = "0a976b86e887a75f0565fd7069db25e06ff0b76d2eebc294f23d81636b165381",
Austin Schuhf6b94632019-02-02 22:11:27 -0800398 urls = [
Brian Silverman9e563872019-03-02 13:29:58 -0800399 "http://www.frc971.org/Build-Dependencies/api-cpp-5.14.1-linuxathenastatic.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800400 ],
401)
402
Brian Silverman9e563872019-03-02 13:29:58 -0800403# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/cci/5.14.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700404http_archive(
Austin Schuhf6b94632019-02-02 22:11:27 -0800405 name = "ctre_phoenix_cci_headers_2019",
406 build_file_content = """
407cc_library(
408 name = 'cci',
409 visibility = ['//visibility:public'],
410 hdrs = glob(['ctre/phoenix/**/*.h']),
411)
412""",
Brian Silverman9e563872019-03-02 13:29:58 -0800413 sha256 = "0ce3d1cc916d9ebfcd19a5622736193cbac4f799205df155480943895ac78e45",
Austin Schuhf6b94632019-02-02 22:11:27 -0800414 urls = [
Brian Silverman9e563872019-03-02 13:29:58 -0800415 "http://www.frc971.org/Build-Dependencies/cci-5.14.1-headers.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800416 ],
417)
418
Brian Silverman9e563872019-03-02 13:29:58 -0800419# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/cci/5.14.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700420http_archive(
Austin Schuhf6b94632019-02-02 22:11:27 -0800421 name = "ctre_phoenix_cci_athena_2019",
422 build_file_content = """
423cc_library(
424 name = 'cci',
425 visibility = ['//visibility:public'],
426 srcs = ['linux/athena/static/libCTRE_PhoenixCCI.a'],
427 restricted_to = ['@//tools:roborio'],
428)
429""",
Brian Silverman9e563872019-03-02 13:29:58 -0800430 sha256 = "00b7e4abb1190924e9b31761951494264beebf4eefb64901000034dafaf2e8bc",
Austin Schuhf6b94632019-02-02 22:11:27 -0800431 urls = [
Brian Silverman9e563872019-03-02 13:29:58 -0800432 "http://www.frc971.org/Build-Dependencies/cci-5.14.1-linuxathenastatic.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800433 ],
434)
435
Brian Silverman9e563872019-03-02 13:29:58 -0800436# Downloaded from http://devsite.ctr-electronics.com/maven/release/com/ctre/phoenix/core/5.14.1/.
Austin Schuhf093fa52019-06-23 20:47:23 -0700437http_archive(
Austin Schuhf6b94632019-02-02 22:11:27 -0800438 name = "ctre_phoenix_core_headers_2019",
439 build_file_content = """
440cc_library(
441 name = 'core',
442 visibility = ['//visibility:public'],
443 hdrs = glob(['ctre/phoenix/**/*.h']),
444)
445""",
Brian Silverman9e563872019-03-02 13:29:58 -0800446 sha256 = "b74bf1bd5428cd6d7f7c3cf293b5bf8c009126eb2271d68ed070756427de5f7a",
Austin Schuhf6b94632019-02-02 22:11:27 -0800447 urls = [
Brian Silverman9e563872019-03-02 13:29:58 -0800448 "http://www.frc971.org/Build-Dependencies/core-5.14.1-headers.zip",
Austin Schuhf6b94632019-02-02 22:11:27 -0800449 ],
450)
Austin Schuheed14442019-03-23 14:42:46 -0700451
452http_archive(
453 name = "build_bazel_rules_typescript",
454 strip_prefix = "rules_typescript-0.21.0",
455 url = "https://github.com/bazelbuild/rules_typescript/archive/0.21.0.zip",
456)
457
James Kuszmaul27da8142019-07-21 16:13:55 -0700458emscripten_version = "1.38.31"
Alex Perrycb7da4b2019-08-28 19:35:56 -0700459
James Kuszmaul27da8142019-07-21 16:13:55 -0700460http_archive(
461 name = "emscripten_toolchain",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700462 build_file_content = """
463filegroup(
464 name = 'all',
465 visibility = ['//visibility:public'],
466 srcs = glob(['**']),
467)
468""",
James Kuszmaul27da8142019-07-21 16:13:55 -0700469 # TODO(james): Once a functioning release contains this patch, convert
470 # to that. See https://github.com/emscripten-core/emscripten/pull/9048
471 patches = ["@//debian:emscripten_toolchain.patch"],
472 sha256 = "c87e42cb6a104094e7daf2b7e61ac835f83674ac0168f533455838a1129cc764",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700473 strip_prefix = "emscripten-" + emscripten_version,
474 urls = ["https://github.com/emscripten-core/emscripten/archive/" + emscripten_version + ".tar.gz"],
James Kuszmaul27da8142019-07-21 16:13:55 -0700475)
476
477new_http_archive(
478 name = "emscripten_clang",
James Kuszmaul27da8142019-07-21 16:13:55 -0700479 build_file_content = """
480filegroup(
481 name = 'all',
482 visibility = ['//visibility:public'],
483 srcs = glob(['**']),
484)
485""",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700486 sha256 = "a0c2f2c5a897577f40af0fdf68dcf3cf65557ff20c081df26678c066a4fed4b1",
487 strip_prefix = "emscripten-llvm-e" + emscripten_version,
488 url = "https://s3.amazonaws.com/mozilla-games/emscripten/packages/llvm/tag/linux_64bit/emscripten-llvm-e" + emscripten_version + ".tar.gz",
James Kuszmaul27da8142019-07-21 16:13:55 -0700489)
490
Austin Schuheed14442019-03-23 14:42:46 -0700491# Fetch our Bazel dependencies that aren't distributed on npm
492load("@build_bazel_rules_typescript//:package.bzl", "rules_typescript_dependencies")
493
494rules_typescript_dependencies()
495
496# Setup TypeScript toolchain
497load("@build_bazel_rules_typescript//:defs.bzl", "ts_setup_workspace")
498
499ts_setup_workspace()
500
501# Setup the NodeJS toolchain
502load("@build_bazel_rules_nodejs//:defs.bzl", "node_repositories", "yarn_install")
503
504node_repositories()
505
506# Setup Bazel managed npm dependencies with the `yarn_install` rule.
507yarn_install(
508 name = "npm",
509 package_json = "//:package.json",
510 yarn_lock = "//:yarn.lock",
511)
Austin Schuh4ac96a82019-08-14 20:24:23 -0700512
513# Flatbuffers
514local_repository(
515 name = "com_github_google_flatbuffers",
516 path = "third_party/flatbuffers",
517)