[dpdk-dev] mk: fix linker script when re-building
Commit Message
The linker script is generated by simply finding all libraries in
RTE_OUTPUT/lib.
The issue shows up when re-building the DPDK, hence already having a
linker script in that directory, resulting in the linker script
including itself.
That does not play well with the linker.
Simply filtering the linker script from all the found libraries solves
the problem.
Fixes: 948fd64befc3 ("mk: replace the combined library with a linker script")
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
---
mk/rte.combinedlib.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On 03/17/2016 01:22 AM, Sergio Gonzalez Monroy wrote:
> The linker script is generated by simply finding all libraries in
> RTE_OUTPUT/lib.
>
> The issue shows up when re-building the DPDK, hence already having a
> linker script in that directory, resulting in the linker script
> including itself.
>
> That does not play well with the linker.
>
> Simply filtering the linker script from all the found libraries solves
> the problem.
>
> Fixes: 948fd64befc3 ("mk: replace the combined library with a linker script")
>
> Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
> ---
> mk/rte.combinedlib.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mk/rte.combinedlib.mk b/mk/rte.combinedlib.mk
> index fe4817b..449358b 100644
> --- a/mk/rte.combinedlib.mk
> +++ b/mk/rte.combinedlib.mk
> @@ -42,7 +42,7 @@ endif
> RTE_LIBNAME := dpdk
> COMBINEDLIB := lib$(RTE_LIBNAME)$(EXT)
>
> -LIBS := $(notdir $(wildcard $(RTE_OUTPUT)/lib/*$(EXT)))
> +LIBS := $(filter-out $(COMBINEDLIB), $(notdir $(wildcard $(RTE_OUTPUT)/lib/*$(EXT))))
>
> all: FORCE
> $(Q)echo "GROUP ( $(LIBS) )" > $(RTE_OUTPUT)/lib/$(COMBINEDLIB)
>
Oops, thanks for spotting.
Acked-by: Panu Matilainen <pmatilai@redhat.com>
- Panu -
2016-03-17 11:37, Panu Matilainen:
> On 03/17/2016 01:22 AM, Sergio Gonzalez Monroy wrote:
> > The linker script is generated by simply finding all libraries in
> > RTE_OUTPUT/lib.
> >
> > The issue shows up when re-building the DPDK, hence already having a
> > linker script in that directory, resulting in the linker script
> > including itself.
> >
> > That does not play well with the linker.
> >
> > Simply filtering the linker script from all the found libraries solves
> > the problem.
> >
> > Fixes: 948fd64befc3 ("mk: replace the combined library with a linker script")
> >
> > Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
>
> Oops, thanks for spotting.
>
> Acked-by: Panu Matilainen <pmatilai@redhat.com>
Applied, thanks
@@ -42,7 +42,7 @@ endif
RTE_LIBNAME := dpdk
COMBINEDLIB := lib$(RTE_LIBNAME)$(EXT)
-LIBS := $(notdir $(wildcard $(RTE_OUTPUT)/lib/*$(EXT)))
+LIBS := $(filter-out $(COMBINEDLIB), $(notdir $(wildcard $(RTE_OUTPUT)/lib/*$(EXT))))
all: FORCE
$(Q)echo "GROUP ( $(LIBS) )" > $(RTE_OUTPUT)/lib/$(COMBINEDLIB)