[PATCH 1/2] Makeconfig: Support $(+nolink-deps) in link flags
Adhemerval Zanella Netto
adhemerval.zanella@linaro.org
Fri Mar 21 18:46:01 GMT 2025
On 21/03/25 15:42, Florian Weimer wrote:
> This allows adding dependencies to rules, but not linking against
> them.
>
> This is more or less a reimplementation of .EXTRA_PREREQS feature from
> GNU make 4.3.
LGTM, thanks.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
> ---
> Makeconfig | 12 ++++++++----
> Makerules | 2 +-
> 2 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/Makeconfig b/Makeconfig
> index aa547a443f..3628db6eba 100644
> --- a/Makeconfig
> +++ b/Makeconfig
> @@ -442,7 +442,8 @@ ifndef +link-pie
> $(filter-out $(addprefix $(csu-objpfx),start.o \
> S$(start-installed-name))\
> $(+preinit) $(link-extra-libs) \
> - $(common-objpfx)libc% $(+postinit),$^) \
> + $(common-objpfx)libc% $(+postinit) \
> + $(+nolink-deps),$^) \
> $(link-extra-libs)
> +link-pie-after-libc = $(+postctorS) $(+postinit)
> define +link-pie
> @@ -473,7 +474,8 @@ ifndef +link-static
> $(filter-out $(addprefix $(csu-objpfx),start.o \
> $(start-installed-name))\
> $(+preinit) $(link-extra-libs-static) \
> - $(common-objpfx)libc% $(+postinit),$^) \
> + $(common-objpfx)libc% $(+postinit) \
> + $(+nolink-deps), $^) \
> $(link-extra-libs-static)
> +link-static-after-libc = $(+postctorT) $(+postinit)
> define +link-static
> @@ -509,7 +511,8 @@ else # not build-pie-default
> $(filter-out $(addprefix $(csu-objpfx),start.o \
> $(start-installed-name))\
> $(+preinit) $(link-extra-libs) \
> - $(common-objpfx)libc% $(+postinit),$^) \
> + $(common-objpfx)libc% $(+postinit) \
> + $(+nolink-deps),$^) \
> $(link-extra-libs)
> +link-after-libc = $(+postctor) $(+postinit)
> define +link
> @@ -549,7 +552,8 @@ endif # +link
> $(filter-out $(addprefix $(csu-objpfx),start.o \
> $(start-name-2.0))\
> $(+preinit) $(link-extra-libs) \
> - $(common-objpfx)libc% $(+postinit),$^) \
> + $(common-objpfx)libc% $(+postinit) \
> + $(+nolink-deps),$^) \
> $(link-extra-libs)
> +link-after-libc = $(+postctor) $(+postinit)
> define +link-2.0-tests
> diff --git a/Makerules b/Makerules
> index ada616891e..9dc60cc3ce 100644
> --- a/Makerules
> +++ b/Makerules
> @@ -587,7 +587,7 @@ endef
> build-module-helper-objlist = \
> $(patsubst %_pic.a,$(whole-archive) %_pic.a $(no-whole-archive),\
> $(filter-out %.lds $(map-file) $(+preinit) $(+postinit) \
> - $(elf-objpfx)sofini.os \
> + $(elf-objpfx)sofini.os $(+nolink-deps) \
> $(link-libc-deps),$^))
>
> build-module-objlist = $(build-module-helper-objlist) $(LDLIBS-$(@F:%.so=%).so)
>
> base-commit: 3e2be87832781a29ed67f38f87c1ce3dd4c1b866
More information about the Libc-alpha
mailing list