load("//:bazel/brpc.bzl", "brpc_proto_library") config_setting( name = "darwin", values = {"cpu": "darwin"}, visibility = ["//visibility:public"], ) COPTS = [ "-D__STDC_FORMAT_MACROS", "-DBTHREAD_USE_FAST_PTHREAD_MUTEX", "-D__const__=", "-D_GNU_SOURCE", "-DUSE_SYMBOLIZE", "-DNO_TCMALLOC", "-D__STDC_LIMIT_MACROS", "-D__STDC_CONSTANT_MACROS", "-fPIC", "-Wno-unused-parameter", "-fno-omit-frame-pointer", "-DGFLAGS_NS=google", "-Dprivate=public", "-Dprotected=public", "--include test/sstream_workaround.h", "-DBAZEL_TEST=1", "-DBVAR_NOT_LINK_DEFAULT_VARIABLES", "-DUNIT_TEST", ] + select({ "//:with_glog": ["-DBRPC_WITH_GLOG=1"], "//conditions:default": ["-DBRPC_WITH_GLOG=0"], }) LINKOPTS = [ "-lpthread", "-lssl", "-lcrypto", "-ldl", "-lz", ] + select({ ":darwin": [], "//conditions:default": [ "-lrt", ], }) TEST_BUTIL_SOURCES = [ "at_exit_unittest.cc", "atomicops_unittest.cc", "base64_unittest.cc", "big_endian_unittest.cc", "bits_unittest.cc", "hash_tables_unittest.cc", "linked_list_unittest.cc", "mru_cache_unittest.cc", "small_map_unittest.cc", "stack_container_unittest.cc", "cpu_unittest.cc", "crash_logging_unittest.cc", "leak_tracker_unittest.cc", "stack_trace_unittest.cc", "environment_unittest.cc", "file_util_unittest.cc", "dir_reader_posix_unittest.cc", "file_path_unittest.cc", "file_unittest.cc", "scoped_temp_dir_unittest.cc", "guid_unittest.cc", "hash_unittest.cc", "lazy_instance_unittest.cc", "md5_unittest.cc", "aligned_memory_unittest.cc", "linked_ptr_unittest.cc", "ref_counted_memory_unittest.cc", "ref_counted_unittest.cc", "scoped_ptr_unittest.cc", "scoped_vector_unittest.cc", "singleton_unittest.cc", "weak_ptr_unittest.cc", "observer_list_unittest.cc", "file_descriptor_shuffle_unittest.cc", "rand_util_unittest.cc", "safe_numerics_unittest.cc", "scoped_clear_errno_unittest.cc", "scoped_generic_unittest.cc", "security_unittest.cc", "sha1_unittest.cc", "stl_util_unittest.cc", "nullable_string16_unittest.cc", "safe_sprintf_unittest.cc", "string16_unittest.cc", "stringprintf_unittest.cc", "string_number_conversions_unittest.cc", "string_piece_unittest.cc", "string_split_unittest.cc", "string_tokenizer_unittest.cc", "string_util_unittest.cc", "stringize_macros_unittest.cc", "sys_string_conversions_unittest.cc", "utf_offset_string_conversions_unittest.cc", "utf_string_conversions_unittest.cc", "cancellation_flag_unittest.cc", "condition_variable_unittest.cc", "lock_unittest.cc", "waitable_event_unittest.cc", "type_traits_unittest.cc", "non_thread_safe_unittest.cc", "platform_thread_unittest.cc", "simple_thread_unittest.cc", "thread_checker_unittest.cc", "thread_collision_warner_unittest.cc", "thread_id_name_manager_unittest.cc", "thread_local_storage_unittest.cc", "thread_local_unittest.cc", "watchdog_unittest.cc", "time_unittest.cc", "version_unittest.cc", "logging_unittest.cc", "cacheline_unittest.cpp", "class_name_unittest.cpp", "endpoint_unittest.cpp", "unique_ptr_unittest.cpp", "errno_unittest.cpp", "fd_guard_unittest.cpp", "file_watcher_unittest.cpp", "find_cstr_unittest.cpp", "scoped_lock_unittest.cpp", "status_unittest.cpp", "string_printf_unittest.cpp", "string_splitter_unittest.cpp", "synchronous_event_unittest.cpp", "temp_file_unittest.cpp", "baidu_thread_local_unittest.cpp", "baidu_time_unittest.cpp", "flat_map_unittest.cpp", "crc32c_unittest.cc", "iobuf_unittest.cpp", "object_pool_unittest.cpp", "test_switches.cc", "scoped_locale.cc", "recordio_unittest.cpp", #"popen_unittest.cpp", "butil_unittest_main.cpp", ] + select({ "@bazel_tools//tools/osx:darwin": [], "//conditions:default": [ "test_file_util_linux.cc", "proc_maps_linux_unittest.cc", ], }) proto_library( name = "test_proto", srcs = glob([ "*.proto", ], exclude = [ "echo.proto", ] ), visibility = ["//visibility:public"], ) cc_proto_library( name = "cc_test_proto", deps = [ ":test_proto", ], visibility = ["//visibility:public"], ) cc_library( name = "sstream_workaround", hdrs = [ "sstream_workaround.h", ] ) cc_test( name = "butil_test", srcs = TEST_BUTIL_SOURCES + [ "scoped_locale.h", "multiprocess_func_list.h", "test_switches.h", ], deps = [ ":sstream_workaround", ":cc_test_proto", "//:brpc", "@com_google_googletest//:gtest", ], copts = COPTS, ) cc_test( name = "bvar_test", srcs = glob([ "bvar_*_unittest.cpp", ], exclude = [ "bvar_lock_timer_unittest.cpp", "bvar_recorder_unittest.cpp", ]), deps = [ ":sstream_workaround", "//:bvar", "@com_google_googletest//:gtest", ], copts = COPTS, ) cc_test( name = "bthread_test", srcs = glob([ "bthread_*_unittest.cpp", ], exclude = [ "bthread_cond_unittest.cpp", "bthread_execution_queue_unittest.cpp", "bthread_dispatcher_unittest.cpp", "bthread_fd_unittest.cpp", "bthread_mutex_unittest.cpp", "bthread_setconcurrency_unittest.cpp", # glog CHECK die with a fatal error "bthread_key_unittest.cpp" ]), deps = [ ":sstream_workaround", "//:brpc", "@com_google_googletest//:gtest", "@com_google_googletest//:gtest_main", ], copts = COPTS, )