You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by be...@apache.org on 2013/02/28 06:04:18 UTC

svn commit: r1451092 - in /incubator/mesos/trunk: src/ src/python/ third_party/ third_party/libprocess/third_party/

Author: benh
Date: Thu Feb 28 05:04:18 2013
New Revision: 1451092

URL: http://svn.apache.org/r1451092
Log:
Eliminated redundant boost, glog, and gmock/gtest.

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

Removed:
    incubator/mesos/trunk/third_party/boost-1.53.0.tar.gz
    incubator/mesos/trunk/third_party/glog-0.3.1.tar.gz
    incubator/mesos/trunk/third_party/gmock-1.6.0.tar.gz
Modified:
    incubator/mesos/trunk/src/Makefile.am
    incubator/mesos/trunk/src/python/setup.py.in
    incubator/mesos/trunk/third_party/Makefile.am
    incubator/mesos/trunk/third_party/libprocess/third_party/Makefile.am
    incubator/mesos/trunk/third_party/versions.am

Modified: incubator/mesos/trunk/src/Makefile.am
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/src/Makefile.am?rev=1451092&r1=1451091&r2=1451092&view=diff
==============================================================================
--- incubator/mesos/trunk/src/Makefile.am (original)
+++ incubator/mesos/trunk/src/Makefile.am Thu Feb 28 05:04:18 2013
@@ -20,18 +20,20 @@
 AUTOMAKE_OPTIONS = subdir-objects
 
 include ../third_party/versions.am
+include ../third_party/libprocess/third_party/versions.am
 
 # TODO(charles): Move these into an included automakefile and have
 # them include $(top_builddir) as appropriate.
-BOOST = third_party/boost-$(BOOST_VERSION)
 DISTRIBUTE = third_party/distribute-$(DISTRIBUTE_VERSION)
 PROTOBUF = third_party/protobuf-$(PROTOBUF_VERSION)
-GLOG = third_party/glog-$(GLOG_VERSION)
-GMOCK = third_party/gmock-$(GMOCK_VERSION)
-GTEST = $(GMOCK)/gtest
 LEVELDB = third_party/leveldb
 ZOOKEEPER = third_party/zookeeper-$(ZOOKEEPER_VERSION)/src/c
 LIBPROCESS = third_party/libprocess
+BOOST = $(LIBPROCESS)/third_party/boost-$(BOOST_VERSION)
+GLOG = $(LIBPROCESS)/third_party/glog-$(GLOG_VERSION)
+GMOCK = $(LIBPROCESS)/third_party/gmock-$(GMOCK_VERSION)
+GTEST = $(GMOCK)/gtest
+
 
 # Unfortunatley, 'pkglibexecdir' and 'pkglocalstatedir' are not set
 # before automake 1.11, so we need to set them manually (until we in
@@ -241,7 +243,7 @@ libmesos_no_third_party_la_SOURCES += co
 
 libmesos_no_third_party_la_CPPFLAGS = $(MESOS_CPPFLAGS)
 
-libmesos_no_third_party_la_LIBADD = # Initialized to allow += below.
+libmesos_no_third_party_la_LIBADD = # Initialized to enable using +=.
 
 # Convenience library that *always* gets rebuilt to ensure accurate info.
 noinst_LTLIBRARIES += libbuild.la
@@ -806,7 +808,7 @@ mesos_tests_CPPFLAGS += -DBUILD_DIR=\"$(
 mesos_tests_CPPFLAGS += -I../$(GTEST)/include
 mesos_tests_CPPFLAGS += -I../$(GMOCK)/include
 
-mesos_tests_LDADD = ../third_party/libgmock.la libmesos.la
+mesos_tests_LDADD = ../$(LIBPROCESS)/third_party/libgmock.la libmesos.la
 
 mesos_tests_DEPENDENCIES = # Initialized to allow += below.
 

