All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH for-next] package/gtest: remove partial host package
@ 2021-08-02 12:33 Arnout Vandecappelle (Essensium/Mind)
  2021-08-02 13:09 ` Norbert Lange
  2022-01-10  8:14 ` Yann E. MORIN
  0 siblings, 2 replies; 6+ messages in thread
From: Arnout Vandecappelle (Essensium/Mind) @ 2021-08-02 12:33 UTC (permalink / raw)
  To: buildroot; +Cc: Norbert Lange

gmock (which is part of the gtest package) has a host variant that is
not actually the full host package, but instead just installs a single
python script.

This script, however, is no longer maintained and is not needed for most
practical uses of gmock. Even if it is used, its output is meant to be
hand-edited, so it shouldn't be used as part of the build flow.

Therefore, remove the host-gtest package. A proper, full host package
may make sense (for building other host packages that use gtest), but
this single script really doesn't.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Norbert Lange <nolange79@gmail.com>
---
Since we're so close to the 2021.08 release, this should probably be
delayed a little.
---
 package/gtest/gtest.mk | 27 ---------------------------
 1 file changed, 27 deletions(-)

diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk
index 6447954e36..a9ac49957b 100644
--- a/package/gtest/gtest.mk
+++ b/package/gtest/gtest.mk
@@ -13,23 +13,6 @@ GTEST_LICENSE_FILES = LICENSE
 GTEST_CPE_ID_VENDOR = google
 GTEST_CPE_ID_PRODUCT = google_test
 
-ifeq ($(BR2_PACKAGE_GTEST_GMOCK),y)
-GTEST_DEPENDENCIES += host-gtest
-endif
-
-HOST_GTEST_LICENSE = Apache-2.0
-HOST_GTEST_LICENSE_FILES = googlemock/scripts/generator/LICENSE
-ifeq ($(BR2_PACKAGE_PYTHON3),y)
-HOST_GTEST_PYTHON_VERSION = $(PYTHON3_VERSION_MAJOR)
-HOST_GTEST_DEPENDENCIES += host-python3
-else
-HOST_GTEST_PYTHON_VERSION = $(PYTHON_VERSION_MAJOR)
-HOST_GTEST_DEPENDENCIES += host-python
-endif
-
-HOST_GTEST_GMOCK_PYTHONPATH = \
-	$(HOST_DIR)/lib/python$(HOST_GTEST_PYTHON_VERSION)/site-packages
-
 # While it is possible to build gtest as shared library, using this gtest shared
 # library requires to set some special configure option in the project using
 # gtest.
@@ -52,14 +35,4 @@ else
 GTEST_CONF_OPTS += -DBUILD_GMOCK=OFF
 endif
 
-define HOST_GTEST_INSTALL_CMDS
-	$(INSTALL) -D -m 0755 $(@D)/googlemock/scripts/generator/gmock_gen.py \
-		$(HOST_DIR)/bin/gmock_gen
-	cp -rp $(@D)/googlemock/scripts/generator/cpp \
-		$(HOST_GTEST_GMOCK_PYTHONPATH)
-endef
-
 $(eval $(cmake-package))
-# The host package does not build anything, just installs gmock_gen stuff, so
-# it does not need to be a host-cmake-package.
-$(eval $(host-generic-package))
-- 
2.31.1

_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH for-next] package/gtest: remove partial host package
  2021-08-02 12:33 [Buildroot] [PATCH for-next] package/gtest: remove partial host package Arnout Vandecappelle (Essensium/Mind)
@ 2021-08-02 13:09 ` Norbert Lange
  2021-08-02 13:35   ` Arnout Vandecappelle
  2021-08-19 21:31   ` Thomas Petazzoni
  2022-01-10  8:14 ` Yann E. MORIN
  1 sibling, 2 replies; 6+ messages in thread
From: Norbert Lange @ 2021-08-02 13:09 UTC (permalink / raw)
  To: Arnout Vandecappelle (Essensium/Mind); +Cc: buildroot

