diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2016-02-11 14:40:27 +0100 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2016-02-11 14:40:27 +0100 |
commit | 39fce8d0a5a6d91923e532a62ad2e6e4e26bdae7 (patch) | |
tree | f7ab38bcd4eccbd4eae15dc1f935e03e281edd98 /debian/rules | |
parent | b259cb68aa3f76d1e23b47be67d3fbeb6f6b62df (diff) | |
download | sciteco-39fce8d0a5a6d91923e532a62ad2e6e4e26bdae7.tar.gz |
pass user/maintainer provided CXXFLAGS to the Scintilla build process
* Usually, Scintilla will now be built with -O2
* this can improve performance significantly over the standard Scintilla -Os
(up to 10%).
* this also allows link-time-optimizing both Scintilla and SciTECO
(which are linked statically) by adding -flto to CFLAGS, CXXFLAGS and LDFLAGS.
Link-time-optimization will both reduce the total binary size
and improve performance slightly since scintilla_send_message() can be
inlined.
An -O3 optimized Scintilla when linked with LTO results in an only 300kb
larger SciTECO binary.
* the highest possible optimization thus requires the following maintainer
flags on the ./configure command line:
CFLAGS="-O3 -mtune=native -march=native -flto"
CXXFLAGS="-O3 -mtune=native -march=native -flto"
LDFLAGS="-flto"
* Windows and Debian builds use link-time-optimization now.
On Windows - where we link in everything statically - building
the dependant libraries with -flto could improve performance
even more.
* Debian builds respect the default hardening flags of the build
server now. This should ensure that SciTECO is built for the
correct architecture at the recommended optimization level etc.
Diffstat (limited to 'debian/rules')
-rwxr-xr-x | debian/rules | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/debian/rules b/debian/rules index c8bea8d..7d6302c 100755 --- a/debian/rules +++ b/debian/rules @@ -12,6 +12,11 @@ # build dependencies. export TERM= +# Build with link-time-optimizations +export DEB_CFLAGS_MAINT_APPEND=-flto +export DEB_CXXFLAGS_MAINT_APPEND=-flto +export DEB_LDFLAGS_MAINT_APPEND=-flto + %: dh $@ @@ -19,7 +24,8 @@ build: dh_testdir dh_auto_configure -- \ --enable-bootstrap \ - --with-interface=ncurses + --with-interface=ncurses \ + $(shell dpkg-buildflags --export=configure) dh_auto_build touch $@ |