34d62715 (kx 2023-05-17 21:35:26 +0300 1) #
34d62715 (kx 2023-05-17 21:35:26 +0300 2) # Project Home:
34d62715 (kx 2023-05-17 21:35:26 +0300 3) # ============
34d62715 (kx 2023-05-17 21:35:26 +0300 4) # https://dino.im
34d62715 (kx 2023-05-17 21:35:26 +0300 5) #
34d62715 (kx 2023-05-17 21:35:26 +0300 6) # GitHub:
34d62715 (kx 2023-05-17 21:35:26 +0300 7) # ======
34d62715 (kx 2023-05-17 21:35:26 +0300 8) # https://github.com/dino/dino
34d62715 (kx 2023-05-17 21:35:26 +0300 9) #
34d62715 (kx 2023-05-17 21:35:26 +0300 10) # Clone:
34d62715 (kx 2023-05-17 21:35:26 +0300 11) # =====
34d62715 (kx 2023-05-17 21:35:26 +0300 12) # git clone https://github.com/dino/dino.git
34d62715 (kx 2023-05-17 21:35:26 +0300 13) #
34d62715 (kx 2023-05-17 21:35:26 +0300 14)
34d62715 (kx 2023-05-17 21:35:26 +0300 15) url = https://github.com/dino
34d62715 (kx 2023-05-17 21:35:26 +0300 16)
34d62715 (kx 2023-05-17 21:35:26 +0300 17) repo_name = dino
34d62715 (kx 2023-05-17 21:35:26 +0300 18) pkg_name = dino
34d62715 (kx 2023-05-17 21:35:26 +0300 19) suffix = tar.xz
34d62715 (kx 2023-05-17 21:35:26 +0300 20)
34d62715 (kx 2023-05-17 21:35:26 +0300 21) versions = 0.4.2
34d62715 (kx 2023-05-17 21:35:26 +0300 22)
34d62715 (kx 2023-05-17 21:35:26 +0300 23) # List of tags to be extracted:
34d62715 (kx 2023-05-17 21:35:26 +0300 24) TAGS = $(versions)
34d62715 (kx 2023-05-17 21:35:26 +0300 25)
34d62715 (kx 2023-05-17 21:35:26 +0300 26) git_repo = .git_clone
34d62715 (kx 2023-05-17 21:35:26 +0300 27) tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
34d62715 (kx 2023-05-17 21:35:26 +0300 28) sha1s = $(addsuffix .sha1sum, $(tarballs))
34d62715 (kx 2023-05-17 21:35:26 +0300 29)
34d62715 (kx 2023-05-17 21:35:26 +0300 30) TARGETS = repository_clean
34d62715 (kx 2023-05-17 21:35:26 +0300 31)
34d62715 (kx 2023-05-17 21:35:26 +0300 32)
34d62715 (kx 2023-05-17 21:35:26 +0300 33) all: $(TARGETS)
34d62715 (kx 2023-05-17 21:35:26 +0300 34)
34d62715 (kx 2023-05-17 21:35:26 +0300 35) .PHONY: downloads_clean repository_clean
34d62715 (kx 2023-05-17 21:35:26 +0300 36)
34d62715 (kx 2023-05-17 21:35:26 +0300 37) $(git_repo):
34d62715 (kx 2023-05-17 21:35:26 +0300 38) @echo -e "\n======= Clone $(repo_name).git repository =======\n"
34d62715 (kx 2023-05-17 21:35:26 +0300 39) @rm -rf $(repo_name)
34d62715 (kx 2023-05-17 21:35:26 +0300 40) @git clone $(url)/$(repo_name).git $(repo_name)
34d62715 (kx 2023-05-17 21:35:26 +0300 41) @touch $@
34d62715 (kx 2023-05-17 21:35:26 +0300 42)
34d62715 (kx 2023-05-17 21:35:26 +0300 43) $(tarballs): $(git_repo)
34d62715 (kx 2023-05-17 21:35:26 +0300 44) @for version in $(versions) ; do \
34d62715 (kx 2023-05-17 21:35:26 +0300 45) tag=v`echo $$version` ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 46) if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
34d62715 (kx 2023-05-17 21:35:26 +0300 47) echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 48) ( cd $(repo_name) ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 49) git submodule update --init ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 50) git archive --format=tar --prefix=$(repo_name)-$${version}/ --output=../$(repo_name)-$${version}.tar $${tag} ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 51) cmd="git submodule foreach --recursive 'git archive --format=tar --prefix=$(repo_name)-$${version}/\$$sm_path/ HEAD --output=\$$toplevel/../$(repo_name)-$${version}-sub-\$$sha1.tar'" ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 52) eval $${cmd} ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 53) ) ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 54) for tar in `ls $(repo_name)-$${version}-sub-*.tar` ; do \
34d62715 (kx 2023-05-17 21:35:26 +0300 55) tar --concatenate --file $(repo_name)-$${version}.tar $${tar} ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 56) done ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 57) rm -f $(repo_name)-$${version}-sub-*.tar ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 58) xz $(repo_name)-$${version}.tar ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 59) tar xJf $(pkg_name)-$$version.$(suffix) ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 60) ( cd $(pkg_name)-$$version ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 61) find . -type f \( -name ".gitignore" -o -name ".gitmodules" -o -name ".dummy" \) -exec rm -f {} \; ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 62) for dir in `find . -type d -name ".github" -print` ; do \
34d62715 (kx 2023-05-17 21:35:26 +0300 63) rm -rf $${dir} ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 64) done ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 65) ) ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 66) tar cJf $(pkg_name)-$$version.$(suffix) $(pkg_name)-$$version ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 67) rm -rf $(pkg_name)-$$version ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 68) fi ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 69) done
34d62715 (kx 2023-05-17 21:35:26 +0300 70)
34d62715 (kx 2023-05-17 21:35:26 +0300 71) $(sha1s): %.$(suffix).sha1sum : %.$(suffix)
34d62715 (kx 2023-05-17 21:35:26 +0300 72) @for tarball in $< ; do \
34d62715 (kx 2023-05-17 21:35:26 +0300 73) echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 74) sha1sum --binary $$tarball > $$tarball.sha1sum ; \
34d62715 (kx 2023-05-17 21:35:26 +0300 75) done
34d62715 (kx 2023-05-17 21:35:26 +0300 76)
34d62715 (kx 2023-05-17 21:35:26 +0300 77) repository_clean: $(sha1s)
34d62715 (kx 2023-05-17 21:35:26 +0300 78) @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
34d62715 (kx 2023-05-17 21:35:26 +0300 79) @rm -rf $(git_repo) $(repo_name)
34d62715 (kx 2023-05-17 21:35:26 +0300 80)
34d62715 (kx 2023-05-17 21:35:26 +0300 81) downloads_clean:
34d62715 (kx 2023-05-17 21:35:26 +0300 82) @rm -rf $(tarballs) $(sha1s)
34d62715 (kx 2023-05-17 21:35:26 +0300 83) @rm -rf $(git_repo) $(repo_name)