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