From 9353c4338acd51e1bc4172554fca018c4044829f Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Tue, 16 Mar 2021 11:38:36 +0000 Subject: [PATCH] util-linux: backport patch to skip build of unused objects util-linux-uuid does not need libtcolors.a and libcommon.a but they get build regardless. Backport a patch from upstream to skip them and save some compilation time. https://github.com/karelzak/util-linux/commit/c65953d72bbc7412f32e566d9fa6e780d84f0696 Signed-off-by: Luca Boccassi Signed-off-by: Richard Purdie --- meta/recipes-core/util-linux/util-linux.inc | 1 + ...RA_LTLIBRARIES-instead-of-noinst_LTL.patch | 49 +++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc index b4f817ed82..4031c586c9 100644 --- a/meta/recipes-core/util-linux/util-linux.inc +++ b/meta/recipes-core/util-linux/util-linux.inc @@ -37,5 +37,6 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${MAJOR_VERSION}/${BP}.tar.xz file://run-ptest \ file://display_testname_for_subtest.patch \ file://avoid_parallel_tests.patch \ + file://Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch \ " SRC_URI[sha256sum] = "f7516ba9d8689343594356f0e5e1a5f0da34adfbc89023437735872bb5024c5f" diff --git a/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch b/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch new file mode 100644 index 0000000000..272518914e --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch @@ -0,0 +1,49 @@ +Author: Luca Boccassi +Description: Automake: use EXTRA_LTLIBRARIES instead of noinst_LTLIBRARIES + noinst_LTLIBRARIES causes the libraries to be always built + unconditionally. EXTRA_LTLIBRARIES causes them to be built + only if other build target needs them. + In other words, avoid building libcommon.a and libtcolors.a + unless they are needed by another library/executable and + save some build time. +Upstream-Status: backport, commit:c65953d72bbc7412f32e566d9fa6e780d84f0696 +--- a/Makefile.am ++++ b/Makefile.am +@@ -39,7 +39,7 @@ bashcompletiondir = @bashcompletiondir@ + + dist_noinst_HEADERS = + noinst_PROGRAMS = +-noinst_LTLIBRARIES = ++EXTRA_LTLIBRARIES = + usrbin_exec_PROGRAMS = + usrsbin_exec_PROGRAMS = + dist_man_MANS = +@@ -169,7 +169,7 @@ else + edit_cmd += -e 's|@vendordir[@]||g' + endif + +-CLEANFILES += $(PATHFILES) ++CLEANFILES += $(PATHFILES) $(EXTRA_LTLIBRARIES) + EXTRA_DIST += $(PATHFILES:=.in) + + $(PATHFILES): Makefile +--- a/lib/Makemodule.am ++++ b/lib/Makemodule.am +@@ -9,7 +9,7 @@ + # Note that you need "make install-strip" (or proper rpm / Debian build) + # to generate binaries with only relevant stuff. + # +-noinst_LTLIBRARIES += libcommon.la ++EXTRA_LTLIBRARIES += libcommon.la + libcommon_la_CFLAGS = $(AM_CFLAGS) + libcommon_la_SOURCES = \ + lib/blkdev.c \ +@@ -59,7 +59,7 @@ libcommon_la_SOURCES += lib/sysfs.c + endif + endif + +-noinst_LTLIBRARIES += libtcolors.la ++EXTRA_LTLIBRARIES += libtcolors.la + libtcolors_la_CFLAGS = $(AM_CFLAGS) + libtcolors_la_SOURCES = lib/colors.c lib/color-names.c include/colors.h include/color-names.h + libtcolors_la_LIBADD = -- 2.40.1