scripts: ipkg-make-index.sh: dereference symbolic links

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>
(cherry picked from commit ece5cab743)
Fixes: e6af9c017b ("opkg: bump to version 2019-06-14")
[ rmilecki: this has to be backported due to the recent opkg update and
  cb6640381808 ("libopkg: check for file size mismatches") to fix false
  "opkg_install_pkg: Package size mismatch" errors ]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
Jo-Philipp Wich 2019-01-31 12:25:19 +01:00 committed by Rafał Miłecki
parent 8231f67218
commit a68be42f99

View File

@ -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'`