mirror of https://github.com/grpc/grpc.git
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
https://grpc.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.0 KiB
65 lines
2.0 KiB
%YAML 1.2 |
|
--- | |
|
PHP_ARG_ENABLE(grpc, whether to enable grpc support, |
|
[ --enable-grpc Enable grpc support]) |
|
|
|
if test "$PHP_GRPC" != "no"; then |
|
dnl Write more examples of tests here... |
|
|
|
dnl # --with-grpc -> add include path |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/include) |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/src/core/ext/upb-generated) |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/src/php/ext/grpc) |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/third_party/address_sorting/include) |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/third_party/boringssl/include) |
|
PHP_ADD_INCLUDE(PHP_EXT_SRCDIR()/third_party/upb) |
|
|
|
LIBS="-lpthread $LIBS" |
|
|
|
CFLAGS="-Wall -Werror -Wno-parentheses-equality -Wno-unused-value -std=c11 -g -O2" |
|
CXXFLAGS="-std=c++11 -fno-exceptions -fno-rtti -g -O2" |
|
GRPC_SHARED_LIBADD="-lpthread $GRPC_SHARED_LIBADD" |
|
PHP_REQUIRE_CXX() |
|
PHP_ADD_LIBRARY(pthread) |
|
PHP_ADD_LIBRARY(dl,,GRPC_SHARED_LIBADD) |
|
PHP_ADD_LIBRARY(dl) |
|
|
|
case $host in |
|
*darwin*) |
|
;; |
|
*) |
|
PHP_ADD_LIBRARY(rt,,GRPC_SHARED_LIBADD) |
|
PHP_ADD_LIBRARY(rt) |
|
;; |
|
esac |
|
|
|
PHP_NEW_EXTENSION(grpc, |
|
% for source in php_config_m4.src: |
|
${source} ${"\\"} |
|
% endfor |
|
% for lib in libs: |
|
% if lib.name in php_config_m4.get('deps', []) and lib.name != 'z': |
|
% for source in lib.src: |
|
${source} ${"\\"} |
|
% endfor |
|
% endif |
|
% endfor |
|
, $ext_shared, , -fvisibility=hidden ${"\\"} |
|
-DOPENSSL_NO_ASM -D_GNU_SOURCE -DWIN32_LEAN_AND_MEAN ${"\\"} |
|
-D_HAS_EXCEPTIONS=0 -DNOMINMAX -DGRPC_ARES=0 ${"\\"} |
|
-DGRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK=1) |
|
|
|
PHP_ADD_BUILD_DIR($ext_builddir/src/php/ext/grpc) |
|
<% |
|
dirs = {} |
|
for lib in libs: |
|
if lib.name in php_config_m4.get('deps', []) and lib.name != 'z': |
|
for source in lib.src: |
|
dirs[source[:source.rfind('/')]] = 1 |
|
dirs = dirs.keys() |
|
dirs.sort() |
|
%> |
|
% for dir in dirs: |
|
PHP_ADD_BUILD_DIR($ext_builddir/${dir}) |
|
% endfor |
|
fi
|
|
|