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://github.com/arsv/perl-cross
1d161c7b (kx 2023-04-07 10:08:13 +0300 5) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 6) # Git:
1d161c7b (kx 2023-04-07 10:08:13 +0300 7) # https://github.com/arsv/perl-cross.git
1d161c7b (kx 2023-04-07 10:08:13 +0300 8) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 9) # Clone:
1d161c7b (kx 2023-04-07 10:08:13 +0300 10) # =====
1d161c7b (kx 2023-04-07 10:08:13 +0300 11) # git clone https://github.com/arsv/perl-cross.git
1d161c7b (kx 2023-04-07 10:08:13 +0300 12) #
1d161c7b (kx 2023-04-07 10:08:13 +0300 13)
1d161c7b (kx 2023-04-07 10:08:13 +0300 14) url = https://github.com/arsv
1d161c7b (kx 2023-04-07 10:08:13 +0300 15)
1d161c7b (kx 2023-04-07 10:08:13 +0300 16) repo_name = perl-cross
1d161c7b (kx 2023-04-07 10:08:13 +0300 17)
74cbaad0 (kx 2025-02-22 11:15:08 +0300 18) versions = 1.2.2 1.2.3 1.3 1.3.3 1.3.4 1.3.6 1.3.7 1.4 1.6 1.6.1
1d161c7b (kx 2023-04-07 10:08:13 +0300 19)
1d161c7b (kx 2023-04-07 10:08:13 +0300 20) git_repo = .git_clone
1d161c7b (kx 2023-04-07 10:08:13 +0300 21) tarballs = $(addsuffix .tar.xz, $(addprefix $(repo_name)-, $(versions)))
1d161c7b (kx 2023-04-07 10:08:13 +0300 22) sha1s = $(addsuffix .sha1sum, $(tarballs))
1d161c7b (kx 2023-04-07 10:08:13 +0300 23)
1d161c7b (kx 2023-04-07 10:08:13 +0300 24) releases = 5.22.1 5.26.1 5.28.1 5.30.0 5.30.2 5.31.4 5.32.0 5.34.0 5.36.0
74cbaad0 (kx 2025-02-22 11:15:08 +0300 25) releases += 5.37.0 5.37.4 5.37.9 5.40.0 5.40.1
1d161c7b (kx 2023-04-07 10:08:13 +0300 26)
1d161c7b (kx 2023-04-07 10:08:13 +0300 27)
1d161c7b (kx 2023-04-07 10:08:13 +0300 28) TARGETS = repository_clean
1d161c7b (kx 2023-04-07 10:08:13 +0300 29)
1d161c7b (kx 2023-04-07 10:08:13 +0300 30)
1d161c7b (kx 2023-04-07 10:08:13 +0300 31) all: $(TARGETS)
1d161c7b (kx 2023-04-07 10:08:13 +0300 32)
1d161c7b (kx 2023-04-07 10:08:13 +0300 33) .PHONY: downloads_clean repository_clean
1d161c7b (kx 2023-04-07 10:08:13 +0300 34)
1d161c7b (kx 2023-04-07 10:08:13 +0300 35) $(git_repo):
1d161c7b (kx 2023-04-07 10:08:13 +0300 36) @echo -e "\n======= Clone $(repo_name).git repository =======\n"
1d161c7b (kx 2023-04-07 10:08:13 +0300 37) @rm -rf $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 38) @git clone $(url)/$(repo_name).git $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 39) @touch $@
1d161c7b (kx 2023-04-07 10:08:13 +0300 40)
1d161c7b (kx 2023-04-07 10:08:13 +0300 41) $(tarballs): $(git_repo)
1d161c7b (kx 2023-04-07 10:08:13 +0300 42) @for version in $(versions) ; do \
1d161c7b (kx 2023-04-07 10:08:13 +0300 43) tag=`echo $$version` ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 44) if [ ! -f $(repo_name)-$$version.tar.xz ]; then \
1d161c7b (kx 2023-04-07 10:08:13 +0300 45) echo -e "\n======= Creating '$(repo_name)-$$version.tar.xz' snapshot =======" ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 46) ( cd $(repo_name) && \
1d161c7b (kx 2023-04-07 10:08:13 +0300 47) git archive --format=tar --prefix=$(repo_name)-$$version/ $$tag | \
1d161c7b (kx 2023-04-07 10:08:13 +0300 48) xz >../$(repo_name)-$$version.tar.xz ) ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 49) fi ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 50) mkdir -p $$version ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 51) tar -xJf $(repo_name)-$$version.tar.xz ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 52) ( cd $(repo_name)-$$version && \
1d161c7b (kx 2023-04-07 10:08:13 +0300 53) for release in $(releases) ; do \
1d161c7b (kx 2023-04-07 10:08:13 +0300 54) rel=$(repo_name)-$$release.tar.xz ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 55) tar -cJf ../$$version/$$rel \
1d161c7b (kx 2023-04-07 10:08:13 +0300 56) --exclude README.md \
1d161c7b (kx 2023-04-07 10:08:13 +0300 57) --exclude LICENSE \
1d161c7b (kx 2023-04-07 10:08:13 +0300 58) --exclude Artistic \
1d161c7b (kx 2023-04-07 10:08:13 +0300 59) --exclude Copying \
1d161c7b (kx 2023-04-07 10:08:13 +0300 60) --exclude 0pack.sh \
1d161c7b (kx 2023-04-07 10:08:13 +0300 61) --xform "s!^!perl-$$release/!" \
1d161c7b (kx 2023-04-07 10:08:13 +0300 62) * ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 63) ( cd ../$$version ; sha1sum --binary $$rel > $$rel.sha1sum ) ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 64) done ) ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 65) rm -rf $(repo_name)-$$version ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 66) done
1d161c7b (kx 2023-04-07 10:08:13 +0300 67)
1d161c7b (kx 2023-04-07 10:08:13 +0300 68) $(sha1s): %.tar.xz.sha1sum : %.tar.xz
1d161c7b (kx 2023-04-07 10:08:13 +0300 69) @for tarball in $< ; do \
1d161c7b (kx 2023-04-07 10:08:13 +0300 70) echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 71) sha1sum --binary $$tarball > $$tarball.sha1sum ; \
1d161c7b (kx 2023-04-07 10:08:13 +0300 72) done
1d161c7b (kx 2023-04-07 10:08:13 +0300 73)
1d161c7b (kx 2023-04-07 10:08:13 +0300 74) repository_clean: $(sha1s)
1d161c7b (kx 2023-04-07 10:08:13 +0300 75) @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
1d161c7b (kx 2023-04-07 10:08:13 +0300 76) @rm -rf $(git_repo) $(repo_name)
1d161c7b (kx 2023-04-07 10:08:13 +0300 77)
1d161c7b (kx 2023-04-07 10:08:13 +0300 78) downloads_clean:
1d161c7b (kx 2023-04-07 10:08:13 +0300 79) @rm -rf $(tarballs) $(sha1s) $(versions)
1d161c7b (kx 2023-04-07 10:08:13 +0300 80) @rm -rf $(git_repo) $(repo_name)