blob: 145a7b3cca29d5f2ddecbb006b49cafbe2117e05 [file] [log] [blame]
Philipp Schraderdada1072020-11-24 11:34:46 -08001load("//tools:platforms.bzl", "platforms")
Brian Silvermane8aa5be2020-11-06 15:51:37 -08002load("//tools/build_rules:select.bzl", "cpu_select")
Alex Perry0ea81612020-01-20 13:26:13 -08003
Philipp Schraderdada1072020-11-24 11:34:46 -08004# Incompatible library in case one isn't available for a specific architecture.
5cc_library(
6 name = "unavailable",
7 target_compatible_with = ["@platforms//:incompatible"],
8)
9
Austin Schuh2a70f4b2016-11-25 23:05:57 -080010cc_library(
Parker Schuhd3b7a8872018-02-19 16:42:27 -080011 name = "wpilib",
12 linkstatic = True,
Philipp Schraderdada1072020-11-24 11:34:46 -080013 target_compatible_with = ["//tools/platforms/hardware:roborio"],
Parker Schuhd3b7a8872018-02-19 16:42:27 -080014 visibility = ["//visibility:public"],
15 deps = ["//frc971/wpilib/ahal"],
16)
17
18cc_library(
19 name = "wpilib_hal",
Philipp Schraderdada1072020-11-24 11:34:46 -080020 target_compatible_with = ["//tools/platforms/hardware:roborio"],
Parker Schuhd3b7a8872018-02-19 16:42:27 -080021 visibility = ["//visibility:public"],
Brian Silverman7011c452020-01-05 13:18:21 -080022 deps = ["//third_party/allwpilib:hal"],
Austin Schuhf6b94632019-02-02 22:11:27 -080023)
24
25cc_library(
26 name = "phoenix",
Austin Schuhf23a05a2022-02-24 18:11:23 -080027 linkopts = [
28 "-Wl,-rpath",
29 "-Wl,.",
30 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080031 target_compatible_with = ["//tools/platforms/hardware:roborio"],
Austin Schuhf6b94632019-02-02 22:11:27 -080032 visibility = ["//visibility:public"],
33 deps = [
James Kuszmaul02eb05e2019-12-22 12:32:18 -080034 "@ctre_phoenix_api_cpp_athena//:api-cpp",
35 "@ctre_phoenix_api_cpp_headers//:api-cpp",
36 "@ctre_phoenix_cci_athena//:cci",
37 "@ctre_phoenix_cci_headers//:cci",
James Kuszmaul9776b392023-01-14 14:08:08 -080038 "@ctre_phoenixpro_tools_athena//:tools",
39 "@ctre_phoenixpro_tools_headers//:tools",
40 ],
41)
42
43cc_library(
44 name = "phoenixpro",
45 linkopts = [
46 "-Wl,-rpath",
47 "-Wl,.",
48 ],
49 target_compatible_with = ["//tools/platforms/hardware:roborio"],
50 visibility = ["//visibility:public"],
51 deps = [
52 "@ctre_phoenixpro_api_cpp_athena//:api-cpp",
53 "@ctre_phoenixpro_api_cpp_headers//:api-cpp",
54 "@ctre_phoenixpro_tools_athena//:tools",
55 "@ctre_phoenixpro_tools_headers//:tools",
Austin Schuhf6b94632019-02-02 22:11:27 -080056 ],
Austin Schuh2a70f4b2016-11-25 23:05:57 -080057)
Brian Silvermand97a47c2020-01-16 00:47:53 -080058
59cc_library(
60 name = "opencv",
Brian Silvermand97a47c2020-01-16 00:47:53 -080061 visibility = ["//visibility:public"],
62 deps = select({
63 "//tools:cpu_k8": ["@opencv_k8//:opencv"],
64 "//tools:cpu_armhf": ["@opencv_armhf//:opencv"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -080065 "//tools:cpu_arm64": ["@opencv_arm64//:opencv"],
Philipp Schraderdada1072020-11-24 11:34:46 -080066 "//conditions:default": [":unavailable"],
Brian Silvermand97a47c2020-01-16 00:47:53 -080067 }),
68)
Brian Silverman764945b2020-01-16 23:40:43 -080069
70cc_library(
Tyler Chatow60671d32020-02-26 19:49:30 -080071 name = "gstreamer",
Tyler Chatow60671d32020-02-26 19:49:30 -080072 visibility = ["//visibility:public"],
73 deps = select({
74 "//tools:cpu_k8": ["@gstreamer_k8//:gstreamer"],
75 "//tools:cpu_armhf": ["@gstreamer_armhf//:gstreamer"],
Tyler Chatow6eda82c2022-03-27 22:37:38 -070076 "//tools:cpu_arm64": ["@gstreamer_arm64//:gstreamer"],
Philipp Schraderdada1072020-11-24 11:34:46 -080077 "//conditions:default": [":unavailable"],
Tyler Chatow60671d32020-02-26 19:49:30 -080078 }),
79)
80
81cc_library(
Brian Silverman764945b2020-01-16 23:40:43 -080082 name = "halide",
Brian Silverman764945b2020-01-16 23:40:43 -080083 visibility = ["//visibility:public"],
84 deps = select({
85 "//tools:cpu_k8": ["@halide_k8//:halide"],
86 "//tools:cpu_armhf": ["@halide_armhf//:halide"],
Philipp Schraderdada1072020-11-24 11:34:46 -080087 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080088 }),
89)
90
91cc_library(
92 name = "halide_gengen",
Brian Silverman764945b2020-01-16 23:40:43 -080093 visibility = ["//visibility:public"],
94 # It's the same file in either version, but we'll pick the native version
95 # to minimize the chances of needing to download the other version unnecessarily.
96 deps = select({
97 "//tools:cpu_k8": ["@halide_k8//:gengen"],
98 "//tools:cpu_armhf": ["@halide_armhf//:gengen"],
Philipp Schraderdada1072020-11-24 11:34:46 -080099 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -0800100 }),
101)
102
103cc_library(
104 name = "halide_runtime",
Brian Silverman764945b2020-01-16 23:40:43 -0800105 visibility = ["//visibility:public"],
106 # It's the same file in either version, but we'll pick the native version
107 # to minimize the chances of needing to download the other version unnecessarily.
108 deps = select({
109 "//tools:cpu_k8": ["@halide_k8//:runtime"],
110 "//tools:cpu_armhf": ["@halide_armhf//:runtime"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -0800111 "//tools:cpu_arm64": ["@halide_arm64//:runtime"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800112 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -0800113 }),
114)
Alex Perry0ea81612020-01-20 13:26:13 -0800115
116cc_library(
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700117 name = "lzma",
118 visibility = ["//visibility:public"],
119 deps = select({
120 "//tools:cpu_k8": ["@lzma_amd64//:lib"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -0800121 "//tools:cpu_arm64": ["@lzma_arm64//:lib"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800122 "//conditions:default": [":unavailable"],
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700123 }),
124)