Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 84178

Summary: ebuild: dev-games/guichan
Product: Gentoo Linux Reporter: Christoph Brill (egore) (RESIGNED) <egore>
Component: [OLD] LibraryAssignee: Gentoo Games <games>
Status: RESOLVED FIXED    
Severity: enhancement CC: guaje1985
Priority: High Keywords: EBUILD
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://guichan.sourceforge.net/forum/read.php?3,180
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 91356    
Attachments: media-libs/guichan-0.2.0
media-libs/guichan-0.2.0
media-libs/guichan-0.3.0
Guichan ebuild with use_enable and use_with syntax

Description Christoph Brill (egore) (RESIGNED) 2005-03-05 04:42:53 UTC
guichan is a library for guis.

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Christoph Brill (egore) (RESIGNED) 2005-03-05 04:44:01 UTC
Created attachment 52717 [details]
media-libs/guichan-0.2.0

The ebuild for guichan. I have no idea how to write an ebuild for a library,
but I think installing headers and the .la files is the right way, isn't it?
Comment 2 Pablo Trabajos 2005-03-05 05:45:52 UTC
It compiles well, but i'm not very happy with the placement of some files:

>>> Merging media-libs/guichan-0.2.0 to /
>>> /guichan.hpp
>>> /guichan/
>>> /guichan/x/
>>> /guichan/x/CVS/
>>> /guichan/x/CVS/Root
>>> /guichan/x/CVS/Repository
>>> /guichan/x/CVS/Entries
>>> /guichan/x/CVS/Template
>>> /guichan/x/Makefile.am
>>> /guichan/x/Makefile.in
>>> /guichan/x/xgraphics.hpp
>>> /guichan/x/Makefile
>>> /guichan/CVS/
>>> /guichan/CVS/Root
>>> /guichan/CVS/Repository
>>> /guichan/CVS/Entries.Log
>>> /guichan/CVS/Entries
>>> /guichan/CVS/Template
>>> /guichan/sdl/
>>> /guichan/sdl/CVS/
>>> /guichan/sdl/CVS/Root
>>> /guichan/sdl/CVS/Repository
>>> /guichan/sdl/CVS/Entries
>>> /guichan/sdl/CVS/Template
>>> /guichan/sdl/Makefile.am
>>> /guichan/sdl/Makefile.in
>>> /guichan/sdl/sdlgraphics.hpp
>>> /guichan/sdl/sdlimageloader.hpp
>>> /guichan/sdl/sdlinput.hpp
>>> /guichan/sdl/sdlpixel.hpp
>>> /guichan/sdl/Makefile
>>> /guichan/mouseinput.hpp
>>> /guichan/cliprectangle.hpp
>>> /guichan/imageloader.hpp
>>> /guichan/color.hpp
>>> /guichan/key.hpp
>>> /guichan/basiccontainer.hpp
>>> /guichan/x.hpp
>>> /guichan/platform.hpp
>>> /guichan/defaultfont.hpp
>>> /guichan/widget.hpp
>>> /guichan/exception.hpp
>>> /guichan/sdl.hpp
>>> /guichan/font.hpp
>>> /guichan/focushandler.hpp
>>> /guichan/keylistener.hpp
>>> /guichan/Makefile.am
>>> /guichan/Makefile.in
>>> /guichan/allegro/allegrographics.hpp
>>> /guichan/allegro/allegroinput.hpp
>>> /guichan/allegro/allegroimageloader.hpp
>>> /guichan/allegro/Makefile
>>> /guichan/graphics.hpp
>>> /guichan/opengl.hpp
>>> /guichan/widgets/
>>> /guichan/widgets/CVS/
>>> /guichan/widgets/CVS/Root
>>> /guichan/widgets/CVS/Repository
>>> /guichan/widgets/CVS/Entries
>>> /guichan/widgets/CVS/Template
>>> /guichan/widgets/label.hpp
>>> /guichan/widgets/listbox.hpp
>>> /guichan/widgets/textfield.hpp
>>> /guichan/widgets/icon.hpp
>>> /guichan/widgets/slider.hpp
>>> /guichan/widgets/button.hpp
>>> /guichan/widgets/container.hpp
>>> /guichan/widgets/Makefile.am
>>> /guichan/widgets/Makefile.in
>>> /guichan/widgets/checkbox.hpp
>>> /guichan/widgets/radiobutton.hpp
>>> /guichan/widgets/dropdown.hpp
>>> /guichan/widgets/scrollarea.hpp
>>> /guichan/widgets/textbox.hpp
>>> /guichan/widgets/Makefile
>>> /guichan/rectangle.hpp
>>> /guichan/actionlistener.hpp
>>> /guichan/Makefile
--- /usr/
--- /usr/lib64/
>>> /usr/lib64/libguichan_widgets.la
>>> /usr/lib64/libguichan.la
>>> /usr/lib64/libguichan_sdl.la
>>> /usr/lib64/libguichan_opengl.la

