[Buildroot] [PATCH 1/2] toolchain-external: add option for OpenMP support

Yann E. MORIN yann.morin.1998 at free.fr
Mon Mar 25 16:57:27 UTC 2019


On 2019-03-25 11:27 +0000, Ed Blake spake thusly:
> Hi Yann,
> 
> On Fri, 22 Mar 2019 22:15:34 +0100
> "Yann E. MORIN" <yann.morin.1998 at free.fr> wrote:
> 
> > Ed, All,
> > 
> > On 2019-03-22 16:59 +0000, Ed Blake spake thusly:
> > > Add new BR2_TOOLCHAIN_HAS_OPENMP option for toolchains with OpenMP
> > > support.  
> > 
> > With your series, there is no user of libgomp in Buildroot, so I
> > suppose this is for your own local packages, right?
> 
> Yes, it's for a local package.
> 
> > Actually, if we have packages in Buildroot that may use OpenMP, then it
> > is only optional for them, then. Do you know of such a package? The goal
> > being to actually add a runtime-test that gomp works.
> 
> The following packages *could* use OpenMP, but currently disable it:
> 
> imagemagick
> beecrypt
> libraw
> gettext
> 
> And the following package uses OpenMP if BR2_GCC_ENABLE_OPENMP is enabled:
> 
> fftw
> 
> I wonder if BR2_GCC_ENABLE_OPENMP should select BR2_TOOLCHAIN_HAS_OPENMP, in
> the same way that BR2_TOOLCHAIN_BUILDROOT_FORTRAN selects BR2_TOOLCHAIN_HAS_FORTRAN.

Ah, yes, that would indeed be good.

> Then BR2_TOOLCHAIN_HAS_OPENMP would be checked in the fftw makefile instead of
> BR2_GCC_ENABLE_OPENMP.

Then yes, it would be nice if your series would do:

 1. introduce BR2_TOOLCHAIN_HAS_OPENMP
 2. BR2_GCC_ENABLE_OPENMP select BR2_TOOLCHAIN_HAS_OPENMP
 3. external toolchain select BR2_TOOLCHAIN_HAS_OPENMP
 4. fftw switches to using BR2_TOOLCHAIN_HAS_OPENMP

Care to have a look and respin your series, please?

Regards,
Yann E. MORIN.

> Regards,
> 
> Ed.
>  
> > > Signed-off-by: Ed Blake <ed.blake at sondrel.com>  
> > 
> > Reviewed-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
> > 
> > Regards,
> > Yann E. MORIN.
> > 
> > > ---
> > >  toolchain/Config.in                                    | 3 +++
> > >  toolchain/toolchain-external/pkg-toolchain-external.mk | 4 ++++
> > >  2 files changed, 7 insertions(+)
> > > 
> > > diff --git a/toolchain/Config.in b/toolchain/Config.in
> > > index bcbc3cf984..bf42e92e00 100644
> > > --- a/toolchain/Config.in
> > > +++ b/toolchain/Config.in
> > > @@ -168,6 +168,9 @@ config BR2_TOOLCHAIN_HAS_SSP
> > >  config BR2_TOOLCHAIN_HAS_UCONTEXT
> > >  	bool
> > >  
> > > +config BR2_TOOLCHAIN_HAS_OPENMP
> > > +	bool
> > > +
> > >  config BR2_TOOLCHAIN_SUPPORTS_PIE
> > >  	bool
> > >  
> > > diff --git a/toolchain/toolchain-external/pkg-toolchain-external.mk b/toolchain/toolchain-external/pkg-toolchain-external.mk
> > > index db3570d96f..747837fdc6 100644
> > > --- a/toolchain/toolchain-external/pkg-toolchain-external.mk
> > > +++ b/toolchain/toolchain-external/pkg-toolchain-external.mk
> > > @@ -144,6 +144,10 @@ TOOLCHAIN_EXTERNAL_LIBS += libquadmath.so*
> > >  endif
> > >  endif
> > >  
> > > +ifeq ($(BR2_TOOLCHAIN_HAS_OPENMP),y)
> > > +TOOLCHAIN_EXTERNAL_LIBS += libgomp.so.*
> > > +endif
> > > +
> > >  TOOLCHAIN_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS))
> > >  
> > >  
> > > -- 
> > > 2.17.1
> > > 
> > > _______________________________________________
> > > buildroot mailing list
> > > buildroot at busybox.net
> > > http://lists.busybox.net/mailman/listinfo/buildroot  
> > 
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list