You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ch...@apache.org on 2018/05/09 19:05:48 UTC

[1/6] mesos git commit: Renamed `GRPC_UNSECURE` to `GRPC_VARIANT` in CMake.

Repository: mesos
Updated Branches:
  refs/heads/master 6cf942a3e -> b863f6c78


Renamed `GRPC_UNSECURE` to `GRPC_VARIANT` in CMake.

Review: https://reviews.apache.org/r/67024


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/bc9580d3
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/bc9580d3
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/bc9580d3

Branch: refs/heads/master
Commit: bc9580d33a6ef49b798dbfad9d1212693a3747be
Parents: 296ba1e
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Tue May 8 19:01:53 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:13 2018 -0700

----------------------------------------------------------------------
 3rdparty/CMakeLists.txt | 35 ++++++++++++++++++-----------------
 1 file changed, 18 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/bc9580d3/3rdparty/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt
index 0075c13..eaa2534 100644
--- a/3rdparty/CMakeLists.txt
+++ b/3rdparty/CMakeLists.txt
@@ -1021,16 +1021,17 @@ if (ENABLE_GRPC)
     -DgRPC_ZLIB_PROVIDER=package)
 
   if (ENABLE_SSL)
+    set(GRPC_VARIANT "")
     list(APPEND GRPC_CMAKE_ARGS -DgRPC_SSL_PROVIDER=package ${CMAKE_SSL_FORWARD_ARGS})
   else ()
