Revision: 25938 http://sourceforge.net/p/gar/code/25938 Author: cgrzemba Date: 2016-09-14 08:53:52 +0000 (Wed, 14 Sep 2016) Log Message: ----------- made some improvements for using GARCH with mercurial repository
Modified Paths: -------------- csw/mgar/gar/v2-hg/gar.lib.mk csw/mgar/gar/v2-hg/gar.mk Modified: csw/mgar/gar/v2-hg/gar.lib.mk =================================================================== --- csw/mgar/gar/v2-hg/gar.lib.mk 2016-09-14 07:28:20 UTC (rev 25937) +++ csw/mgar/gar/v2-hg/gar.lib.mk 2016-09-14 08:53:52 UTC (rev 25938) @@ -52,8 +52,12 @@ ifdef HG_REPOS URLS += $(foreach R,$(HG_REPOS),$(foreach hgproto,hg http file ssh,$(call hgsubst,$(hgproto),$(R)))) +NOEXTRACT += $(call GITPROJ,$(HG_REPOS)).hg endif +# filename used for mercurial archive +GARCHDISTNAME ?= $(DISTNAME).tar.gz + # Download the file if and only if it doesn't have a preexisting # checksum file. Loop through available URLs and stop when you # get one that doesn't return an error code. @@ -77,7 +81,7 @@ esac; \ break; \ done; ) 2>&1 | grep -v '^$(MAKE)'; \ - if test -r $(@:%.hg=%) ; then : ; else \ + if [ -r $(@:%.hg=%) ] || [ $* = $(GARCHDISTNAME) -a ! -z $(HG_REPOS) ]; then : ; else \ echo '(!!!) Failed to download $@!' 1>&2; \ false; \ fi; \ @@ -569,9 +573,12 @@ # checksummed files $(GARCHIVEDIR)/%: $(GARCHIVEDIR) + $(if $(filter %.hg,$*),(cd $(DOWNLOADDIR)/$(*:%.hg=%) && \ + hg archive --prefix=$(DISTNAME)/ --rev=$(call HG_TREEISH,$(*:%.hg=%)) --type tar - | gzip > $(GARCHIVEDIR)/$(GARCHDISTNAME) && \ + rm -f $(GARCHDISTNAME) && ln -s $(GARCHIVEDIR)/$(GARCHDISTNAME) . ), \ @if [ -h $(DOWNLOADDIR)/$* ]; then :; else \ gcp -Lr $(DOWNLOADDIR)/$* $@; \ - fi + fi ) #################### EXTRACT RULES #################### @@ -652,8 +659,8 @@ ( cd $(abspath $(DOWNLOADDIR))/$*/; git --bare archive --prefix=$(NAME)-$(VERSION)/ $(call GIT_TREEISH,$*)) | gtar -xf - -C $(EXTRACTDIR) @$(MAKECOOKIE) hg-extract-%: - @echo " ===> Extracting Mercurial Repo $(DOWNLOADDIR)/$* (Tag: $(call HG_TREEISH,$*))" - ( cd $(abspath $(DOWNLOADDIR))/$*/; hg archive --prefix=$(DISTNAME)/ --rev=$(call HG_TREEISH,$*) --type tar -)| gtar -xf - -C $(EXTRACTDIR) + @echo " ===> Extracting Mercurial Repo $(DOWNLOADDIR)/$* (Tag: $(call HG_TREEISH,$(*:%.hg=%)))" + ( cd $(abspath $(DOWNLOADDIR))/$*/; hg archive --prefix=$(DISTNAME)/ --rev=$(call HG_TREEISH,$(*:%.hg=%)) --type tar -)| gtar -xf - -C $(EXTRACTDIR) @$(MAKECOOKIE) # rule to extract files with unzip Modified: csw/mgar/gar/v2-hg/gar.mk =================================================================== --- csw/mgar/gar/v2-hg/gar.mk 2016-09-14 07:28:20 UTC (rev 25937) +++ csw/mgar/gar/v2-hg/gar.mk 2016-09-14 08:53:52 UTC (rev 25938) @@ -385,7 +385,7 @@ MAKESUM_TARGETS = $(filter-out $(_NOCHECKSUM) $(NOCHECKSUM),$(ALLFILES)) -makesum: fetch $(addprefix $(DOWNLOADDIR)/,$(MAKESUM_TARGETS)) $(GARCHIVE_TARGETS) +makesum: fetch $(GARCHIVE_TARGETS) $(addprefix $(DOWNLOADDIR)/,$(MAKESUM_TARGETS)) @if test "x$(MAKESUM_TARGETS)" != "x"; then \ (cd $(DOWNLOADDIR) && $(md5sum) $(MAKESUM_TARGETS)) > $(CHECKSUM_FILE) ; \ echo "Checksums made for $(MAKESUM_TARGETS)" ; \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.