#35540 closed update (wontfix)
google-test: Update to 1.7.0
Reported by: | pengyu.ut@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), venabled@…, soriyath@…, lynxluna (Didiet), cooljeanius (Eric Gallager), arto@… | |
Port: | google-test |
Description
google-test is now of 1.6.0. The one in macports is still 1.5.0. It is better to update it to the latest version.
Attachments (3)
Change History (14)
comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Port: | google-test added |
Summary: | Update google-test to 1.6.0 → google-test: Update to 1.6.0 |
Type: | request → update |
Version: | 2.1.2 |
Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | google-test-1.6.0.diff added |
---|
comment:2 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Summary: | google-test: Update to 1.6.0 → google-test: Update to 1.7.0 |
---|
This will also fix #40910.
Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | google-test-1.7.0.diff added |
---|
partial patch
Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | google-test-1.7.0.2.diff added |
---|
partial patch
comment:3 follow-up: 5 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | venabled@… added |
---|
I updated the patch to use cmake, since that's the only supported build system since 1.5.0, but it still doesn't have an install target.
I found a comment at the bottom of Makefile.am which says that "make install
" is disabled because "installing a compiled version of Google Test can lead to undefined behavior due to violation of the One-Definition Rule." They have a FAQ entry about this too.
So we can either think we're smarter than Google and install it anyway (and as a non-C++-programmer I don't feel competent to do that), or we can delete google-test from MacPorts.
comment:5 Changed 11 years ago by lynxluna (Didiet)
Replying to ryandesign@…:
I updated the patch to use cmake, since that's the only supported build system since 1.5.0, but it still doesn't have an install target.
I found a comment at the bottom of Makefile.am which says that "
make install
" is disabled because "installing a compiled version of Google Test can lead to undefined behavior due to violation of the One-Definition Rule." They have a FAQ entry about this too.So we can either think we're smarter than Google and install it anyway (and as a non-C++-programmer I don't feel competent to do that), or we can delete google-test from MacPorts.
When we write C++ code, we usually use some compiler flags that specific to our need. This, as Google pointed out on their FAQ entry can cause problems. If gtest is compiled using macports flags and I use the flags that is slightly different or using different compiler, e.g. clang
vs gcc
, it can create a runtime problem. I usually end up just including all of gtest sources and build it directly on my test cases using the same compiler and the same compiler flags as the rest of my sources.
I think it's wise to delete the google-test
framework from macports as well as gmock
as it depends on google-gtest
and put the warning upon installation.
comment:6 Changed 11 years ago by venabled@…
After reading googles guidance I think we should Get rid of this port due to the points brought up by Google and lynxluna.
comment:9 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Removed: r115909
Thanks for letting us know this new version is available. Here is a minimal diff to update the port, but it fails at the destroot stage, saying:
So someone will need to read and understand the README and adapt the portfile accordingly.