Radix cross Linux 3pp sources

RcL sources – is a tree of Third Party and Radix source tarballs

423 Commits   0 Branches   0 Tags
author: kx <kx@radix.pro> 2023-11-06 13:07:01 +0300 committer: kx <kx@radix.pro> 2023-11-06 13:07:01 +0300 commit: 627e896847ce9ec80327d95d64681628a32ac425 parent: cb2922a8bbea107d008d670b79e20ecc67cb9180
Commit Summary:
StarFive: u-boot tools
Diffstat:
2 files changed, 56 insertions, 1 deletion
diff --git a/U-Boot/StarFive/Makefile b/U-Boot/StarFive/Makefile
index 28afe10..9ce3dbd 100644
--- a/U-Boot/StarFive/Makefile
+++ b/U-Boot/StarFive/Makefile
@@ -4,7 +4,8 @@
 # $ tree -fid .
 #
 
-SUBDIRS := opensbi     \
+SUBDIRS := Tools       \
+           opensbi     \
            u-boot
 
 
diff --git a/U-Boot/StarFive/Tools/Makefile b/U-Boot/StarFive/Tools/Makefile
new file mode 100644
index 0000000..5b21098
--- /dev/null
+++ b/U-Boot/StarFive/Tools/Makefile
@@ -0,0 +1,68 @@
+#
+# Project Home:
+# ============
+#   https://github.com/starfive-tech/Tools.git
+#
+# Git Mirror:
+# ==========
+#   https://git.radix.pro/starfive-tech/Tools.git
+#
+
+url        = https://github.com/starfive-tech
+
+repo_name  = Tools
+
+#
+# List of tags to be extracted (branch master):
+# ====================================================================
+#
+#                                               hash | version
+#            ----------------------------------------+---------
+revisions  = 0747c0510e090f69bf7d2884f44903b77b3db5c5:20231107
+
+git_repo   = .git_clone
+
+pkgname    = tools
+suffix     = tar.xz
+
+versions   = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs   = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(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).git $(repo_name)
+	@touch $@
+
+$(tarballs): $(git_repo)
+	@for revision in $(revisions) ; do \
+	  hash=`echo $$revision | cut -f 1 -d ':'` ; \
+	  version=`echo $$revision | cut -f 2 -d ':'` ; \
+	  if [ ! -f $(pkgname)-$$version.$(suffix) ]; then \
+	    echo -e "\n======= Creating '$(pkgname)-$$version.$(suffix)' snapshot =======" ; \
+	    ( cd $(repo_name) && \
+	      git archive --format=tar --prefix=$(pkgname)-$$version/ $$hash | \
+	      xz >../$(pkgname)-$$version.$(suffix) ) ; \
+	  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)