public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [PATCH v3] bitbake.conf: Define TC_CXX_RUNTIME
@ 2022-09-09 16:52 Khem Raj
  2022-09-09 19:51 ` [OE-core] " Andre McCurdy
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2022-09-09 16:52 UTC (permalink / raw)
  To: openembedded-core; +Cc: Khem Raj

This variable is used to denote the C/C++ compiler runtime to use.
Right now there are few alternatives out of the core which could
use this variable to define this property, the values it can take
are 'gnu' for gcc runtime. 'llvm' for using compiler-rt+libc++ and
'android' to use android runtime. Default settings is to use gnu
which is current silent default also.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
v2: Document the variable
v3: Rename to TC_CXX_RUNTIME

 documentation/ref-manual/variables.rst | 6 ++++++
 meta/conf/bitbake.conf                 | 1 +
 2 files changed, 7 insertions(+)

diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst
index cf817e9540..2d28c3d2f7 100644
--- a/documentation/ref-manual/variables.rst
+++ b/documentation/ref-manual/variables.rst
@@ -7973,6 +7973,12 @@ system and gives an overview of their function and contents.
       toolchain. You can use ``meta-sourcery`` as a template for adding
       support for other external toolchains.
 
+   :term:`TC_CXX_RUNTIME`
+      Specifies the C/C++ STL and runtime variant to use during
+      the build process. Default value is 'gnu'
+
+      You can select "gnu", "llvm", or "android".
+
    :term:`TEMPLATECONF`
       Specifies the directory used by the build system to find templates
       from which to build the ``bblayers.conf`` and ``local.conf`` files.
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 52a36d788b..62cdd9aa9c 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -389,6 +389,7 @@ FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt' if oe.types.boolean(d.getVar
 
 TCMODE ??= "default"
 TCLIBC ??= "glibc"
+TC_CXX_RUNTIME ??= "gnu"
 TMPDIR ?= "${TOPDIR}/tmp"
 
 CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(d.getVar('MACHINE'))][bool(d.getVar('MACHINE'))]}${@['', '/' + str(d.getVar('SDKMACHINE'))][bool(d.getVar('SDKMACHINE'))]}"
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [OE-core] [PATCH v3] bitbake.conf: Define TC_CXX_RUNTIME
  2022-09-09 16:52 [PATCH v3] bitbake.conf: Define TC_CXX_RUNTIME Khem Raj
@ 2022-09-09 19:51 ` Andre McCurdy
  2022-09-09 23:19   ` Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Andre McCurdy @ 2022-09-09 19:51 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On Fri, Sep 9, 2022 at 9:52 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> This variable is used to denote the C/C++ compiler runtime to use.
> Right now there are few alternatives out of the core which could
> use this variable to define this property, the values it can take
> are 'gnu' for gcc runtime. 'llvm' for using compiler-rt+libc++ and
> 'android' to use android runtime. Default settings is to use gnu
> which is current silent default also.

Seems like you made a conscious decision to refer to the gcc runtime
library as "gnu" instead of "gcc". What was the reasoning? Using "gcc"
would seem to be clearer unless it clashes with some gcc upstream
naming convention.

> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
> v2: Document the variable
> v3: Rename to TC_CXX_RUNTIME
>
>  documentation/ref-manual/variables.rst | 6 ++++++
>  meta/conf/bitbake.conf                 | 1 +
>  2 files changed, 7 insertions(+)
>
> diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst
> index cf817e9540..2d28c3d2f7 100644
> --- a/documentation/ref-manual/variables.rst
> +++ b/documentation/ref-manual/variables.rst
> @@ -7973,6 +7973,12 @@ system and gives an overview of their function and contents.
>        toolchain. You can use ``meta-sourcery`` as a template for adding
>        support for other external toolchains.
>
> +   :term:`TC_CXX_RUNTIME`
> +      Specifies the C/C++ STL and runtime variant to use during
> +      the build process. Default value is 'gnu'
> +
> +      You can select "gnu", "llvm", or "android".
> +
>     :term:`TEMPLATECONF`
>        Specifies the directory used by the build system to find templates
>        from which to build the ``bblayers.conf`` and ``local.conf`` files.
> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> index 52a36d788b..62cdd9aa9c 100644
> --- a/meta/conf/bitbake.conf
> +++ b/meta/conf/bitbake.conf
> @@ -389,6 +389,7 @@ FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt' if oe.types.boolean(d.getVar
>
>  TCMODE ??= "default"
>  TCLIBC ??= "glibc"
> +TC_CXX_RUNTIME ??= "gnu"
>  TMPDIR ?= "${TOPDIR}/tmp"
>
>  CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(d.getVar('MACHINE'))][bool(d.getVar('MACHINE'))]}${@['', '/' + str(d.getVar('SDKMACHINE'))][bool(d.getVar('SDKMACHINE'))]}"
> --
> 2.37.3
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#170499): https://lists.openembedded.org/g/openembedded-core/message/170499
> Mute This Topic: https://lists.openembedded.org/mt/93577585/3619030
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [armccurdy@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [OE-core] [PATCH v3] bitbake.conf: Define TC_CXX_RUNTIME
  2022-09-09 19:51 ` [OE-core] " Andre McCurdy
