From patchwork Tue Jun 21 08:11:49 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Panu Matilainen X-Patchwork-Id: 14141 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 688B2ADE1; Tue, 21 Jun 2016 10:12:19 +0200 (CEST) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id CD3A5ADCB for ; Tue, 21 Jun 2016 10:12:15 +0200 (CEST) Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 1797F73029; Tue, 21 Jun 2016 08:12:15 +0000 (UTC) Received: from sopuli.koti.laiskiainen.org.com (vpn1-6-229.ams2.redhat.com [10.36.6.229]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u5L8CAFN024674; Tue, 21 Jun 2016 04:12:14 -0400 From: Panu Matilainen To: dev@dpdk.org Cc: christian.ehrhardt@canonical.com, thomas.monjalon@6wind.com Date: Tue, 21 Jun 2016 11:11:49 +0300 Message-Id: <7d5dcbf0aeac341ffc922ad972160b5312a30057.1466496709.git.pmatilai@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.68 on 10.5.11.24 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Tue, 21 Jun 2016 08:12:15 +0000 (UTC) Subject: [dpdk-dev] [PATCH 3/3] mk: fail build on incomplete shared library dependencies X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Require all symbols used by a DSO to be resolvable via LDLIBS at build-time. Previously it was possible to build a library with incomplete dependencies which could then fail at run-time. Signed-off-by: Panu Matilainen --- mk/rte.lib.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk index 1ff403f..f75ec10 100644 --- a/mk/rte.lib.mk +++ b/mk/rte.lib.mk @@ -94,7 +94,7 @@ O_TO_A_DO = @set -e; \ echo $(O_TO_A_CMD) > $(call exe2cmd,$(@)) O_TO_S = $(LD) -L$(RTE_OUTPUT)/lib $(_CPU_LDFLAGS) $(EXTRA_LDFLAGS) \ - -shared $(OBJS-y) $(LDLIBS) -Wl,-soname,$(LIB) -o $(LIB) + -shared $(OBJS-y) -z defs $(LDLIBS) -Wl,-soname,$(LIB) -o $(LIB) O_TO_S_STR = $(subst ','\'',$(O_TO_S)) #'# fix syntax highlight O_TO_S_DISP = $(if $(V),"$(O_TO_S_STR)"," LD $(@)") O_TO_S_DO = @set -e; \