-    set(GRPC_UNSECURE _unsecure)
+    set(GRPC_VARIANT "_unsecure")
     list(APPEND GRPC_CMAKE_ARGS -DgRPC_SSL_PROVIDER=none)
   endif ()
 
   set(GRPC_BUILD_CMD
     ${CMAKE_COMMAND} --build . --target gpr &&
-    ${CMAKE_COMMAND} --build . --target grpc${GRPC_UNSECURE} &&
-    ${CMAKE_COMMAND} --build . --target grpc++${GRPC_UNSECURE} &&
+    ${CMAKE_COMMAND} --build . --target grpc${GRPC_VARIANT} &&
+    ${CMAKE_COMMAND} --build . --target grpc++${GRPC_VARIANT} &&
     ${CMAKE_COMMAND} --build . --target grpc_cpp_plugin)
 
   set_target_properties(
@@ -1052,17 +1053,17 @@ if (ENABLE_GRPC)
 
       set_target_properties(
         libgrpc PROPERTIES
-        IMPORTED_LOCATION_DEBUG ${GRPC_ROOT}-build/Debug/grpc${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_LOCATION_RELEASE ${GRPC_ROOT}-build/Release/grpc${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB_DEBUG ${GRPC_ROOT}-build/Debug/grpc${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB_RELEASE ${GRPC_ROOT}-build/Release/grpc${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX})
+        IMPORTED_LOCATION_DEBUG ${GRPC_ROOT}-build/Debug/grpc${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_LOCATION_RELEASE ${GRPC_ROOT}-build/Release/grpc${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB_DEBUG ${GRPC_ROOT}-build/Debug/grpc${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB_RELEASE ${GRPC_ROOT}-build/Release/grpc${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX})
 
       set_target_properties(
         libgrpc++ PROPERTIES
-        IMPORTED_LOCATION_DEBUG ${GRPC_ROOT}-build/Debug/grpc++${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_LOCATION_RELEASE ${GRPC_ROOT}-build/Release/grpc++${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB_DEBUG ${GRPC_ROOT}-build/Debug/grpc++${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB_RELEASE ${GRPC_ROOT}-build/Release/grpc++${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX})
+        IMPORTED_LOCATION_DEBUG ${GRPC_ROOT}-build/Debug/grpc++${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_LOCATION_RELEASE ${GRPC_ROOT}-build/Release/grpc++${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB_DEBUG ${GRPC_ROOT}-build/Debug/grpc++${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB_RELEASE ${GRPC_ROOT}-build/Release/grpc++${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX})
 
       set_target_properties(
         grpc_cpp_plugin PROPERTIES
@@ -1076,13 +1077,13 @@ if (ENABLE_GRPC)
 
       set_target_properties(
         libgrpc PROPERTIES
-        IMPORTED_LOCATION ${GRPC_ROOT}-build/grpc${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB ${GRPC_ROOT}-build/grpc${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX})
+        IMPORTED_LOCATION ${GRPC_ROOT}-build/grpc${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB ${GRPC_ROOT}-build/grpc${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX})
 
       set_target_properties(
         libgrpc++ PROPERTIES
-        IMPORTED_LOCATION ${GRPC_ROOT}-build/grpc++${GRPC_UNSECURE}${LIBRARY_SUFFIX}
-        IMPORTED_IMPLIB ${GRPC_ROOT}-build/grpc++${GRPC_UNSECURE}${CMAKE_IMPORT_LIBRARY_SUFFIX})
+        IMPORTED_LOCATION ${GRPC_ROOT}-build/grpc++${GRPC_VARIANT}${LIBRARY_SUFFIX}
+        IMPORTED_IMPLIB ${GRPC_ROOT}-build/grpc++${GRPC_VARIANT}${CMAKE_IMPORT_LIBRARY_SUFFIX})
 
       set_target_properties(
         grpc_cpp_plugin PROPERTIES
@@ -1095,11 +1096,11 @@ if (ENABLE_GRPC)
 
     set_target_properties(
       libgrpc PROPERTIES
-      IMPORTED_LOCATION ${GRPC_ROOT}-build/libgrpc${GRPC_UNSECURE}${LIBRARY_SUFFIX})
+      IMPORTED_LOCATION ${GRPC_ROOT}-build/libgrpc${GRPC_VARIANT}${LIBRARY_SUFFIX})
 
     set_target_properties(
       libgrpc++ PROPERTIES
-      IMPORTED_LOCATION ${GRPC_ROOT}-build/libgrpc++${GRPC_UNSECURE}${LIBRARY_SUFFIX})
+      IMPORTED_LOCATION ${GRPC_ROOT}-build/libgrpc++${GRPC_VARIANT}${LIBRARY_SUFFIX})
 
     set_target_properties(
       grpc_cpp_plugin PROPERTIES


[6/6] mesos git commit: Fixed the link order for gRPC in CMake.

Posted by ch...@apache.org.
Fixed the link order for gRPC in CMake.

Review: https://reviews.apache.org/r/67025


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/b863f6c7
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/b863f6c7
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/b863f6c7

Branch: refs/heads/master
Commit: b863f6c78580fbfae69ea64237f2b8361b9d7268
Parents: bc9580d
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Tue May 8 19:02:14 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:14 2018 -0700

----------------------------------------------------------------------
 3rdparty/CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/b863f6c7/3rdparty/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt
index eaa2534..3837a31 100644
--- a/3rdparty/CMakeLists.txt
+++ b/3rdparty/CMakeLists.txt
@@ -1006,7 +1006,7 @@ if (ENABLE_GRPC)
   add_dependencies(libgrpc++ ${GRPC_TARGET})
 
   add_library(grpc INTERFACE)
-  target_link_libraries(grpc INTERFACE libgpr libgrpc libgrpc++)
+  target_link_libraries(grpc INTERFACE libgrpc++ libgrpc libgpr)
 
   # TODO(chhsiao): Move grpc so these don't have to be GLOBAL.
   add_executable(grpc_cpp_plugin IMPORTED GLOBAL)


[5/6] mesos git commit: Removed the OpenSSL dependency for building gRPC in Mesos.

Posted by ch...@apache.org.
Removed the OpenSSL dependency for building gRPC in Mesos.

When the SSL build feature is disabled, Mesos now builds
`libgrpc_unsecure` and `libgrpc++_unsecure` instead of `libgrpc` and
`libgrpc++`, so the SSL headers and libraries are no longer required.

Review: https://reviews.apache.org/r/66996


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/b74821cd
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/b74821cd
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/b74821cd

Branch: refs/heads/master
Commit: b74821cd43d3616e69393aa15d1a7cef98979350
Parents: 04313d0
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Tue Apr 24 15:05:37 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:13 2018 -0700

----------------------------------------------------------------------
 3rdparty/Makefile.am                       | 29 ++++++++++++++++++-------
 configure.ac                               | 14 +++++-------
 src/Makefile.am                            | 13 ++++++-----
 src/python/native_common/ext_modules.py.in | 16 ++++++--------
 4 files changed, 41 insertions(+), 31 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/b74821cd/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/Makefile.am b/3rdparty/Makefile.am
index 6740940..062df18 100644
--- a/3rdparty/Makefile.am
+++ b/3rdparty/Makefile.am
@@ -322,26 +322,39 @@ PROTOC = @PROTOCOMPILER@
 endif
 
 if ENABLE_GRPC
+if !ENABLE_SSL
+GRPC_VARIANT = _unsecure
+endif
+
 if WITH_BUNDLED_GRPC
-LIB_GRPC = $(GRPC)/libs/opt/libgrpc++.a			\
-           $(GRPC)/libs/opt/libgrpc.a			\
+LIB_GRPC = $(GRPC)/libs/opt/libgrpc++$(GRPC_VARIANT).a	\
+           $(GRPC)/libs/opt/libgrpc$(GRPC_VARIANT).a	\
            $(GRPC)/libs/opt/libgpr.a
 
 $(LIB_GRPC): $(GRPC)-build-stamp
 
+# NOTE: We the include flags through the `CPPFLAGS` environment variable rather
+# than the command line because gRPC uses target-specific assignments to append
+# flags to `CPPFLAGS`, which will be overwritten by command line arguments. See:
+# https://www.gnu.org/software/make/manual/html_node/Target_002dspecific.html
 $(GRPC)-build-stamp: $(GRPC)-stamp			\
                      $(PROTOBUF)-build-stamp
 	cd $(GRPC) &&					\
 	  CPPFLAGS="$(PROTOBUF_INCLUDE_FLAGS)		\
 	            $(SSL_INCLUDE_FLAGS)		\
 	            $(ZLIB_INCLUDE_FLAGS)"		\
-	  LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\
-	           $(SSL_LINKER_FLAGS)			\
-	           $(ZLIB_LINKER_FLAGS)"		\
 	  $(MAKE) $(AM_MAKEFLAGS)			\
-	          HAS_PKG_CONFIG=false			\
-	          NO_PROTOC=false			\
-	          PROTOC=$(PROTOC)
+	    $(LIB_GRPC:%=$(abs_builddir)/%)		\
+	    CC="$(CC)"					\
+	    CXX="$(CXX)"				\
+	    LD="$(CC)"					\
+	    LDXX="$(CXX)"				\
+	    LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\
+	             $(SSL_LINKER_FLAGS)		\
+	             $(ZLIB_LINKER_FLAGS)"		\
+	    HAS_PKG_CONFIG=false			\
+	    NO_PROTOC=false				\
+	    PROTOC="$(PROTOC)"
 	touch $@
 
 ALL_LOCAL += $(LIB_GRPC)

http://git-wip-us.apache.org/repos/asf/mesos/blob/b74821cd/configure.ac
----------------------------------------------------------------------
diff --git a/configure.ac b/configure.ac
index 429797c..6d9c8ce 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2067,9 +2067,13 @@ if test "x$enable_grpc" = "xyes"; then
       GRPCPREFIX="/usr"
     fi
 
+    if test "x$enable_ssl" = "xno"; then
+      GRPC_VARIANT="_unsecure"
+    fi
+
     # Check if headers and library were located.
     saved_LIBS="$LIBS"
-    LIBS="-lgrpc++ -lgrpc -lgpr $LIBS"
+    LIBS="-lgrpc++$GRPC_VARIANT -lgrpc$GRPC_VARIANT -lgpr $LIBS"
     AC_LANG_PUSH([C++])
     AC_CHECK_HEADERS([grpcpp/grpcpp.h],
                      [AC_LINK_IFELSE(
@@ -2108,14 +2112,6 @@ correct if you are already doing this.
       ])
     fi
   else
-    if test "x$found_ssl" != "xyes"; then
-      AC_MSG_ERROR([cannot find libssl
--------------------------------------------------------------------
-libssl is required for gRPC to build.
--------------------------------------------------------------------
-      ])
-    fi
-
     with_bundled_grpc=yes
   fi
 

http://git-wip-us.apache.org/repos/asf/mesos/blob/b74821cd/src/Makefile.am
----------------------------------------------------------------------
diff --git a/src/Makefile.am b/src/Makefile.am
index 7e91681..c08ac6e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -171,15 +171,18 @@ LDADD += -lglog
 endif
 
 if ENABLE_GRPC
+if !ENABLE_SSL
+GRPC_VARIANT = _unsecure
+endif
+
 if WITH_BUNDLED_GRPC
 MESOS_CPPFLAGS += -I../$(GRPC)/include
-LIB_GRPC = ../$(GRPC)/libs/opt/libgrpc++.a	\
-           ../$(GRPC)/libs/opt/libgrpc.a	\
-           ../$(GRPC)/libs/opt/libgpr.a		\
-           -lssl -lcrypto
+LIB_GRPC = ../$(GRPC)/libs/opt/libgrpc++$(GRPC_VARIANT).a	\
+           ../$(GRPC)/libs/opt/libgrpc$(GRPC_VARIANT).a		\
+           ../$(GRPC)/libs/opt/libgpr.a
 GRPC_CPP_PLUGIN = ../$(GRPC)/bins/opt/grpc_cpp_plugin
 else
-LIB_GRPC = -lgrpc++ -lgrpc -lgpr -lssl -lcrypto
+LIB_GRPC = -lgrpc++$(GRPC_VARIANT) -lgrpc$(GRPC_VARIANT) -lgpr
 GRPC_CPP_PLUGIN = @GRPC_CXX_PLUGIN@
 endif
 endif

http://git-wip-us.apache.org/repos/asf/mesos/blob/b74821cd/src/python/native_common/ext_modules.py.in
----------------------------------------------------------------------
diff --git a/src/python/native_common/ext_modules.py.in b/src/python/native_common/ext_modules.py.in
index 87387fd..dc4d91a 100644
--- a/src/python/native_common/ext_modules.py.in
+++ b/src/python/native_common/ext_modules.py.in
@@ -129,28 +129,26 @@ def _create_module(module_name):
     # only if gRPC is enabled.
     if '@ENABLE_GRPC_FALSE@' == '#':
         grpc = os.path.join('3rdparty', 'grpc-1.10.0')
-        libgrpcxx = os.path.join(abs_top_builddir, grpc, 'libs', 'opt', 'libgrpc++.a')
-        libgrpc = os.path.join(abs_top_builddir, grpc, 'libs', 'opt', 'libgrpc.a')
+        grpc_variant = '_unsecure' if '@ENABLE_SSL_TRUE@' == '#' else ''
+        libgrpcpp = os.path.join(abs_top_builddir, grpc, 'libs', 'opt', 'libgrpc++%s.a' % grpc_variant)
+        libgrpc = os.path.join(abs_top_builddir, grpc, 'libs', 'opt', 'libgrpc%s.a' % grpc_variant)
         libgpr = os.path.join(abs_top_builddir, grpc, 'libs', 'opt', 'libgpr.a')
 
-        if os.path.exists(libgrpcxx):
-            EXTRA_OBJECTS.append(libgrpcxx)
+        if os.path.exists(libgrpcpp):
+            EXTRA_OBJECTS.append(libgrpcpp)
         else:
-            EXTRA_OBJECTS.append('-lgrpc++')
+            EXTRA_OBJECTS.append('-lgrpc++%s' % grpc_variant)
 
         if os.path.exists(libgrpc):
             EXTRA_OBJECTS.append(libgrpc)
         else:
-            EXTRA_OBJECTS.append('-lgrpc')
+            EXTRA_OBJECTS.append('-lgrpc%s' % grpc_variant)
 
         if os.path.exists(libgpr):
             EXTRA_OBJECTS.append(libgpr)
         else:
             EXTRA_OBJECTS.append('-lgpr')
 
-        EXTRA_OBJECTS.append('-lssl')
-        EXTRA_OBJECTS.append('-lcrypto')
-
 
     # OSX uses a different linker (llvm-ld) and doesn't support --as-needed
     # TODO(SteveNiemitz): Feature detect --as-needed instead of looking at


[2/6] mesos git commit: Removed the OpenSSL dependency for building gRPC in libprocess.

Posted by ch...@apache.org.
Removed the OpenSSL dependency for building gRPC in libprocess.

When the SSL build feature is disabled, libprocess now builds
`libgrpc_unsecure` and `libgrpc++_unsecure` instead of `libgrpc` and
`libgrpc++`, so the SSL headers and libraries are no longer required.

Review: https://reviews.apache.org/r/66997


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/296ba1e4
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/296ba1e4
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/296ba1e4

Branch: refs/heads/master
Commit: 296ba1e41517ea95adfc59300116078581fe5987
Parents: b74821c
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Mon May 7 16:39:29 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:13 2018 -0700

----------------------------------------------------------------------
 3rdparty/libprocess/3rdparty/Makefile.am | 29 +++++++++++++++++++--------
 3rdparty/libprocess/Makefile.am          | 13 +++++++-----
 3rdparty/libprocess/configure.ac         | 14 +++++--------
 3 files changed, 34 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/296ba1e4/3rdparty/libprocess/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/3rdparty/Makefile.am b/3rdparty/libprocess/3rdparty/Makefile.am
index f7f0bed..d13e93f 100644
--- a/3rdparty/libprocess/3rdparty/Makefile.am
+++ b/3rdparty/libprocess/3rdparty/Makefile.am
@@ -204,26 +204,39 @@ PROTOC = @PROTOCOMPILER@
 endif
 
 if ENABLE_GRPC
+if !ENABLE_SSL
+GRPC_VARIANT = _unsecure
+endif
+
 if WITH_BUNDLED_GRPC
-LIB_GRPC = $(GRPC)/libs/opt/libgrpc++.a			\
-           $(GRPC)/libs/opt/libgrpc.a			\
+LIB_GRPC = $(GRPC)/libs/opt/libgrpc++$(GRPC_VARIANT).a	\
+           $(GRPC)/libs/opt/libgrpc$(GRPC_VARIANT).a	\
            $(GRPC)/libs/opt/libgpr.a
 
 $(LIB_GRPC): $(GRPC)-build-stamp
 
+# NOTE: We the include flags through the `CPPFLAGS` environment variable rather
+# than the command line because gRPC uses target-specific assignments to append
+# flags to `CPPFLAGS`, which will be overwritten by command line arguments. See:
+# https://www.gnu.org/software/make/manual/html_node/Target_002dspecific.html
 $(GRPC)-build-stamp: $(GRPC)-stamp			\
                      $(PROTOBUF)-build-stamp
 	cd $(GRPC) &&					\
 	  CPPFLAGS="$(PROTOBUF_INCLUDE_FLAGS)		\
 	            $(SSL_INCLUDE_FLAGS)		\
 	            $(ZLIB_INCLUDE_FLAGS)"		\
-	  LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\
-	           $(SSL_LINKER_FLAGS)			\
-	           $(ZLIB_LINKERFLAGS)"			\
 	  $(MAKE) $(AM_MAKEFLAGS)			\
-	          HAS_PKG_CONFIG=false			\
-	          NO_PROTOC=false			\
-	          PROTOC=$(PROTOC)
+	    $(LIB_GRPC:%=$(abs_builddir)/%)		\
+	    CC="$(CC)"					\
+	    CXX="$(CXX)"				\
+	    LD="$(CC)"					\
+	    LDXX="$(CXX)"				\
+	    LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\
+	             $(SSL_LINKER_FLAGS)		\
+	             $(ZLIB_LINKER_FLAGS)"		\
+	    HAS_PKG_CONFIG=false			\
+	    NO_PROTOC=false				\
+	    PROTOC="$(PROTOC)"
 	touch $@
 
 ALL_LOCAL += $(LIB_GRPC)

http://git-wip-us.apache.org/repos/asf/mesos/blob/296ba1e4/3rdparty/libprocess/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/Makefile.am b/3rdparty/libprocess/Makefile.am
index 70edb2e..b1d77f3 100644
--- a/3rdparty/libprocess/Makefile.am
+++ b/3rdparty/libprocess/Makefile.am
@@ -113,12 +113,15 @@ BUNDLED_DEPS += $(GPERFTOOLS)-build-stamp
 endif
 
 if ENABLE_GRPC
+if !ENABLE_SSL
+GRPC_VARIANT = _unsecure
+endif
+
 if WITH_BUNDLED_GRPC
 GRPC_INCLUDE_FLAGS = -I$(GRPC)/include
-LIB_GRPC = $(GRPC)/libs/opt/libgrpc++.a	\
-           $(GRPC)/libs/opt/libgrpc.a	\
-           $(GRPC)/libs/opt/libgpr.a	\
-           -lssl -lcrypto
+LIB_GRPC = $(GRPC)/libs/opt/libgrpc++$(GRPC_VARIANT).a	\
+           $(GRPC)/libs/opt/libgrpc$(GRPC_VARIANT).a	\
+           $(GRPC)/libs/opt/libgpr.a
 GRPC_CPP_PLUGIN = $(GRPC)/bins/opt/grpc_cpp_plugin
 
 # NOTE: We need to specify the dependency between Protobuf and gRPC
@@ -129,7 +132,7 @@ $(GRPC)-build-stamp: $(PROTOBUF)-build-stamp
 $(LIB_GRPC): $(GRPC)-build-stamp
 BUNDLED_DEPS += $(GRPC)-build-stamp
 else
-LIB_GRPC = -lgrpc++ -lgrpc -lgpr -lssl -lcrypto
+LIB_GRPC = -lgrpc++$(GRPC_VARIANT) -lgrpc$(GRPC_VARIANT) -lgpr
 GRPC_CPP_PLUGIN = @GRPC_CXX_PLUGIN@
 endif
 endif

http://git-wip-us.apache.org/repos/asf/mesos/blob/296ba1e4/3rdparty/libprocess/configure.ac
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/configure.ac b/3rdparty/libprocess/configure.ac
index fd65d70..083cf8b 100644
--- a/3rdparty/libprocess/configure.ac
+++ b/3rdparty/libprocess/configure.ac
@@ -1160,9 +1160,13 @@ if test "x$enable_grpc" = "xyes"; then
       GRPCPREFIX="/usr"
     fi
 
+    if test "x$enable_ssl" = "xno"; then
+      GRPC_VARIANT="_unsecure"
+    fi
+
     # Check if headers and library were located.
     saved_LIBS="$LIBS"
-    LIBS="-lgrpc++ -lgrpc -lgpr $LIBS"
+    LIBS="-lgrpc++$GRPC_VARIANT -lgrpc$GRPC_VARIANT -lgpr $LIBS"
     AC_LANG_PUSH([C++])
     AC_CHECK_HEADERS([grpcpp/grpcpp.h],
                      [AC_LINK_IFELSE(
@@ -1201,14 +1205,6 @@ correct if you are already doing this.
       ])
     fi
   else
-    if test "x$found_ssl" != "xyes"; then
-      AC_MSG_ERROR([cannot find libssl
--------------------------------------------------------------------
-libssl is required for gRPC to build.
--------------------------------------------------------------------
-      ])
-    fi
-
     with_bundled_grpc=yes
   fi
 fi


[4/6] mesos git commit: Removed unnecessary gRPC build flags in libprocess.

Posted by ch...@apache.org.
Removed unnecessary gRPC build flags in libprocess.

The `-Wno-deprecated-declarations` and `-Wno-unused-function` flags are
no longer required to build the bundled gRPC 1.10.0.

Review: https://reviews.apache.org/r/67018


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/04313d07
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/04313d07
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/04313d07

Branch: refs/heads/master
Commit: 04313d07807e6986bfe1f1cc83c3f04e0b7f5e33
Parents: 89adbf2
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Tue May 8 15:27:11 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:13 2018 -0700

----------------------------------------------------------------------
 3rdparty/libprocess/3rdparty/Makefile.am | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/04313d07/3rdparty/libprocess/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/3rdparty/Makefile.am b/3rdparty/libprocess/3rdparty/Makefile.am
index 7fb77f8..f7f0bed 100644
--- a/3rdparty/libprocess/3rdparty/Makefile.am
+++ b/3rdparty/libprocess/3rdparty/Makefile.am
@@ -211,18 +211,10 @@ LIB_GRPC = $(GRPC)/libs/opt/libgrpc++.a			\
 
 $(LIB_GRPC): $(GRPC)-build-stamp
 
-# NOTE: The `-Wno-deprecated-declarations` flag is added so that gRPC
-# can be built with OpenSSL 1.1.0. See:
-# https://github.com/grpc/grpc/pull/11496
-# NOTE: The `-Wno-unused-function` flag is added to address errors when
-# compling `src/core/tsi/ssl_transport_security.c`. See:
-# https://github.com/grpc/grpc/pull/11675
 $(GRPC)-build-stamp: $(GRPC)-stamp			\
                      $(PROTOBUF)-build-stamp
 	cd $(GRPC) &&					\
-	  CPPFLAGS="-Wno-deprecated-declarations	\
-	            -Wno-unused-function		\
-	            $(PROTOBUF_INCLUDE_FLAGS)		\
+	  CPPFLAGS="$(PROTOBUF_INCLUDE_FLAGS)		\
 	            $(SSL_INCLUDE_FLAGS)		\
 	            $(ZLIB_INCLUDE_FLAGS)"		\
 	  LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\


[3/6] mesos git commit: Removed unnecessary gRPC build flags in Mesos.

Posted by ch...@apache.org.
Removed unnecessary gRPC build flags in Mesos.

The `-Wno-deprecated-declarations` and `-Wno-unused-function` flags are
no longer required to build the bundled gRPC 1.10.0.

Review: https://reviews.apache.org/r/67017


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/89adbf27
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/89adbf27
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/89adbf27

Branch: refs/heads/master
Commit: 89adbf276465d9e611b00adeeaffdf8062d721d6
Parents: 6cf942a
Author: Chun-Hung Hsiao <ch...@mesosphere.io>
Authored: Tue May 8 15:26:12 2018 -0700
Committer: Chun-Hung Hsiao <ch...@mesosphere.io>
Committed: Wed May 9 12:05:13 2018 -0700

----------------------------------------------------------------------
 3rdparty/Makefile.am | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/89adbf27/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/Makefile.am b/3rdparty/Makefile.am
index 8d9fa85..6740940 100644
--- a/3rdparty/Makefile.am
+++ b/3rdparty/Makefile.am
@@ -329,18 +329,10 @@ LIB_GRPC = $(GRPC)/libs/opt/libgrpc++.a			\
 
 $(LIB_GRPC): $(GRPC)-build-stamp
 
-# NOTE: The `-Wno-deprecated-declarations` flag is added so that gRPC
-# can be built with OpenSSL 1.1.0. See:
-# https://github.com/grpc/grpc/pull/11496
-# NOTE: The `-Wno-unused-function` flag is added to address errors when
-# compling `src/core/tsi/ssl_transport_security.cc`. See:
-# https://github.com/grpc/grpc/pull/11675
 $(GRPC)-build-stamp: $(GRPC)-stamp			\
                      $(PROTOBUF)-build-stamp
 	cd $(GRPC) &&					\
-	  CPPFLAGS="-Wno-deprecated-declarations	\
-	            -Wno-unused-function		\
-	            $(PROTOBUF_INCLUDE_FLAGS)		\
+	  CPPFLAGS="$(PROTOBUF_INCLUDE_FLAGS)		\
 	            $(SSL_INCLUDE_FLAGS)		\
 	            $(ZLIB_INCLUDE_FLAGS)"		\
 	  LDFLAGS="$(PROTOBUF_LINKER_FLAGS)		\