@ 2022-09-09 23:19   ` Khem Raj
  0 siblings, 0 replies; 3+ messages in thread
From: Khem Raj @ 2022-09-09 23:19 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 3145 bytes --]

On Fri, Sep 9, 2022 at 12:51 PM Andre McCurdy <armccurdy@gmail.com> wrote:

> On Fri, Sep 9, 2022 at 9:52 AM Khem Raj <raj.khem@gmail.com> wrote:
> >
> > This variable is used to denote the C/C++ compiler runtime to use.
> > Right now there are few alternatives out of the core which could
> > use this variable to define this property, the values it can take
> > are 'gnu' for gcc runtime. 'llvm' for using compiler-rt+libc++ and
> > 'android' to use android runtime. Default settings is to use gnu
> > which is current silent default also.
>
> Seems like you made a conscious decision to refer to the gcc runtime
> library as "gnu" instead of "gcc". What was the reasoning? Using "gcc"
> would seem to be clearer unless it clashes with some gcc upstream
> naming convention.


Good question. Historically to avoid confusion with recipe with same name
when llvm was not a recipe and runtime in clang world is outside the
compiler



>
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> > v2: Document the variable
> > v3: Rename to TC_CXX_RUNTIME
> >
> >  documentation/ref-manual/variables.rst | 6 ++++++
> >  meta/conf/bitbake.conf                 | 1 +
> >  2 files changed, 7 insertions(+)
> >
> > diff --git a/documentation/ref-manual/variables.rst
> b/documentation/ref-manual/variables.rst
> > index cf817e9540..2d28c3d2f7 100644
> > --- a/documentation/ref-manual/variables.rst
> > +++ b/documentation/ref-manual/variables.rst
> > @@ -7973,6 +7973,12 @@ system and gives an overview of their function
> and contents.
> >        toolchain. You can use ``meta-sourcery`` as a template for adding
> >        support for other external toolchains.
> >
> > +   :term:`TC_CXX_RUNTIME`
> > +      Specifies the C/C++ STL and runtime variant to use during
> > +      the build process. Default value is 'gnu'
> > +
> > +      You can select "gnu", "llvm", or "android".
> > +
> >     :term:`TEMPLATECONF`
> >        Specifies the directory used by the build system to find templates
> >        from which to build the ``bblayers.conf`` and ``local.conf``
> files.
> > diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> > index 52a36d788b..62cdd9aa9c 100644
> > --- a/meta/conf/bitbake.conf
> > +++ b/meta/conf/bitbake.conf
> > @@ -389,6 +389,7 @@ FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt'
> if oe.types.boolean(d.getVar
> >
> >  TCMODE ??= "default"
> >  TCLIBC ??= "glibc"
> > +TC_CXX_RUNTIME ??= "gnu"
> >  TMPDIR ?= "${TOPDIR}/tmp"
> >
> >  CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' +
> str(d.getVar('MACHINE'))][bool(d.getVar('MACHINE'))]}${@['', '/' +
> str(d.getVar('SDKMACHINE'))][bool(d.getVar('SDKMACHINE'))]}"
> > --
> > 2.37.3
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#170499):
> https://lists.openembedded.org/g/openembedded-core/message/170499
> > Mute This Topic: https://lists.openembedded.org/mt/93577585/3619030
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> armccurdy@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>

[-- Attachment #2: Type: text/html, Size: 4827 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-09-09 23:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-09 16:52 [PATCH v3] bitbake.conf: Define TC_CXX_RUNTIME Khem Raj
2022-09-09 19:51 ` [OE-core] " Andre McCurdy
2022-09-09 23:19   ` Khem Raj

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox