From: Panu Matilainen <pmatilai@redhat.com>
Date: Mon, 21 Mar 2016 11:33:57 +0000 (+0200)
Subject: mk: eliminate duplicates from libraries list
X-Git-Tag: spdx-start~7234
X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=edf4d331dcdb757da8c50850152be4cf948d2787;p=dpdk.git

mk: eliminate duplicates from libraries list

Duplicates in LDLIBS can cause link failures from multiply defined
symbols, ensure all libraries are only mentioned once. Can't use
sorting for duplicate elimination as order is critical so awk one-liner
is used.

Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
---

diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index a1cd9a3c72..b2ed9e2fd0 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -174,6 +174,10 @@ _LDLIBS-y += --no-whole-archive
 
 LDLIBS += $(_LDLIBS-y) $(CPU_LDLIBS) $(EXTRA_LDLIBS)
 
+# Eliminate duplicates without sorting
+LDLIBS := $(shell echo $(LDLIBS) | \
+	awk '{for (i = 1; i <= NF; i++) { if (!seen[$$i]++) print $$i }}')
+
 .PHONY: all
 all: install