[brpc] Add new port (#11524)

* [brpc] add new port

* [brpc] ci ignore build error on windows

* [brpc] update version and delete deprecated function

* [brpc] fail install on windows

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* [brpc] not support windows

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* Update portfile.cmake

Update the format and remove unused comments

* [brpc] rebase master

* [brpc] reset ci.baseline.txt

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
This commit is contained in:
curoky 2020-08-01 02:10:00 +08:00 committed by GitHub
parent 62cbf26175
commit f533327462
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 79 additions and 0 deletions

6
ports/brpc/CONTROL Normal file
View File

@ -0,0 +1,6 @@
Source: brpc
Version: 0.9.7
Homepage: https://github.com/apache/incubator-brpc
Description: Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services, called "baidu-rpc" inside Baidu.
Build-Depends: leveldb, gflags, glog, protobuf[zlib], openssl, thrift
Supports: !windows

View File

@ -0,0 +1,14 @@
diff --git a/src/brpc/policy/thrift_protocol.cpp b/src/brpc/policy/thrift_protocol.cpp
index eae081a0..39c92338 100755
--- a/src/brpc/policy/thrift_protocol.cpp
+++ b/src/brpc/policy/thrift_protocol.cpp
@@ -45,8 +45,7 @@
#if defined(_THRIFT_STDCXX_H_)
# define THRIFT_STDCXX apache::thrift::stdcxx
#else
- # define THRIFT_STDCXX boost
- # include <boost/make_shared.hpp>
+ # define THRIFT_STDCXX std
#endif
#endif

View File

@ -0,0 +1,28 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3deb7342..737f6a70 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -62,8 +62,10 @@ if(WITH_DEBUG_SYMBOLS)
endif()
if(WITH_THRIFT)
+ find_package(Thrift CONFIG REQUIRED)
+ # target_link_libraries(main PRIVATE thrift::thrift thriftz::thriftz thriftnb::thriftnb)
set(THRIFT_CPP_FLAG "-DENABLE_THRIFT_FRAMED_PROTOCOL")
- set(THRIFT_LIB "thrift")
+ set(THRIFT_LIB "thrift::thrift")
endif()
include(GNUInstallDirs)
@@ -196,9 +198,10 @@ set(DYNAMIC_LIB
${LEVELDB_LIB}
${PROTOC_LIB}
${CMAKE_THREAD_LIBS_INIT}
+ ${OPENSSL_CRYPTO_LIBRARY}
+ ${OPENSSL_SSL_LIBRARY}
${THRIFT_LIB}
${THRIFTNB_LIB}
- ${OPENSSL_CRYPTO_LIBRARY}
dl
z)

31
ports/brpc/portfile.cmake Normal file
View File

@ -0,0 +1,31 @@
vcpkg_fail_port_install(ON_TARGET "windows")
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO apache/incubator-brpc
REF 1d6510aa50075cade5ed539ee09a11a1b8d7f990 # 0.9.7
SHA512 9c9dbe2a202e58586010c56634bd371f6a9e3ff0d8c5341abbabd1f1dd204a3aec5e89061fa326b4fc8ae7202f9fc33f93a5acd845d18dab3915a3e2b81cbaf3
HEAD_REF master
PATCHES
fix_boost_ptr.patch
fix_thrift.patch
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DWITH_THRIFT=ON
-DWITH_MESALINK=OFF
-DWITH_GLOG=ON
)
vcpkg_install_cmake()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/butil/third_party/superfasthash")
vcpkg_copy_pdbs()
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)