* [dpdk-dev] [PATCH] devtools: reset compilation flags for each target @ 2019-10-02 16:55 David Marchand 2019-10-03 9:21 ` Bruce Richardson 2019-11-27 23:07 ` Thomas Monjalon 0 siblings, 2 replies; 5+ messages in thread From: David Marchand @ 2019-10-02 16:55 UTC (permalink / raw) To: dev; +Cc: Thomas Monjalon Same idea than overriding PATH and PKG_CONFIG_PATH, it can be quite useful to override compilation flags like CFLAGS, CPPFLAGS and LDFLAGS for cross compilation or libraries that won't provide a pkg-config file. Fixes: 272236741258 ("devtools: load target-specific compilation environment") Signed-off-by: David Marchand <david.marchand@redhat.com> --- devtools/test-meson-builds.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh index 08e83eb..6091347 100755 --- a/devtools/test-meson-builds.sh +++ b/devtools/test-meson-builds.sh @@ -36,12 +36,18 @@ fi default_path=$PATH default_pkgpath=$PKG_CONFIG_PATH +default_cflags=$CFLAGS +default_cppflags=$CPPFLAGS +default_ldflags=$LDFLAGS load_env () # <target compiler> { targetcc=$1 export PATH=$default_path export PKG_CONFIG_PATH=$default_pkgpath + export CFLAGS=$default_cflags + export CPPFLAGS=$default_cppflags + export LDFLAGS=$default_ldflags unset DPDK_MESON_OPTIONS command -v $targetcc >/dev/null 2>&1 || return 1 DPDK_TARGET=$($targetcc -v 2>&1 | sed -n 's,^Target: ,,p') -- 1.8.3.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] devtools: reset compilation flags for each target 2019-10-02 16:55 [dpdk-dev] [PATCH] devtools: reset compilation flags for each target David Marchand @ 2019-10-03 9:21 ` Bruce Richardson 2019-10-03 10:08 ` David Marchand 2019-11-27 23:07 ` Thomas Monjalon 1 sibling, 1 reply; 5+ messages in thread From: Bruce Richardson @ 2019-10-03 9:21 UTC (permalink / raw) To: David Marchand; +Cc: dev, Thomas Monjalon On Wed, Oct 02, 2019 at 06:55:47PM +0200, David Marchand wrote: > Same idea than overriding PATH and PKG_CONFIG_PATH, it can be quite > useful to override compilation flags like CFLAGS, CPPFLAGS and LDFLAGS > for cross compilation or libraries that won't provide a pkg-config file. > > Fixes: 272236741258 ("devtools: load target-specific compilation environment") > > Signed-off-by: David Marchand <david.marchand@redhat.com> > --- No strong objection to this change, but for meson the better way to handle this may be to put these flags into the cross-file used for the build. By explicitly passing CFLAGS etc. to the build, I'm not sure what the behaviour is with regards to passing those flags to cross-built vs native-built components. For a cross-compile, not all CFLAGS should be passed to the build of pmdinfogen, for instance. /Bruce ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] devtools: reset compilation flags for each target 2019-10-03 9:21 ` Bruce Richardson @ 2019-10-03 10:08 ` David Marchand 2019-10-03 10:35 ` Bruce Richardson 0 siblings, 1 reply; 5+ messages in thread From: David Marchand @ 2019-10-03 10:08 UTC (permalink / raw) To: Bruce Richardson; +Cc: dev, Thomas Monjalon On Thu, Oct 3, 2019 at 11:21 AM Bruce Richardson <bruce.richardson@intel.com> wrote: > > On Wed, Oct 02, 2019 at 06:55:47PM +0200, David Marchand wrote: > > Same idea than overriding PATH and PKG_CONFIG_PATH, it can be quite > > useful to override compilation flags like CFLAGS, CPPFLAGS and LDFLAGS > > for cross compilation or libraries that won't provide a pkg-config file. > > > > Fixes: 272236741258 ("devtools: load target-specific compilation environment") > > > > Signed-off-by: David Marchand <david.marchand@redhat.com> > > --- > > No strong objection to this change, but for meson the better way to handle > this may be to put these flags into the cross-file used for the build. By > explicitly passing CFLAGS etc. to the build, I'm not sure what the > behaviour is with regards to passing those flags to cross-built vs > native-built components. For a cross-compile, not all CFLAGS should be > passed to the build of pmdinfogen, for instance. Ok, I see. Then the only usecase would be for locally built libraries that meson can't find by itself. A bit hackish too. Mm, is there a way to tell meson "library X (CFLAGS, LDFLAGS) is (xx, yy)" ? I could write some local .pc files and override PKG_CONFIG_PATH... Any better idea ? -- David Marchand ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] devtools: reset compilation flags for each target 2019-10-03 10:08 ` David Marchand @ 2019-10-03 10:35 ` Bruce Richardson 0 siblings, 0 replies; 5+ messages in thread From: Bruce Richardson @ 2019-10-03 10:35 UTC (permalink / raw) To: David Marchand; +Cc: dev, Thomas Monjalon On Thu, Oct 03, 2019 at 12:08:30PM +0200, David Marchand wrote: > On Thu, Oct 3, 2019 at 11:21 AM Bruce Richardson > <bruce.richardson@intel.com> wrote: > > > > On Wed, Oct 02, 2019 at 06:55:47PM +0200, David Marchand wrote: > > > Same idea than overriding PATH and PKG_CONFIG_PATH, it can be quite > > > useful to override compilation flags like CFLAGS, CPPFLAGS and LDFLAGS > > > for cross compilation or libraries that won't provide a pkg-config file. > > > > > > Fixes: 272236741258 ("devtools: load target-specific compilation environment") > > > > > > Signed-off-by: David Marchand <david.marchand@redhat.com> > > > --- > > > > No strong objection to this change, but for meson the better way to handle > > this may be to put these flags into the cross-file used for the build. By > > explicitly passing CFLAGS etc. to the build, I'm not sure what the > > behaviour is with regards to passing those flags to cross-built vs > > native-built components. For a cross-compile, not all CFLAGS should be > > passed to the build of pmdinfogen, for instance. > > Ok, I see. > > Then the only usecase would be for locally built libraries that meson > can't find by itself. > A bit hackish too. > > Mm, is there a way to tell meson "library X (CFLAGS, LDFLAGS) is (xx, yy)" ? > I could write some local .pc files and override PKG_CONFIG_PATH... > Any better idea ? > If the scheme here using CFLAGS/LDFLAGS works just go with it for now. Ideally for cross compiles, we could consider taking the stored cross-compile files and copying them to /tmp and then adding the additional flags there. However, for just passing flags to help find library X or Y, its probably not worth doing, so let's keep it simple until we need something more powerful. I was just pointing out that this could cause issues in the future if we do start using it for something more fancy... ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] devtools: reset compilation flags for each target 2019-10-02 16:55 [dpdk-dev] [PATCH] devtools: reset compilation flags for each target David Marchand 2019-10-03 9:21 ` Bruce Richardson @ 2019-11-27 23:07 ` Thomas Monjalon 1 sibling, 0 replies; 5+ messages in thread From: Thomas Monjalon @ 2019-11-27 23:07 UTC (permalink / raw) To: David Marchand; +Cc: dev 02/10/2019 18:55, David Marchand: > Same idea than overriding PATH and PKG_CONFIG_PATH, it can be quite > useful to override compilation flags like CFLAGS, CPPFLAGS and LDFLAGS > for cross compilation or libraries that won't provide a pkg-config file. > > Fixes: 272236741258 ("devtools: load target-specific compilation environment") > > Signed-off-by: David Marchand <david.marchand@redhat.com> Applied, thanks ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-11-27 23:07 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-10-02 16:55 [dpdk-dev] [PATCH] devtools: reset compilation flags for each target David Marchand 2019-10-03 9:21 ` Bruce Richardson 2019-10-03 10:08 ` David Marchand 2019-10-03 10:35 ` Bruce Richardson 2019-11-27 23:07 ` Thomas Monjalon
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).