scripts: ipkg-make-index.sh: dereference symbolic links
authorJo-Philipp Wich <jo@mein.io>
Thu, 31 Jan 2019 11:25:19 +0000 (12:25 +0100)
committerJo-Philipp Wich <jo@mein.io>
Thu, 31 Jan 2019 11:35:29 +0000 (12:35 +0100)
Use `stat -L` instead of `ls -l` to follow symbolic links when obtaining
the file size of .ipk archives.

Without this change, the size of the symlink, not the size of the target
file is encoded in the package index file.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
scripts/ipkg-make-index.sh

index dcd11ca191adc36d92d6790cb1a1e61a5be36dce..f6f15d7dd8c33969d81d43abed706513e3078b86 100755 (executable)
@@ -17,7 +17,7 @@ for pkg in `find $pkg_dir -name '*.ipk' | sort`; do
        [[ "$name" = "kernel" ]] && continue
        [[ "$name" = "libc" ]] && continue
        echo "Generating index for package $pkg" >&2
-       file_size=$(ls -l $pkg | awk '{print $5}')
+       file_size=$(stat -L -c%s $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'`