view mupdf-source/scripts/destatic.sh @ 33:c4daa0c83d64

Apply also -fstack-clash-protection and -fstack-protector-strong for all generated binaries. Only done if EXTRA_CHECKS is not empty and not 0.
author Franz Glasner <fzglas.hg@dom66.de>
date Sun, 21 Sep 2025 17:55:13 +0200
parents b50eed0cc0ef
children
line wrap: on
line source

# 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')