diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | include/lib.sh | 19 | ||||
| -rw-r--r-- | include/vendor.sh | 4 | 
3 files changed, 13 insertions, 11 deletions
| @@ -1,5 +1,6 @@  *~  *.o +/cache/  /lbmk.err.log  /repo/  /docs/ diff --git a/include/lib.sh b/include/lib.sh index 2fb97c44..791ab4e1 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -180,18 +180,19 @@ singletree()  download()  { -	dl_fail="y" # 1 url, 2 url backup, 3 destination, 4 checksum -	vendor_checksum "$4" "$3" 2>/dev/null || dl_fail="n" +	cached="cache/file/$4" +	dl_fail="n" # 1 url, 2 url backup, 3 destination, 4 checksum +	vendor_checksum "$4" "$cached" 2>/dev/null && dl_fail="y"  	[ "$dl_fail" = "n" ] && e "$3" f && return 0 -	x_ mkdir -p "${3%/*}" && for url in "$1" "$2"; do +	x_ mkdir -p "${3%/*}" cache/file && for url in "$1" "$2"; do  		[ "$dl_fail" = "n" ] && break  		[ -z "$url" ] && continue -		x_ rm -f "$3" -		curl --location --retry 3 -A "$_ua" "$url" -o "$3" || \ -		    wget --tries 3 -U "$_ua" "$url" -O "$3" || continue -		vendor_checksum "$4" "$3" || dl_fail="n" -	done; -	[ "$dl_fail" = "y" ] && $err "$1 $2 $3 $4: not downloaded"; return 0 +		x_ rm -f "$cached" +		curl --location --retry 3 -A "$_ua" "$url" -o "$cached" || \ +		    wget --tries 3 -U "$_ua" "$url" -O "$cached" || continue +		vendor_checksum "$4" "$cached" || dl_fail="n" +	done; [ "$dl_fail" = "y" ] && $err "$1 $2 $3 $4: not downloaded" +	[ "$cached" = "$3" ] || cp "$cached" "$3" || $err "!d cp $cached $3"; :  }  vendor_checksum() diff --git a/include/vendor.sh b/include/vendor.sh index b8fef9c5..ba0ad641 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -8,7 +8,7 @@ me7updateparser="$PWD/util/me7_update_parser/me7_update_parser.py"  pfs_extract="$PWD/src/biosutilities/Dell_PFS_Extract.py"  uefiextract="$PWD/elf/uefitool/uefiextract"  vendir="vendorfiles" -appdir="$vendir/app" +appdir="cache/app"  cbcfgsdir="config/coreboot"  eval `setvars "" EC_url_bkup EC_hash DL_hash DL_url_bkup MRC_refcode_gbe vcfg \ @@ -78,7 +78,7 @@ getfiles()  fetch()  {  	dl_type="$1"; dl="$2"; dl_bkup="$3"; dlsum="$4"; _dest="${5##*../}" -	[ "$5" = "/dev/null" ] && return 0; _dl="$vendir/cache/$dlsum" +	[ "$5" = "/dev/null" ] && return 0; _dl="cache/file/$dlsum"  	download "$dl" "$dl_bkup" "$_dl" "$dlsum" | 
