cookutils diff cook @ rev 1012

Separate modules/precheck from cook (next will be modules/getsrc); cook: fix bug preventing meta-packages to be included in receipt v2; lighttpd/index.cgi: show cooker state in the title (web browser show special icon if background page title has changed).
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Nov 24 14:39:52 2017 +0200 (2017-11-24)
parents 7dc9964e94a8
children 47059b5d1648
line diff
     1.1 --- a/cook	Wed Nov 22 19:51:01 2017 +0200
     1.2 +++ b/cook	Fri Nov 24 14:39:52 2017 +0200
     1.3 @@ -96,38 +96,6 @@
     1.4  }
     1.5  
     1.6  
     1.7 -# QA: check a receipt consistency before building.
     1.8 -
     1.9 -receipt_quality() {
    1.10 -	_ 'QA: checking package receipt...'
    1.11 -
    1.12 -	for var in PACKAGE VERSION CATEGORY SHORT_DESC MAINTAINER WEB_SITE; do
    1.13 -		unset value
    1.14 -		value="$(. $receipt; eval echo \$$var)"
    1.15 -		# L10n: QA is quality assurance
    1.16 -		[ -n "$value" ] || die 'QA: empty variable: %s' "$var=\"\""
    1.17 -
    1.18 -		case "$var" in
    1.19 -			CATEGORY)
    1.20 -				valid="$(echo $PKGS_CATEGORIES)" # avoid newlines
    1.21 -				if ! echo " $valid " | grep -q " $value "; then
    1.22 -					_ 'QA: unknown category "%s"' "$value"
    1.23 -					die 'Please, use one of: %s' "$valid"
    1.24 -				fi
    1.25 -				;;
    1.26 -			WEB_SITE)
    1.27 -				# We don't check WGET_URL since if dl is needed it will fail.
    1.28 -				# Break also if we're not online. Here error is not fatal.
    1.29 -				if ifconfig | grep -A1 '^[a-z]*[0-9]' | fgrep -q 'addr:' && \
    1.30 -				! busybox wget -T 12 --spider $value 2>/dev/null; then
    1.31 -					_ 'QA: unable to reach "%s"' "$value"
    1.32 -				fi
    1.33 -				;;
    1.34 -		esac
    1.35 -	done
    1.36 -}
    1.37 -
    1.38 -
    1.39  # Paths used in receipt and by cook itself.
    1.40  
    1.41  set_paths() {
    1.42 @@ -603,7 +571,7 @@
    1.43  			;;
    1.44  	esac
    1.45  
    1.46 -	[ -n "$QA" ] && receipt_quality
    1.47 +	[ -n "$QA" ] && @@PREFIX@@/libexec/cookutils/precheck $receipt # former receipt_quality()
    1.48  
    1.49  	cd $pkgdir
    1.50  	[ -z "$continue" ] && rm -rf source 2>/dev/null
    1.51 @@ -1048,6 +1016,8 @@
    1.52  		fi
    1.53  	fi
    1.54  
    1.55 +	[ -n "$CAT" ] && CATEGORY="${CAT%|*}"	# allow meta-packages in v2 receipts
    1.56 +
    1.57  	if [ "${COOKOPTS/empty-pkg/}" == "$COOKOPTS" ]; then
    1.58  		action 'QA: checking for empty package...'
    1.59  		if [ ! -s "$pack/files.list" -a "$CATEGORY" != 'meta' ]; then