diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/destatic.sh | 16 | ||||
-rw-r--r-- | scripts/restatic.sh | 8 |
2 files changed, 24 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') diff --git a/scripts/restatic.sh b/scripts/restatic.sh new file mode 100644 index 00000000..f3f5b7a4 --- /dev/null +++ b/scripts/restatic.sh @@ -0,0 +1,8 @@ +# Simple script to revert the changes made by destatic.sh + +# Allow for the fact that mujs might not be present +MUJS_SRC= +test -d thirdparty/mujs && MUJS_SRC=thirdparty/mujs + +# Convert it all back +sed -i 's!/\*static \*/!static !' $(find source platform/android/viewer platform/java $MUJS_SRC -name '*.c') |