All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: "Juraj Linkeš" <juraj.linkes@pantheon.tech>
Cc: "david.marchand@redhat.com" <david.marchand@redhat.com>,
	"aconole@redhat.com" <aconole@redhat.com>,
	"maicolgabriel@hotmail.com" <maicolgabriel@hotmail.com>,
	"jerinjacobk@gmail.com" <jerinjacobk@gmail.com>,
	"ferruh.yigit@intel.com" <ferruh.yigit@intel.com>,
	"Ruifeng.Wang@arm.com" <Ruifeng.Wang@arm.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	"bruce.richardson@intel.com" <bruce.richardson@intel.com>
Subject: Re: [dpdk-dev] [PATCH v4 1/3] build: add aarch64 clang to meson cross-compile
Date: Wed, 20 Jan 2021 11:34:44 +0100	[thread overview]
Message-ID: <1625239.tDLFZOx7cW@thomas> (raw)
In-Reply-To: <e59d0d0b37924393b22a0da6c3996a0f@pantheon.tech>

20/01/2021 11:30, Juraj Linkeš:
> From: Thomas Monjalon <thomas@monjalon.net>
> > 20/01/2021 09:24, Juraj Linkeš:
> > > From: Thomas Monjalon <thomas@monjalon.net>
> > > > 19/01/2021 09:33, Juraj Linkeš:
> > > > > Create meson cross-file arm64_armv8_linux_clang_ubuntu1804.
> > > >
> > > > Why is it specific to Ubuntu 18.04?
> > > > I don't want to add specifc cross files per distributions.
> > > >
> > > > > Use clang/LLVM toolchain with sysroot pointing to gcc cross stdlib.
> > > > >
> > > > > The sysroot path must be in the cross-file so that Clang can find
> > > > > the proper headers:
> > > > > * setting CFLAGS, LDFLAGS or -Dc_args, -Dc_link_args doesn't
> > > > > affect cross builds (only native builds). Support added in 0.51.0.
> > > > > * setting pkg-config vars only affects lib searching, not includes
> > > > > * splitting the cross-file into two (one with clang info, one with
> > > > > paths) doesn't work. Support added in 0.52.0.
> > > >
> > > > I don't understand the explanations above.
> > > > Please explain what is the bug and how it is fixed.
> > > >
> > >
> > > I guess the missing piece is that the sysroot path is the ubuntu specific part.
> > The explanations illustrate why we can't have a generic cross file with the
> > current meson version - there's no way to pass the paths to cross builds. Now
> > that I think about it, the commit message needs a rewrite - I should've
> > mentioned that clang/llvm doesn't provide it's own standard c lib, so that has to
> > come from elsewhere (such as gcc) and thus we have to provide the paths.
> > 
> > Can it be done with the option -Dc_args?
> > 
> 
> Not in Meson 0.47.1, it's explained in the commit msg:
> * setting CFLAGS, LDFLAGS or -Dc_args, -Dc_link_args doesn't 
> affect cross builds (only native builds). Support added in 0.51.0.

So I suggest to make it clearer :)
One proposal:

* setting CFLAGS/LDFLAGS variables or using -Dc_args/-Dc_link_args options
  do not work on cross builds until Meson 0.51.0.

