diff mbox series

[meta-oe,1/1] googletest: allow for shared libraries

Message ID 20240304215014.4191019-1-joe.slater@windriver.com
State Accepted
Headers show
Series [meta-oe,1/1] googletest: allow for shared libraries | expand

Commit Message

Slater, Joseph March 4, 2024, 9:50 p.m. UTC
From: Joe Slater <joe.slater@windriver.com>

Add a PACKAGECONFIG option to produce shared libraries.
Allow staticdev to be empty if no static libraries
are built.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
---
 meta-oe/recipes-test/googletest/googletest_1.14.0.bb | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Khem Raj March 4, 2024, 11:49 p.m. UTC | #1
On Mon, Mar 4, 2024 at 1:50 PM Joe Slater via lists.openembedded.org
<joe.slater=windriver.com@lists.openembedded.org> wrote:
>
> From: Joe Slater <joe.slater@windriver.com>
>
> Add a PACKAGECONFIG option to produce shared libraries.
> Allow staticdev to be empty if no static libraries
> are built.
>

why would be not build static libs ? and if we do not then why do we
need to create
empty package ?

> Signed-off-by: Joe Slater <joe.slater@windriver.com>
> ---
>  meta-oe/recipes-test/googletest/googletest_1.14.0.bb | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> index 8c75f936de..1b05f3d336 100644
> --- a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> +++ b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> @@ -10,11 +10,17 @@ S = "${WORKDIR}/git"
>  SRCREV = "f8d7d77c06936315286eb55f8de22cd23c188571"
>  SRC_URI = "git://github.com/google/googletest.git;branch=main;protocol=https"
>
> -inherit cmake
> +inherit cmake pkgconfig
> +
> +# allow for shared libraries, but do not default to them
> +#
> +PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-DBUILD_SHARED_LIBS=OFF,,"
> +
>
>  ALLOW_EMPTY:${PN} = "1"
>  ALLOW_EMPTY:${PN}-dbg = "1"
>
> +ALLOW_EMPTY:${PN}-staticdev = "1"
>  RDEPENDS:${PN}-dev += "${PN}-staticdev"
>
>  BBCLASSEXTEND = "native nativesdk"
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#109103): https://lists.openembedded.org/g/openembedded-devel/message/109103
> Mute This Topic: https://lists.openembedded.org/mt/104732413/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Slater, Joseph March 5, 2024, 4:31 p.m. UTC | #2
> -----Original Message-----
> From: Khem Raj <raj.khem@gmail.com>
> Sent: Monday, March 4, 2024 3:50 PM
> To: Slater, Joseph <joe.slater@windriver.com>
> Cc: openembedded-devel@lists.openembedded.org; MacLeod, Randy
> <Randy.MacLeod@windriver.com>
> Subject: Re: [oe] [meta-oe][PATCH 1/1] googletest: allow for shared libraries
> 
> On Mon, Mar 4, 2024 at 1:50 PM Joe Slater via lists.openembedded.org
> <joe.slater=windriver.com@lists.openembedded.org> wrote:
> >
> > From: Joe Slater <joe.slater@windriver.com>
> >
> > Add a PACKAGECONFIG option to produce shared libraries.
> > Allow staticdev to be empty if no static libraries are built.
> >
> 
> why would be not build static libs ? and if we do not then why do we need to
> create empty package ?

If we set -DBUILD_SHARED_LIBS=ON static libs will not be built and -staticdev will not be created, so -dev will produce an error if we try to, for example, populate an sdk.  I guess we could put static libs in -dev and get rid of -staticdev, but I didn't want to mess with the packaging.

Joe