Am Mo., 2. Aug. 2021 um 14:33 Uhr schrieb Arnout Vandecappelle
(Essensium/Mind) <arnout@mind.be>:
>
> gmock (which is part of the gtest package) has a host variant that is
> not actually the full host package, but instead just installs a single
> python script.
>
> This script, however, is no longer maintained and is not needed for most
> practical uses of gmock. Even if it is used, its output is meant to be
> hand-edited, so it shouldn't be used as part of the build flow.
>
> Therefore, remove the host-gtest package. A proper, full host package
> may make sense (for building other host packages that use gtest), but
> this single script really doesn't.
>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Norbert Lange <nolange79@gmail.com>
> ---
> Since we're so close to the 2021.08 release, this should probably be
> delayed a little.
> ---
>  package/gtest/gtest.mk | 27 ---------------------------
>  1 file changed, 27 deletions(-)
>
> diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk
> index 6447954e36..a9ac49957b 100644
> --- a/package/gtest/gtest.mk
> +++ b/package/gtest/gtest.mk
> @@ -13,23 +13,6 @@ GTEST_LICENSE_FILES = LICENSE
>  GTEST_CPE_ID_VENDOR = google
>  GTEST_CPE_ID_PRODUCT = google_test
>
> -ifeq ($(BR2_PACKAGE_GTEST_GMOCK),y)
> -GTEST_DEPENDENCIES += host-gtest
> -endif
> -
> -HOST_GTEST_LICENSE = Apache-2.0
> -HOST_GTEST_LICENSE_FILES = googlemock/scripts/generator/LICENSE
> -ifeq ($(BR2_PACKAGE_PYTHON3),y)
> -HOST_GTEST_PYTHON_VERSION = $(PYTHON3_VERSION_MAJOR)
> -HOST_GTEST_DEPENDENCIES += host-python3
> -else
> -HOST_GTEST_PYTHON_VERSION = $(PYTHON_VERSION_MAJOR)
> -HOST_GTEST_DEPENDENCIES += host-python
> -endif
> -
> -HOST_GTEST_GMOCK_PYTHONPATH = \
> -       $(HOST_DIR)/lib/python$(HOST_GTEST_PYTHON_VERSION)/site-packages
> -
>  # While it is possible to build gtest as shared library, using this gtest shared
>  # library requires to set some special configure option in the project using
>  # gtest.
> @@ -52,14 +35,4 @@ else
>  GTEST_CONF_OPTS += -DBUILD_GMOCK=OFF
>  endif
>
> -define HOST_GTEST_INSTALL_CMDS
> -       $(INSTALL) -D -m 0755 $(@D)/googlemock/scripts/generator/gmock_gen.py \
> -               $(HOST_DIR)/bin/gmock_gen
> -       cp -rp $(@D)/googlemock/scripts/generator/cpp \
> -               $(HOST_GTEST_GMOCK_PYTHONPATH)
> -endef
> -
>  $(eval $(cmake-package))

add this here:
$(eval $(host-cmake-package))

It works, and I see no particular reason not to allow the host package.

> -# The host package does not build anything, just installs gmock_gen stuff, so
> -# it does not need to be a host-cmake-package.
> -$(eval $(host-generic-package))
> --
> 2.31.1
>

With this change the patch is identical to my local version, and thus
Reviewed-by: Norbert Lange <nolange79@gmail.com>

