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