> > > > [...]
> > > > > +c_args = ['-target', 'aarch64-linux-gnu', '--sysroot',
> > > > > +'/usr/aarch64-linux-gnu'] c_link_args = ['-target',
> > > > > +'aarch64-linux-gnu', '-fuse-ld=lld', '--gcc-toolchain=/usr']
> > 
> > 
> > 
> 
> 






  reply	other threads:[~2021-01-20 10:34 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-01 10:20 [dpdk-dev] [PATCH 0/2] aarch64 clang cross compilation Juraj Linkeš
2020-10-01 10:20 ` [dpdk-dev] [PATCH 1/2] ci: add aarch64 clang cross-compilation builds Juraj Linkeš
2020-10-01 10:20 ` [dpdk-dev] [PATCH 2/2] doc: add clang to aarch64 cross build guide Juraj Linkeš
2020-10-01 10:30 ` [dpdk-dev] [PATCH v2 0/3] aarch64 clang cross compilation Juraj Linkeš
2020-10-01 10:30   ` [dpdk-dev] [PATCH v2 1/3] build: add aarch64 clang to meson cross-compile Juraj Linkeš
2020-10-04  8:29     ` Jerin Jacob
2020-10-05 10:57       ` Juraj Linkeš
2020-10-05 14:26         ` Jerin Jacob
2020-10-22 13:40           ` Juraj Linkeš
2020-10-01 10:30   ` [dpdk-dev] [PATCH v2 2/3] ci: add aarch64 clang cross-compilation builds Juraj Linkeš
2020-10-01 13:31     ` Aaron Conole
2020-10-01 14:43       ` Juraj Linkeš
2020-10-01 10:30   ` [dpdk-dev] [PATCH v2 3/3] doc: add clang to aarch64 cross build guide Juraj Linkeš
2020-10-02  9:38   ` [dpdk-dev] [PATCH v3 0/3] aarch64 clang cross compilation Juraj Linkeš
2020-10-02  9:38     ` [dpdk-dev] [PATCH v3 1/3] build: add aarch64 clang to meson cross-compile Juraj Linkeš
2020-12-22  9:58       ` Ruifeng Wang
2020-10-02  9:38     ` [dpdk-dev] [PATCH v3 2/3] ci: add aarch64 clang cross-compilation builds Juraj Linkeš
2020-10-02  9:38     ` [dpdk-dev] [PATCH v3 3/3] doc: add clang to aarch64 cross build guide Juraj Linkeš
2020-12-22  7:34       ` Ruifeng Wang
2021-01-19  8:33     ` [dpdk-dev] [PATCH v4 0/3] aarch64 clang cross compilation Juraj Linkeš
2021-01-19  8:33       ` [dpdk-dev] [PATCH v4 1/3] build: add aarch64 clang to meson cross-compile Juraj Linkeš
2021-01-19 16:08         ` Thomas Monjalon
2021-01-20  8:24           ` Juraj Linkeš
2021-01-20 10:21             ` Thomas Monjalon
2021-01-20 10:30               ` Juraj Linkeš
2021-01-20 10:34                 ` Thomas Monjalon [this message]
2021-01-21 15:02                   ` Juraj Linkeš
2021-01-19  8:33       ` [dpdk-dev] [PATCH v4 2/3] ci: add aarch64 clang cross-compilation builds Juraj Linkeš
2021-01-19  8:33       ` [dpdk-dev] [PATCH v4 3/3] doc: add clang to aarch64 cross build guide Juraj Linkeš
2021-01-21 15:51       ` [dpdk-dev] [PATCH v5 0/3] aarch64 clang cross compilation Juraj Linkeš
2021-01-21 15:51         ` [dpdk-dev] [PATCH v5 1/3] build: add aarch64 clang to meson cross-compile Juraj Linkeš
2021-01-21 15:51         ` [dpdk-dev] [PATCH v5 2/3] ci: add aarch64 clang cross-compilation builds Juraj Linkeš
2021-01-21 15:51         ` [dpdk-dev] [PATCH v5 3/3] doc: add clang to aarch64 cross build guide Juraj Linkeš
2021-01-26 10:24           ` Thomas Monjalon
2021-01-26 11:45         ` [dpdk-dev] [PATCH v5 0/3] aarch64 clang cross compilation Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1625239.tDLFZOx7cW@thomas \
    --to=thomas@monjalon.net \
    --cc=Ruifeng.Wang@arm.com \
    --cc=aconole@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=jerinjacobk@gmail.com \
    --cc=juraj.linkes@pantheon.tech \
    --cc=maicolgabriel@hotmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.