The libs are ok, but i don't think is good to place a guichan directory on the root.
Comment 3 Christoph Brill (egore) (RESIGNED) 2005-03-05 06:28:21 UTC
Created attachment 52723 [details]
media-libs/guichan-0.2.0

hackish fix stupidity
Comment 4 Pablo Trabajos 2005-03-05 07:01:17 UTC
Tested. Seems ok :)
Comment 5 Christoph Brill (egore) (RESIGNED) 2005-04-04 22:26:18 UTC
Created attachment 55326 [details]
media-libs/guichan-0.3.0

ebuild for the latest version
Comment 6 Mr. Bones. (RETIRED) gentoo-dev 2005-04-04 22:39:04 UTC
The deps aren't optional unless you can turn them off via configure.
Comment 7 Christoph Brill (egore) (RESIGNED) 2005-04-04 22:41:27 UTC
from what I can tell the configure script autodetects which libs are available, but I'm not 100% sure about that. will check that later.
Comment 8 Mr. Bones. (RETIRED) gentoo-dev 2005-04-04 22:53:14 UTC
We don't allow configure scripts to autodetect things.  That means that portage is unaware of the package deps.  Look at the other ebuilds and note the use of use_enable and use_with.
Comment 9 Pablo Trabajos 2005-04-05 07:24:52 UTC
Hi, some files are missing. If i compile the source manually it works ok and  dependant programs detects it. This doesn't happen with the ebuild.

Actual result (using ebuild):
root@localhost lib # ls /usr/lib64/*guichan*
/usr/lib64/libguichan.la  
/usr/lib64/libguichan_opengl.la  
/usr/lib64/libguichan_sdl.la  
/usr/lib64/libguichan_widgets.la

Expected result (manual compilation):
root@localhost lib # ls /usr/local/lib/
libguichan.a   
libguichan.so.0       
libguichan_allegro.la    
libguichan_allegro.so.0.0.0  
libguichan_opengl.so        
libguichan_sdl.a   
libguichan_sdl.so.0
libguichan.la  
libguichan.so.0.0.0   
libguichan_allegro.so    
libguichan_opengl.a          
libguichan_opengl.so.0      
libguichan_sdl.la  
libguichan_sdl.so.0.0.0
libguichan.so  
libguichan_allegro.a  
libguichan_allegro.so.0  
libguichan_opengl.la         
libguichan_opengl.so.0.0.0  
libguichan_sdl.so
Comment 10 Priit Laes (IRC: plaes) 2005-04-16 23:59:36 UTC
It also has optional dependancy on SDL_Image
...
checking SDL/SDL_image.h usability... no
checking SDL/SDL_image.h presence... no
checking for SDL/SDL_image.h... no
checking for IMG_Load in -lSDL_image... no
configure: WARNING: SDL_image support skipped when SDL_image not found.
...

Maybe check for png and jpeg use flags too?
Comment 11 Priit Laes (IRC: plaes) 2005-04-17 00:29:53 UTC
Created attachment 56493 [details]
Guichan ebuild with use_enable and use_with syntax

Works for me (tm) :D

I stripped the doc use flag as I didn't need it. Whoever needs it will find
time to add it.. :P
Comment 12 Pablo Trabajos 2005-04-18 02:22:41 UTC
@Priit Laes, What do you mean? How have you tried?
The compilation works for me on both ebuilds but it still doesn't still correctly, making it undetectable by apps which depend on it.
Comment 13 Christoph Brill (egore) (RESIGNED) 2005-04-18 22:40:56 UTC
With the ebuild provided with comment #11 it seems to work fine for me (on ~x86 with all use flags set). Someone should verify this (especially for comment #12, since I do not have any apps that need it). I can test it too, if someone can point out a simple app that depends on it.

This also seems to install to the right location (and a bunch of header files are installed, too).

localhost egore # ls /usr/lib/*guichan*
/usr/lib/libguichan.a
/usr/lib/libguichan_allegro.a
/usr/lib/libguichan_allegro.la
/usr/lib/libguichan_allegro.so
/usr/lib/libguichan_allegro.so.0
/usr/lib/libguichan_allegro.so.0.0.0
/usr/lib/libguichan.la
/usr/lib/libguichan_opengl.a
/usr/lib/libguichan_opengl.la
/usr/lib/libguichan_opengl.so
/usr/lib/libguichan_opengl.so.0
/usr/lib/libguichan_opengl.so.0.0.0
/usr/lib/libguichan_sdl.a
/usr/lib/libguichan_sdl.la
/usr/lib/libguichan_sdl.so
/usr/lib/libguichan_sdl.so.0
/usr/lib/libguichan_sdl.so.0.0.0
/usr/lib/libguichan.so
/usr/lib/libguichan.so.0
/usr/lib/libguichan.so.0.0.0
Comment 14 Christoph Brill (egore) (RESIGNED) 2005-04-18 22:44:09 UTC
I just ran ./configure for "The Mana World" and this line

