Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/2] gcc-runtime-related fixes
@ 2016-07-06 20:55 Paul Eggleton
  2016-07-06 20:55 ` [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS Paul Eggleton
  2016-07-06 20:55 ` [PATCH 2/2] gcc-runtime: add SUMMARY values Paul Eggleton
  0 siblings, 2 replies; 9+ messages in thread
From: Paul Eggleton @ 2016-07-06 20:55 UTC (permalink / raw)
  To: openembedded-core

Add some RRECOMMENDS to pull in gcc-runtime library packages when
installing gcc/g++, and also set reasonable per-package SUMMARY values
for gcc-runtime.


The following changes since commit 53fcfe4348a2ca727844f2b0bd3fca2902cbdda0:

  lib/oeqa: add Galculator to SDK and runtime tests (2016-07-01 16:08:54 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib paule/gcc-runtime
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/gcc-runtime

Paul Eggleton (2):
  gcc: add runtime packages to RRECOMMENDS
  gcc-runtime: add SUMMARY values

 meta/recipes-devtools/gcc/gcc-runtime.inc | 27 +++++++++++++++++++++++++++
 meta/recipes-devtools/gcc/gcc-target.inc  | 21 +++++++++++++++++++++
 2 files changed, 48 insertions(+)

-- 
2.5.5



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

* [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS
  2016-07-06 20:55 [PATCH 0/2] gcc-runtime-related fixes Paul Eggleton
@ 2016-07-06 20:55 ` Paul Eggleton
  2016-07-06 21:06   ` Khem Raj
  2016-07-06 20:55 ` [PATCH 2/2] gcc-runtime: add SUMMARY values Paul Eggleton
  1 sibling, 1 reply; 9+ messages in thread
From: Paul Eggleton @ 2016-07-06 20:55 UTC (permalink / raw)
  To: openembedded-core

In order to use certain features of gcc, you need the corresponding
runtime library. It seems to me that these ought to be installed by
default when installing the compiler since they are required if certain
command line options are used, so add them to RRECOMMENDS. I used
RRECOMMENDS since some of these packages may or may not exist depending
on architecture and build options; additionally it makes it possible to
use BAD_RECOMMENDATIONS if you really want to exclude them.

The impact of this isn't too bad in the context of an image providing
on-target compilation - about a 30MB increase in size for an image
containing gcc and g++.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 meta/recipes-devtools/gcc/gcc-target.inc | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-devtools/gcc/gcc-target.inc
index 37c5c62..2eac2bc 100644
--- a/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/meta/recipes-devtools/gcc/gcc-target.inc
@@ -42,6 +42,16 @@ FILES_${PN} = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed \
 "
 INSANE_SKIP_${PN} += "dev-so"
+RRECOMMENDS_${PN} += "\
+    libssp \
+    libssp-dev \
+    libquadmath \
+    libquadmath-dev \
+    libgomp \
+    libgomp-dev \
+    libitm \
+    libitm-dev \
+"
 
 FILES_${PN}-dev = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
@@ -69,6 +79,11 @@ FILES_g77-symlinks = "\
     ${bindir}/g77 \
     ${bindir}/f77 \
 "
+RRECOMMENDS_g77 = "\
+    libg2c \
+    libg2c-dev \
+"
+
 FILES_gfortran = "\
     ${bindir}/${TARGET_PREFIX}gfortran \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f951 \
@@ -98,6 +113,12 @@ FILES_g++-symlinks = "\
     ${bindir}/c++ \
     ${bindir}/g++ \
 "
+RRECOMMENDS_g++ = "\
+    libstdc++ \
+    libstdc++-dev \
+    libatomic \
+    libatomic-dev \
+"
 
 FILES_${PN}-doc = "\
     ${infodir} \
-- 
2.5.5



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

* [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 20:55 [PATCH 0/2] gcc-runtime-related fixes Paul Eggleton
  2016-07-06 20:55 ` [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS Paul Eggleton
@ 2016-07-06 20:55 ` Paul Eggleton
  2016-07-06 21:03   ` Khem Raj
  1 sibling, 1 reply; 9+ messages in thread
From: Paul Eggleton @ 2016-07-06 20:55 UTC (permalink / raw)
  To: openembedded-core

It's useful to know what the various libraries are that get produced by
gcc-runtime, as well as to have a specific SUMMARY for the recipe.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 meta/recipes-devtools/gcc/gcc-runtime.inc | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc
index 99f50f8..8e42a57 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -1,5 +1,7 @@
 require gcc-configure-common.inc
 
+SUMMARY = "Runtime libraries for GCC compilers"
+
 # Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPLv3"
 # All gcc-runtime packages are now covered by the runtime exception.
 LICENSE = "GPL-3.0-with-GCC-exception"
@@ -135,73 +137,98 @@ FILES_${PN}-dbg += "\
 "
 
 FILES_libg2c = "${target_libdir}/libg2c.so.*"
+SUMMARY_libg2c = "Companion runtime library for g77"
 FILES_libg2c-dev = "\
     ${libdir}/libg2c.so \
     ${libdir}/libg2c.a \
     ${libdir}/libfrtbegin.a \
 "
+SUMMARY_libg2c-dev = "Companion runtime library for g77 - development files"
 
 FILES_libstdc++ = "${libdir}/libstdc++.so.*"
+SUMMARY_libstdc++ = "C++ standard library for g++"
 FILES_libstdc++-dev = "\
     ${includedir}/c++/ \
     ${libdir}/libstdc++.so \
     ${libdir}/libstdc++*.la \
     ${libdir}/libsupc++.la \
 "
+SUMMARY_libstdc++-dev = "C++ standard library for g++ - development files"
 FILES_libstdc++-staticdev = "\
     ${libdir}/libstdc++*.a \
     ${libdir}/libsupc++.a \
 "
+SUMMARY_libstdc++-staticdev = "C++ standard library for g++ - static development files"
 
 FILES_libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
+SUMMARY_libstdc++-precompile-dev = "C++ standard library from gcc - precompiled header files"
 
 FILES_libssp = "${libdir}/libssp.so.*"
+SUMMARY_libssp = "Stack smashing protection library for gcc"
 FILES_libssp-dev = "\
     ${libdir}/libssp*.so \
     ${libdir}/libssp*_nonshared.a \
     ${libdir}/libssp*.la \
     ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ssp \
 "
+SUMMARY_libssp-dev = "Stack smashing protection library for gcc - development files"
 FILES_libssp-staticdev = "${libdir}/libssp*.a"
+SUMMARY_libssp-staticdev = "Stack smashing protection library for gcc - static development files"
 
 FILES_libquadmath = "${libdir}/libquadmath*.so.*"
+SUMMARY_libquadmath = "Quad-precision math library for gcc"
 FILES_libquadmath-dev = "\
     ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/quadmath* \
     ${libdir}/libquadmath*.so \
     ${libdir}/libquadmath.la \
 "
+SUMMARY_libquadmath-dev = "Quad-precision math library for gcc - development files"
 FILES_libquadmath-staticdev = "${libdir}/libquadmath.a"
+SUMMARY_libquadmath-staticdev = "Quad-precision math library for gcc - static development files"
 
+# NOTE: mudflap has been removed as of gcc 4.9 and has been superseded by the address sanitiser
 FILES_libmudflap = "${libdir}/libmudflap*.so.*"
+SUMMARY_libmudflap = "Pointer debugging library for gcc"
 FILES_libmudflap-dev = "\
     ${libdir}/libmudflap*.so \
     ${libdir}/libmudflap.la \
 "
+SUMMARY_libmudflap-dev = "Pointer debugging library for gcc - development files"
 FILES_libmudflap-staticdev = "${libdir}/libmudflap.a"
+SUMMARY_libmudflap-staticdev = "Pointer debugging library for gcc - static development files"
 
 FILES_libgomp = "${libdir}/libgomp*${SOLIBS}"
+SUMMARY_libgomp = "GNU OpenMP parallel programming library for gcc"
 FILES_libgomp-dev = "\
     ${libdir}/libgomp*${SOLIBSDEV} \
     ${libdir}/libgomp*.la \
     ${libdir}/libgomp.spec \
     ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/omp.h \
 "
+SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library for gcc - development files"
 FILES_libgomp-staticdev = "${libdir}/libgomp*.a"
+SUMMARY_libgomp-staticdev = "GNU OpenMP parallel programming library for gcc - static development files"
 
 FILES_libatomic = "${libdir}/libatomic.so.*"
+SUMMARY_libatomic = "C++11 atomics support library for g++"
 FILES_libatomic-dev = "\
     ${libdir}/libatomic.so \
     ${libdir}/libatomic.la \
 "
+SUMMARY_libatomic-dev = "C++11 atomics support library for g++ - development files"
 FILES_libatomic-staticdev = "${libdir}/libatomic.a"
+SUMMARY_libatomic-staticdev = "C++11 atomics support library for g++ - static development files"
 
 FILES_libitm = "${libdir}/libitm.so.*"
+SUMMARY_libitm = "Transactional memory support library for gcc"
 FILES_libitm-dev = "\
     ${libdir}/libitm.so \
     ${libdir}/libitm.la \
     ${libdir}/libitm.spec \
 "
+SUMMARY_libitm-dev = "Transactional memory support library for gcc - development files"
 FILES_libitm-staticdev = "${libdir}/libitm.a"
+SUMMARY_libitm-staticdev = "Transactional memory support library for gcc - static development files"
 
 do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
 do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
-- 
2.5.5



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

* Re: [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 20:55 ` [PATCH 2/2] gcc-runtime: add SUMMARY values Paul Eggleton
@ 2016-07-06 21:03   ` Khem Raj
  2016-07-06 21:24     ` Paul Eggleton
  0 siblings, 1 reply; 9+ messages in thread
From: Khem Raj @ 2016-07-06 21:03 UTC (permalink / raw)
  To: Paul Eggleton; +Cc: Patches and discussions about the oe-core layer

On Wed, Jul 6, 2016 at 1:55 PM, Paul Eggleton
<paul.eggleton@linux.intel.com> wrote:
> It's useful to know what the various libraries are that get produced by
> gcc-runtime, as well as to have a specific SUMMARY for the recipe.
>
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
>  meta/recipes-devtools/gcc/gcc-runtime.inc | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc
> index 99f50f8..8e42a57 100644
> --- a/meta/recipes-devtools/gcc/gcc-runtime.inc
> +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
> @@ -1,5 +1,7 @@
>  require gcc-configure-common.inc
>
> +SUMMARY = "Runtime libraries for GCC compilers"
> +
>  # Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPLv3"
>  # All gcc-runtime packages are now covered by the runtime exception.
>  LICENSE = "GPL-3.0-with-GCC-exception"
> @@ -135,73 +137,98 @@ FILES_${PN}-dbg += "\
>  "
>
>  FILES_libg2c = "${target_libdir}/libg2c.so.*"
> +SUMMARY_libg2c = "Companion runtime library for g77"
>  FILES_libg2c-dev = "\
>      ${libdir}/libg2c.so \
>      ${libdir}/libg2c.a \
>      ${libdir}/libfrtbegin.a \
>  "
> +SUMMARY_libg2c-dev = "Companion runtime library for g77 - development files"
>
>  FILES_libstdc++ = "${libdir}/libstdc++.so.*"
> +SUMMARY_libstdc++ = "C++ standard library for g++"

Drop for g++ here, something like GNU Standard C++ Library is better
in general replace g++/gcc with GNU

>  FILES_libstdc++-dev = "\
>      ${includedir}/c++/ \
>      ${libdir}/libstdc++.so \
>      ${libdir}/libstdc++*.la \
>      ${libdir}/libsupc++.la \
>  "
> +SUMMARY_libstdc++-dev = "C++ standard library for g++ - development files"
>  FILES_libstdc++-staticdev = "\
>      ${libdir}/libstdc++*.a \
>      ${libdir}/libsupc++.a \
>  "
> +SUMMARY_libstdc++-staticdev = "C++ standard library for g++ - static development files"
>

same here Header files and libraries for C++ development

>  FILES_libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
> +SUMMARY_libstdc++-precompile-dev = "C++ standard library from gcc - precompiled header files"
>
>  FILES_libssp = "${libdir}/libssp.so.*"
> +SUMMARY_libssp = "Stack smashing protection library for gcc"

same here

>  FILES_libssp-dev = "\
>      ${libdir}/libssp*.so \
>      ${libdir}/libssp*_nonshared.a \
>      ${libdir}/libssp*.la \
>      ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ssp \
>  "
> +SUMMARY_libssp-dev = "Stack smashing protection library for gcc - development files"
>  FILES_libssp-staticdev = "${libdir}/libssp*.a"
> +SUMMARY_libssp-staticdev = "Stack smashing protection library for gcc - static development files"
>
>  FILES_libquadmath = "${libdir}/libquadmath*.so.*"
> +SUMMARY_libquadmath = "Quad-precision math library for gcc"
>  FILES_libquadmath-dev = "\
>      ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/quadmath* \
>      ${libdir}/libquadmath*.so \
>      ${libdir}/libquadmath.la \
>  "
> +SUMMARY_libquadmath-dev = "Quad-precision math library for gcc - development files"
>  FILES_libquadmath-staticdev = "${libdir}/libquadmath.a"
> +SUMMARY_libquadmath-staticdev = "Quad-precision math library for gcc - static development files"
>
> +# NOTE: mudflap has been removed as of gcc 4.9 and has been superseded by the address sanitiser
>  FILES_libmudflap = "${libdir}/libmudflap*.so.*"
> +SUMMARY_libmudflap = "Pointer debugging library for gcc"
>  FILES_libmudflap-dev = "\
>      ${libdir}/libmudflap*.so \
>      ${libdir}/libmudflap.la \
>  "
> +SUMMARY_libmudflap-dev = "Pointer debugging library for gcc - development files"
>  FILES_libmudflap-staticdev = "${libdir}/libmudflap.a"
> +SUMMARY_libmudflap-staticdev = "Pointer debugging library for gcc - static development files"
>
>  FILES_libgomp = "${libdir}/libgomp*${SOLIBS}"
> +SUMMARY_libgomp = "GNU OpenMP parallel programming library for gcc"
>  FILES_libgomp-dev = "\
>      ${libdir}/libgomp*${SOLIBSDEV} \
>      ${libdir}/libgomp*.la \
>      ${libdir}/libgomp.spec \
>      ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/omp.h \
>  "
> +SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library for gcc - development files"
>  FILES_libgomp-staticdev = "${libdir}/libgomp*.a"
> +SUMMARY_libgomp-staticdev = "GNU OpenMP parallel programming library for gcc - static development files"
>
>  FILES_libatomic = "${libdir}/libatomic.so.*"
> +SUMMARY_libatomic = "C++11 atomics support library for g++"
>  FILES_libatomic-dev = "\
>      ${libdir}/libatomic.so \
>      ${libdir}/libatomic.la \
>  "
> +SUMMARY_libatomic-dev = "C++11 atomics support library for g++ - development files"
>  FILES_libatomic-staticdev = "${libdir}/libatomic.a"
> +SUMMARY_libatomic-staticdev = "C++11 atomics support library for g++ - static development files"
>
>  FILES_libitm = "${libdir}/libitm.so.*"
> +SUMMARY_libitm = "Transactional memory support library for gcc"
>  FILES_libitm-dev = "\
>      ${libdir}/libitm.so \
>      ${libdir}/libitm.la \
>      ${libdir}/libitm.spec \
>  "
> +SUMMARY_libitm-dev = "Transactional memory support library for gcc - development files"
>  FILES_libitm-staticdev = "${libdir}/libitm.a"
> +SUMMARY_libitm-staticdev = "Transactional memory support library for gcc - static development files"
>
>  do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
>  do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
> --
> 2.5.5
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

* Re: [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS
  2016-07-06 20:55 ` [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS Paul Eggleton
@ 2016-07-06 21:06   ` Khem Raj
  0 siblings, 0 replies; 9+ messages in thread
From: Khem Raj @ 2016-07-06 21:06 UTC (permalink / raw)
  To: Paul Eggleton; +Cc: Patches and discussions about the oe-core layer

On Wed, Jul 6, 2016 at 1:55 PM, Paul Eggleton
<paul.eggleton@linux.intel.com> wrote:
> In order to use certain features of gcc, you need the corresponding
> runtime library. It seems to me that these ought to be installed by
> default when installing the compiler since they are required if certain
> command line options are used, so add them to RRECOMMENDS. I used
> RRECOMMENDS since some of these packages may or may not exist depending
> on architecture and build options; additionally it makes it possible to
> use BAD_RECOMMENDATIONS if you really want to exclude them.
>
> The impact of this isn't too bad in the context of an image providing
> on-target compilation - about a 30MB increase in size for an image
> containing gcc and g++.
>
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
>  meta/recipes-devtools/gcc/gcc-target.inc | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/meta/recipes-devtools/gcc/gcc-target.inc b/meta/recipes-devtools/gcc/gcc-target.inc
> index 37c5c62..2eac2bc 100644
> --- a/meta/recipes-devtools/gcc/gcc-target.inc
> +++ b/meta/recipes-devtools/gcc/gcc-target.inc
> @@ -42,6 +42,16 @@ FILES_${PN} = "\
>      ${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed \
>  "
>  INSANE_SKIP_${PN} += "dev-so"
> +RRECOMMENDS_${PN} += "\
> +    libssp \
> +    libssp-dev \
> +    libquadmath \
> +    libquadmath-dev \
> +    libgomp \
> +    libgomp-dev \
> +    libitm \
> +    libitm-dev \
> +"

I think besides libssp/libquadmath others seems not commonly used. I
wouldnt suggest to add them

>
>  FILES_${PN}-dev = "\
>      ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
> @@ -69,6 +79,11 @@ FILES_g77-symlinks = "\
>      ${bindir}/g77 \
>      ${bindir}/f77 \
>  "
> +RRECOMMENDS_g77 = "\
> +    libg2c \
> +    libg2c-dev \
> +"
> +
>  FILES_gfortran = "\
>      ${bindir}/${TARGET_PREFIX}gfortran \
>      ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f951 \
> @@ -98,6 +113,12 @@ FILES_g++-symlinks = "\
>      ${bindir}/c++ \
>      ${bindir}/g++ \
>  "
> +RRECOMMENDS_g++ = "\
> +    libstdc++ \
> +    libstdc++-dev \
> +    libatomic \
> +    libatomic-dev \
> +"
>
>  FILES_${PN}-doc = "\
>      ${infodir} \
> --
> 2.5.5
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

* Re: [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 21:03   ` Khem Raj
@ 2016-07-06 21:24     ` Paul Eggleton
  2016-07-06 21:30       ` Khem Raj
  0 siblings, 1 reply; 9+ messages in thread
From: Paul Eggleton @ 2016-07-06 21:24 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Wed, 06 Jul 2016 14:03:53 Khem Raj wrote:
> On Wed, Jul 6, 2016 at 1:55 PM, Paul Eggleton
> 
> <paul.eggleton@linux.intel.com> wrote:
> > It's useful to know what the various libraries are that get produced by
> > gcc-runtime, as well as to have a specific SUMMARY for the recipe.
> > 
> > Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> > ---
> > 
> >  meta/recipes-devtools/gcc/gcc-runtime.inc | 27
> >  +++++++++++++++++++++++++++
> >  1 file changed, 27 insertions(+)
> > 
> > diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc
> > b/meta/recipes-devtools/gcc/gcc-runtime.inc index 99f50f8..8e42a57 100644
> > --- a/meta/recipes-devtools/gcc/gcc-runtime.inc
> > +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
> > @@ -1,5 +1,7 @@
> > 
> >  require gcc-configure-common.inc
> > 
> > +SUMMARY = "Runtime libraries for GCC compilers"
> > +
> > 
> >  # Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPLv3"
> >  # All gcc-runtime packages are now covered by the runtime exception.
> >  LICENSE = "GPL-3.0-with-GCC-exception"
> > 
> > @@ -135,73 +137,98 @@ FILES_${PN}-dbg += "\
> > 
> >  "
> >  
> >  FILES_libg2c = "${target_libdir}/libg2c.so.*"
> > 
> > +SUMMARY_libg2c = "Companion runtime library for g77"
> > 
> >  FILES_libg2c-dev = "\
> >  
> >      ${libdir}/libg2c.so \
> >      ${libdir}/libg2c.a \
> >      ${libdir}/libfrtbegin.a \
> >  
> >  "
> > 
> > +SUMMARY_libg2c-dev = "Companion runtime library for g77 - development
> > files"> 
> >  FILES_libstdc++ = "${libdir}/libstdc++.so.*"
> > 
> > +SUMMARY_libstdc++ = "C++ standard library for g++"
> 
> Drop for g++ here, something like GNU Standard C++ Library is better
> in general replace g++/gcc with GNU
> 
> >  FILES_libstdc++-dev = "\
> >  
> >      ${includedir}/c++/ \
> >      ${libdir}/libstdc++.so \
> >      ${libdir}/libstdc++*.la \
> >      ${libdir}/libsupc++.la \
> >  
> >  "
> > 
> > +SUMMARY_libstdc++-dev = "C++ standard library for g++ - development
> > files"
> > 
> >  FILES_libstdc++-staticdev = "\
> >  
> >      ${libdir}/libstdc++*.a \
> >      ${libdir}/libsupc++.a \
> >  
> >  "
> > 
> > +SUMMARY_libstdc++-staticdev = "C++ standard library for g++ - static
> > development files"
> same here Header files and libraries for C++ development
> 
> >  FILES_libstdc++-precompile-dev =
> >  "${includedir}/c++/${TARGET_SYS}/bits/*.gch"> 
> > +SUMMARY_libstdc++-precompile-dev = "C++ standard library from gcc -
> > precompiled header files"> 
> >  FILES_libssp = "${libdir}/libssp.so.*"
> > 
> > +SUMMARY_libssp = "Stack smashing protection library for gcc"
> 
> same here

My aim was to give some explanation as to why these things might be installed 
if a user was to find them in their image. Are these libraries used by other 
compilers?

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre


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

* Re: [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 21:24     ` Paul Eggleton
@ 2016-07-06 21:30       ` Khem Raj
  2016-07-06 21:42         ` Trevor Woerner
  0 siblings, 1 reply; 9+ messages in thread
From: Khem Raj @ 2016-07-06 21:30 UTC (permalink / raw)
  To: Paul Eggleton; +Cc: Patches and discussions about the oe-core layer

On Wed, Jul 6, 2016 at 2:24 PM, Paul Eggleton
<paul.eggleton@linux.intel.com> wrote:
> On Wed, 06 Jul 2016 14:03:53 Khem Raj wrote:
>> On Wed, Jul 6, 2016 at 1:55 PM, Paul Eggleton
>>
>> <paul.eggleton@linux.intel.com> wrote:
>> > It's useful to know what the various libraries are that get produced by
>> > gcc-runtime, as well as to have a specific SUMMARY for the recipe.
>> >
>> > Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
>> > ---
>> >
>> >  meta/recipes-devtools/gcc/gcc-runtime.inc | 27
>> >  +++++++++++++++++++++++++++
>> >  1 file changed, 27 insertions(+)
>> >
>> > diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc
>> > b/meta/recipes-devtools/gcc/gcc-runtime.inc index 99f50f8..8e42a57 100644
>> > --- a/meta/recipes-devtools/gcc/gcc-runtime.inc
>> > +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
>> > @@ -1,5 +1,7 @@
>> >
>> >  require gcc-configure-common.inc
>> >
>> > +SUMMARY = "Runtime libraries for GCC compilers"
>> > +
>> >
>> >  # Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPLv3"
>> >  # All gcc-runtime packages are now covered by the runtime exception.
>> >  LICENSE = "GPL-3.0-with-GCC-exception"
>> >
>> > @@ -135,73 +137,98 @@ FILES_${PN}-dbg += "\
>> >
>> >  "
>> >
>> >  FILES_libg2c = "${target_libdir}/libg2c.so.*"
>> >
>> > +SUMMARY_libg2c = "Companion runtime library for g77"
>> >
>> >  FILES_libg2c-dev = "\
>> >
>> >      ${libdir}/libg2c.so \
>> >      ${libdir}/libg2c.a \
>> >      ${libdir}/libfrtbegin.a \
>> >
>> >  "
>> >
>> > +SUMMARY_libg2c-dev = "Companion runtime library for g77 - development
>> > files">
>> >  FILES_libstdc++ = "${libdir}/libstdc++.so.*"
>> >
>> > +SUMMARY_libstdc++ = "C++ standard library for g++"
>>
>> Drop for g++ here, something like GNU Standard C++ Library is better
>> in general replace g++/gcc with GNU
>>
>> >  FILES_libstdc++-dev = "\
>> >
>> >      ${includedir}/c++/ \
>> >      ${libdir}/libstdc++.so \
>> >      ${libdir}/libstdc++*.la \
>> >      ${libdir}/libsupc++.la \
>> >
>> >  "
>> >
>> > +SUMMARY_libstdc++-dev = "C++ standard library for g++ - development
>> > files"
>> >
>> >  FILES_libstdc++-staticdev = "\
>> >
>> >      ${libdir}/libstdc++*.a \
>> >      ${libdir}/libsupc++.a \
>> >
>> >  "
>> >
>> > +SUMMARY_libstdc++-staticdev = "C++ standard library for g++ - static
>> > development files"
>> same here Header files and libraries for C++ development
>>
>> >  FILES_libstdc++-precompile-dev =
>> >  "${includedir}/c++/${TARGET_SYS}/bits/*.gch">
>> > +SUMMARY_libstdc++-precompile-dev = "C++ standard library from gcc -
>> > precompiled header files">
>> >  FILES_libssp = "${libdir}/libssp.so.*"
>> >
>> > +SUMMARY_libssp = "Stack smashing protection library for gcc"
>>
>> same here
>
> My aim was to give some explanation as to why these things might be installed
> if a user was to find them in their image. Are these libraries used by other
> compilers?

yes, clang can use the gcc runtime, I am sure
intel compiler can use it on linux as well and so
will others who target linux

>
> Cheers,
> Paul
>
> --
>
> Paul Eggleton
> Intel Open Source Technology Centre


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

* Re: [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 21:30       ` Khem Raj
@ 2016-07-06 21:42         ` Trevor Woerner
  2016-07-06 21:54           ` Khem Raj
  0 siblings, 1 reply; 9+ messages in thread
From: Trevor Woerner @ 2016-07-06 21:42 UTC (permalink / raw)
  To: Khem Raj; +Cc: Paul Eggleton, Patches and discussions about the oe-core layer

On Wed 2016-07-06 @ 02:30:48 PM, Khem Raj wrote:
> yes, clang can use the gcc runtime, I am sure
> intel compiler can use it on linux as well and so
> will others who target linux

If you build an app with clang and include it in your image, are there not any
clang-specific runtime files that are required to additionally be added to the
image so the clang-compiled binaries can run?


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

* Re: [PATCH 2/2] gcc-runtime: add SUMMARY values
  2016-07-06 21:42         ` Trevor Woerner
@ 2016-07-06 21:54           ` Khem Raj
  0 siblings, 0 replies; 9+ messages in thread
From: Khem Raj @ 2016-07-06 21:54 UTC (permalink / raw)
  To: Trevor Woerner
  Cc: Paul Eggleton, Patches and discussions about the oe-core layer

On Wed, Jul 6, 2016 at 2:42 PM, Trevor Woerner <twoerner@gmail.com> wrote:
> On Wed 2016-07-06 @ 02:30:48 PM, Khem Raj wrote:
>> yes, clang can use the gcc runtime, I am sure
>> intel compiler can use it on linux as well and so
>> will others who target linux
>
> If you build an app with clang and include it in your image, are there not any
> clang-specific runtime files that are required to additionally be added to the
> image so the clang-compiled binaries can run?

no, there are no specific files. It can just use gcc runtime. However,
it does have alternatives if you
do not want to use gcc runtime e.g. compiler-rt and libunwind for C
runtime (libgcc) and libc++ for C++ runtime ( libstdc++)


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

end of thread, other threads:[~2016-07-06 21:55 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-06 20:55 [PATCH 0/2] gcc-runtime-related fixes Paul Eggleton
2016-07-06 20:55 ` [PATCH 1/2] gcc: add runtime packages to RRECOMMENDS Paul Eggleton
2016-07-06 21:06   ` Khem Raj
2016-07-06 20:55 ` [PATCH 2/2] gcc-runtime: add SUMMARY values Paul Eggleton
2016-07-06 21:03   ` Khem Raj
2016-07-06 21:24     ` Paul Eggleton
2016-07-06 21:30       ` Khem Raj
2016-07-06 21:42         ` Trevor Woerner
2016-07-06 21:54           ` Khem Raj

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