Norbert
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH for-next] package/gtest: remove partial host package
  2021-08-02 13:09 ` Norbert Lange
@ 2021-08-02 13:35   ` Arnout Vandecappelle
  2021-08-19 21:31   ` Thomas Petazzoni
  1 sibling, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2021-08-02 13:35 UTC (permalink / raw)
  To: Norbert Lange; +Cc: buildroot



On 02/08/2021 15:09, Norbert Lange wrote:
> Am Mo., 2. Aug. 2021 um 14:33 Uhr schrieb Arnout Vandecappelle
> (Essensium/Mind) <arnout@mind.be>:
>>
>> gmock (which is part of the gtest package) has a host variant that is
>> not actually the full host package, but instead just installs a single
>> python script.
>>
>> This script, however, is no longer maintained and is not needed for most
>> practical uses of gmock. Even if it is used, its output is meant to be
>> hand-edited, so it shouldn't be used as part of the build flow.
>>
>> Therefore, remove the host-gtest package. A proper, full host package
>> may make sense (for building other host packages that use gtest), but
>> this single script really doesn't.
>>
>> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
>> Cc: Norbert Lange <nolange79@gmail.com>
>> ---
>> Since we're so close to the 2021.08 release, this should probably be
>> delayed a little.
>> ---
>>  package/gtest/gtest.mk | 27 ---------------------------
>>  1 file changed, 27 deletions(-)
>>
>> diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk
>> index 6447954e36..a9ac49957b 100644
>> --- a/package/gtest/gtest.mk
>> +++ b/package/gtest/gtest.mk
>> @@ -13,23 +13,6 @@ GTEST_LICENSE_FILES = LICENSE
>>  GTEST_CPE_ID_VENDOR = google
>>  GTEST_CPE_ID_PRODUCT = google_test
>>
>> -ifeq ($(BR2_PACKAGE_GTEST_GMOCK),y)
>> -GTEST_DEPENDENCIES += host-gtest
>> -endif
>> -
>> -HOST_GTEST_LICENSE = Apache-2.0
>> -HOST_GTEST_LICENSE_FILES = googlemock/scripts/generator/LICENSE
>> -ifeq ($(BR2_PACKAGE_PYTHON3),y)
>> -HOST_GTEST_PYTHON_VERSION = $(PYTHON3_VERSION_MAJOR)
>> -HOST_GTEST_DEPENDENCIES += host-python3
>> -else
>> -HOST_GTEST_PYTHON_VERSION = $(PYTHON_VERSION_MAJOR)
>> -HOST_GTEST_DEPENDENCIES += host-python
>> -endif
>> -
>> -HOST_GTEST_GMOCK_PYTHONPATH = \
>> -       $(HOST_DIR)/lib/python$(HOST_GTEST_PYTHON_VERSION)/site-packages
>> -
>>  # While it is possible to build gtest as shared library, using this gtest shared
>>  # library requires to set some special configure option in the project using
>>  # gtest.
>> @@ -52,14 +35,4 @@ else
>>  GTEST_CONF_OPTS += -DBUILD_GMOCK=OFF
>>  endif
>>
>> -define HOST_GTEST_INSTALL_CMDS
>> -       $(INSTALL) -D -m 0755 $(@D)/googlemock/scripts/generator/gmock_gen.py \
>> -               $(HOST_DIR)/bin/gmock_gen
>> -       cp -rp $(@D)/googlemock/scripts/generator/cpp \
>> -               $(HOST_GTEST_GMOCK_PYTHONPATH)
>> -endef
>> -
>>  $(eval $(cmake-package))
> 
> add this here:
> $(eval $(host-cmake-package))
> 
> It works, and I see no particular reason not to allow the host package.

 We only allow host packages that are either a dependency of an in-tree package,
or have a Config.in.host entry. Otherwise, it's basically dead code.

 Regards,
 Arnout

> 
>> -# The host package does not build anything, just installs gmock_gen stuff, so
>> -# it does not need to be a host-cmake-package.
>> -$(eval $(host-generic-package))
>> --
>> 2.31.1
>>
> 
> With this change the patch is identical to my local version, and thus
> Reviewed-by: Norbert Lange <nolange79@gmail.com>
> 
> Norbert
> 
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH for-next] package/gtest: remove partial host package
  2021-08-02 13:09 ` Norbert Lange
  2021-08-02 13:35   ` Arnout Vandecappelle
@ 2021-08-19 21:31   ` Thomas Petazzoni
  2021-08-20  8:12     ` Norbert Lange
  1 sibling, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2021-08-19 21:31 UTC (permalink / raw)
  To: Norbert Lange; +Cc: buildroot

Hello Norbert,

On Mon, 2 Aug 2021 15:09:06 +0200
Norbert Lange <nolange79@gmail.com> wrote:

> >  $(eval $(cmake-package))  
> 
> add this here:
> $(eval $(host-cmake-package))
> 
> It works, and I see no particular reason not to allow the host package.
> 
> > -# The host package does not build anything, just installs gmock_gen stuff, so
> > -# it does not need to be a host-cmake-package.
> > -$(eval $(host-generic-package))
> > --
> > 2.31.1
> >  
> 
> With this change the patch is identical to my local version, and thus
> Reviewed-by: Norbert Lange <nolange79@gmail.com>

Are you saying that you are using the gmock_gen script in your
workflow? If so, how does that fit with the commit description from
Arnout, which says:

  This script, however, is no longer maintained and is not needed for most
  practical uses of gmock. Even if it is used, its output is meant to be
  hand-edited, so it shouldn't be used as part of the build flow.

Thanks for your feedback,

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH for-next] package/gtest: remove partial host package
  2021-08-19 21:31   ` Thomas Petazzoni