checking for gcnGuichanVersion in -lguichan... yes

looks really good to me :D
Comment 15 Pablo Trabajos 2005-04-19 04:28:27 UTC
I've compiled mana world from source and it only will work if i compile guichan from source too, the ebuild is compiled and installed but it won't be detected.

Are you sure you don't have guichan installed under /usr/local/lib ?
Comment 16 Christoph Brill (egore) (RESIGNED) 2005-04-19 06:31:07 UTC
egore@localhost /usr/local/lib $ ls *gui*
ls: *gui*: Datei oder Verzeichnis nicht gefunden

I don't have it. And I compiled Mana World this morning and it built fine and I'm also able to play it. The only occurance of guichan on my system is /usr/lib and I was using the latest mana world release on an athlon-xp (using ~x86 as keyword).

Do you have an AMD64 processor? Since I'm not sure if mana world is able to find guichan libs if they lie around in /usr/lib64/

Might be a job for an AMD64 expert.
Comment 17 Pablo Trabajos 2005-04-19 07:55:43 UTC
If you haven't compiled guichan manually from source is normal that you don't have /usr/local/lib.
Yes, I'm running amd64, and the libs are installed under /usr/lib64/ so maybe is a problem with the path detection routines on the configure script, and not with the ebuild itself.

The strange thing is that lib64 is a symlink to /usr/lib.... so maybe configure doesn't plays fair with symlinks?

I'll talk to the Mana devs to see what they think.

Regards
Comment 18 Mr. Bones. (RETIRED) gentoo-dev 2005-04-19 08:04:51 UTC
please don't touch the state of the bug after the initial submission.
Comment 19 Mr. Bones. (RETIRED) gentoo-dev 2005-04-19 08:05:26 UTC
Comment on attachment 56493 [details]
Guichan ebuild with use_enable and use_with syntax

please attach files as text/plain
Comment 20 SpanKY gentoo-dev 2005-05-04 17:41:54 UTC
i disabled the X stuff because if you run configure with --enable-x it'll fail badly :(  Pablo, think you could mention that to the upstream devs please ?

cleaned up otherwise and added to portage, thanks !
Comment 21 Pablo Trabajos 2005-05-05 19:31:40 UTC
SpanKY, I don't understand what do you mean, i have just compiled guichan and tmw and everything is fine. Whats exactly the problem with --enable-x? It doesn't seems neccesary
Comment 22 SpanKY gentoo-dev 2005-05-05 21:08:06 UTC
it's an optional feature that causes failure

add '--enable-x' to the configure process and it'll fail
Comment 23 Pablo Trabajos 2005-05-06 11:03:24 UTC
Ok, just tried and it failed:

make[4]: Entering directory `/home/lxuser/TheManaWorld/guichan-0.3.0-src/include/guichan/x'
make[4]: *** No rule to make target `ximage.hpp', needed by `all-am'.  Stop.
make[4]: Leaving directory `/home/lxuser/TheManaWorld/guichan-0.3.0-src/include/guichan/x'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/lxuser/TheManaWorld/guichan-0.3.0-src/include/guichan'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/lxuser/TheManaWorld/guichan-0.3.0-src/include'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/lxuser/TheManaWorld/guichan-0.3.0-src/include'
make: *** [all-recursive] Error 1

Will send a letter to the developers.
Comment 24 Pablo Trabajos 2005-05-06 11:35:39 UTC
I've opened this thread:
http://guichan.sourceforge.net/forum/read.php?3,180
Comment 25 SpanKY gentoo-dev 2005-05-06 15:35:07 UTC
thanks :)
Comment 26 Pablo Trabajos 2005-05-11 09:41:13 UTC
http://guichan.sourceforge.net/forum/read.php?3,180

Yep, that's just the way it is. X support is broken right now (and is therefore disabled by default in the configure script). We will probably drop it completely in the next version unless a skilled X programmer magically appears and writes a robust X backend for guichan. 

Allegro, SDL and OpenGL backends are functional and should work with all applications that uses guichan (such as The Mana World).
_______________________________ 
--Per Larsson, Guichan Developer
Comment 27 Chris Gianelloni (RETIRED) gentoo-dev 2005-05-11 10:43:43 UTC
Cool... thanks for the head's up...
Comment 28 Pablo Trabajos 2005-05-21 10:36:28 UTC
0.4 is out:

2005-05-18 Version 0.4.0 released! 
Modal focus is the biggest new feature in this latestes release of Guichan. Lots 
of bugs have been fixed and the ImageFont class can now use images with several 
rows of glyphs

http://guichan.sourceforge.net/downloads.shtml

Comment 29 Chris Gianelloni (RETIRED) gentoo-dev 2005-05-23 06:41:14 UTC
http://www.gentoo.org/proj/en/desktop/games/#doc_chap5_sect9