Bug 527402

Summary: Review Request: gmock - Google C++ Mocking Framework
Product: [Fedora] Fedora Reporter: Tejas Dinkar <tejasdinkar>
Component: Package ReviewAssignee: Orcan Ogetbil <oget.fedora>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bos, fedora-package-review, itamar, martin.gieseking, mattr, notting, oget.fedora, terjeros
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
See Also: https://bugzilla.redhat.com/show_bug.cgi?id=676930
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-11-06 09:02:17 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 201449    

Description Tejas Dinkar 2009-10-06 04:36:42 EDT
Spec URL: http://tejas.fedorapeople.org/gmock.spec
SRPM URL: http://tejas.fedorapeople.org/gmock-1.4.0-1.fc11.src.rpm
Description:
Inspired by jMock, EasyMock, and Hamcrest, and designed with C++'s specifics in mind, 
Google C++ Mocking Framework (or Google Mock for short) is a library for writing and using C++ mock classes. Google Mock:
* lets you create mock classes trivially using simple macros, 
* supports a rich set of matchers and actions, 
* handles unordered, partially ordered, or completely ordered expectations, 
* is extensible by users, and 
* works on Linux, Mac OS X, Windows, Windows Mobile, minGW, and Symbian.
Comment 1 Martin Gieseking 2009-10-07 11:45:24 EDT
A couple of comments:

- you must probably add Requires: gtest >= 1.4.0 because it's not recognized automatically

- is the required gtest version always greater or equal than the version of gmock? If not, I'd suggest to replace BR:gtest-devel >= %{version} by BR:gtest-devel >= 1.4.0

- the lines in the %description section shouldn't exceed 80 characters

- add the version and revision number to the first line of the changelog entry:
  Sun Oct 4 2009 Tejas Dinkar <tejas@gja.in> - 1.4.0-1



$ rpmlint /home/mgieseki/rpmbuild/RPMS/i586/gmock-*
gmock.i586: E: description-line-too-long Inspired by jMock, EasyMock, and Hamcrest, and designed with C++'s specifics in mind,
gmock.i586: E: description-line-too-long Google C++ Mocking Framework (or Google Mock for short) is a library for writing and using C++ mock classes. Google Mock:
gmock.i586: W: no-version-in-last-changelog
gmock.i586: W: shared-lib-calls-exit /usr/lib/libgmock.so.0.0.0 _exit@GLIBC_2.0
gmock-debuginfo.i586: W: no-version-in-last-changelog
gmock-devel.i586: W: no-version-in-last-changelog
gmock-devel.i586: W: no-documentation
3 packages and 0 specfiles checked; 2 errors, 5 warnings.
Comment 2 Jason Tibbitts 2009-11-20 21:59:16 EST
*** Bug 539613 has been marked as a duplicate of this bug. ***
Comment 3 Terje Røsten 2009-11-23 04:36:19 EST
You may want to open a bugzilla ticket to get the gtest package in Fedora updated to 1.4, current version in Fedora is gtest 1.3.0-1.20090601svn257.
Comment 4 Rakesh Pandit 2010-01-08 05:56:52 EST
ping Tejas,

Any updates on this one ? It has been 2-3 months with no update.

Thanks,
Comment 5 Orcan Ogetbil 2010-07-17 13:10:38 EDT
ping 2? Did you give up? Shall we close the bug?
Comment 6 Matt Rogers 2010-08-11 00:10:12 EDT
Spec URL: http://mattr.info:8080/gmock.spec
SRPM URL: http://mattr.info:8080/gmock-1.4.0-2.fc13.src.rpm

Addressed comments in previous review. Here's the output from rpmlint:

gmock.i686: W: no-version-in-last-changelog
gmock.i686: W: shared-lib-calls-exit /usr/lib/libgmock.so.0.0.0 _exit@GLIBC_2.0
1 packages and 0 specfiles checked; 0 errors, 2 warnings.

Not updating to gmock 1.5.0 yet, since it requires gtest 1.5.0 and fedora hasn't updated to that version yet.
Comment 7 Orcan Ogetbil 2010-08-30 02:36:19 EDT
Here is the full review:

* rpmlint says:
   gmock.src: W: spelling-error %description -l en_US jMock -> j Mock, jock, mock
   gmock.src: W: spelling-error %description -l en_US matchers -> marchers, matcher, matches
   gmock.src: W: spelling-error %description -l en_US minGW -> mingy, Mingus, mingle
   gmock.src: W: invalid-url Source0: http://googlemock.googlecode.com/files/gmock-1.4.0.tar.bz2 HTTP Error 404: Not Found
   gmock-devel.x86_64: W: no-manual-page-for-binary gmock-config
   gmock-devel.x86_64: W: no-manual-page-for-binary gmock_doctor.py
   gmock-devel.x86_64: W: no-documentation
