blob: 7195123318d52dfe2ea70521da71aaff2364edac [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 = [
Maxwell Hendersonfcc0d122023-08-05 17:03:34 -070034 "@ctre_phoenix6_tools_athena//:tools",
35 "@ctre_phoenix6_tools_headers//:tools",
James Kuszmaul02eb05e2019-12-22 12:32:18 -080036 "@ctre_phoenix_api_cpp_athena//:api-cpp",
37 "@ctre_phoenix_api_cpp_headers//:api-cpp",
38 "@ctre_phoenix_cci_athena//:cci",
39 "@ctre_phoenix_cci_headers//:cci",
James Kuszmaul9776b392023-01-14 14:08:08 -080040 ],
41)
42
43cc_library(
Maxwell Hendersonfcc0d122023-08-05 17:03:34 -070044 name = "phoenix6",
James Kuszmaul9776b392023-01-14 14:08:08 -080045 linkopts = [
46 "-Wl,-rpath",
47 "-Wl,.",
48 ],
49 target_compatible_with = ["//tools/platforms/hardware:roborio"],
50 visibility = ["//visibility:public"],
51 deps = [
Maxwell Hendersonfcc0d122023-08-05 17:03:34 -070052 "@ctre_phoenix6_api_cpp_athena//:api-cpp",
53 "@ctre_phoenix6_api_cpp_headers//:api-cpp",
54 "@ctre_phoenix6_tools_athena//:tools",
55 "@ctre_phoenix6_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"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -080064 "//tools:cpu_arm64": ["@opencv_arm64//:opencv"],
Philipp Schraderdada1072020-11-24 11:34:46 -080065 "//conditions:default": [":unavailable"],
Brian Silvermand97a47c2020-01-16 00:47:53 -080066 }),
67)
Brian Silverman764945b2020-01-16 23:40:43 -080068
69cc_library(
Tyler Chatow60671d32020-02-26 19:49:30 -080070 name = "gstreamer",
Tyler Chatow60671d32020-02-26 19:49:30 -080071 visibility = ["//visibility:public"],
72 deps = select({
73 "//tools:cpu_k8": ["@gstreamer_k8//:gstreamer"],
Tyler Chatow6eda82c2022-03-27 22:37:38 -070074 "//tools:cpu_arm64": ["@gstreamer_arm64//:gstreamer"],
Philipp Schraderdada1072020-11-24 11:34:46 -080075 "//conditions:default": [":unavailable"],
Tyler Chatow60671d32020-02-26 19:49:30 -080076 }),
77)
78
79cc_library(
Brian Silverman764945b2020-01-16 23:40:43 -080080 name = "halide",
Brian Silverman764945b2020-01-16 23:40:43 -080081 visibility = ["//visibility:public"],
82 deps = select({
83 "//tools:cpu_k8": ["@halide_k8//:halide"],
Philipp Schraderdada1072020-11-24 11:34:46 -080084 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080085 }),
86)
87
88cc_library(
89 name = "halide_gengen",
Brian Silverman764945b2020-01-16 23:40:43 -080090 visibility = ["//visibility:public"],
91 # It's the same file in either version, but we'll pick the native version
92 # to minimize the chances of needing to download the other version unnecessarily.
93 deps = select({
94 "//tools:cpu_k8": ["@halide_k8//:gengen"],
Philipp Schraderdada1072020-11-24 11:34:46 -080095 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080096 }),
97)
98
99cc_library(
100 name = "halide_runtime",
Brian Silverman764945b2020-01-16 23:40:43 -0800101 visibility = ["//visibility:public"],
102 # It's the same file in either version, but we'll pick the native version
103 # to minimize the chances of needing to download the other version unnecessarily.
104 deps = select({
105 "//tools:cpu_k8": ["@halide_k8//:runtime"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -0800106 "//tools:cpu_arm64": ["@halide_arm64//:runtime"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800107 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -0800108 }),
109)
Alex Perry0ea81612020-01-20 13:26:13 -0800110
111cc_library(
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700112 name = "lzma",
113 visibility = ["//visibility:public"],
114 deps = select({
115 "//tools:cpu_k8": ["@lzma_amd64//:lib"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -0800116 "//tools:cpu_arm64": ["@lzma_arm64//:lib"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800117 "//conditions:default": [":unavailable"],
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700118 }),
119)