aboutsummaryrefslogtreecommitdiff
path: root/scripts/build/combine_libs
blob: fb311552feecbcbb5a550a918587f530b6e9a335 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/sh

set -e

TMPDIR="$(mktemp -d -t tor_lib_combining.XXXXXX)"
ORIGDIR="$(pwd)"

trap 'cd "$ORIGDIR" && rm -rf "$TMPDIR"' 0

abspath() {
          echo "$(cd "$(dirname "$1")">/dev/null && pwd)/$(basename "$1")"
}

TARGET=$(abspath "$1")

#echo ORIGDIR="$ORIGDIR"
#echo AR="$AR"
#echo ARFLAGS="$AFLAGS"

shift

for input in "$@"; do
    cd "$ORIGDIR"
    abs=$(abspath "$input")
    dir="$TMPDIR"/$(basename "$input" .a)
    mkdir "$dir"
    cd "$dir">/dev/null
    ar x "$abs"
done

cd "$TMPDIR" >/dev/null
#echo "${AR:-ar}" "${ARFLAGS:-cru}" library.tmp.a ./*/**
"${AR:-ar}" "${ARFLAGS:-cru}" library.tmp.a ./*/**
"${RANLIB:-ranlib}" library.tmp.a
mv -f library.tmp.a "$TARGET"