These can be ignored. You can ask upstream about manpages.
   gmock.src: W: no-version-in-last-changelog
   gmock.src:86: W: macro-in-comment %{_datadir}
   gmock.src:86: W: macro-in-comment %{name}
   gmock.src:14: W: mixed-use-of-spaces-and-tabs (spaces: line 14, tab: line 1)
These need to be fixed.
   gmock.x86_64: W: shared-lib-calls-exit /usr/lib64/libgmock.so.0.0.0 _exit@GLIBC_2.2.5
Any explanation for this one?

! It looks like the Group for the main packages should be "System Environment/Libraries"

! The lines
   %dir %{_includedir}/%{name}
   %{_includedir}/%{name}/*.h
   %{_includedir}/%{name}/internal
could be shortened to
   %{_includedir}/%{name}

! In the specfile you use "gmock" and "%{name}" interchangably, which breaks marco consistency.

! The standard way of getting rid of rpath is via
   %configure
   sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
   sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
which will also save you a BR. The use of chrpath is left as a last resort.

? On the devel packages why do we have
   Requires:       automake

* The tests fail via
   g++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -o test/.libs/gmock-actions_test test/gmock-actions_test.o  -L/usr/lib64 -lgtest lib/.libs/libgmock_main.so  -Wl,--rpath -Wl,/usr/lib64
   /usr/bin/ld: test/gmock-actions_test.o: undefined reference to symbol 'testing::internal::ExpectationBase::RetireAllPreRequisites()'
   /usr/bin/ld: note: 'testing::internal::ExpectationBase::RetireAllPreRequisites()' is defined in DSO /builddir/build/BUILD/gmock-1.4.0/lib/.libs/libgmock.so.0 so try adding it to the linker command line
   /builddir/build/BUILD/gmock-1.4.0/lib/.libs/libgmock.so.0: could not read symbols: Invalid operation
   collect2: ld returned 1 exit status
The undefined reference error can be fixed by adding a lib/.libs/libgmock.so to the compilation line.
Comment 8 Martin Gieseking 2010-08-30 09:37:08 EDT
Since Tejas doesn't seem to be interested in this package any longer, Matt should open a new review request and close this one as a duplicate (because the bug reporter and the package maintainer should be the same person).
Comment 9 Martin Gieseking 2010-08-30 10:01:09 EDT
Also, Matt probably has to be sponsored first, as I can't find his email address in FAS.
Comment 10 Matt Rogers 2010-08-30 10:08:19 EDT
Yes, I recently became aware of both of the above. I'm working on other things at the moment and will file a new review request soon.
Comment 11 Orcan Ogetbil 2010-08-30 11:34:35 EDT
(In reply to comment #8)
> bug reporter and the package maintainer should be the same person).

Any references? I know review request bugs where this was not true. Bug 456353, Bug 444366, ... etc
Comment 12 Martin Gieseking 2010-08-30 11:58:20 EDT
(In reply to comment #11)
> Any references? I know review request bugs where this was not true. Bug 456353,
> Bug 444366, ... etc

Yes, see [1] for example. It was also mentioned here several times (e.g. in bug #566405). Of course, there might be some cases where review requests were "hijacked", but that shouldn't had happened.

[1] http://fedoraproject.org/wiki/PackageMaintainers/Policy#Submitter_not_responding
Comment 13 Orcan Ogetbil 2010-08-30 12:07:39 EDT
Yes. Sorry, for some reason I thought Tejas responded and gave up with the package explicitly. I probably confused this with some other package. Thanks for the reminder.

Matt, please open a new review request bug, make it block FE-NEEDSPONSOR, and close this bug as a duplicate of the new bug.
Comment 14 Orcan Ogetbil 2010-09-25 19:03:19 EDT
Matt, what is the status on this? Are you still interested?
Comment 15 Matt Rogers 2010-09-27 21:58:39 EDT
yes, still interested. busy with other things ATM. Will file another review request bug when I get around to this again.
Comment 16 Orcan Ogetbil 2010-11-06 02:33:49 EDT
Shall we close this bug, as the original submitter does not seem interested anymore?
Comment 17 Jason Tibbitts 2010-11-06 09:02:17 EDT
Sure looks like there hasn't been any response at all by the original submitter, and it's been over a year.  I'll close it out.  It's too bad that someone else also wanted to submit this package but this one was submitted first.