24 lines
717 B
Bash
Executable File
24 lines
717 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -eu
|
|
|
|
test "$#" -gt 0 || { printf 'Usage: %s ARCHIVE...\n' "$0" >&2; exit 2; }
|
|
. "$(dirname -- "$0")/setup-ohos-env.sh"
|
|
|
|
for archive in "$@"; do
|
|
test -f "$archive" || { printf 'Missing archive: %s\n' "$archive" >&2; exit 1; }
|
|
members=$($AR t "$archive")
|
|
member=$(printf '%s\n' "$members" | sed -n '1p')
|
|
test -n "$member" || { printf 'Empty archive: %s\n' "$archive" >&2; exit 1; }
|
|
temp_dir=$(mktemp -d)
|
|
(
|
|
cd "$temp_dir"
|
|
"$AR" x "$archive" "$member"
|
|
header=$($READELF -h "$member")
|
|
printf '%s: %s\n' "$archive" "$member"
|
|
printf '%s\n' "$header"
|
|
printf '%s\n' "$header" | grep -q 'Machine:.*AArch64'
|
|
)
|
|
rm -r "$temp_dir"
|
|
done
|