SF.net SVN: gar:[25938] csw/mgar/gar/v2-hg
cgrzemba at users.sourceforge.net
cgrzemba at users.sourceforge.net
Wed Sep 14 10:53:52 CEST 2016
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.
More information about the devel
mailing list