Subversion Repositories avr32-toolchain

Compare Revisions

Ignore whitespace Rev 9 → Rev 10

/branches/try_gdb/Makefile
68,6 → 68,9
AUTOCONF = $(SUPP_PREFIX)/bin/autoconf
AUTOMAKE = $(SUPP_PREFIX)/bin/automake
 
STAMP_DIR := $(CURDIR)/stamps
DOWNLOAD_DIR := $(CURDIR)/downloads
 
ifeq ($(strip $(BUG_URL)),)
BUG_URL = https://github.com/jsnyder/avr32-toolchain
endif
142,6 → 145,72
@echo "PKG_VERSION=$(PKG_VERSION)"
@echo "BUG_URL=$(BUG_URL)"
 
 
############ MACROS for the lazy people ;-) ############
 
ifeq ($(strip $(MAKEFLAGS)),s)
define quiet_text
@echo "$1"
endef
else
define quiet_text
endef
endif
 
## remove a stamp
define rm_stamp
rm -f $(STAMP_DIR)/$(1)
endef
 
## create the stamp directory if not existing and the stamp
define make_stamp
@[ -d $(STAMP_DIR) ] || mkdir $(STAMP_DIR)
date > $(STAMP_DIR)/$(1)
endef
 
## create the download rule and force download rule
define DOWNLOAD_template
download-$(1): $(DOWNLOAD_DIR)/$$($(1)_ARCHIVE)
download-$(1)-f $(DOWNLOAD_DIR)/$$($(1)_ARCHIVE): $(DOWNLOAD_DIR)
cd $(DOWNLOAD_DIR) && curl -LO $$($(1)_URL)
PHONY += download-$(1) download-$(1)-f
endef
 
## extract commands
EXT_BZ2 := tar -jxf
EXT_TGZ := tar -xf
EXT_ZIP := unzip -o
 
## create the extract rule and force extract rule
define EXTRACT_template
extract-$(1): $(STAMP_DIR)/extract-$(1)
extract-$(1)-f $(STAMP_DIR)/extract-$(1): $(DOWNLOAD_DIR)/$$($(1)_ARCHIVE)
@(rm -rf autoconf-*; \
t1=`openssl md5 $$< | cut -f 2 -d " " -` && \
[ "$$$$t1" = "$$($(1)_MD5)" ] || \
( echo "Bad Checksum! Please remove the following file and retry: $$<" && false ))
$(call quiet_text,"Extracting $$($(1)_ARCHIVE)")
$($(2)) $$<
$(call make_stamp,extract-$(1))
PHONY += extract-$(1) extract-$(1)-f
endef
 
$(DOWNLOAD_DIR):
mkdir $(DOWNLOAD_DIR)
 
$(eval $(call DOWNLOAD_template,AUTOCONF))
$(eval $(call EXTRACT_template,AUTOCONF,EXT_BZ2))
 
.PHONY: $(PHONY)
 
 
.PHONY: tst2 tst3
tst2:
$(call make_stamp,JES)
tst3:
$(call rm_stamp,JES)
 
 
.PHONY: install-note
install-note: install-tools
@echo
170,21 → 239,21
 
############# SUPP: AUTOCONF ############
 
.PHONY: download-autoconf download-autoconf-force
download-autoconf: downloads/$(AUTOCONF_ARCHIVE)
download-autoconf-force downloads/$(AUTOCONF_ARCHIVE):
[ -d downloads ] || mkdir downloads ;
cd downloads && curl -LO $(AUTOCONF_URL)
##.PHONY: download-autoconf download-autoconf-force
##download-autoconf: downloads/$(AUTOCONF_ARCHIVE)
##download-autoconf-force downloads/$(AUTOCONF_ARCHIVE):
## [ -d downloads ] || mkdir downloads ;
## cd downloads && curl -LO $(AUTOCONF_URL)
 
.PHONY: extract-autoconf extract-autoconf-force
extract-autoconf: stamps/extract-autoconf
extract-autoconf-force stamps/extract-autoconf: downloads/$(AUTOCONF_ARCHIVE)
@(t1=`openssl md5 $< | cut -f 2 -d " " -` && \
[ "$$t1" = "$(AUTOCONF_MD5)" ] || \
( echo "Bad Checksum! Please remove the following file and retry: $<" && false ))
tar -jxf $< ;
[ -d stamps ] || mkdir stamps ;
touch stamps/extract-autoconf;
##.PHONY: extract-autoconf extract-autoconf-force
##extract-autoconf: stamps/extract-autoconf
##extract-autoconf-force stamps/extract-autoconf: downloads/$(AUTOCONF_ARCHIVE)
## @(t1=`openssl md5 $< | cut -f 2 -d " " -` && \
## [ "$$t1" = "$(AUTOCONF_MD5)" ] || \
## ( echo "Bad Checksum! Please remove the following file and retry: $<" && false ))
## tar -jxf $< ;
## [ -d stamps ] || mkdir stamps ;
## touch stamps/extract-autoconf;
 
.PHONY: build-autoconf build-autoconf-force
build-autoconf: stamps/build-autoconf