blob: afc525a33169bff6dbec72233137cc5966e7a04a [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
load("@rules_proto//proto:defs.bzl", "proto_library")
load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_proto_library")
COPTS = [
"-D__STDC_FORMAT_MACROS",
"-DBTHREAD_USE_FAST_PTHREAD_MUTEX",
"-D__const__=__unused__",
"-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",
] + select({
"//bazel/config:brpc_with_glog": ["-DBRPC_WITH_GLOG=1"],
"//conditions:default": ["-DBRPC_WITH_GLOG=0"],
}) + select({
"//bazel/config:brpc_with_rdma": ["-DBRPC_WITH_RDMA=1"],
"//conditions:default": [""],
})
proto_library(
name = "echo_c++_proto",
srcs = [
"echo_c++/echo.proto",
],
)
proto_library(
name = "rdma_performance_proto",
srcs = [
"rdma_performance/test.proto",
],
)
cc_proto_library(
name = "cc_echo_c++_proto",
deps = [
":echo_c++_proto",
],
)
cc_proto_library(
name = "cc_rdma_performance_proto",
deps = [
":rdma_performance_proto",
],
)
cc_binary(
name = "echo_c++_server",
srcs = [
"echo_c++/server.cpp",
],
copts = COPTS,
includes = [
"echo_c++",
],
deps = [
":cc_echo_c++_proto",
"//:brpc",
],
)
cc_binary(
name = "echo_c++_client",
srcs = [
"echo_c++/client.cpp",
],
copts = COPTS,
includes = [
"echo_c++",
],
deps = [
":cc_echo_c++_proto",
"//:brpc",
],
)
cc_binary(
name = "rdma_performance_server",
srcs = [
"rdma_performance/server.cpp",
],
includes = [
"rdma_performance",
],
copts = COPTS + ["-DBRPC_WITH_RDMA=1"],
deps = [
":cc_rdma_performance_proto",
"//:brpc",
],
)
cc_binary(
name = "rdma_performance_client",
srcs = [
"rdma_performance/client.cpp",
],
includes = [
"rdma_performance",
],
copts = COPTS + ["-DBRPC_WITH_RDMA=1"],
deps = [
":cc_rdma_performance_proto",
"//:brpc",
],
)