commit 1f5c5624f48b078e8c421874bf0015e84bda57f7 Author: Sebastian Hahn sebastian@torproject.org Date: Fri Jan 20 23:13:35 2012 +0100
Use dead_strip to reduce binary size on OS X
This option seems to be supported all the way back to at least 10.4, so enabling it for OS X in general should be fine. If not, someone will yell.
With no libs statically linked, that's a 3% win in binary size, with just libevent linked statically, this gives us an advantage of 5% in terms of binary size, and with libevent and openssl statically linked, we gain over 18% or over 500KB.
Implements ticket 2915. --- changes/osx_deadstrip | 5 +++++ configure.in | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/changes/osx_deadstrip b/changes/osx_deadstrip new file mode 100644 index 0000000..f16eca4 --- /dev/null +++ b/changes/osx_deadstrip @@ -0,0 +1,5 @@ + o Minor features: + - Use the dead_strip option when building Tor on OS X. This reduces binary + size by almost 19% when linking openssl and libevent statically, which + we do for TBB. + diff --git a/configure.in b/configure.in index f4a8e1e..de726c7 100644 --- a/configure.in +++ b/configure.in @@ -1160,12 +1160,13 @@ else fi
# OS X Lion started deprecating the system openssl. Let's just disable -# all deprecation warnings on OS X. +# all deprecation warnings on OS X. Also, to potentially make the binary +# a little smaller, let's enable dead_strip. case "$host_os" in
darwin*) CFLAGS="$CFLAGS -Wno-deprecated-declarations" - ;; + LDFLAGS="$LDFLAGS -dead_strip" ;; esac
# Add some more warnings which we use in development but not in the
tor-commits@lists.torproject.org