#
# Project Home:
# ============
# https://freedesktop.org/wiki/Software/shared-mime-info
#
# GitHub:
# ======
# https://gitlab.freedesktop.org/xdg/shared-mime-info
#
url = https://gitlab.freedesktop.org/xdg/shared-mime-info.git
repo_name = shared-mime-info
versions = 2.1 2.2
suffix = tar.xz
TAGS = $(versions)
git_repo = .git_clone
tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
sha1s = $(addsuffix .sha1sum, $(tarballs))
TARGETS = repository_clean
all: $(TARGETS)
.PHONY: downloads_clean repository_clean
$(git_repo):
@echo -e "\n======= Clone $(repo_name).git repository =======\n"
@rm -rf $(repo_name)
@git clone $(url) $(repo_name)
@touch $@
$(tarballs): $(git_repo)
@for version in $(TAGS) ; do \
tag=`echo $${version}`; \
if [ ! -f $(repo_name)-$${version}.$(suffix) ]; then \
echo -e "\n======= Creating '$(repo_name)-$${version}.$(suffix)' snapshot =======" ; \
( cd $(repo_name) ; \
git submodule update --init ; \
git archive --format=tar --prefix=$(repo_name)-$${version}/ --output=../$(repo_name)-$${version}.tar $${tag} ; \
cmd="git submodule foreach --recursive 'git archive --format=tar --prefix=$(repo_name)-$${version}/\$$sm_path/ HEAD --output=\$$toplevel/../$(repo_name)-$${version}-sub-\$$sha1.tar'" ; \
eval $${cmd} ; \
) ; \
tar --concatenate --file $(repo_name)-$${version}.tar $(repo_name)-$${version}-sub-*.tar ; \
rm -f $(repo_name)-$${version}-sub-*.tar ; \
xz $(repo_name)-$${version}.tar ; \
fi ; \
done
$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
@for tarball in $< ; do \
echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
sha1sum --binary $$tarball > $$tarball.sha1sum ; \
done
repository_clean: $(sha1s)
@echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
@rm -rf $(git_repo) $(repo_name)
downloads_clean:
@rm -rf $(tarballs) $(sha1s)
@rm -rf $(git_repo) $(repo_name)