git.mk.in (1529B)
1 @NAME@: build_@NAME@ prefix @NAME@_src 2 @prefix=$$(cat .prefix) &&\ 3 cd -- "$(CACHE)/@NAME@/@TAG@" &&\ 4 $(MAKE) PREFIX="$${prefix}" @OPT@ install 5 6 # Delete the dependency file to force their regeneration. This is necessary 7 # because the .prefix file may have been updated and therefore the dependency 8 # files may be outdated. 9 build_@NAME@: @DEP@ fetch_@NAME@ prefix 10 @cd -- "$(CACHE)/@NAME@/@TAG@" &&\ 11 rm -f $$(find src -name "*.d") &&\ 12 $(MAKE) @OPT@ 13 14 $(CACHE)/@NAME@/@TAG@: 15 git clone @URL@ "$@" 16 17 $(CACHE)/@NAME@/@TAG@/@NAME@.tar: fetch_@NAME@ 18 cd -- $(CACHE)/@NAME@/@TAG@ && \ 19 git archive --format=tar --prefix=@NAME@/ -o @NAME@.tar HEAD 20 21 @NAME@_src: $(CACHE)/@NAME@/@TAG@/@NAME@.tar prefix 22 prefix=$$(cat .prefix) && \ 23 mkdir -p "$${prefix}"/src && \ 24 tar -C"$${prefix}"/src -xvf $(CACHE)/@NAME@/@TAG@/@NAME@.tar 25 26 fetch_@NAME@: $(CACHE)/@NAME@/@TAG@ 27 @cd -- "$(CACHE)/@NAME@/@TAG@" &&\ 28 git fetch origin &&\ 29 git checkout -B star-build &&\ 30 git reset --hard @TAG@ 31 32 clean_@NAME@: 33 @if [ -d "$(CACHE)/@NAME@/@TAG@" ]; then\ 34 cd -- "$(CACHE)/@NAME@/@TAG@" && $(MAKE) clean;\ 35 fi 36 37 uninstall_@NAME@: fetch_@NAME@ prefix 38 @prefix=$$(cat .prefix) &&\ 39 cd -- "$(CACHE)/@NAME@/@TAG@" && \ 40 $(MAKE) PREFIX="$${prefix}" uninstall 41 42 mirror_@NAME@: 43 repo="$$(echo "@URL@" | sed 's/[\/]\{0,\}$$//g')" && \ 44 repo="$(MIRROR)/$${repo##*/}" && \ 45 rm -rf "$${repo}" && \ 46 git clone --bare --branch @TAG@ $(MIRROR_GIT_OPT) @URL@ "$${repo}" 47 48 clean_all: clean_@NAME@ 49 install_all: @NAME@ 50 uninstall_all: uninstall_@NAME@ 51 mirror_all: mirror_@NAME@