@ 2021-08-20  8:12     ` Norbert Lange
  0 siblings, 0 replies; 6+ messages in thread
From: Norbert Lange @ 2021-08-20  8:12 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: buildroot

Am Do., 19. Aug. 2021 um 23:31 Uhr schrieb Thomas Petazzoni
<thomas.petazzoni@bootlin.com>:
>
> Hello Norbert,
>
> On Mon, 2 Aug 2021 15:09:06 +0200
> Norbert Lange <nolange79@gmail.com> wrote:
>
> > >  $(eval $(cmake-package))
> >
> > add this here:
> > $(eval $(host-cmake-package))
> >
> > It works, and I see no particular reason not to allow the host package.
> >
> > > -# The host package does not build anything, just installs gmock_gen stuff, so
> > > -# it does not need to be a host-cmake-package.
> > > -$(eval $(host-generic-package))
> > > --
> > > 2.31.1
> > >
> >
> > With this change the patch is identical to my local version, and thus
> > Reviewed-by: Norbert Lange <nolange79@gmail.com>
>
> Are you saying that you are using the gmock_gen script in your
> workflow? If so, how does that fit with the commit description from
> Arnout, which says:

I am saying that I agree with the patch, not that I use the script.

>
>   This script, however, is no longer maintained and is not needed for most
>   practical uses of gmock. Even if it is used, its output is meant to be
>   hand-edited, so it shouldn't be used as part of the build flow.

My original patch [2] did only install the script if python2/3
was built with buildroot. I had a similar commit message then,
suggesting the removal.

The script is only used to create some boilerplate code automatically,
but any reference of it is already removed from the docs [1].
To be clear, this was used manually and only one time when writing a test.

Given that the script is old and unmaintained, C++ is evolving,
its only a matter of time when parsing using this script turns into a
hit-and-miss.

Norbert

[1] - https://github.com/google/googletest/blob/master/docs/gmock_for_dummies.md#writing-the-mock-class
[2] - http://lists.busybox.net/pipermail/buildroot/2021-July/616335.html
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH for-next] package/gtest: remove partial host package
  2021-08-02 12:33 [Buildroot] [PATCH for-next] package/gtest: remove partial host package Arnout Vandecappelle (Essensium/Mind)
  2021-08-02 13:09 ` Norbert Lange
