# Copyright (c) 2009-2021, Google LLC # All rights reserved. # # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file or at # https://developers.google.com/open-source/licenses/bsd load("@rules_cc//cc:cc_test.bzl", "cc_test") load("@rules_cc//cc:defs.bzl", "cc_library") load("//upb/bazel:copts.bzl", "UPB_DEFAULT_COPTS", "UPB_DEFAULT_FEATURES") package(default_applicable_licenses = ["//:license"]) cc_library( name = "mem", srcs = [ "alloc.c", "arena.c", ], hdrs = [ "alloc.h", "arena.h", "arena.hpp", ], copts = UPB_DEFAULT_COPTS, features = UPB_DEFAULT_FEATURES, visibility = ["//visibility:public"], deps = [ ":internal", "//upb/port", ], ) cc_library( name = "internal", hdrs = [ "internal/arena.h", ], copts = UPB_DEFAULT_COPTS, features = UPB_DEFAULT_FEATURES, visibility = ["//visibility:public"], deps = [ "//upb/port", ], ) cc_test( name = "arena_test", srcs = ["arena_test.cc"], deps = [ ":mem", "//upb/port", "@abseil-cpp//absl/base:core_headers", "@abseil-cpp//absl/cleanup", "@abseil-cpp//absl/container:flat_hash_map", "@abseil-cpp//absl/random", "@abseil-cpp//absl/random:distributions", "@abseil-cpp//absl/synchronization", "@abseil-cpp//absl/time", "@googletest//:gtest", "@googletest//:gtest_main", ], ) filegroup( name = "source_files", srcs = glob( [ "**/*.c", "**/*.h", "**/*.hpp", ], ), visibility = [ "//python/dist:__pkg__", "//upb/cmake:__pkg__", ], ) filegroup( name = "test_srcs", srcs = glob( [ "**/*test.cc", ], ), visibility = ["//upb:__pkg__"], )