From: Felix Fietkau Date: Wed, 11 Jul 2018 17:28:54 +0000 (+0200) Subject: dropbear: compile with LTO enabled X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=47b42137ce1e931ae5871952b1f98438396f5e07;p=openwrt%2Fstaging%2Fneocturne.git dropbear: compile with LTO enabled Reduces size of the .ipk on MIPS from 87k to 84k Signed-off-by: Felix Fietkau --- diff --git a/package/network/services/dropbear/Makefile b/package/network/services/dropbear/Makefile index 742e538ff5..515434dc2f 100644 --- a/package/network/services/dropbear/Makefile +++ b/package/network/services/dropbear/Makefile @@ -86,8 +86,8 @@ CONFIGURE_ARGS += \ $(if $(CONFIG_DROPBEAR_ZLIB),,--disable-zlib) \ --enable-bundled-libtom -TARGET_CFLAGS += -DARGTYPE=3 -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -DARGTYPE=3 -ffunction-sections -fdata-sections -flto +TARGET_LDFLAGS += -Wl,--gc-sections -flto=jobserver define Build/Configure $(Build/Configure/Default) diff --git a/package/network/services/dropbear/patches/160-lto-jobserver.patch b/package/network/services/dropbear/patches/160-lto-jobserver.patch new file mode 100644 index 0000000000..bb94492833 --- /dev/null +++ b/package/network/services/dropbear/patches/160-lto-jobserver.patch @@ -0,0 +1,33 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -163,17 +163,17 @@ dropbearkey: $(dropbearkeyobjs) + dropbearconvert: $(dropbearconvertobjs) + + dropbear: $(HEADERS) $(LIBTOM_DEPS) Makefile +- $(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) $(LIBS) @CRYPTLIB@ ++ +$(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) $(LIBS) @CRYPTLIB@ + + dbclient: $(HEADERS) $(LIBTOM_DEPS) Makefile +- $(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) $(LIBS) ++ +$(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) $(LIBS) + + dropbearkey dropbearconvert: $(HEADERS) $(LIBTOM_DEPS) Makefile +- $(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) ++ +$(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBTOM_LIBS) + + # scp doesn't use the libs so is special. + scp: $(SCPOBJS) $(HEADERS) Makefile +- $(CC) $(LDFLAGS) -o $@$(EXEEXT) $(SCPOBJS) ++ +$(CC) $(LDFLAGS) -o $@$(EXEEXT) $(SCPOBJS) + + + # multi-binary compilation. +@@ -184,7 +184,7 @@ ifeq ($(MULTI),1) + endif + + dropbearmulti$(EXEEXT): $(HEADERS) $(MULTIOBJS) $(LIBTOM_DEPS) Makefile +- $(CC) $(LDFLAGS) -o $@ $(MULTIOBJS) $(LIBTOM_LIBS) $(LIBS) @CRYPTLIB@ ++ +$(CC) $(LDFLAGS) -o $@ $(MULTIOBJS) $(LIBTOM_LIBS) $(LIBS) @CRYPTLIB@ + + multibinary: dropbearmulti$(EXEEXT) +