build: introduce $(MKHASH)
Before this commit, it was assumed that mkhash is in the PATH. While
this was fine for the normal build workflow, this led to some issues if
make TOPDIR="$(pwd)" -C "$pkgdir" compile
was called manually. In most of the cases, I just saw warnings like this:
make: Entering directory '/home/.../package/gluon-status-page'
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
bash: line 1: mkhash: command not found
[...]
While these were only warnings and the package still compiled sucessfully,
I also observed that some package even fail to build because of this.
After applying this commit, the variable $(MKHASH) is introduced. This
variable points to $(STAGING_DIR_HOST)/bin/mkhash, which is always the
correct path.
Signed-off-by: Leonardo Mörlein <me@irrelefant.net>
This commit is contained in:
committed by
Petr Štetiar
parent
ce8af0ace0
commit
b993b68b6c
@@ -63,7 +63,7 @@ while [ "$#" -gt 1 ]
|
||||
|
||||
[ ! -f "$file" ] && echo "$ME: Not a valid file: $file" && usage
|
||||
FILES="$FILES $file"
|
||||
md5=$(mkhash md5 "$file")
|
||||
md5=$($MKHASH md5 "$file")
|
||||
printf "%-32s%08x%32s" "$filename" $(stat -c "%s" "$file") "${md5%% *}" >> "${IMG_TMP_OUT}"
|
||||
shift 2
|
||||
done
|
||||
|
||||
@@ -16,7 +16,7 @@ dd if="$1" of="$kern" bs=$BLKSZ conv=sync 2>/dev/null
|
||||
dd if="$2" of="$root" bs=$BLKSZ conv=sync 2>/dev/null
|
||||
|
||||
# Calculate md5sum over combined kernel and rootfs image.
|
||||
md5=$(cat "$kern" "$root" | mkhash md5)
|
||||
md5=$(cat "$kern" "$root" | $MKHASH md5)
|
||||
|
||||
# Write image header followed by kernel and rootfs image.
|
||||
# The header is padded to 64k, format is:
|
||||
|
||||
@@ -65,8 +65,8 @@ sub hash_cmd() {
|
||||
my $len = length($file_hash);
|
||||
my $cmd;
|
||||
|
||||
$len == 64 and return "mkhash sha256";
|
||||
$len == 32 and return "mkhash md5";
|
||||
$len == 64 and return "$ENV{'MKHASH'} sha256";
|
||||
$len == 32 and return "$ENV{'MKHASH'} md5";
|
||||
return undef;
|
||||
}
|
||||
|
||||
@@ -296,4 +296,3 @@ while (!-f "$target/$filename") {
|
||||
}
|
||||
|
||||
$SIG{INT} = \&cleanup;
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ for pkg in `find $pkg_dir -name '*.ipk' | sort`; do
|
||||
[[ "$name" = "libc" ]] && continue
|
||||
echo "Generating index for package $pkg" >&2
|
||||
file_size=$(stat -L -c%s $pkg)
|
||||
sha256sum=$(mkhash sha256 $pkg)
|
||||
sha256sum=$($MKHASH sha256 $pkg)
|
||||
# Take pains to make variable value sed-safe
|
||||
sed_safe_pkg=`echo $pkg | sed -e 's/^\.\///g' -e 's/\\//\\\\\\//g'`
|
||||
tar -xzOf $pkg ./control.tar.gz | tar xzOf - ./control | sed -e "s/^Description:/Filename: $sed_safe_pkg\\
|
||||
|
||||
@@ -54,8 +54,8 @@ esac
|
||||
CHECK_BS=65536
|
||||
|
||||
KERNEL_SIZE=$(stat -c%s "$KERNEL_PATH")
|
||||
KERNEL_MD5=$(mkhash md5 $KERNEL_PATH)
|
||||
KERNEL_SHA256=$(mkhash sha256 $KERNEL_PATH)
|
||||
KERNEL_MD5=$($MKHASH md5 $KERNEL_PATH)
|
||||
KERNEL_SHA256=$($MKHASH sha256 $KERNEL_PATH)
|
||||
KERNEL_PART_SIZE_KB=$((KERNEL_SIZE / 1024))
|
||||
KERNEL_PART_SIZE=$(printf $SIZE_FORMAT $(($KERNEL_PART_SIZE_KB * $SIZE_FACTOR)))
|
||||
|
||||
@@ -63,9 +63,9 @@ ROOTFS_FLASH_ADDR=$(addr=$(($KERNEL_FLASH_ADDR + ($KERNEL_PART_SIZE_KB * 1024)))
|
||||
ROOTFS_SIZE=$(stat -c%s "$ROOTFS_PATH")
|
||||
ROOTFS_SQUASHFS_SIZE=$((ROOTFS_SIZE-4))
|
||||
ROOTFS_CHECK_BLOCKS=$((ROOTFS_SQUASHFS_SIZE / CHECK_BS))
|
||||
ROOTFS_MD5=$(dd if=$ROOTFS_PATH bs=$CHECK_BS count=$ROOTFS_CHECK_BLOCKS 2>&- | mkhash md5)
|
||||
ROOTFS_MD5_FULL=$(mkhash md5 $ROOTFS_PATH)
|
||||
ROOTFS_SHA256_FULL=$(mkhash sha256 $ROOTFS_PATH)
|
||||
ROOTFS_MD5=$(dd if=$ROOTFS_PATH bs=$CHECK_BS count=$ROOTFS_CHECK_BLOCKS 2>&- | $MKHASH md5)
|
||||
ROOTFS_MD5_FULL=$($MKHASH md5 $ROOTFS_PATH)
|
||||
ROOTFS_SHA256_FULL=$($MKHASH sha256 $ROOTFS_PATH)
|
||||
ROOTFS_CHECK_SIZE=$(printf '0x%x' $ROOTFS_SQUASHFS_SIZE)
|
||||
ROOTFS_PART_SIZE_KB=$(($MAX_PART_SIZE - $KERNEL_PART_SIZE_KB))
|
||||
ROOTFS_PART_SIZE=$(printf $SIZE_FORMAT $(($ROOTFS_PART_SIZE_KB * $SIZE_FACTOR)))
|
||||
|
||||
Reference in New Issue
Block a user