All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7] poky-tiny: enable section removal
@ 2020-11-16  0:40 Sinan Kaya
  0 siblings, 0 replies; only message in thread
From: Sinan Kaya @ 2020-11-16  0:40 UTC (permalink / raw)
  To: poky; +Cc: Sinan Kaya

Use GCC sections flags so that unused sections can be garbage
collected at link time.

Signed-off-by: Sinan Kaya <okaya@kernel.org>
---
 meta-poky/conf/distro/include/gcsections.inc | 22 ++++++++++++++++++++
 meta-poky/conf/distro/poky-tiny.conf         |  2 ++
 2 files changed, 24 insertions(+)
 create mode 100644 meta-poky/conf/distro/include/gcsections.inc

diff --git a/meta-poky/conf/distro/include/gcsections.inc b/meta-poky/conf/distro/include/gcsections.inc
new file mode 100644
index 00000000000..dd98943acb3
--- /dev/null
+++ b/meta-poky/conf/distro/include/gcsections.inc
@@ -0,0 +1,22 @@
+CFLAGS_SECTION_REMOVAL = "-ffunction-sections -fdata-sections"
+LDFLAGS_SECTION_REMOVAL = "-Wl,--gc-sections"
+
+# packages with build problems using sections
+CFLAGS_SECTION_REMOVAL_pn-glibc = ""
+LDFLAGS_SECTION_REMOVAL_pn-glibc = ""
+CFLAGS_SECTION_REMOVAL_pn-cairo = ""
+LDFLAGS_SECTION_REMOVAL_pn-cairo = ""
+CFLAGS_SECTION_REMOVAL_pn-perl = ""
+LDFLAGS_SECTION_REMOVAL_pn-perl = ""
+CFLAGS_SECTION_REMOVAL_pn-grub-efi = ""
+LDFLAGS_SECTION_REMOVAL_pn-grub-efi = ""
+CFLAGS_SECTION_REMOVAL_pn-grub = ""
+LDFLAGS_SECTION_REMOVAL_pn-grub = ""
+
+# set default for target
+CFLAGS_append_class-target = " ${CFLAGS_SECTION_REMOVAL}"
+LDFLAGS_append_class-target = " ${LDFLAGS_SECTION_REMOVAL}"
+
+# set default for nativesdk
+CFLAGS_append_class-nativesdk = " ${CFLAGS_SECTION_REMOVAL}"
+LDFLAGS_append_class-nativesdk = " ${LDFLAGS_SECTION_REMOVAL}"
diff --git a/meta-poky/conf/distro/poky-tiny.conf b/meta-poky/conf/distro/poky-tiny.conf
index c6d4b88f83d..fcee513f14a 100644
--- a/meta-poky/conf/distro/poky-tiny.conf
+++ b/meta-poky/conf/distro/poky-tiny.conf
@@ -29,6 +29,8 @@
 # [ ] Modify busybox to allow for DISTRO_FEATURES-like confiruration
 
 require conf/distro/poky.conf
+require conf/distro/include/gcsections.inc
+
 DISTRO = "poky-tiny"
 DISTROOVERRIDES = "poky:poky-tiny"
 TCLIBC = "musl"
-- 
2.17.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-11-16  0:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-16  0:40 [PATCH v7] poky-tiny: enable section removal Sinan Kaya

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.