X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=cross-compile%2Fandroid%2Ffix-libraries.sh;fp=cross-compile%2Fandroid%2Ffix-libraries.sh;h=0000000000000000000000000000000000000000;hb=1238f785c12e5c7558178d57d2659f92b10485c8;hp=8d149402b83f75df0f680e6a27c24ca7f9d35199;hpb=49fbbd8574ef44a7c6e9ee7e31ded1c83bc0faa0;p=sigrok-util.git diff --git a/cross-compile/android/fix-libraries.sh b/cross-compile/android/fix-libraries.sh deleted file mode 100755 index 8d14940..0000000 --- a/cross-compile/android/fix-libraries.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/sh - -set -e -tmpdir=/tmp/fixlib$$ -trap 'rm -rf "$tmpdir"' 0 1 2 3 15 -mkdir -p "$tmpdir" - -if [ $# -lt 3 ]; then - echo >&2 "Usage: $0 srclib destlib library ..." - exit 1 -fi - -: ${READELF=readelf} - -srclib="$1" -destlib="$2" -shift -shift -rm -f "$tmpdir"/todo -touch "$tmpdir"/todo -for lib; do - echo "$lib" >> "$tmpdir"/todo -done - -process() -{ - libname="$1" - libfile="$destlib"/"$libname" - if [ ! -f "$libfile" ]; then - echo >&2 "$libfile not found" - exit 1 - fi - "$READELF" -d "$libfile" | awk '$1=="0x00000001" {print $NF}' | tr -d '][' | grep '\.so\.' | sort >> "$tmpdir"/worklist -} - -install() -{ - libname="$1" - libfile=`echo "$libname" | sed -e 's/\.so\..*/.so/'` - cp "$srclib"/"$libname" "$destlib"/"$libfile" - echo "$libfile" >> "$tmpdir"/worklist - for deplib in `"$READELF" -d "$destlib"/"$libfile" | awk '$1=="0x00000001" {print $NF}' | tr -d '][' | grep '\.so\.' | sort`; do - echo "$deplib $libname" >> "$tmpdir"/liblist - done -} - -rm -f "$tmpdir"/liblist -touch "$tmpdir"/liblist -sort "$tmpdir"/todo > "$tmpdir"/processed -while [ -s "$tmpdir"/todo ]; do - rm -f "$tmpdir"/worklist - touch "$tmpdir"/worklist - cat "$tmpdir"/todo | while read lib; do - if [ ! -z "$lib" ]; then - process "$lib" - fi - done - sort "$tmpdir"/worklist | uniq > "$tmpdir"/todo.tmp - comm -13 "$tmpdir"/processed "$tmpdir"/todo.tmp > "$tmpdir"/todo - sort -m "$tmpdir"/processed "$tmpdir"/todo | uniq > "$tmpdir"/processed.tmp - mv "$tmpdir"/processed.tmp "$tmpdir"/processed - rm -f "$tmpdir"/worklist - touch "$tmpdir"/worklist - cat "$tmpdir"/todo | while read lib; do - if [ ! -z "$lib" ]; then - install "$lib" - fi - done - mv "$tmpdir"/worklist "$tmpdir"/todo -done -tsort "$tmpdir"/liblist