Files
allwpilib/processstarter/BUILD.bazel
2025-08-01 22:12:16 -07:00

55 lines
1.3 KiB
Python

load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
load("//shared/bazel/rules:objectivec_rules.bzl", "wpilib_objc_library")
load("//shared/bazel/rules:packaging.bzl", "package_binary_cc_project")
WIN_SRCS = glob([
"src/main/native/windows/**/*.cpp",
"src/main/native/windows/**/*.h",
])
LINUX_SRCS = glob([
"src/main/native/linux/**/*.cpp",
"src/main/native/linux/**/*.h",
])
MAC_SRCS = glob([
"src/main/native/osx/**/*.mm",
"src/main/native/osx/**/*.h",
])
filegroup(
name = "native-srcs",
srcs = select({
"@platforms//os:osx": MAC_SRCS,
"@platforms//os:windows": WIN_SRCS,
"@rules_bzlmodrio_toolchains//constraints/combined:is_linux": LINUX_SRCS,
}),
)
wpilib_objc_library(
name = "processstarter-osx",
srcs = [":native-srcs"],
)
cc_binary(
name = "processstarter",
srcs = select({
"@platforms//os:osx": [],
"//conditions:default": [":native-srcs"],
}),
linkopts = select({
"@platforms//os:windows": ["-SUBSYSTEM:WINDOWS"],
"//conditions:default": [],
}),
deps = select({
"@platforms//os:osx": ["processstarter-osx"],
"//conditions:default": [],
}),
)
package_binary_cc_project(
name = "processstarter",
maven_artifact_name = "processstarter",
maven_group_id = "edu.wpi.first.tools",
)