From 2d69072a09d7041bf3c8566a1151f92d56b8c87e Mon Sep 17 00:00:00 2001
From: Leah Rowe <leah@libreboot.org>
Date: Mon, 15 May 2023 03:24:19 +0100
Subject: [PATCH] download/coreboot: clone upstream via ./gitclone

coreboot trees/patching is still handled
specifically by "./download coreboot"

command now available in lbmk:

./gitclone coreboot

this *only* creates the directory at:
coreboot/coreboot

this directory is never used in builds.
it is only used by download/coreboot to
create patched trees for each mainboard
---
 resources/git/revisions             |  7 +++++
 resources/scripts/download/coreboot | 40 ++++++++---------------------
 2 files changed, 17 insertions(+), 30 deletions(-)

diff --git a/resources/git/revisions b/resources/git/revisions
index 1658beb..0985782 100644
--- a/resources/git/revisions
+++ b/resources/git/revisions
@@ -6,6 +6,13 @@
 # gitclone script. Each entry must include: revision 'rev', location
 # 'loc', and the git url 'url'. Bkup_url is optional.
 
+{coreboot}{
+	rev: HEAD
+	loc: coreboot/coreboot
+	url: https://review.coreboot.org/coreboot
+	bkup_url: https://github.com/coreboot/coreboot.git
+}
+
 {grub}{
 	rev: f7564844f82b57078d601befadc438b5bc1fa01b
 	loc: grub
diff --git a/resources/scripts/download/coreboot b/resources/scripts/download/coreboot
index 88692e5..2410880 100755
--- a/resources/scripts/download/coreboot
+++ b/resources/scripts/download/coreboot
@@ -89,39 +89,19 @@ download_coreboot_for_board()
 		return 0
 	fi
 
-	[ ! -d coreboot ] && mkdir "coreboot/"
-	[ ! -d coreboot ] && return 1
+	[ ! -d coreboot ] && \
+		mkdir -p coreboot
+	[ ! -d coreboot ] && \
+		exit 1
+	[ -d coreboot/coreboot ] && \
+		rm -Rf coreboot/coreboot
+	[ -d coreboot/coreboot ] && \
+		exit 1
+	./gitclone coreboot || \
+		exit 1
 
 	cd "coreboot/"
 
-	[ ! -d coreboot/.git ] && [ -d coreboot ] && \
-		rm -Rf coreboot/
-
-	if [ ! -d coreboot ]; then
-		printf "Download coreboot from upstream:\n"
-		git clone https://review.coreboot.org/coreboot \
-				|| rm -Rf coreboot
-		if [ ! -d coreboot ]; then
-			printf "WARNING: Upstream failed. Trying backup:\n"
-			git clone https://github.com/coreboot/coreboot.git \
-					|| rm -Rf coreboot
-		fi
-		if [ ! -d coreboot ]; then 
-			printf "ERROR: download/coreboot:"
-			printf " Problem with git-clone. Network issue?\n"
-			cd ../
-			return 1
-		fi
-	else
-		( cd coreboot/; git pull || touch ../build_error )
-		if [ -f ../build_error ]; then
-			printf "ERROR: download/coreboot:"
-			printf " Problem with git-pull. Network issue?\n"
-			cd ../
-			return 1
-		fi
-	fi
-
 	cp -R coreboot "${cbtree}" || touch ../build_error
 	if [ -d ../build_error ]; then
 		printf "ERROR: download/coreboot: Unable to copy directory."
-- 
GitLab