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