aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2010-01-03 18:00:28 +0000
committerLars-Peter Clausen <lars@metafoo.de>2010-01-03 18:00:28 +0000
commit144fd07cd846e77439125feab06ee4af3f23cec3 (patch)
tree34afd08cf003bf390784fdd88b54b59324495a2a
parent41a1a80059f06e975604679cba3d866944f48067 (diff)
downloadupstream-144fd07cd846e77439125feab06ee4af3f23cec3.tar.gz
upstream-144fd07cd846e77439125feab06ee4af3f23cec3.tar.bz2
upstream-144fd07cd846e77439125feab06ee4af3f23cec3.zip
Prevent unnecessary host package rebuilds.
Sometimes `make install` touches a file inside the build directory, so it is betterr to create the build stamp after calling `make install` otherwise the package is going to be rebuild even though nothing really changed. SVN-Revision: 19021
-rw-r--r--include/host-build.mk25
1 files changed, 14 insertions, 11 deletions
diff --git a/include/host-build.mk b/include/host-build.mk
index 8eb49c8f44..6324276a70 100644
--- a/include/host-build.mk
+++ b/include/host-build.mk
@@ -130,17 +130,8 @@ ifndef DUMP
touch $$@
$(call Host/Exports,$(HOST_STAMP_BUILT))
- $(HOST_STAMP_BUILT): $(HOST_STAMP_CONFIGURED)
- $(call Host/Compile)
- touch $$@
-
- $(HOST_STAMP_INSTALLED): $(HOST_STAMP_BUILT)
- $(call Host/Install)
- mkdir -p $$(shell dirname $$@)
- touch $$@
-
ifdef Host/Install
- host-install: $(HOST_STAMP_INSTALLED)
+ host-install: $(if $(STAMP_BUILT),$(HOST_STAMP_BUILT),$(HOST_STAMP_INSTALLED))
endif
ifndef STAMP_BUILT
@@ -149,8 +140,20 @@ ifndef DUMP
install: host-install
clean: host-clean
update: host-update
+
+ $(HOST_STAMP_BUILT): $(HOST_STAMP_CONFIGURED)
+ $(call Host/Compile)
+ touch $$@
+
+ $(HOST_STAMP_INSTALLED): $(HOST_STAMP_BUILT)
+ $(call Host/Install)
+ mkdir -p $$(shell dirname $$@)
+ touch $$@
else
- host-compile: $(HOST_STAMP_INSTALLED)
+ $(HOST_STAMP_BUILT): $(HOST_STAMP_CONFIGURED)
+ $(call Host/Compile)
+ $(call Host/Install)
+ touch $$@
endif
host-prepare: $(HOST_STAMP_PREPARED)
host-configure: $(HOST_STAMP_CONFIGURED)