1d161c7b (kx 2023-04-07 10:08:13 +0300 1) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 2) # Project Home:
1d161c7b (kx 2023-04-07 10:08:13 +0300 3) # ============
1d161c7b (kx 2023-04-07 10:08:13 +0300 4) # https://git-scm.com
1d161c7b (kx 2023-04-07 10:08:13 +0300 5) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 6) # Download:
1d161c7b (kx 2023-04-07 10:08:13 +0300 7) # ========
1d161c7b (kx 2023-04-07 10:08:13 +0300 8) # https://www.kernel.org/pub/software/scm/git
1d161c7b (kx 2023-04-07 10:08:13 +0300 9) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 10) # Git:
1d161c7b (kx 2023-04-07 10:08:13 +0300 11) # ===
1d161c7b (kx 2023-04-07 10:08:13 +0300 12) # https://git.kernel.org/pub/scm/git/git.git
1d161c7b (kx 2023-04-07 10:08:13 +0300 13) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 14)
1d161c7b (kx 2023-04-07 10:08:13 +0300 15) url = https://git.kernel.org/pub/scm/git
1d161c7b (kx 2023-04-07 10:08:13 +0300 16)
1d161c7b (kx 2023-04-07 10:08:13 +0300 17) repo_name = git
1d161c7b (kx 2023-04-07 10:08:13 +0300 18)
1d161c7b (kx 2023-04-07 10:08:13 +0300 19) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 20) # List of revisions to be extracted:
1d161c7b (kx 2023-04-07 10:08:13 +0300 21) # =================================
1d161c7b (kx 2023-04-07 10:08:13 +0300 22) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 23) # hash | version
1d161c7b (kx 2023-04-07 10:08:13 +0300 24) # ----------------------------------------+--------
1d161c7b (kx 2023-04-07 10:08:13 +0300 25) revisions = e0b44509711b2d9090f2dcf987f40c0bce248774:2.34.1
1d161c7b (kx 2023-04-07 10:08:13 +0300 26) revisions += 73876f4861cd3d187a4682290ab75c9dccadbc56:2.40.0
1d161c7b (kx 2023-04-07 10:08:13 +0300 27)
1d161c7b (kx 2023-04-07 10:08:13 +0300 28) git_repo = .git_clone
1d161c7b (kx 2023-04-07 10:08:13 +0300 29)
1d161c7b (kx 2023-04-07 10:08:13 +0300 30) suffix = tar.xz
1d161c7b (kx 2023-04-07 10:08:13 +0300 31)
1d161c7b (kx 2023-04-07 10:08:13 +0300 32) versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
1d161c7b (kx 2023-04-07 10:08:13 +0300 33)
1d161c7b (kx 2023-04-07 10:08:13 +0300 34) tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
1d161c7b (kx 2023-04-07 10:08:13 +0300 35) sha1s = $(addsuffix .sha1sum, $(tarballs))
1d161c7b (kx 2023-04-07 10:08:13 +0300 36)
1d161c7b (kx 2023-04-07 10:08:13 +0300 37) TARGETS = repository_clean
1d161c7b (kx 2023-04-07 10:08:13 +0300 38)
1d161c7b (kx 2023-04-07 10:08:13 +0300 39) all: $(TARGETS)
1d161c7b (kx 2023-04-07 10:08:13 +0300 40)
1d161c7b (kx 2023-04-07 10:08:13 +0300 41) .PHONY: downloads_clean repository_clean
1d161c7b (kx 2023-04-07 10:08:13 +0300 42)
1d161c7b (kx 2023-04-07 10:08:13 +0300 43) $(git_repo):
1d161c7b (kx 2023-04-07 10:08:13 +0300 44) @echo -e "\n======= Clone $(repo_name).git repository =======\n"
1d161c7b (kx 2023-04-07 10:08:13 +0300 45) @rm -rf $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 46) @git clone $(url)/$(repo_name).git $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 47) @touch $@
1d161c7b (kx 2023-04-07 10:08:13 +0300 48)
1d161c7b (kx 2023-04-07 10:08:13 +0300 49) $(tarballs): $(git_repo)
1d161c7b (kx 2023-04-07 10:08:13 +0300 50) @for revision in $(revisions) ; do \
1d161c7b (kx 2023-04-07 10:08:13 +0300 51) hash=`echo $$revision | cut -f 1 -d ':'` ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 52) version=`echo $$revision | cut -f 2 -d ':'` ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 53) if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
1d161c7b (kx 2023-04-07 10:08:13 +0300 54) echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 55) ( cd $(repo_name) && \
1d161c7b (kx 2023-04-07 10:08:13 +0300 56) git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
1d161c7b (kx 2023-04-07 10:08:13 +0300 57) xz >../$(repo_name)-$$version.$(suffix) ) ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 58) fi ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 59) done
1d161c7b (kx 2023-04-07 10:08:13 +0300 60)
1d161c7b (kx 2023-04-07 10:08:13 +0300 61) $(sha1s): %.$(suffix).sha1sum : %.$(suffix)
1d161c7b (kx 2023-04-07 10:08:13 +0300 62) @for tarball in $< ; do \
1d161c7b (kx 2023-04-07 10:08:13 +0300 63) echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 64) sha1sum --binary $$tarball > $$tarball.sha1sum ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 65) done
1d161c7b (kx 2023-04-07 10:08:13 +0300 66)
1d161c7b (kx 2023-04-07 10:08:13 +0300 67) repository_clean: $(sha1s)
1d161c7b (kx 2023-04-07 10:08:13 +0300 68) @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
1d161c7b (kx 2023-04-07 10:08:13 +0300 69) @rm -rf $(git_repo) $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 70)
1d161c7b (kx 2023-04-07 10:08:13 +0300 71) downloads_clean:
1d161c7b (kx 2023-04-07 10:08:13 +0300 72) @rm -rf $(tarballs) $(sha1s)
1d161c7b (kx 2023-04-07 10:08:13 +0300 73) @rm -rf $(git_repo) $(repo_name)