From d681b22ed77274a805c6c8e81925c18eeb57a968 Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Tue, 11 Mar 2014 17:58:08 +0000 Subject: automake: ask the linker to do garbage collection By doing GC the linker removes all the symbols that are not referenced and/or used by the final library. This results in a saving of ~100K up-to ~600K per (stripped) binary (classic vs gallium drivers). If interested one can ask the compiler to print the sections that are removed using -Wl,--print-gc-sections. v2: Check if ld supports the flag before using it. Signed-off-by: Emil Velikov Acked-by: Matt Turner (v1) --- src/mapi/es1api/Makefile.am | 1 + src/mapi/es2api/Makefile.am | 1 + src/mapi/shared-glapi/Makefile.am | 1 + src/mapi/vgapi/Makefile.am | 1 + 4 files changed, 4 insertions(+) (limited to 'src/mapi') diff --git a/src/mapi/es1api/Makefile.am b/src/mapi/es1api/Makefile.am index b9581184a96..febb137eafa 100644 --- a/src/mapi/es1api/Makefile.am +++ b/src/mapi/es1api/Makefile.am @@ -47,6 +47,7 @@ libGLESv1_CM_la_LIBADD = $(GLESv1_CM_LIB_DEPS) libGLESv1_CM_la_LDFLAGS = \ -no-undefined \ -version-number 1:1 \ + $(GC_SECTIONS) \ -Wl,--no-undefined if HAVE_SHARED_GLAPI diff --git a/src/mapi/es2api/Makefile.am b/src/mapi/es2api/Makefile.am index 1fb6d7c9604..e694a36e5d3 100644 --- a/src/mapi/es2api/Makefile.am +++ b/src/mapi/es2api/Makefile.am @@ -51,6 +51,7 @@ libGLESv2_la_LIBADD = $(GLESv2_LIB_DEPS) libGLESv2_la_LDFLAGS = \ -no-undefined \ -version-number 2 \ + $(GC_SECTIONS) \ -Wl,--no-undefined if HAVE_SHARED_GLAPI diff --git a/src/mapi/shared-glapi/Makefile.am b/src/mapi/shared-glapi/Makefile.am index 7e1068fdfec..33a939a90f9 100644 --- a/src/mapi/shared-glapi/Makefile.am +++ b/src/mapi/shared-glapi/Makefile.am @@ -11,6 +11,7 @@ libglapi_la_SOURCES = $(MAPI_GLAPI_FILES) libglapi_la_LIBADD = $(PTHREAD_LIBS) $(SELINUX_LIBS) libglapi_la_LDFLAGS = \ -no-undefined \ + $(GC_SECTIONS) \ -Wl,--no-undefined include $(GLAPI)/gen/glapi_gen.mk diff --git a/src/mapi/vgapi/Makefile.am b/src/mapi/vgapi/Makefile.am index f85addc7c31..f946b9bb6f9 100644 --- a/src/mapi/vgapi/Makefile.am +++ b/src/mapi/vgapi/Makefile.am @@ -47,6 +47,7 @@ libOpenVG_la_LIBADD = $(VG_LIB_DEPS) libOpenVG_la_LDFLAGS = \ -no-undefined \ -version-number 1 \ + $(GC_SECTIONS) \ -Wl,--no-undefined vgapi_tmp.h: $(srcdir)/vgapi.csv $(top_srcdir)/src/mapi/mapi_abi.py -- cgit v1.2.3