Gmock issue

John Ralls jralls at ceridwen.us
Fri Jan 12 23:33:12 EST 2018



> On Jan 12, 2018, at 7:28 PM, P Levine <plevine457 at gmail.com> wrote:
> 
> On Thu, Jan 11, 2018 at 10:08 AM, John Ralls <jralls at ceridwen.us <mailto:jralls at ceridwen.us>> wrote:
>> I do have a question for the Gentoo folks, though: The Googletest documentation recommends *against* building googletest as a shared library [1]. I get that it means that googletest doesn’t really fit in the Linux distro’s standard model, but it seems a bit over the top to deliberately break building googletest as part of the project being tested given googletest’s usage guidelines.
>> 
>> So two questions back: Why not make an exception for Googletest? Why, if Gentoo is willing to patch Googletest to prevent projects from using it as recommended is Gentoo not willing to also patch those projects to comply with their policy?
>> 
>> Regards,
>> John Ralls
>> 
>> [1] https://github.com/google/googletest/blob/master/googletest/docs/FAQ.md#why-is-it-not-recommended-to-install-a-pre-compiled-copy-of-google-test-for-example-into-usrlocal <https://github.com/google/googletest/blob/master/googletest/docs/FAQ.md#why-is-it-not-recommended-to-install-a-pre-compiled-copy-of-google-test-for-example-into-usrlocal>
>> 
>> _______________________________________________
>> gnucash-devel mailing list
>> gnucash-devel at gnucash.org
>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
> 
> You are right that Googletest does advise against using precompiled
> libraries.  Gentoo, as a source based rolling-release distribution,
> does, by design, place much more responsibility on its user base for a
> competent and safe build environment, with more freedom and potential
> hazards, than other distributions.  Users are expected to define only
> C{XX}FLAGS and LDFLAGS that affect platform specification or
> optimization, not alter symbol definitions that might cause
> inconsistent linkage errors.  For other ODR violations related to the
> build system and/or codebase of gtest itself (such as that pertaining
> to https://github.com/google/googletest/pull/1339 <https://github.com/google/googletest/pull/1339>, which is already
> patched in Gentoo), the convention of static-only libraries might
> behave as a band-aid over more pervasive problems that should rather
> be amended in the code itself.  I don't expect, and wouldn't ask, that
> you take up the cause of directly supporting such a distribution.  I
> would only hope that you remain open to patches that would aid in our
> efforts and goals in a way that doesn't negatively impact those of the
> distributions you do officially support.  I have tested GnuCash-2.7
> with gtest-1.8.0 and all tests passed except 3 which are expected to
> fail ("test-qof" because en_GB and fr_FR locales aren't installed, and
> "test-userdata-dir" and "test-userdata-dir-invalid-home" because a
> non-standard, empty $HOME is used during the build phase).

That doesn’t answer or even address the questions.

You seem to have missed that many projects, GnuCash included, set numerous CPPFlags and LDFLAGS in their configuration scripts... and that’s a completely separate issue from whatever restrictions Gentoo attempts to impose on its users.

No, I don’t believe that using static libraries will mask ODR violations and bringing up a Googletest bug is utterly irrelevant.

Geert has already told you that we’ll accept reasonable patches, though you should recognize that if someone at Gentoo isn’t keyed in to maintaining them they’ll bitrot. 

There’s another problem here: You say that you’ve already applied Googletest PR 1339 in Gentoo. Googletest hasn’t accepted that PR, so you’ve forked Googletest. Is that clearly documented to your users? Do you have written permission from Google to continue to call your fork Googletest? See the third bullet in https://github.com/google/googletest/blob/master/LICENSE <https://github.com/google/googletest/blob/master/LICENSE>.

How many other project’s licenses does Gentoo violate?

Regards,
John Ralls




More information about the gnucash-devel mailing list