From b4fd7972ac9aa63c49c9151c08ee7e852b27a93a Mon Sep 17 00:00:00 2001 From: storypku Date: Wed, 22 Jul 2020 03:54:42 -0700 Subject: [PATCH] Build: explicit uuid dependency --- cyber/BUILD | 2 +- third_party/BUILD | 6 ------ third_party/uuid/BUILD | 3 +++ third_party/uuid/uuid.BUILD | 16 ++++++++++++++++ third_party/uuid/workspace.bzl | 15 +++++++++++++++ tools/workspace.bzl | 2 ++ 6 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 third_party/uuid/BUILD create mode 100644 third_party/uuid/uuid.BUILD create mode 100644 third_party/uuid/workspace.bzl diff --git a/cyber/BUILD b/cyber/BUILD index 509acfbef7..f6122bbc1b 100644 --- a/cyber/BUILD +++ b/cyber/BUILD @@ -100,10 +100,10 @@ cc_library( "//cyber/transport", "//cyber/transport:participant", "//cyber/transport:sub_listener", - "//third_party:uuid", "@com_google_glog//:glog", "@com_google_protobuf//:protobuf", "@fastrtps", + "@uuid", ], ) diff --git a/third_party/BUILD b/third_party/BUILD index 2381c48289..0ed5f15107 100644 --- a/third_party/BUILD +++ b/third_party/BUILD @@ -23,12 +23,6 @@ cc_library( linkopts = ["-lncurses"], ) -# uuid-dev -cc_library( - name = "uuid", - linkopts = ["-luuid"], -) - # atlas-cblas cc_library( name = "cblas", diff --git a/third_party/uuid/BUILD b/third_party/uuid/BUILD new file mode 100644 index 0000000000..67cb1e21da --- /dev/null +++ b/third_party/uuid/BUILD @@ -0,0 +1,3 @@ +package( + default_visibility = ["//visibility:public"], +) diff --git a/third_party/uuid/uuid.BUILD b/third_party/uuid/uuid.BUILD new file mode 100644 index 0000000000..15c3e78d2c --- /dev/null +++ b/third_party/uuid/uuid.BUILD @@ -0,0 +1,16 @@ +load("@rules_cc//cc:defs.bzl", "cc_library") + +package(default_visibility = ["//visibility:public"]) + +licenses(["notice"]) + +cc_library( + name = "uuid", + includes = [ + ".", + ], + linkopts = [ + "-luuid", + ], + linkstatic = False, +) diff --git a/third_party/uuid/workspace.bzl b/third_party/uuid/workspace.bzl new file mode 100644 index 0000000000..b8986505ef --- /dev/null +++ b/third_party/uuid/workspace.bzl @@ -0,0 +1,15 @@ +"""Loads the uuid library""" + +# Sanitize a dependency so that it works correctly from code that includes +# Apollo as a submodule. +def clean_dep(dep): + return str(Label(dep)) + +# Installed via uuid-dev +def repo(): + # uuid + native.new_local_repository( + name = "uuid", + build_file = clean_dep("//third_party/uuid:uuid.BUILD"), + path = "/usr/include", + ) diff --git a/tools/workspace.bzl b/tools/workspace.bzl index bf8fb21284..80641259af 100644 --- a/tools/workspace.bzl +++ b/tools/workspace.bzl @@ -30,6 +30,7 @@ load("//third_party/qt5:workspace.bzl", qt5 = "repo") load("//third_party/sqlite3:workspace.bzl", sqlite3 = "repo") load("//third_party/tf2:workspace.bzl", tf2 = "repo") load("//third_party/tinyxml2:workspace.bzl", tinyxml2 = "repo") +load("//third_party/uuid:workspace.bzl", uuid = "repo") load("//third_party/yaml_cpp:workspace.bzl", yaml_cpp = "repo") # load("//third_party/glew:workspace.bzl", glew = "repo") @@ -73,6 +74,7 @@ def initialize_third_party(): sqlite3() tf2() tinyxml2() + uuid() yaml_cpp() # Define all external repositories required by -- GitLab