> 
> > Signed-off-by: Joe Slater <joe.slater@windriver.com>
> > ---
> >  meta-oe/recipes-test/googletest/googletest_1.14.0.bb | 8 +++++++-
> >  1 file changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > index 8c75f936de..1b05f3d336 100644
> > --- a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > +++ b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > @@ -10,11 +10,17 @@ S = "${WORKDIR}/git"
> >  SRCREV = "f8d7d77c06936315286eb55f8de22cd23c188571"
> >  SRC_URI =
> "git://github.com/google/googletest.git;branch=main;protocol=https"
> >
> > -inherit cmake
> > +inherit cmake pkgconfig
> > +
> > +# allow for shared libraries, but do not default to them #
> > +PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-
> DBUILD_SHARED_LIBS=OFF,,"
> > +
> >
> >  ALLOW_EMPTY:${PN} = "1"
> >  ALLOW_EMPTY:${PN}-dbg = "1"
> >
> > +ALLOW_EMPTY:${PN}-staticdev = "1"
> >  RDEPENDS:${PN}-dev += "${PN}-staticdev"
> >
> >  BBCLASSEXTEND = "native nativesdk"
> > --
> > 2.25.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#109103):
> https://lists.openembedded.org/g/openembedded-devel/message/109103
> > Mute This Topic: https://lists.openembedded.org/mt/104732413/1997914
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub
> [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
Khem Raj March 5, 2024, 4:48 p.m. UTC | #3
On Tue, Mar 5, 2024 at 8:31 AM Slater, Joseph <joe.slater@windriver.com> wrote:
>
>
>
> > -----Original Message-----
> > From: Khem Raj <raj.khem@gmail.com>
> > Sent: Monday, March 4, 2024 3:50 PM
> > To: Slater, Joseph <joe.slater@windriver.com>
> > Cc: openembedded-devel@lists.openembedded.org; MacLeod, Randy
> > <Randy.MacLeod@windriver.com>
> > Subject: Re: [oe] [meta-oe][PATCH 1/1] googletest: allow for shared libraries
> >
> > On Mon, Mar 4, 2024 at 1:50 PM Joe Slater via lists.openembedded.org
> > <joe.slater=windriver.com@lists.openembedded.org> wrote:
> > >
> > > From: Joe Slater <joe.slater@windriver.com>
> > >
> > > Add a PACKAGECONFIG option to produce shared libraries.
> > > Allow staticdev to be empty if no static libraries are built.
> > >
> >
> > why would be not build static libs ? and if we do not then why do we need to
> > create empty package ?
>
> If we set -DBUILD_SHARED_LIBS=ON static libs will not be built and -staticdev will not be created, so -dev will produce an error if we try to, for example, populate an sdk.  I guess we could put static libs in -dev and get rid of -staticdev, but I didn't want to mess with the packaging.
>

maybe you can unbuckle the rdep for dev on staticdev package

> Joe
>
> >
> > > Signed-off-by: Joe Slater <joe.slater@windriver.com>
> > > ---
> > >  meta-oe/recipes-test/googletest/googletest_1.14.0.bb | 8 +++++++-
> > >  1 file changed, 7 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > > b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > > index 8c75f936de..1b05f3d336 100644
> > > --- a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > > +++ b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
> > > @@ -10,11 +10,17 @@ S = "${WORKDIR}/git"
> > >  SRCREV = "f8d7d77c06936315286eb55f8de22cd23c188571"
> > >  SRC_URI =
> > "git://github.com/google/googletest.git;branch=main;protocol=https"
> > >
> > > -inherit cmake
> > > +inherit cmake pkgconfig
> > > +
> > > +# allow for shared libraries, but do not default to them #
> > > +PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-
> > DBUILD_SHARED_LIBS=OFF,,"
> > > +
> > >
> > >  ALLOW_EMPTY:${PN} = "1"
> > >  ALLOW_EMPTY:${PN}-dbg = "1"
> > >
> > > +ALLOW_EMPTY:${PN}-staticdev = "1"
> > >  RDEPENDS:${PN}-dev += "${PN}-staticdev"
> > >
> > >  BBCLASSEXTEND = "native nativesdk"
> > > --
> > > 2.25.1
> > >
> > >
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > > Links: You receive all messages sent to this group.
> > > View/Reply Online (#109103):
> > https://lists.openembedded.org/g/openembedded-devel/message/109103
> > > Mute This Topic: https://lists.openembedded.org/mt/104732413/1997914
> > > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub
> > [raj.khem@gmail.com]
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > >
diff mbox series

Patch

diff --git a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
index 8c75f936de..1b05f3d336 100644
--- a/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
+++ b/meta-oe/recipes-test/googletest/googletest_1.14.0.bb
@@ -10,11 +10,17 @@  S = "${WORKDIR}/git"
 SRCREV = "f8d7d77c06936315286eb55f8de22cd23c188571"
 SRC_URI = "git://github.com/google/googletest.git;branch=main;protocol=https"
 
-inherit cmake
+inherit cmake pkgconfig
+
+# allow for shared libraries, but do not default to them
+#
+PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-DBUILD_SHARED_LIBS=OFF,,"
+
 
 ALLOW_EMPTY:${PN} = "1"
 ALLOW_EMPTY:${PN}-dbg = "1"
 
+ALLOW_EMPTY:${PN}-staticdev = "1"
 RDEPENDS:${PN}-dev += "${PN}-staticdev"
 
 BBCLASSEXTEND = "native nativesdk"