@ 2022-01-10  8:14 ` Yann E. MORIN
  1 sibling, 0 replies; 6+ messages in thread
From: Yann E. MORIN @ 2022-01-10  8:14 UTC (permalink / raw)
  To: Arnout Vandecappelle (Essensium/Mind); +Cc: Norbert Lange, buildroot

Arnout, All,

On 2021-08-02 14:33 +0200, Arnout Vandecappelle (Essensium/Mind) spake thusly:
> gmock (which is part of the gtest package) has a host variant that is
> not actually the full host package, but instead just installs a single
> python script.
> 
> This script, however, is no longer maintained and is not needed for most
> practical uses of gmock. Even if it is used, its output is meant to be
> hand-edited, so it shouldn't be used as part of the build flow.
> 
> Therefore, remove the host-gtest package. A proper, full host package
> may make sense (for building other host packages that use gtest), but
> this single script really doesn't.
> 
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Norbert Lange <nolange79@gmail.com>
> Reviewed-by: Norbert Lange <nolange79@gmail.com>

In fact, we applied a different patch that makes host-gtests a proper
host package;

    https://git.buildroot.org/buildroot/commit/?id=c0f9e2447d57194f0b02edb93cd16a677ebb326c

I marked your patch as rejected, then. Thanks! ;-)

Regards,
Yann E. MORIN.

> ---
> Since we're so close to the 2021.08 release, this should probably be
> delayed a little.
> ---
>  package/gtest/gtest.mk | 27 ---------------------------
>  1 file changed, 27 deletions(-)
> 
> diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk
> index 6447954e36..a9ac49957b 100644
> --- a/package/gtest/gtest.mk
> +++ b/package/gtest/gtest.mk
> @@ -13,23 +13,6 @@ GTEST_LICENSE_FILES = LICENSE
>  GTEST_CPE_ID_VENDOR = google
>  GTEST_CPE_ID_PRODUCT = google_test
>  
> -ifeq ($(BR2_PACKAGE_GTEST_GMOCK),y)
> -GTEST_DEPENDENCIES += host-gtest
> -endif
> -
> -HOST_GTEST_LICENSE = Apache-2.0
> -HOST_GTEST_LICENSE_FILES = googlemock/scripts/generator/LICENSE
> -ifeq ($(BR2_PACKAGE_PYTHON3),y)
> -HOST_GTEST_PYTHON_VERSION = $(PYTHON3_VERSION_MAJOR)
> -HOST_GTEST_DEPENDENCIES += host-python3
> -else
> -HOST_GTEST_PYTHON_VERSION = $(PYTHON_VERSION_MAJOR)
> -HOST_GTEST_DEPENDENCIES += host-python
> -endif
> -
> -HOST_GTEST_GMOCK_PYTHONPATH = \
> -	$(HOST_DIR)/lib/python$(HOST_GTEST_PYTHON_VERSION)/site-packages
> -
>  # While it is possible to build gtest as shared library, using this gtest shared
>  # library requires to set some special configure option in the project using
>  # gtest.
> @@ -52,14 +35,4 @@ else
>  GTEST_CONF_OPTS += -DBUILD_GMOCK=OFF
>  endif
>  
> -define HOST_GTEST_INSTALL_CMDS
> -	$(INSTALL) -D -m 0755 $(@D)/googlemock/scripts/generator/gmock_gen.py \
> -		$(HOST_DIR)/bin/gmock_gen
> -	cp -rp $(@D)/googlemock/scripts/generator/cpp \
> -		$(HOST_GTEST_GMOCK_PYTHONPATH)
> -endef
> -
>  $(eval $(cmake-package))
> -# The host package does not build anything, just installs gmock_gen stuff, so
> -# it does not need to be a host-cmake-package.
> -$(eval $(host-generic-package))

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

end of thread, other threads:[~2022-01-10  8:14 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-02 12:33 [Buildroot] [PATCH for-next] package/gtest: remove partial host package Arnout Vandecappelle (Essensium/Mind)
2021-08-02 13:09 ` Norbert Lange
2021-08-02 13:35   ` Arnout Vandecappelle
2021-08-19 21:31   ` Thomas Petazzoni
2021-08-20  8:12     ` Norbert Lange
2022-01-10  8:14 ` Yann E. MORIN

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.