From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by dpdk.org (Postfix) with ESMTP id E56B82B9E for ; Fri, 1 Mar 2019 14:13:54 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 899FE220AD; Fri, 1 Mar 2019 08:13:52 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Fri, 01 Mar 2019 08:13:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=knSPoanhiockHhFOr2zqAgsQlNNWrJsUkggS7xDUpR4=; b=Kz22oGa827Qr GgjcFCXFcfJQmA5ep3Lg2G0w86GYNa59E4938xu4dncYmgzVPwwBsVAYlzNGiWki CxZ+Oxp3oYNenc/ViYC4zhKjDkJqatNTSBdQ0wies4gywejNHGxvjEq+UJLO6Cs8 ikx3SfN/EydJvco8SKuV/BID8BvnlqY= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=knSPoanhiockHhFOr2zqAgsQlNNWrJsUkggS7xDUp R4=; b=ks3YPi0p2mpWpNPhHvCdDMUVK2TZPmGebyGmvirv7iGiAOWGZmmRplQe/ lTlDh6Eb2w31R+PlpRcaOn5NDtDDXqmebqGapRK9wTVrG8+bTbvCHzFewdzCOMxB u5ydFoiAiW+AgPum4h0f07RreJDGiovTZhuK7dDyQeTf+qE9Np6J1ojEw9/Lzmjq bf/DMFxIB7mhqWvwGHho66PLCfosqWIuMNci08Ta9D1wFmQbbJYUscAGWVwo0lGU mcwVKxGeYF/LxR60jn7NBOHLn8lRMWH8ua5ELgImSxYUpFE0ID7BKbNHppFZB1nW 9S28UHm/gPZx3TY1amZZz1I1ZdX1A== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedutddrvdehgdegkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucfkph epleefrdeirddugeelrdduudegnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhomhgr shesmhhonhhjrghlohhnrdhnvghtnecuvehluhhsthgvrhfuihiivgeptd X-ME-Proxy: Received: from xps.localnet (114.149.6.93.rev.sfr.net [93.6.149.114]) by mail.messagingengine.com (Postfix) with ESMTPA id 41E20E40C1; Fri, 1 Mar 2019 08:13:51 -0500 (EST) From: Thomas Monjalon To: Bruce Richardson , Luca Boccassi Cc: dev@dpdk.org Date: Fri, 01 Mar 2019 14:13:49 +0100 Message-ID: <8361830.nL5yRZOfUf@xps> In-Reply-To: <20190228174026.GA207688@bricha3-MOBL.ger.corp.intel.com> References: <20190103175725.5836-1-bluca@debian.org> <20190227135332.GA99260@bricha3-MOBL.ger.corp.intel.com> <20190228174026.GA207688@bricha3-MOBL.ger.corp.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH v8 6/6] build: use dependency for pcap and fallback to find_library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2019 13:13:55 -0000 28/02/2019 18:40, Bruce Richardson: > On Wed, Feb 27, 2019 at 01:53:32PM +0000, Bruce Richardson wrote: > > On Wed, Feb 27, 2019 at 12:03:48PM +0000, Luca Boccassi wrote: > > > On Wed, 2019-02-27 at 11:56 +0100, Thomas Monjalon wrote: > > > > 27/02/2019 11:50, Luca Boccassi: > > > > > On Wed, 2019-02-27 at 09:47 +0000, Bruce Richardson wrote: > > > > > > On Wed, Feb 27, 2019 at 09:33:12AM +0100, Thomas Monjalon wrote: > > > > > > > 26/02/2019 18:49, Luca Boccassi: > > > > > > > > On Tue, 2019-02-26 at 17:46 +0000, luca.boccassi@gmail.com > > > > > > > > wrote: > > > > > > > > > From: Luca Boccassi > > > > > > > > > > > > > > > > > > pcap has historically shipped a custom pcap-config binary > > > > > > > > > tool > > > > > > > > > which > > > > > > > > > does the job of pkg-config. It was never compatible with > > > > > > > > > cross > > > > > > > > > compilation. > > > > > > > > > Meson uses it when using dependency(), which then means > > > > > > > > > cross > > > > > > > > > compilation fails. > > > > > > > > > Set pcap-config to empty in the meson cross compilation > > > > > > > > > files > > > > > > > > > so > > > > > > > > > that Meson will not use it, and add a fallback in case > > > > > > > > > dependency() fails. > > > > > > > > > libpcap 1.9.0 finally ships a pkg-config file so everything > > > > > > > > > will > > > > > > > > > work out of the box in the future. > > > > > > > > > > > > > > > > > > Signed-off-by: Luca Boccassi > > > > > > > > > --- > > > > > > > > > v8: added back pcap change separately. Tested with bootlin > > > > > > > > > cross-compilation toolchain, everything seems to work. > > > > > > > > > > > > > > > > I had some time to invest so I added back this change, in a > > > > > > > > way > > > > > > > > that > > > > > > > > works with cross compilation too. Given the series wasn't > > > > > > > > merged > > > > > > > > yet > > > > > > > > and there was a conflict I've done a v8 rather than a single > > > > > > > > separate > > > > > > > > patch, but it's independent from the rest. > > > > > > > > > > > > > > > > More testing is of course welcome! > > > > > > > > > > > > > > I still see the same error when cross-compiling: > > > > > > > > > > > > > > /usr/include/stdint.h:109: error: "__INT64_C" redefined > > > > > > > > > > > > > Can patches 1-5 be merged anyway, leaving 6 for later? > > > > > > > > > > > > /Bruce > > > > > > > > > > Yes please... > > > > > > > > Yes, sure. I am checking other patches to push them. > > > > > > Thanks! > > > > > > > > Thomas, could you please give me detailed instructions on how to > > > > > repro? > > > > > I used the bootlin toolchain you linked me last time, and passed -- > > > > > cross-file config/arm/arm64_armv8_linuxapp_gcc to Meson, and > > > > > everything > > > > > built fine both with and without an arm64 build of libpcap in the > > > > > sysroot. With the previous version that I removed it would fail. > > > > > Not > > > > > sure what I'm missing! > > > > > > > > I'm running devtools/test-meson-builds.sh on my ArchLinux which has > > > > aarch64-linux-gnu-gcc 8.2.0 but no arm pcap I guess. > > > > > > The script is working fine too - I have the toolchain in /tmp so I > > > simply run it with PATH=/tmp/toolchain/bin:$PATH and everything built > > > fine including the arm targets. > > > > > > The key part in the patch was adding pcap-config = '' to the various > > > arm configs, could you please double check that it was applied > > > correctly? Without that, Meson finds and calls the native pcap-config > > > which gives wrong (native) flags and causes the errors you are seeing. > > > Otherwise I'm a bit lost, I can't understand why it's all working here > > > and not there. > > > > > > meson --werror -Dexamples=all --default-library=shared --cross-file config/arm/arm64_armv8_linuxapp_gcc /home/bluca/git/dpdk/devtools/.. build-arm64-armv8 > > > The Meson build system > > > Version: 0.49.2 > > > Source dir: /home/bluca/git/dpdk > > > Build dir: /home/bluca/git/dpdk/build-arm64-armv8 > > > Build type: cross build > > > Project name: DPDK > > > Project version: 19.05.0-rc0 > > > Native C compiler: ccache gcc (gcc 8.2.0 "gcc (Debian 8.2.0-21) 8.2.0") > > > Cross C compiler: aarch64-linux-gnu-gcc (gcc 7.3.0) > > > Host machine cpu family: aarch64 > > > Host machine cpu: armv8-a > > > Target machine cpu family: aarch64 > > > Target machine cpu: armv8-a > > > <...> > > > $ file build-arm64-armv8/lib/librte_eal.so.9.1 > > > build-arm64-armv8/lib/librte_eal.so.9.1: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, not stripped > > > > > > > I'm testing on Fedora 29 and this patch works fine with the cross-builds > > too. Maybe it's something special in Arch Linux again. I'll trying testing > > it out in an Arch VM - though sadly Arch linux is failing to update for me, > > so I won't have exactly Thomas' setup. > > I've also run this on Arch with the cross compiler installed and see no > issues. Thomas, can you look at the log below and see what differs from > your setup? I'm sorry for the noise. It compiles fine after cleaning the build directory :/