summaryrefslogtreecommitdiff
path: root/scripts/destatic.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/destatic.sh')
-rw-r--r--scripts/destatic.sh16
1 files changed, 16 insertions, 0 deletions
diff --git a/scripts/destatic.sh b/scripts/destatic.sh
new file mode 100644
index 00000000..b6b80701
--- /dev/null
+++ b/scripts/destatic.sh
@@ -0,0 +1,16 @@
+# Simple script to make all static functions in the main source
+# unstatic. This allows backtracing functions (such as that used
+# in Memento, in particular on Android) to pick up symbol names
+# nicely.
+#
+# This script can be reversed using restatic.sh
+
+# Allow for the fact that mujs might not be present
+MUJS_SRC=
+test -d thirdparty/mujs && MUJS_SRC=thirdparty/mujs
+
+# Convert everything
+sed -i '/^static inline/b;/^static const/b;s!^static !/\*static \*/!' $(find source platform/android/viewer platform/java $MUJS_SRC -name '*.c')
+
+# Convert source/tools back again.
+sed -i 's!/\*static \*/!static !' $(find source/tools -name '*.c')