blob: 8dbb5292be5a107d59f15abbab9d45042f0ec0ca [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",
Austin Schuhf6b94632019-02-02 22:11:27 -080038 ],
Austin Schuh2a70f4b2016-11-25 23:05:57 -080039)
Brian Silvermand97a47c2020-01-16 00:47:53 -080040
41cc_library(
42 name = "opencv",
Brian Silvermand97a47c2020-01-16 00:47:53 -080043 visibility = ["//visibility:public"],
44 deps = select({
45 "//tools:cpu_k8": ["@opencv_k8//:opencv"],
46 "//tools:cpu_armhf": ["@opencv_armhf//:opencv"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -080047 "//tools:cpu_arm64": ["@opencv_arm64//:opencv"],
Philipp Schraderdada1072020-11-24 11:34:46 -080048 "//conditions:default": [":unavailable"],
Brian Silvermand97a47c2020-01-16 00:47:53 -080049 }),
50)
Brian Silverman764945b2020-01-16 23:40:43 -080051
52cc_library(
Tyler Chatow60671d32020-02-26 19:49:30 -080053 name = "gstreamer",
Tyler Chatow60671d32020-02-26 19:49:30 -080054 visibility = ["//visibility:public"],
55 deps = select({
56 "//tools:cpu_k8": ["@gstreamer_k8//:gstreamer"],
57 "//tools:cpu_armhf": ["@gstreamer_armhf//:gstreamer"],
Philipp Schraderdada1072020-11-24 11:34:46 -080058 "//conditions:default": [":unavailable"],
Tyler Chatow60671d32020-02-26 19:49:30 -080059 }),
60)
61
62cc_library(
Brian Silverman764945b2020-01-16 23:40:43 -080063 name = "halide",
Brian Silverman764945b2020-01-16 23:40:43 -080064 visibility = ["//visibility:public"],
65 deps = select({
66 "//tools:cpu_k8": ["@halide_k8//:halide"],
67 "//tools:cpu_armhf": ["@halide_armhf//:halide"],
Philipp Schraderdada1072020-11-24 11:34:46 -080068 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080069 }),
70)
71
72cc_library(
73 name = "halide_gengen",
Brian Silverman764945b2020-01-16 23:40:43 -080074 visibility = ["//visibility:public"],
75 # It's the same file in either version, but we'll pick the native version
76 # to minimize the chances of needing to download the other version unnecessarily.
77 deps = select({
78 "//tools:cpu_k8": ["@halide_k8//:gengen"],
79 "//tools:cpu_armhf": ["@halide_armhf//:gengen"],
Philipp Schraderdada1072020-11-24 11:34:46 -080080 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080081 }),
82)
83
84cc_library(
85 name = "halide_runtime",
Brian Silverman764945b2020-01-16 23:40:43 -080086 visibility = ["//visibility:public"],
87 # It's the same file in either version, but we'll pick the native version
88 # to minimize the chances of needing to download the other version unnecessarily.
89 deps = select({
90 "//tools:cpu_k8": ["@halide_k8//:runtime"],
91 "//tools:cpu_armhf": ["@halide_armhf//:runtime"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -080092 "//tools:cpu_arm64": ["@halide_arm64//:runtime"],
Philipp Schraderdada1072020-11-24 11:34:46 -080093 "//conditions:default": [":unavailable"],
Brian Silverman764945b2020-01-16 23:40:43 -080094 }),
95)
Alex Perry0ea81612020-01-20 13:26:13 -080096
97cc_library(
Brian Silvermanf59fe3f2020-09-22 21:04:09 -070098 name = "lzma",
99 visibility = ["//visibility:public"],
100 deps = select({
101 "//tools:cpu_k8": ["@lzma_amd64//:lib"],
Philipp Schraderf1bbf342022-02-05 14:30:15 -0800102 "//tools:cpu_arm64": ["@lzma_arm64//:lib"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800103 "//conditions:default": [":unavailable"],
Brian Silvermanf59fe3f2020-09-22 21:04:09 -0700104 }),
105)