mediapipe/mediapipe/swift/solutions/lindera/BUILD
2022-11-05 22:28:00 +05:00

69 lines
2.3 KiB
Python

load("@build_bazel_rules_swift//swift:swift.bzl", "swift_library")
load("@build_bazel_rules_apple//apple:ios.bzl", "ios_application", "ios_framework", "ios_static_framework", "ios_unit_test")
POSETRACKING_DEPS = [
"//mediapipe/objc/solutions/posetracking_gpu:posetracking_gpu_solution",
"//mediapipe/objc:mediapipe_framework_ios",
"//mediapipe/objc:mediapipe_input_sources_ios",
"//mediapipe/objc:mediapipe_layer_renderer",
] + select({
"//mediapipe:ios_i386": [],
"//mediapipe:ios_x86_64": [],
"//conditions:default": [
"//mediapipe/graphs/pose_tracking:pose_tracking_gpu_deps",
"//mediapipe/framework/formats:landmark_cc_proto",
],
})
genrule(
name = "podgen",
srcs = [
"//mediapipe/objc/solutions/posetracking_gpu:MPPoseTrackingHeaderPatched",
"LinderaDetection.podspec",
"@ios_opencv//:OpencvFrameworkContents",
] + glob(["*.swift"]),
outs = ["LinderaDetection.zip"],
cmd = """
mkdir mediapipe/swift/solutions/lindera/frameworks
cp -r external/ios_opencv/opencv2.framework mediapipe/swift/solutions/lindera/frameworks
unzip $(location //mediapipe/objc/solutions/posetracking_gpu:MPPoseTrackingHeaderPatched) -d mediapipe/swift/solutions/lindera/frameworks
cd mediapipe/swift/solutions/lindera/
zip -r LinderaDetection.zip frameworks LinderaDetection.podspec *.swift
cd ../../../../
cp mediapipe/swift/solutions/lindera/LinderaDetection.zip $@
""",
)
# bazel build //mediapipe/swift/solutions/lindera:lindera-framework -c opt --config=ios_fat --cxxopt=--std=c++17 --copt=-fembed-bitcode --linkopt="-s"
ios_static_framework(
name = "lindera-framework",
# avoid_deps = POSETRACKING_DEPS,
bundle_name = "LinderaDetection",
minimum_os_version = "12.0",
visibility = ["//visibility:public"],
deps = [
":lindera",
# "//third_party:opencv",
# "@ios_opencv//:OpencvFramework",
] + POSETRACKING_DEPS,
)
swift_library(
name = "lindera",
srcs = [
"Asensei3D.swift",
"Lindera.swift",
"utils.swift",
],
linkopts = [
"-lc++",
"-std=c++17",
"-lstdc++",
],
module_name = "LinderaDetection",
visibility = ["//visibility:public"],
deps = POSETRACKING_DEPS,
)