Modified: incubator/mesos/trunk/src/python/setup.py.in
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/src/python/setup.py.in?rev=1451092&r1=1451091&r2=1451092&view=diff
==============================================================================
--- incubator/mesos/trunk/src/python/setup.py.in (original)
+++ incubator/mesos/trunk/src/python/setup.py.in Thu Feb 28 05:04:18 2013
@@ -20,16 +20,17 @@ src_python_dist = os.path.join('src', 'p
 src_python_native = os.path.join('src', 'python', 'native')
 
 protobuf = os.path.join('third_party', 'protobuf-2.4.1')
-glog = os.path.join('third_party', 'glog-0.3.1')
 leveldb = os.path.join('third_party', 'leveldb')
 zookeeper = os.path.join('third_party', 'zookeeper-3.3.4', 'src', 'c')
 libprocess = os.path.join('third_party', 'libprocess')
 
-# Even though a statically compiled libprocess should include libev and
-# gperftools, before installation this isn't the case, so while a libtool
-# managed build will correctly pull in these libraries when building the
-# final result, we need to explicitly include them here
-# (or more precisely, down where we actually include libev.a and libprofiler.a).
+# Even though a statically compiled libprocess should include glog,
+# libev, and gperftools, before installation this isn't the case, so
+# while a libtool managed build will correctly pull in these libraries
+# when building the final result, we need to explicitly include them
+# here (or more precisely, down where we actually include libev.a and
+# libprofiler.a).
+glog = os.path.join(libprocess, 'third_party', 'glog-0.3.1')
 libev = os.path.join(libprocess, 'third_party', 'libev-3.8')
 gperftools = os.path.join(libprocess, 'third_party', 'gperftools-2.0')
 
@@ -71,10 +72,10 @@ LIBRARY_DIRS = []
 EXTRA_OBJECTS = [
   os.path.join(abs_top_builddir, 'src', '.libs', 'libmesos_no_third_party.a'),
   os.path.join(abs_top_builddir, protobuf, 'src', '.libs', 'libprotobuf.a'),
-  os.path.join(abs_top_builddir, glog, '.libs', 'libglog.a'),
   os.path.join(abs_top_builddir, leveldb, 'libleveldb.a'),
   os.path.join(abs_top_builddir, zookeeper, '.libs', 'libzookeeper_mt.a'),
   os.path.join(abs_top_builddir, libprocess, '.libs', 'libprocess.a'),
+  os.path.join(abs_top_builddir, glog, '.libs', 'libglog.a'),
   os.path.join(abs_top_builddir, libev, '.libs', 'libev.a'),
 ]
 

Modified: incubator/mesos/trunk/third_party/Makefile.am
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/third_party/Makefile.am?rev=1451092&r1=1451091&r2=1451092&view=diff
==============================================================================
--- incubator/mesos/trunk/third_party/Makefile.am (original)
+++ incubator/mesos/trunk/third_party/Makefile.am Thu Feb 28 05:04:18 2013
@@ -22,7 +22,7 @@
 # packages may be special cases; this Makefile is responsible for
 # passing any special make or configure flags that might be required.
 
-BUILT_SOURCES =
+BUILT_SOURCES = # Initialized to enable using +=.
 
 SUBDIRS = libprocess
 
@@ -32,46 +32,37 @@ CONFIGURE_ARGS = @CONFIGURE_ARGS@ --enab
 
 include versions.am
 
-BOOST = boost-$(BOOST_VERSION)
 BOTO = boto-$(BOTO_VERSION)
 DISTRIBUTE = distribute-$(DISTRIBUTE_VERSION)
-GLOG = glog-$(GLOG_VERSION)
-GMOCK = gmock-$(GMOCK_VERSION)
-GTEST = $(GMOCK)/gtest
 LEVELDB = leveldb
 PROTOBUF = protobuf-$(PROTOBUF_VERSION)
 ZOOKEEPER = zookeeper-$(ZOOKEEPER_VERSION)
 
 
-EXTRA_DIST = $(BOOST).tar.gz $(BOTO).zip $(DISTRIBUTE).tar.gz	\
-	$(GLOG).tar.gz $(GMOCK).tar.gz $(LEVELDB).tar.gz	\
-	$(PROTOBUF).tar.gz $(ZOOKEEPER).tar.gz
-
-CLEAN_EXTRACTED = $(BOOST) $(BOTO) $(DISTRIBUTE) $(GLOG) $(GMOCK)	\
-	$(LEVELDB) $(PROTOBUF) $(ZOOKEEPER)
-
-
-# Convenience library for gmock/gtest.
-check_LTLIBRARIES = libgmock.la
-nodist_libgmock_la_SOURCES = $(GTEST)/src/gtest-all.cc \
-                             $(GMOCK)/src/gmock-all.cc
-libgmock_la_CPPFLAGS = -I$(GTEST)/include -I$(GTEST) \
-                       -I$(GMOCK)/include -I$(GMOCK)
-
-# We list the gmock/gtest sources in BUILT_SOURCES to make sure that
-# the gmock package gets unarchived first.
-BUILT_SOURCES += $(nodist_libgmock_la_SOURCES)
+EXTRA_DIST =		\
+  $(BOTO).zip		\
+  $(DISTRIBUTE).tar.gz	\
+  $(LEVELDB).tar.gz	\
+  $(PROTOBUF).tar.gz	\
+  $(ZOOKEEPER).tar.gz
+
+CLEAN_EXTRACTED =	\
+  $(BOTO)		\
+  $(DISTRIBUTE)		\
+  $(LEVELDB)		\
+  $(PROTOBUF)		\
+  $(ZOOKEEPER)
 
 
 # This is where the magic happens: we use stamp files as dependencies
-# which cause the packages to get extracted as necessary.
+# which cause the packages to get extracted as necessary. We also
+# apply any patches as appropriate.
 %-stamp:: %.tar.gz
 	gzip -d -c $^ | tar xf -
+	test ! -e $(srcdir)/$*.patch || patch -d $* -p1 <$(srcdir)/$*.patch
 	touch $@
 
 
-$(BOOST)/boost: $(BOOST)-stamp
-
 if HAS_PYTHON
 DISTRIBUTE_EGG = \
   $(DISTRIBUTE)/dist/$(DISTRIBUTE)$(PYTHON_EGG_PUREPY_POSTFIX).egg
@@ -80,13 +71,6 @@ $(DISTRIBUTE_EGG): $(DISTRIBUTE)-stamp
 	cd $(DISTRIBUTE) && $(PYTHON) setup.py bdist_egg
 endif
 
-$(GLOG)/libglog.la: $(GLOG)-stamp
-	cd $(GLOG) && ./configure $(CONFIGURE_ARGS) && \
-          $(MAKE) $(AM_MAKEFLAGS)
-
-$(GMOCK)/src/gmock-all.cc: $(GMOCK)-stamp
-
-$(GTEST)/src/gtest-all.cc: $(GMOCK)-stamp
 
 # TODO(charles): Figure out PIC options in our configure.ac or create
 # a configure.ac for leveldb.
@@ -105,9 +89,10 @@ $(ZOOKEEPER)/src/c/libzookeeper_mt.la: $
 	cd $(ZOOKEEPER)/src/c && ./configure $(CONFIGURE_ARGS) && \
           $(MAKE) $(AM_MAKEFLAGS)
 
-THIRD_PARTY_LIBS = $(BOOST)-stamp $(GLOG)/libglog.la		\
-	$(LEVELDB)/libleveldb.a $(PROTOBUF)/src/libprotobuf.la	\
-	$(PROTOBUF)/src/protoc
+THIRD_PARTY_LIBS =			\
+  $(LEVELDB)/libleveldb.a		\
+  $(PROTOBUF)/src/libprotobuf.la	\
+  $(PROTOBUF)/src/protoc
 
 if HAS_PYTHON
   THIRD_PARTY_LIBS += $(DISTRIBUTE_EGG)

Modified: incubator/mesos/trunk/third_party/libprocess/third_party/Makefile.am
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/third_party/libprocess/third_party/Makefile.am?rev=1451092&r1=1451091&r2=1451092&view=diff
==============================================================================
--- incubator/mesos/trunk/third_party/libprocess/third_party/Makefile.am (original)
+++ incubator/mesos/trunk/third_party/libprocess/third_party/Makefile.am Thu Feb 28 05:04:18 2013
@@ -6,7 +6,7 @@
 # packages may be special cases; this Makefile is responsible for
 # passing any special make or configure flags that might be required.
 
-BUILT_SOURCES =
+BUILT_SOURCES = # Initialized to enable using +=.
 
 # We need to add '--srcdir=.' needed because 'make distcheck' adds
 #  '--srcdir=...' when configuring.
@@ -22,13 +22,31 @@ GTEST = $(GMOCK)/gtest
 RY_HTTP_PARSER = ry-http-parser-$(RY_HTTP_PARSER_VERSION)
 LIBEV = libev-$(LIBEV_VERSION)
 
+EXTRA_DIST =			\
+  $(BOOST).tar.gz		\
+  $(GLOG).tar.gz		\
+  $(GMOCK).tar.gz		\
+  $(GPERFTOOLS).tar.gz		\
+  $(RY_HTTP_PARSER).tar.gz	\
+  $(LIBEV).tar.gz		\
+  libev-3.8.patch
+
+CLEAN_EXTRACTED =	\
+  $(BOOST)		\
+  $(GLOG)		\
+  $(GMOCK)		\
+  $(GPERFTOOLS)		\
+  $(RY_HTTP_PARSER)	\
+  $(LIBEV)
 
-EXTRA_DIST = $(BOOST).tar.gz $(GLOG).tar.gz $(GMOCK).tar.gz		\
-	$(GPERFTOOLS).tar.gz $(RY_HTTP_PARSER).tar.gz $(LIBEV).tar.gz	\
-	libev-3.8.patch
 
-CLEAN_EXTRACTED = $(BOOST) $(GLOG) $(GMOCK) $(GPERFTOOLS)		\
-	$(RY_HTTP_PARSER) $(LIBEV)
+# This is where the magic happens: we use stamp files as dependencies
+# which cause the packages to get extracted as necessary. We also
+# apply any patches as appropriate.
+%-stamp:: %.tar.gz
+	gzip -d -c $^ | tar xf -
+	test ! -e $(srcdir)/$*.patch || patch -d $* -p1 <$(srcdir)/$*.patch
+	touch $@
 
 
 # Convenience library for Ryan Dahl's HTTP parser.
@@ -43,23 +61,19 @@ BUILT_SOURCES += $(nodist_libry_http_par
 
 # Convenience library for gmock/gtest.
 check_LTLIBRARIES = libgmock.la
-nodist_libgmock_la_SOURCES = $(GTEST)/src/gtest-all.cc \
-                             $(GMOCK)/src/gmock-all.cc
-libgmock_la_CPPFLAGS = -I$(GTEST)/include -I$(GTEST) \
-                       -I$(GMOCK)/include -I$(GMOCK)
+nodist_libgmock_la_SOURCES =		\
+  $(GTEST)/src/gtest-all.cc		\
+  $(GMOCK)/src/gmock-all.cc
+libgmock_la_CPPFLAGS =			\
+  -I$(GTEST)/include -I$(GTEST)		\
+  -I$(GMOCK)/include -I$(GMOCK)
 
 # We list the sources in BUILT_SOURCES to make sure that the package
 # gets unarchived first.
 BUILT_SOURCES += $(nodist_libgmock_la_SOURCES)
 
-
-# This is where the magic happens: we use stamp files as dependencies
-# which cause the packages to get extracted as necessary. We also
-# apply any patches as appropriate.
-%-stamp:: %.tar.gz
-	gzip -d -c $^ | tar xf -
-	test ! -e $(srcdir)/$*.patch || patch -d $* -p1 <$(srcdir)/$*.patch
-	touch $@
+$(GMOCK)/src/gmock-all.cc: $(GMOCK)-stamp
+$(GTEST)/src/gtest-all.cc: $(GMOCK)-stamp
 
 
 $(BOOST)/boost: $(BOOST)-stamp
@@ -68,8 +82,6 @@ $(GLOG)/libglog.la: $(GLOG)-stamp
 	cd $(GLOG) && ./configure $(CONFIGURE_ARGS) && \
           $(MAKE) $(AM_MAKEFLAGS)
 
-$(GMOCK)/src/gmock-all.cc: $(GMOCK)-stamp
-
 if HAS_GPERFTOOLS
 $(GPERFTOOLS)/libprofiler.la: $(GPERFTOOLS)-build-stamp
 
@@ -79,16 +91,16 @@ $(GPERFTOOLS)-build-stamp: $(GPERFTOOLS)
 	touch $@
 endif
 
-$(GTEST)/src/gtest-all.cc: $(GMOCK)-stamp
-
 $(RY_HTTP_PARSER)/http_parser.c: $(RY_HTTP_PARSER)-stamp
 
 $(LIBEV)/libev.la: $(LIBEV)-stamp
 	cd $(LIBEV) && ./configure $(CONFIGURE_ARGS) && \
           $(MAKE) $(AM_MAKEFLAGS)
 
-THIRD_PARTY_LIBS = $(BOOST)-stamp $(GLOG)/libglog.la	\
-	$(LIBEV)/libev.la
+THIRD_PARTY_LIBS =		\
+  $(BOOST)-stamp		\
+  $(GLOG)/libglog.la		\
+  $(LIBEV)/libev.la
 
 if HAS_GPERFTOOLS
 THIRD_PARTY_LIBS += $(GPERFTOOLS)/libprofiler.la

Modified: incubator/mesos/trunk/third_party/versions.am
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/third_party/versions.am?rev=1451092&r1=1451091&r2=1451092&view=diff
==============================================================================
--- incubator/mesos/trunk/third_party/versions.am (original)
+++ incubator/mesos/trunk/third_party/versions.am Thu Feb 28 05:04:18 2013
@@ -19,10 +19,7 @@
 # third_party packages in exactly one place. For now, however, we
 # still need to update version numbers in src/python/setup.py.in too!
 
-BOOST_VERSION = 1.53.0
 BOTO_VERSION = 2.0b2
 DISTRIBUTE_VERSION = 0.6.26
-GLOG_VERSION = 0.3.1
-GMOCK_VERSION = 1.6.0
 PROTOBUF_VERSION = 2.4.1
 ZOOKEEPER_VERSION = 3.3.4