aboutsummaryrefslogtreecommitdiff
path: root/scripts/build/combine_libs
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2020-10-23 10:33:07 -0400
committerNick Mathewson <nickm@torproject.org>2020-10-23 10:33:07 -0400
commit2908086694ee3822c8d3116952bec5a415387d75 (patch)
treef91342c8b52ad57e995c4dabe815fd0b0520e84c /scripts/build/combine_libs
parent0d420918e71f94bec3fd4c5010e570b45667d48d (diff)
parente834702f9d33f228815403055666e957b33c1857 (diff)
downloadtor-2908086694ee3822c8d3116952bec5a415387d75.tar.gz
tor-2908086694ee3822c8d3116952bec5a415387d75.zip
Merge branch 'combined_libs'
Diffstat (limited to 'scripts/build/combine_libs')
-rwxr-xr-xscripts/build/combine_libs35
1 files changed, 35 insertions, 0 deletions
diff --git a/scripts/build/combine_libs b/scripts/build/combine_libs
new file mode 100755
index 0000000000..fb311552fe
--- /dev/null
+++ b/scripts/build/combine_libs
@@ -0,0 +1,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"