PokerTH is a texas hold'em style poker game for up to five players. Reproducible: Always I've only tested this ebuild using x11-libs/qt-4.2.2 which must have the qt3support use flag set.
Created attachment 112014 [details] ebuild for pokerth-0.3
Created attachment 112030 [details] Updated ebuild that installs into /usr/games/bin
this (at least) additionally depends on: dev-libs/boost +threads dev-libs/openssl
Created attachment 115461 [details] pokerth-0.4 ebuild new ebuild: - version bump to 0.4 - satisfies additional deps
Created attachment 115496 [details] improved pokerth-0.4.ebuild calls games_pkg_setup calls prepgamesdirs adds icon, desktop entry
Linking fails (Guess its because of --as-needed). The attached patch will solve the problem. ebuild must be modified: src_unpack() { unpack ${A} cd ${S} epatch ${FILESDIR}/${P}-as-needed.patch }
Created attachment 115577 [details] linking fix
(In reply to comment #6) > Linking fails (Guess its because of --as-needed). The attached patch will solve > the problem. Linking indeed fails with --as-needed specified. However, I don't think patching is appropriate to solve this issue. You should check with upstream first. Also this should then block #129413 (http://www.gentoo.org/proj/en/qa/asneeded.xml), which in my opinion isn't appropriate if this isn't even considered entering portage yet.
Well actually I think the patch is appropriate: The linker is told to link against libssl, which happens to have libcrypto as a dependency. libssl itself does not provide any needed symbol, therefore witch -as-needed the resulting binary is not linked to it. The RAND... functions which cause the unresolved symbols are in libcrypto, so indeed pokerth should be linked against it! That's what the patch does. BTW I informed upstream and they seem to apply this very fix SVN...
Created attachment 115649 [details] games-board/pokerth-0.4.ebuild adds support for as-needed patch What I meant was it's inappropriate to patch before checking with upstream (especially for something not yet in portage).
Successfully compiled and ran this beautiful peace of software on ~amd64. The ~amd64 keyword could also be added to the list of keywords.
Created attachment 121763 [details] added ~amd64 and fixed $EPATCH_SOURCE $EPATCH_SOURCE was pointing to ${FILESDIR}/${PN}-as-needed.patch but patch is called ${P}-as-needed.patch Hope this is the right way to fix it! I'm just starting messing with ebuilds and bugzilla!
*** Bug 182570 has been marked as a duplicate of this bug. ***
Created attachment 122665 [details] games-board/pokerth-0.5.ebuild bumped to version 0.5: - new SRC_URI - qt4_min_version is now 4.2.3 (according to PokerTH's INSTALL) - depends on media-libs/libsdl and media-libs/sdl-mixer - removed as-needed patch Please confirm that the as-needed patch is no longer needed (PokerTH now uses -lcrypto).
Created attachment 122667 [details] games-board/pokerth-0.5.ebuild sorry, forgot ~amd64
(In reply to comment #14) > Please confirm that the as-needed patch is no longer needed (PokerTH now uses > -lcrypto). For me it compiles perfectly without this patch. And it runs without problems at first glance.
(In reply to comment #14) > Please confirm that the as-needed patch is no longer needed (PokerTH now uses > -lcrypto). Builds, installs, and runs without a problem here (~x86).
installed the game last night and the raise,call,fold buttons have no text on them, will re-install tonight and recheck
Since an `emerge -uDN world` today pokerth should be reemerged by revdep-rebuild but failed to install with this error message: >>> Emerging (1 of 1) games-board/pokerth-0.5 to / * PokerTH-0.5-src.tar.bz2 MD5 ;-) ... [ ok ] * PokerTH-0.5-src.tar.bz2 RMD160 ;-) ... [ ok ] * PokerTH-0.5-src.tar.bz2 SHA1 ;-) ... [ ok ] * PokerTH-0.5-src.tar.bz2 SHA256 ;-) ... [ ok ] * PokerTH-0.5-src.tar.bz2 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking PokerTH-0.5-src.tar.bz2 ;-) ... [ ok ] !!! ERROR: games-board/pokerth-0.5 failed. Call stack: ebuild.sh, line 1645: Called dyn_setup ebuild.sh, line 706: Called qa_call 'pkg_setup' ebuild.sh, line 44: Called pkg_setup pokerth-0.5.ebuild, line 32: Called built_with_use 'dev-libs/boost' 'threads' eutils.eclass, line 1710: Called die !!! dev-libs/boost-1.34.0 does not actually support the threads USE flag! !!! If you need support, post the topmost build error, and the call stack if relevant. !!! A complete build log is located at '/var/tmp/portage/games-board/pokerth-0.5/temp/build.log'. So I guess there's a problem with dev-libs/boost-1.34.0 and the new installed dev-util/boost-build-1.34.0 which are both installed as dependencies of other packages.
Created attachment 122808 [details] games-board/pokerth-0.5.ebuild dev-libs/boost-1.34.0 no longer has the 'threads' useflag (btw its ~arched). should work now.
The new ebuild works. Thanks.
Created attachment 123041 [details] problems with PokerTh client after installing this ebuild (all 0.5 versions) the raise,call,fold buttons dont display txt, stop button doesnt work (in local game)and crashes/gets out of sync with other online clients perhaps this requires boost-build pulling in as a dependancy see thpani's "Re:dependencies?" post in PokerTH forum
same problem as ian.
I doubt it's boost-build. Does the binary from pokerth.net work for you?
Created attachment 123089 [details] update on QT compling problem see attached text
*** Bug 188952 has been marked as a duplicate of this bug. ***
Created attachment 128404 [details] pokerth-0.5.ebuild minor ebuild update: + added openssl dependency version + added boost dependency version + added warning about the Qt issue
Created attachment 128472 [details] games-board/pokerth-0.5.ebuild This is now in the sunrise overlay. You can find it at: http://overlays.gentoo.org/svn/proj/sunrise/reviewed/games-board/pokerth
media-libs/sdl-mixer needs to be build with USE="mikmod mp3" else: http://nopaste.org/p/akvtyrH0m
(In reply to comment #29) > media-libs/sdl-mixer needs to be build with USE="mikmod mp3" > actually we just need an dependency for libmikmod (which sdl-mixer would pull in if compiled with mikmod). why do you need the mp3 USE-flag? I rebuilt sdl-mixer with USE="-mikmod -mp3", rebuilt pokerth, sounds work fine. Can you please confirm this?
(In reply to comment #30) > why do you need the mp3 USE-flag? My c&p-fault ... sorry ... just (lib)mikmod is needed > I rebuilt sdl-mixer with USE="-mikmod -mp3", rebuilt pokerth, sounds work fine. > Can you please confirm this? I can't rebuild it without mikmod! I rebuilded sdl-mixer, did a depclean (no need for libmikmod anymore) and tried rebuild. It failed with the previous pasted ld error. diff: 40a41,46 > if ! built_with_use "media-libs/sdl-mixer" mikmod ; then > eerror "media-libs/sdl-mixer has to be compiled with 'mikmod'" > eerror "USE-Flag enabled." > die "Needed USE-Flag for media-libs/sdl-mixer not found." > fi >
(In reply to comment #31) > I can't rebuild it without mikmod! I rebuilded sdl-mixer, did a depclean (no > need for libmikmod anymore) and tried rebuild. It failed with the previous > pasted ld error. Sorry, my mistake. What I meant was: pokerth depends on libmikmod directly, not on sdl-mixer built with mikmod support (which pulls in libmikmod as a side effect but could change in the future).
Created attachment 131769 [details] games-board/pokerth-0.5.ebuild updated ebuild, should hit sunrise in a while as well.
Created attachment 132039 [details] games-board/pokerth-9999.ebuild svn ebuild (tried with pokerth revision 884)
Created attachment 132057 [details] games-board/pokerth-9999.ebuild total rewrite ... big issue is the lack of pixmaps/sounds/translations/fonts ... they are a) available in /var/tmp/portage/games-board/pokerth-9999/work/pokerth/data/ b) their makefile is patched /var/tmp/portage/games-board/pokerth-9999/work/pokerth/pokerth_game.pro (sed data.path to /usr/share/games/pokerth/data) c) and installed with src_install() I know there is something wrong, but I can't get into it. :/
The problem Tobias describes in #35 is upstream's fault. I've worked together with him to find it and it's described on the PokerTH forums at http://www.pokerth.net/component/option,com_joomlaboard/Itemid,58/func,view/catid,14/id,1074/#msg1074 This problem currently keeps the SVN ebuild from working, although a 0.6 ebuild based on the 0.5 one would have the same problems, since it's recent code that will be in 0.6 that broke the ebuild. A temporary workaround is to add the following line at the end of the SVN ebuild's src_unpack() function: sed -i -e "s:myQtToolsInterface->getDataPathStdString(startPath.remove_leaf().directory_string()):\"${GAMES_DATADIR}/pokerth/data/\":"
(In reply to comment #36) > A temporary workaround is to add the following line at the end of the SVN > ebuild's src_unpack() function: [...] Works for me, but you comment got cut off. Should read sed -i -e "s:myQtToolsInterface->getDataPathStdString(startPath.remove_leaf().directory_string()):\"${GAMES_DATADIR}/pokerth/data/\":" src/config/configfile.cpp || die "sed configfile.cpp failed" Tobias, thanks for the live ebuild! Some comments/remarks: - I don't need to specify ESVN_STORE_DIR. Is there any reason why you used it? - You left out the libmikmod dependency!?! - According to upstream >=dev-libs/boost-1.34 should be enough (w/o .1). Haven't tested though. - Jakub did some tweaks to my ebuild in sunrise (http://overlays.gentoo.org/proj/sunrise/changeset/4719/reviewed/games-board/pokerth/pokerth-0.5.ebuild), most notably - using a version specifier on the qt3support test - calling eqmake4 - $S defaults to "${WORKDIR}/${P}" anyway. - one argument for doicon is enough - Once again: thanks for the ebuild! ;) Some more things... could someone who is allowed to (dev, reporter, ...) please: - change bug title (we're past 0.4, obviously) - add "[sunrise-overlay]" to whiteboard - change keywords to "EBUILD, InOverlay" Has anyone tested if we need qt3support with latest sources? Grepping for "Q3" only gives me some .ts files.
Created attachment 132110 [details] games-board/pokerth-9999.ebuild Some minor corrections ... Thanks for your help Tim! Hi Thomas, ESVN_STORE_DIR -> no reason -> removed libmikmod -> oops ;) -> added >=dev-libs/boost-1.34 -> you're right -> we corrected this already locally eqmake4 -> thanks -> added that are all changes so far to the ebuild. also: thank you! one argument for doicon -> i don't get it. please explain USE=qt3support still need to be tested And instead of the "sed"-command you can use ... $ ln -sf /usr/share/games/pokerth/data /data ... as long the source is f%§& up ;)
(In reply to comment #38) > one argument for doicon -> i don't get it. please explain > I originally used newicon (don't know exactly why...) in my ebuild which allows you to specify a destination file name, eg. newicon foo.png pokerth.png will install foo.png from current directory to /usr/share/pixmaps/pokerth.png. doicon simply takes a list of files and will do a doins to /usr/share/pixmaps/pokerth.png. So when you do doicon pokerth.png "${PN}.png" it will copy pokerth.png to /usr/share/pixmaps/ and ${PN}.png to /usr/share/pixmaps/. As PN=pokerth, it will copy the same file (pokerth.png) twice. No need to do that ;). Lots of the do* functions have accompanying new* functions, eg. newbin, newins, ... > And instead of the "sed"-command you can use ... > $ ln -sf /usr/share/games/pokerth/data /data > ... as long the source is f%§& up ;) > Hope upstream will fix this soon, but anyway, better svn with a little patching than 0.5 with grayish look ;)
Upstream has fixed the data directory problems, the ebuild from Tobias worked for me without patching or linking anything (tried with SVN revision 934).
I could not see the button stylesheets with qt-4.3.2 # Qt bug #171858, fixed in 4.3.2 and 4.4.0 if has_version "~x11-libs/qt-4.3.0" || has_version "~x11-libs/qt-4.3.1" ; then ewarn "x11-libs/qt versions 4.3.0 and 4.3.1 are known to break" ewarn "stylesheet support for buttons (game is still playable)." fi
I've been trying out Tobias' pokerth-9999.ebuild on PPC and it works. I only have one minor glitch, though: the red in the cards becomes blue, and the pokerth icon in the application is blue instead of red too.
(In reply to comment #38) > Created an attachment (id=132110) [edit] > games-board/pokerth-9999.ebuild > Tobias, after the latest qt4 version bump (4.2.3-r1) your ebuild will still pull in 4.2.3. I guess the best thing to solve this is to change to EAPI=1 and slotted deps (like here: http://overlays.gentoo.org/proj/sunrise/changeset?old_path=reviewed%2Fgames-board%2Fpokerth%2Fpokerth-0.5.ebuild&old=5196&new_path=reviewed%2Fgames-board%2Fpokerth%2Fpokerth-0.5.ebuild&new=5196).
Today, on December 13 2007, we proudly present PokerTH 0.6! version 0.6 final released, any chance we can get this in Sunrise ?
Created attachment 138470 [details] pokerth-0.6.ebuild Here you go. I have checked dependencies with upstream, a view things are unclear. Would be nice if someone could confirm those: - Any Qt versions >=4.3.2 should work fine, but they're not sure about 4.3.1. - qt3support should not be needed. And please, someone confirm it's working on amd64. If that's done I'll get it into sunrise.
Compiles and runs for me on my amd64 with the pokerth-0.6.ebuild by Thomas Pani.
Created attachment 140475 [details] pokerth-0.6-r1.ebuild Thanks Thomas (and the others) for your good (pre-)work! After finding that great poker-game and the ebuilds here I found on sourceforge, that the up to date src-file is called PokerTH-0.6-1.src.tar.bz2. So I made a new ebuild (based up on pokerth-0.6.ebuild) with the "hardcoded" version-number for the source, cause I didn't knew how I could make it better - maybe you? *sorryme* The ebuild compiles and runs on my x86.
Created attachment 149443 [details] New Version 0.6.1 Version 0.6.1 as of 2008-03-11
ebuild for 0.6.2 can be found in sunrise overlay: http://overlays.gentoo.org/proj/sunrise/browser/reviewed/games-board/pokerth/pokerth-0.6.2.ebuild
Created attachment 155643 [details] pokerth-0.6.2.ebuild use GnuTLS instead of OpenSSL
(In reply to comment #50) > Created an attachment (id=155643) [edit] > pokerth-0.6.2.ebuild Hmmm... why exactly are you posting this? The updated ebuild is in Sunrise (see above) since 2 weeks. And yours has some dependencies wrong... I'll post updates here whenever I feel it's necessary, but please check Sunrise first. (And in this case I actually posted a pointer to the version bump in Sunrise...) @mr_bones_ (or someone else from games): Maybe you could add "sunrise-overlay" to Status Whiteboard? (I don't have sufficient rights to do so...)
No, bugzilla is the correct place for games-related ebuilds. There aren't supposed to be any games ebuilds in the sunrise overlay per our agreement with them at the creation of the sunrise overlay.
Seems one side doesn't know about this agreement: $ eix --in-overlay sunrise | grep games- | wc -l 39 Also, [1] states: "The exception to this is games—they don't need to be assigned to maintainer-wanted@gentoo.org or maintainer-needed@gentoo.org in order to be commited to the Sunrise overlay." Additionally, pokerth has been in Sunrise since 08/18/07 and noone complained. Anyway, I don't want to clutter this bug, so I'll just continue with post my further ebuilds here. If you want me to remove the one in Sunrise, please say so. [1] http://overlays.gentoo.org/proj/sunrise/wiki/HowToCommit
Created attachment 155657 [details] pokerth-0.6.2.ebuild
Created attachment 165339 [details, diff] Add RESTRICT in ebuild Now the ebuild won't search in many locals the package.
installs and runs fine on my system: Portage 2.1.4.5 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.27-gentoo i686) ================================================================= System uname: 2.6.27-gentoo i686 Genuine Intel(R) CPU T2600 @ 2.16GHz Timestamp of tree: Sun, 21 Dec 2008 13:00:01 +0000 app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7-r1, 2.1.6-r1 dev-lang/python: 2.4.4-r14, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r6 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.24
new version 0.6.3 from 2008-12-22 changelog: - new start dialog, separated from game table - new chance tab shows current chance to get a certain hand - users can be kicked by vote from within a game (right click on avatar) - game creators are no longer allowed to kick when the game is running - server irc bot automatically reconnects every day - 18 translations now (danish and finnish added) can be build with the ebuild from version 0.6.2 works here on x86_64 (no-multilib) Portage 2.1.6.2 (default/linux/amd64/2008.0/no-multilib, gcc-4.2.4, glibc-2.6.1-r0, 2.6.26-gentoo-r4 x86_64) ================================================================= System uname: Linux-2.6.26-gentoo-r4-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T8300_@_2.40GHz-with-glibc2.2.5 Timestamp of tree: Thu, 25 Dec 2008 11:30:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7-r1, 2.1.6-r1 dev-lang/python: 2.4.4-r13, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3
Created attachment 179115 [details] pokerth-0.6.3.ebuild
(In reply to comment #58) > Created an attachment (id=179115) [edit] > pokerth-0.6.3.ebuild Uh, didn't notice there was a patch release. Some thoughts on your ebuild: - ebuild name should be *_p2.ebuild or something - zlib is in the system set - you should pass some message to die I'll do an update of my EAPI="1" version for those on <portage-2.2 in the next days.
(In reply to comment #59) > (In reply to comment #58) > > Created an attachment (id=179115) [edit] > > pokerth-0.6.3.ebuild > Uh, didn't notice there was a patch release. Some thoughts on your ebuild: > - ebuild name should be *_p2.ebuild or something Irrelevant since no previous versions are in portage. > - zlib is in the system set It's better to specify every dependency, if they don't create cycles. > - you should pass some message to die I don't think this is necessary anymore (for simple commands) since portage already prints the code snippet that failed. > > I'll do an update of my EAPI="1" version for those on <portage-2.2 in the next > days. >
(In reply to comment #60) > Irrelevant since no previous versions are in portage. But in sunrise (e.g.) > It's better to specify every dependency, if they don't create cycles. No. http://devmanual.gentoo.org/general-concepts/dependencies/index.html#implicit-system-dependency > I don't think this is necessary anymore (for simple commands) since portage > already prints the code snippet that failed. It's not necessary, but you should; there are other package managers than portage. devmanual again: "Although die will work with no parameters, a short message should always be provided to ease error identification. This is especially important when a function can die in multiple places." Don't take this wrong, I'm glad you posted the ebuild. Just trying to make it even better.
(In reply to comment #61) > (In reply to comment #60) > > Irrelevant since no previous versions are in portage. > But in sunrise (e.g.) I don't care about sunrise. People using overlays should know what they're doing... ;) My ebuild is intended for the portage tree. > > It's better to specify every dependency, if they don't create cycles. > No. > http://devmanual.gentoo.org/general-concepts/dependencies/index.html#implicit-system-dependency There are at least a few developers who think otherwise. Adding a correct dependency is never wrong, if it doesn't create cycles in the depgraph. Even more correctly the dependency atom should be ">=sys-libs/zlib-1.2.3" according to upstream. > > I don't think this is necessary anymore (for simple commands) since portage > > already prints the code snippet that failed. > It's not necessary, but you should; there are other package managers than > portage. devmanual again: "Although die will work with no parameters, a short > message should always be provided to ease error identification. This is > especially important when a function can die in multiple places." > Right. I forgot about the other package managers. > I'll do an update of my EAPI="1" version for those on <portage-2.2 in the next > days. > I don't think this is needed: portage-2.1.6.x supports EAPI-2 afaik (and it's stable on all non-experimental arches).
Created attachment 180610 [details] pokerth-0.6.3.ebuild Fixed inherit order to use pkg_setup() from games.eclass.
pokerth-0.6.3.ebuild is in portage.