From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id C984D43B34 for ; Sun, 18 Feb 2024 18:38:29 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B9020402CF; Sun, 18 Feb 2024 18:38:29 +0100 (CET) Received: from wfout5-smtp.messagingengine.com (wfout5-smtp.messagingengine.com [64.147.123.148]) by mails.dpdk.org (Postfix) with ESMTP id 7FC924021D; Sun, 18 Feb 2024 18:38:26 +0100 (CET) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailfout.west.internal (Postfix) with ESMTP id 034C71C000A1; Sun, 18 Feb 2024 12:38:24 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Sun, 18 Feb 2024 12:38:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1708277904; x=1708364304; bh=a6iNz/E/B97OiU3kRQ5wsce7URF6Krq2WuPffEK1TTU=; b= t1B0HUYtaPwkSCifMItp3DIMwgyRQO8qBmd6W/feJ2bqstDMzwKLMEvwy+MS+ijr U+CaFhTwVWchnOaiToHgyijXQi6WWpSxDLc1/qiwueGYQ7DmPlgqknhgIFiKX5JL riAhmvFMJoMn9fFEq4jA7xcpwZYr2MXjfPWlGNRx0eVKqA1JbuGuuTS3stM/DIcr QXOyhCycFkFi04gshxrSAa2ehESNG8LfCHgF/ol+XPslWlDigDuClrG0FrT/9ZMg rMllkEFDW3z7qwddRw+xtgtllSabamjCdis1NLEHdVW+Djho4ju0Xt/sUJhZY4ux Wd5J74EHUACQd/bFQKX1WA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1708277904; x= 1708364304; bh=a6iNz/E/B97OiU3kRQ5wsce7URF6Krq2WuPffEK1TTU=; b=r A8w/xQ9iFtQhy1AENkpM4g5/4a53D8FPivC/olYHUZo44aKWnXohSvKX4h6IROFc plodoqGjZ65eiPAAMk4He+AuetUn2fRLClNvTmLBbt92slXn94h0Sbp+LyIUws0D JhfUpzprZNZB17mJpcnCI9GlDrXnTK0xmI2svZ6qy1tcX1ZAqGQMOABeR/mTvlXi WyzneEo1E2oJF9E/xvrAZ32kgENHopCEzYRwxXwKq5cHF6CoS3il8411ia/g9WlN hzW7VtaAPgqV+tLALQHjDRXA/aZx7/MPFVASGgZ/mMJK0KdqKwhbJULs2BdSlSfo 1LZO5H2mYET798qiqdj9w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeigddutdehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhm rghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenuc ggtffrrghtthgvrhhnpeeiiedufeeuhfevvddvhffggfetgeekkeehffejhfdtleeljedu gfeuffegieekheenucffohhmrghinhepghhnuhdrohhrghenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmhhonhhjrghlohhn rdhnvght X-ME-Proxy: Feedback-ID: i47234305:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 18 Feb 2024 12:38:23 -0500 (EST) From: Thomas Monjalon To: Bruce Richardson Cc: dev@dpdk.org, Tyler Retzlaff , stable@dpdk.org Subject: Re: [PATCH] build: fix linker warnings about undefined symbols Date: Sun, 18 Feb 2024 18:38:22 +0100 Message-ID: <6824308.6fTUFtlzNn@thomas> In-Reply-To: <20240110165814.GA25069@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <20240110150103.529080-1-bruce.richardson@intel.com> <20240110165814.GA25069@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org 10/01/2024 17:58, Tyler Retzlaff: > On Wed, Jan 10, 2024 at 03:01:03PM +0000, Bruce Richardson wrote: > > The default behaviour of "ld.lld" has changed, so it now prints out > > warnings about entries in the version.map file which don't exist in > > the current build. Since we use our version.map file simply to filter > > out the functions we don't want made public, we include in it all > > functions across all OS's and builds that we want public if present. > > This causes these ld warnings to be emitted, e.g. on BSD, which is > > missing functionality found on Linux. For example: > > > > * hpet functions in EAL > > * regexdev enqueue and dequeue burst > > * eventdev event_timer functions > > > > Easiest solution, without major rework of how we use our version.map > > files, and without dynamically generating them per-build, is to pass > > the --undefined-version flag to the linker, to restore the old > > behaviour. > > > > Signed-off-by: Bruce Richardson > > Acked-by: Tyler Retzlaff +Cc stable Applied as easy solution for this linker. The discussion about Windows linker and use of macros deserve to continue, maybe in a new dedicated thread? > i don't know if has ever been discussed but a way to achieve a similar > outcome would be to introduce a visibility macro allowing the data and > function symbols to be explicitly made visible while making the build > default hidden. > > https://gcc.gnu.org/wiki/Visibility > > on windows symbols are hidden by default (opposite of gnu toolchain) and > allowing the symbols that are intended to be public be annotated in code > with a macro instead of a separate map/def file would arguably appear > more consistent. additionally, the current process of converting a map > file to a def file for windows has limitations with respect to things > like marking the type of symbol being exported.