changeset 433:db016ea4547c

merge
author Volker Grabsch <vog@notjusthosting.com>
date Wed, 02 Sep 2009 11:09:58 +0200
parents e77981de8c92 (diff) a4a3000f91d6 (current diff)
children 7fdb6628d83a
files
diffstat 1 files changed, 39 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Wed Sep 02 11:09:40 2009 +0200
+++ b/Makefile	Wed Sep 02 11:09:58 2009 +0200
@@ -104,27 +104,50 @@
 
 define PKG_RULE
 .PHONY: download-$(1)
-download-$(1): $(addprefix download-only-,$($(1)_DEPS)) download-only-$(1)
-
-.PHONY: download-only-$(1)
-download-only-$(1): $(TOP_DIR)/src/$(1).mk
+download-$(1): $(addprefix download-,$($(1)_DEPS))
 	[ -d '$(PKG_DIR)' ] || mkdir -p '$(PKG_DIR)'
 	if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \
 	    $(call DOWNLOAD_PKG_ARCHIVE,$(1)); \
 	    $(call CHECK_PKG_ARCHIVE,$(1)) || { echo 'Wrong checksum!'; exit 1; }; \
-	    fi
+	fi
 
 .PHONY: $(1)
 $(1): $(PREFIX)/installed-$(1)
 $(PREFIX)/installed-$(1): $(TOP_DIR)/src/$(1).mk \
                           $(wildcard $(TOP_DIR)/src/$(1)-*.patch) \
                           $(addprefix $(PREFIX)/installed-,$($(1)_DEPS))
-	[ -d '$(PREFIX)' ] || mkdir -p '$(PREFIX)'
-	[ -d '$(PKG_DIR)' ] || mkdir -p '$(PKG_DIR)'
-	if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \
-	    $(call DOWNLOAD_PKG_ARCHIVE,$(1)); \
-	    $(call CHECK_PKG_ARCHIVE,$(1)) || { echo 'Wrong checksum!'; exit 1; }; \
-	    fi
+	@[ -d '$(PREFIX)' ] || mkdir -p '$(PREFIX)'
+	@[ -d '$(PKG_DIR)' ] || mkdir -p '$(PKG_DIR)'
+	@if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \
+	    echo '[download] $(1)'; \
+	    $(call DOWNLOAD_PKG_ARCHIVE,$(1)) &> '$(PREFIX)/log-$(1)'; \
+	    if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \
+	        echo; \
+	        echo 'Wrong checksum of package $(1)!'; \
+	        echo '------------------------------------------------------------'; \
+	        tail -n 10 '$(PREFIX)/log-$(1)' | $(SED) -n '/./p'; \
+	        echo '------------------------------------------------------------'; \
+	        echo '[log]      $(PREFIX)/log-$(1)'; \
+	        echo; \
+	        exit 1; \
+	    fi; \
+	fi
+	@echo '[build]    $(1)'
+	@if (time $(MAKE) -f '$(MAKEFILE)' 'build-only-$(1)') &> '$(PREFIX)/log-$(1)'; then \
+	    echo '[done]     $(1)'; \
+	else \
+	    echo; \
+	    echo 'Failed to build package $(1)!'; \
+	    echo '------------------------------------------------------------'; \
+	    tail -n 10 '$(PREFIX)/log-$(1)' | $(SED) -n '/./p'; \
+	    echo '------------------------------------------------------------'; \
+	    echo '[log]      $(PREFIX)/log-$(1)'; \
+	    echo; \
+	    exit 1; \
+	fi
+
+.PHONY: build-only-$(1)
+build-only-$(1):
 	$(if $(value $(1)_BUILD),
 	    rm -rf   '$(2)'
 	    mkdir -p '$(2)'
@@ -135,13 +158,14 @@
 	    $$(call $(1)_BUILD,$(2)/$($(1)_SUBDIR))
 	    rm -rfv  '$(2)'
 	    ,)
-	touch '$$@'
+	touch '$(PREFIX)/installed-$(1)'
 endef
 $(foreach PKG,$(PKGS),$(eval $(call PKG_RULE,$(PKG),$(call TMP_DIR,$(PKG)))))
 
 .PHONY: strip
 strip:
 	rm -rf \
+	    '$(PREFIX)'/log-* \
 	    '$(PREFIX)/include' \
 	    '$(PREFIX)/info' \
 	    '$(PREFIX)/lib/libiberty.a' \
@@ -195,9 +219,9 @@
 
 .PHONY: dist
 dist:
-	[ -d '$(DIST_DIR)' ]          || mkdir '$(DIST_DIR)'
-	[ -d '$(DIST_DIR)/web' ]      || mkdir '$(DIST_DIR)/web'
-	[ -d '$(DIST_DIR)/releases' ] || mkdir '$(DIST_DIR)/releases'
+	[ -d '$(DIST_DIR)' ]          || mkdir -p '$(DIST_DIR)'
+	[ -d '$(DIST_DIR)/web' ]      || mkdir    '$(DIST_DIR)/web'
+	[ -d '$(DIST_DIR)/releases' ] || mkdir    '$(DIST_DIR)/releases'
 	rm -rf '$(DIST_DIR)/mingw-cross-env-$(VERSION)'
 	mkdir  '$(DIST_DIR)/mingw-cross-env-$(VERSION)'
 	mkdir  '$(DIST_DIR)/mingw-cross-env-$(VERSION)/doc'