diff options
author | Jacob Marble <jacobmarble@google.com> | 2016-01-20 15:58:33 -0800 |
---|---|---|
committer | Jacob Marble <jacobmarble@google.com> | 2016-01-21 01:50:09 +0000 |
commit | 2da7e94bf6ba1e6a1363c38320eac6a3f58ed678 (patch) | |
tree | 44ce50002e609af661751f97169d3b9534b8474f | |
parent | 674f0eb973b8ebf08f9abcb45b2271dc510aa2cf (diff) | |
download | libweave-2da7e94bf6ba1e6a1363c38320eac6a3f58ed678.tar.gz |
Change proxied Makefile dependencies to .h.
The third_party dependencies gtest/gmock and libevent are less
confusing when they are proxied by their header files. The compiled
libraries are included implicitly (like the header files before).
Change-Id: Ieb0eae473adfb9811214a40df8334c541e6ff9a3
BUG: 26564098
Reviewed-on: https://weave-review.googlesource.com/2237
Reviewed-by: Vitaly Buka <vitalybuka@google.com>
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | examples/examples.mk | 6 | ||||
-rw-r--r-- | tests.mk | 9 | ||||
-rw-r--r-- | third_party/third_party.mk | 16 |
4 files changed, 13 insertions, 22 deletions
@@ -84,8 +84,8 @@ include file_lists.mk third_party/third_party.mk examples/examples.mk tests.mk weave_obj_files := $(WEAVE_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# TODO(jacobmarble): There are too many libgtest.a deps in non-test targets. Fix. -$(weave_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +# TODO(jacobmarble): There are too many gtest/gmock deps in non-test targets. Fix. +$(weave_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< diff --git a/examples/examples.mk b/examples/examples.mk index a25194c..06266a3 100644 --- a/examples/examples.mk +++ b/examples/examples.mk @@ -7,8 +7,7 @@ examples_provider_obj_files := $(EXAMPLES_PROVIDER_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libevent.a, but the headers files in third_party/include. -$(examples_provider_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libevent.a +$(examples_provider_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/event2/event.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< @@ -16,8 +15,7 @@ out/$(BUILD_MODE)/examples_provider.a : $(examples_provider_obj_files) rm -f $@ $(AR) crsT $@ $^ -# We don't need libevent.a, but the headers files in third_party/include. -out/$(BUILD_MODE)/examples/daemon/%.o : examples/daemon/%.cc third_party/lib/libevent.a +out/$(BUILD_MODE)/examples/daemon/%.o : examples/daemon/%.cc third_party/include/event2/event.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< @@ -15,8 +15,7 @@ endif weave_test_obj_files := $(WEAVE_TEST_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(weave_test_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(weave_test_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< @@ -25,8 +24,7 @@ out/$(BUILD_MODE)/libweave-test.a : $(weave_test_obj_files) weave_unittest_obj_files := $(WEAVE_UNITTEST_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(weave_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(weave_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< @@ -41,8 +39,7 @@ test : out/$(BUILD_MODE)/libweave_testrunner weave_exports_unittest_obj_files := $(WEAVE_EXPORTS_UNITTEST_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(weave_exports_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(weave_exports_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< diff --git a/third_party/third_party.mk b/third_party/third_party.mk index 91e4cf4..c3e1cf0 100644 --- a/third_party/third_party.mk +++ b/third_party/third_party.mk @@ -7,29 +7,25 @@ third_party_chromium_base_obj_files := $(THIRD_PARTY_CHROMIUM_BASE_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(third_party_chromium_base_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(third_party_chromium_base_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< third_party_chromium_base_unittest_obj_files := $(THIRD_PARTY_CHROMIUM_BASE_UNITTEST_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(third_party_chromium_base_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(third_party_chromium_base_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< third_party_chromium_crypto_obj_files := $(THIRD_PARTY_CHROMIUM_CRYPTO_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(third_party_chromium_crypto_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(third_party_chromium_crypto_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< third_party_chromium_crypto_unittest_obj_files := $(THIRD_PARTY_CHROMIUM_CRYPTO_UNITTEST_SRC_FILES:%.cc=out/$(BUILD_MODE)/%.o) -# We don't need libgtest.a, but the headers files in third_party/include. -$(third_party_chromium_crypto_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/lib/libgtest.a +$(third_party_chromium_crypto_unittest_obj_files) : out/$(BUILD_MODE)/%.o : %.cc third_party/include/gtest/gtest.h mkdir -p $(dir $@) $(CXX) $(DEFS_$(BUILD_MODE)) $(INCLUDES) $(CFLAGS) $(CFLAGS_$(BUILD_MODE)) $(CFLAGS_CC) -c -o $@ $< @@ -54,7 +50,7 @@ $(third_party_libuweave_obj_files) : out/$(BUILD_MODE)/%.o : %.c ### # libgtest and libgmock (third_party, downloaded on build) -third_party/lib/libgtest.a : +third_party/include/gtest/gtest.h : @echo Downloading and building libgtest and libgmock... third_party/get_gtest.sh @echo Finished downloading and building libgtest and libgmock. @@ -67,7 +63,7 @@ clean-gtest : ### # libevent (third_party, downloaded on build) -third_party/lib/libevent.a : +third_party/include/event2/event.h : @echo Downloading and building libevent... DISABLE_LIBEVENT_TEST=1 third_party/get_libevent.sh @echo Finished downloading and building libevent. |