Spec URL: http://tkmame.retrogames.com/fedora-extras/poker3d.spec SRPM URL: http://tkmame.retrogames.com/fedora-extras/poker3d-1.1.36-1.fc7.src.rpm Description: Three dimensional multi-user online poker game.
rpmlint output: poker3d.x86_64: E: wrong-script-interpreter /usr/bin/poker3d "/usr/libexec/poker3d/underware" This is a bug in rpmlint, see bug #355861
I'll review this. Here are some MUST Fix and Should Fix from a first semi-thorough look: Must Fix: --------- * Source0 URL is invalid * icon cache scriptlets to not match the scriplets page on the wiki (the user will see an error printed when gtk-update-icon-cache isn't installed Should Fix: ----------- * Since the libraries are private, wouldn't it be a better idea to use a wrapper script which sets LD_LIBRARY_PATH, rather then adding the used dir to ld.so.conf.d, because that way they will still be in the global namespace, and there is little use in putting them in their own dir. * according to upstreams website 1.1.37 is out
Hmm, My build has exited with: configure: Found working python compilation environment for =2.5 checking for POKER_NETWORK... no configure: error: poker-network is a mandatory library error: Bad exit status from /var/tmp/rpm-tmp.83390 (%build) config.log says: configure:24637: $PKG_CONFIG --exists --print-errors "poker-network >= 1.0.21" Package poker-network was not found in the pkg-config search path. Perhaps you should add the directory containing `poker-network.pc' to the PKG_CONFIG_PATH environment variable No package 'poker-network' found Note that I'm on a 64 bit machine, this is probably due to poker-network being noarch and thus having its .pc file as: /usr/lib/pkgconfig/poker-network.pc Whereas a 64 bit pkg-config expects it to be: /usr/lib64/pkgconfig/poker-network.pc I don't know how to solve this cleanly though.
If poker-network including its *.pc file is truly noarch, it should most likely install the *.pc to /usr/share/pkgconfig - pkg-config searches from there too on all arches.
Wait, are you guys using devel? You should be using poker-network and poker2d version 1.2.0-3. I pushed these to updates-testing two weeks ago, I really expected them to be there by now, but there is bug #360291 which we think is causing problems. If you need F8 packages, please use: https://admin.fedoraproject.org/updates/F8/FEDORA-2007-2865 https://admin.fedoraproject.org/updates/F8/FEDORA-2007-2901
(In reply to comment #2) > Must Fix: > --------- > * Source0 URL is invalid > > Should Fix: > ----------- > * according to upstreams website 1.1.37 is out 1.1.37 hasn't officially been released yet. Only the official releases are put in the Source0 URL. The problem is that upstream hasn't updated that URL in a while so I pinged them to update it.
(In reply to comment #6) > (In reply to comment #2) > > Must Fix: > > --------- > > * Source0 URL is invalid > > > > Should Fix: > > ----------- > > * according to upstreams website 1.1.37 is out > > 1.1.37 hasn't officially been released yet. Only the official releases are put > in the Source0 URL. The problem is that upstream hasn't updated that URL in a > while so I pinged them to update it. > Well you don't necessarily need to do a 1.1.37 srpm to get this approved, but I do need a working Source0 url or some other way to verify the included sources match what upstream is distributing.
I have updated the spec file with the same URL that upstream gave me for the current sources. Hopefully we can use this temporarily to get it approved. Upstream informs me that they plan on having the normal URL fixed soon, so I just commented it out for now. Spec URL: http://tkmame.retrogames.com/fedora-extras/poker3d.spec SRPM URL: http://tkmame.retrogames.com/fedora-extras/poker3d-1.1.36-3.fc7.src.rpm %changelog * Thu Nov 15 2007 Christopher Stone <chris.stone> 1.1.36-3 - Use a temporary URL until upstream updates the stable tarballs * Tue Nov 06 2007 Christopher Stone <chris.stone> 1.1.36-2 - Update icon cache scriptlets
Still does not build on F-8 x86_64: g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/python2.5 -I/usr/include/libxml2 -DCAL3D_VERSION=11 -DOSGAL_VERSION=0X000600 -I../.. -I../../include -I../../examples/poker -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT libmaf_la-MultipleAnimationPathCallback.lo -MD -MP -MF .deps/libmaf_la-MultipleAnimationPathCallback.Tpo -c MultipleAnimationPathCallback.cpp -fPIC -DPIC -o .libs/libmaf_la-MultipleAnimationPathCallback.o /usr/include/osg/AnimationPath: In member function 'virtual void MultipleAnimationPathCallbackVisitor::apply(osg::PositionAttitudeTransform&)': /usr/include/osg/AnimationPath:123: error: 'osg::Quat osg::AnimationPath::ControlPoint::_rotation' is protected MultipleAnimationPathCallback.cpp:62: error: within this context /usr/include/osg/AnimationPath:124: error: 'osg::Vec3d osg::AnimationPath::ControlPoint::_scale' is protected MultipleAnimationPathCallback.cpp:65: error: within this context /usr/include/osg/AnimationPath:122: error: 'osg::Vec3d osg::AnimationPath::ControlPoint::_position' is protected MultipleAnimationPathCallback.cpp:71: error: within this context /usr/include/osg/AnimationPath:123: error: 'osg::Quat osg::AnimationPath::ControlPoint::_rotation' is protected MultipleAnimationPathCallback.cpp:72: error: within this context /usr/include/osg/AnimationPath:124: error: 'osg::Vec3d osg::AnimationPath::Contr olPoint::_scale' is protected MultipleAnimationPathCallback.cpp:73: error: within this context
Ugh, this is not good. Looks like a gcc bug. Fedora 7's gcc compiles it properly.
Actually hold on, I just discovered this: #if OSG_VERSION_RELEASE != 9 && OSG_VERSION_MAJOR != 1 #define getRotation() _rotation #define getScale() _scale #define getPosition() _position #endif // OSG_VERSION_RELEASE != 9 && OSG_VERSION_MAJOR != 1 at the top of src/maf/MultipleAnimationPathCallback.cpp let me try patching this out and see if that fixes things. :)
Looks like it worked, this was just a bad attempt at trying to detect OSG 0.9 without thinking about the possibility there may one day be a OSG 2.0. Patching this code out for Fedora is benign since FC-6+ does not use OSG 0.9. New RPMs here: http://koji.fedoraproject.org/koji/taskinfo?taskID=244045
I'll look into making a wrapper as you suggested in comment #2. I think I should also use some 3d wrapper too, I'll try to find out more.
You probably want something like this as wrapper: #!/bin/sh . /usr/share/opengl-games-utils/opengl-game-functions.sh checkDriOK poker3d if [ -d /usr/lib64/taxipilot ]; then export LD_LIBRARY_PATH=/usr/lib64/poker3d else export LD_LIBRARY_PATH=/usr/lib/poker3d fi exec poker3d "$@" Then you can get rid of the ld.so.d file, and you will need to add a Requires: opengl-games-utils The checkDriOK thingie checks if hardware accelerated opengl is present and if not shows an error dialog explaining things and then exits. You can then either call this script poker3d-wrapper and adapt the .desktop file, or call it plain poker3d and move poker3d itself to /usr/libexcec Let me know if you need any more help with this.
The only question I have is that I would like for people to still be able to type "poker3d" from the command line and still have this wrapper executed. So I think the wrapper should be in /usr/bin/poker3d and perhaps we can place the binary in /usr/games/poker3d. Does this make sense? I'm already manually moving the poker3d binary from /usr/games to /usr/bin so it should be a bit cleaner this way if possible. Let me know what you think. Thanks.
(In reply to comment #15) > The only question I have is that I would like for people to still be able to > type "poker3d" from the command line and still have this wrapper executed. So I > think the wrapper should be in /usr/bin/poker3d and perhaps we can place the > binary in /usr/games/poker3d. Does this make sense? I'm already manually > moving the poker3d binary from /usr/games to /usr/bin so it should be a bit > cleaner this way if possible. Let me know what you think. Thanks. Yes thats possible, install the wrapper as /usr/bin/poker3d and make it call /usr/libexec/poxker3d, and install poker3d itself under /usr/libexec, no /usr/games please, /usr/games is obsolete / deprecated.
Spec URL: http://tkmame.retrogames.com/fedora-extras/poker3d.spec SRPM URL: http://tkmame.retrogames.com/fedora-extras/poker3d-1.1.36-5.fc7.src.rpm %changelog * Fri Nov 16 2007 Christopher Stone <chris.stone> 1.1.36-5 - Add a wrapper script to invoke poker3d instead of using ld.so.conf * Thu Nov 15 2007 Christopher Stone <chris.stone> 1.1.36-4 - Add patch to fix compile with OSG2.x * Thu Nov 15 2007 Christopher Stone <chris.stone> 1.1.36-3 - Use a temporary %%SOURCE0 URL until upstream updates stable tarballs
Also, do I still need to run ldconfig in the %post/un sections?
(In reply to comment #18) > Also, do I still need to run ldconfig in the %post/un sections? No. Must Fix -------- -remove /sbin/ldconfig invocation from %post %postun Could Fix --------- -why use a subdir under /usr/libexec for only one binary? Approved, under the condition that you remove the 2 /sbin/ldconfig calls from the scripts.
Hi, che mentioned a couple problems last night, and I asked him to post to this bug. I put him on the CC list. One thing he mentioned was a missing Requires: xwnc I think he also mentioned something else too, but I'm not sure, so I want to wait to hear from him. @Hans: Did xwnc get installed on your system when you tested this?
(In reply to comment #20) > > @Hans: Did xwnc get installed on your system when you tested this? I must admit I didn't test it. I'm not much into poker, I only did a technical review, and for the record, no xwnc did not get installed.
Spec URL: http://tkmame.retrogames.com/fedora-extras/poker3d.spec SRPM URL: http://tkmame.retrogames.com/fedora-extras/poker3d-1.1.36-6.fc7.src.rpm %changelog * Sat Nov 17 2007 Christopher Stone <chris.stone> 1.1.36-6 - Remove no longer needed ldconfig - Add xwnc to Requires This one should be good enough for updates-testing. I'll have che and a couple others test it from the testing repo. Thanks for the review! New Package CVS Request ======================= Package Name: poker3d Short Description: Three dimensional multi-user online poker game Owners: xulchris Branches: F-7 F-8 InitialCC: Cvsextras Commits: yes
cvs done.
Build successful for devel, thanks again for the review! :D http://koji.fedoraproject.org/koji/taskinfo?taskID=247125