diff options
author | murgatroid99 <mlumish@google.com> | 2015-07-08 10:44:15 -0700 |
---|---|---|
committer | murgatroid99 <mlumish@google.com> | 2015-07-08 10:44:15 -0700 |
commit | 1be0437ea58896e5a7768f6b2b1da080c043bbfd (patch) | |
tree | 0ccb64f56a6389ed11714d9d1090d8685ba52b80 /templates | |
parent | 66d6edb7fb66f2ca9de2a334e38aed15a2841db4 (diff) | |
parent | 10441a94012307abd001b89508f73a54ade088c2 (diff) |
Merged changes from upstream/master
Diffstat (limited to 'templates')
-rw-r--r-- | templates/BUILD.template | 2 | ||||
-rw-r--r-- | templates/Makefile.template | 34 |
2 files changed, 29 insertions, 7 deletions
diff --git a/templates/BUILD.template b/templates/BUILD.template index dffdc1dddd..4e9d8c376a 100644 --- a/templates/BUILD.template +++ b/templates/BUILD.template @@ -1,5 +1,5 @@ # GRPC Bazel BUILD file. -# This currently builds C and C++ code. +# This currently builds C, C++ and Objective-C code. # This file has been automatically generated from a template file. # Please look at the templates directory instead. # This file can be regenerated from the template by running diff --git a/templates/Makefile.template b/templates/Makefile.template index 7d98e90484..aa09a84727 100644 --- a/templates/Makefile.template +++ b/templates/Makefile.template @@ -411,12 +411,14 @@ OPENSSL_LIBS = ssl crypto endif OPENSSL_ALPN_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/openssl-alpn.c $(addprefix -l, $(OPENSSL_LIBS)) $(LDFLAGS) +OPENSSL_NPN_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/openssl-npn.c $(addprefix -l, $(OPENSSL_LIBS)) $(LDFLAGS) ZLIB_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/zlib.c -lz $(LDFLAGS) PERFTOOLS_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/perftools.c -lprofiler $(LDFLAGS) PROTOBUF_CHECK_CMD = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/protobuf.cc -lprotobuf $(LDFLAGS) ifeq ($(OPENSSL_REQUIRES_DL),true) OPENSSL_ALPN_CHECK_CMD += -ldl +OPENSSL_NPN_CHECK_CMD += -ldl endif endif # HAS_PKG_CONFIG @@ -437,11 +439,17 @@ endif HAS_SYSTEM_PROTOBUF_VERIFY = $(shell $(PROTOBUF_CHECK_CMD) 2> /dev/null && echo true || echo false) ifndef REQUIRE_CUSTOM_LIBRARIES_$(CONFIG) HAS_SYSTEM_OPENSSL_ALPN = $(shell $(OPENSSL_ALPN_CHECK_CMD) 2> /dev/null && echo true || echo false) +ifeq ($(HAS_SYSTEM_OPENSSL_ALPN),true) +HAS_SYSTEM_OPENSSL_NPN = true +else +HAS_SYSTEM_OPENSSL_NPN = $(shell $(OPENSSL_NPN_CHECK_CMD) 2> /dev/null && echo true || echo false) +endif HAS_SYSTEM_ZLIB = $(shell $(ZLIB_CHECK_CMD) 2> /dev/null && echo true || echo false) HAS_SYSTEM_PROTOBUF = $(HAS_SYSTEM_PROTOBUF_VERIFY) else # override system libraries if the config requires a custom compiled library HAS_SYSTEM_OPENSSL_ALPN = false +HAS_SYSTEM_OPENSSL_NPN = false HAS_SYSTEM_ZLIB = false HAS_SYSTEM_PROTOBUF = false endif @@ -465,6 +473,9 @@ HAS_SYSTEMTAP = true endif endif +# Note that for testing purposes, one can do: +# make HAS_EMBEDDED_OPENSSL_ALPN=false +# to emulate the fact we do not have OpenSSL in the third_party folder. ifeq ($(wildcard third_party/openssl/ssl/ssl.h),) HAS_EMBEDDED_OPENSSL_ALPN = false else @@ -533,6 +544,7 @@ endif endif else ifeq ($(HAS_EMBEDDED_OPENSSL_ALPN),true) +USE_SYSTEM_OPENSSL = false OPENSSL_DEP = $(LIBDIR)/$(CONFIG)/openssl/libssl.a OPENSSL_MERGE_LIBS += $(LIBDIR)/$(CONFIG)/openssl/libssl.a $(LIBDIR)/$(CONFIG)/openssl/libcrypto.a # need to prefix these to ensure overriding system libraries @@ -542,9 +554,18 @@ ifeq ($(OPENSSL_REQUIRES_DL),true) LIBS_SECURE = dl endif else +ifeq ($(HAS_SYSTEM_OPENSSL_NPN),true) +USE_SYSTEM_OPENSSL = true +CPPFLAGS += -DTSI_OPENSSL_ALPN_SUPPORT=0 +LIBS_SECURE = $(OPENSSL_LIBS) +ifeq ($(OPENSSL_REQUIRES_DL),true) +LIBS_SECURE += dl +endif +else NO_SECURE = true endif endif +endif ifeq ($(OPENSSL_PKG_CONFIG),true) LDLIBS_SECURE += $(shell $(PKG_CONFIG) --libs-only-l openssl) @@ -699,7 +720,7 @@ openssl_dep_message: @echo @echo "DEPENDENCY ERROR" @echo - @echo "The target you are trying to run requires OpenSSL with ALPN support." + @echo "The target you are trying to run requires OpenSSL." @echo "Your system doesn't have it, and neither does the third_party directory." @echo @echo "Please consult INSTALL to get more information." @@ -757,6 +778,7 @@ ${tgt.name}: $(BINDIR)/$(CONFIG)/${tgt.name} run_dep_checks: $(OPENSSL_ALPN_CHECK_CMD) || true + $(OPENSSL_NPN_CHECK_CMD) || true $(ZLIB_CHECK_CMD) || true $(PERFTOOLS_CHECK_CMD) || true $(PROTOBUF_CHECK_CMD) || true @@ -777,7 +799,7 @@ ifeq ($(SYSTEM),Darwin) else ifeq ($(SYSTEM),MINGW32) @echo "We currently don't have a good way to compile OpenSSL in-place under msys." - @echo "Please provide an ALPN-capable OpenSSL in your mingw32 system." + @echo "Please provide a OpenSSL in your mingw32 system." @echo @echo "Note that you can find a compatible version of the libraries here:" @echo @@ -1305,11 +1327,11 @@ PUBLIC_HEADERS_C += \\ LIB${lib.name.upper()}_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIB${lib.name.upper()}_SRC)))) -## If the library requires OpenSSL with ALPN, let's add some restrictions. +## If the library requires OpenSSL, let's add some restrictions. % if lib.get('secure', 'check') == 'yes' or lib.get('secure', 'check') == 'check': ifeq ($(NO_SECURE),true) -# You can't build secure libraries if you don't have OpenSSL with ALPN. +# You can't build secure libraries if you don't have OpenSSL. $(LIBDIR)/$(CONFIG)/lib${lib.name}.a: openssl_dep_error @@ -1449,7 +1471,7 @@ endif % endif % if lib.get('secure', 'check') == 'yes' or lib.get('secure', 'check') == 'check': ## If the lib was secure, we have to close the Makefile's if that tested -## the presence of an ALPN-capable OpenSSL. +## the presence of OpenSSL. endif % endif @@ -1490,7 +1512,7 @@ ${tgt.name.upper()}_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(b % if tgt.get('secure', 'check') == 'yes' or tgt.get('secure', 'check') == 'check': ifeq ($(NO_SECURE),true) -# You can't build secure targets if you don't have OpenSSL with ALPN. +# You can't build secure targets if you don't have OpenSSL. $(BINDIR)/$(CONFIG)/${tgt.name}: openssl_dep_error |