| Summary: | New ebuild: lablgtk-2.2.0 | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Matthieu Sozeau (RETIRED) <mattam> |
| Component: | New packages | Assignee: | George Shapovalov (RETIRED) <george> |
| Status: | RESOLVED TEST-REQUEST | ||
| Severity: | normal | CC: | alan.schmitt |
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| URL: | http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgtk.html | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Bug Depends on: | 39246 | ||
| Bug Blocks: | 39181 | ||
| Attachments: |
lablgtk-2.2.0.ebuild
modified lablgtk-2.2.0.ebuild lablgtk-2.2.0.ebuild 3rd rev |
||
|
Description
Matthieu Sozeau (RETIRED)
2003-10-23 14:55:32 UTC
Created attachment 19684 [details]
lablgtk-2.2.0.ebuild
The ebuild
Hi Matthieu.
Getting through this one.
1. there were multiple whitespace violations - it should be all tab-indented
with no trainilg whitespace.
repoman recently picked up whitespace checks, but while you cannot use it
you
can make use of lintool. Just remember that line numbers it reports are 1
off..
2. RDEPEND=${DEPEND} is not necessary, this one is autosubstituted (a bit
confusing which one does and which one doesn't in the beginngng :), I know).
On the SLOTting: I see you marked it at 2, which is probably the right thing
to do. However it is also necessary to make sure it can coexist with SLOT=1
version.
Hm, I got a build failure here. Here is the tail:
ocamlc.opt -c -ccopt "-O -DG_DISABLE_CAST_CHECKS -DORBIT2=1 -pthread -I/usr/include/gtk-2.0
-I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0
-I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/gtkgl-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0
-I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/gconf/2
-I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0
-I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0
-I/usr/include/libxml2 -I/usr/include/panel-2.0 " ml_panel.c
ml_panel.c: In function `ml_panel_applet_factory_main':
ml_panel.c:187: error: `GNOME_CLIENT_PARAM_SM_CONNECT' undeclared (first
use in this function)
ml_panel.c:187: error: (Each undeclared identifier is reported only once
ml_panel.c:187: error: for each function it appears in.)
make[1]: *** [ml_panel.o] Error 2
make[1]: Leaving directory `/var/tmp/portage/lablgtk-2.2.0/work/lablgtk-2.2.0/src'
make: *** [all] Error 2
apparently old version of gnome-panel was to blame, although it is not even
listed in dependencies. I added it under gnome?
Since there was this problem, I'll attach the modified ebiild for possible
more testing, instead of committing it rihgt now. Besides, this will be yet
another one which I can help you to commit yourself ;).
George
Created attachment 19868 [details]
modified lablgtk-2.2.0.ebuild
Hi george! 1. there were multiple whitespace violations - it should be all tab-indented with no trainilg whitespace. repoman recently picked up whitespace checks, but while you cannot use it you can make use of lintool. Just remember that line numbers it reports are 1 off.. So it was a bug :p) I note that it's not documented (e.g: not in http://www.gentoo.org/doc/en/gentoo-howto.xml nor ebuild policy, AFAI researched) 2. RDEPEND=${DEPEND} is not necessary, this one is autosubstituted (a bit confusing which one does and which one doesn't in the beginngng :), I know). As lintool warned me it was a bad thing (and "policy 2.2" didn't help)... As for the SLOT, it should work without problems as lablgtk-2* uses another directory in /usr/lib/ocaml than lablgtk-1*. I have a system where they coexist flawlessly. Sorry about the deps, it seems i missed some and even if i didn't i was not sure which version to ask for, as the README's aren't excessively detailed about gnome dependancies (I think it should compile with gnome-2.2 systems too but I can't test). I attach another modified ebuild with added deps and configure flags. Created attachment 19872 [details]
lablgtk-2.2.0.ebuild 3rd rev
Aren't ebuilds text/plain ?
Ok, i'm ready to commit it but i'm concerned there are apps in portage that have dependencies like >=lablgkt-1.2. What am I supposed to do here ? Check every ebuild ? Or maybe they're all dependent on >=lablgtk-1.2.* ? Hm, I am a bit rusty on the labl* particulars at the moment. Specifically, how compatible 2.x series are with 1.2.x stuff? If 2.2 can be used in place of 1.2, then you can leave >=lablgtk-1.2 (no need for '*' at the end), but if it will cause trouble in the packets that depend on it then it should be changed to =lablgtk-1.2* (no point btw). Correspondingly in the latter case you will need to go through the packages that depend on labltk and change the dependencies (find /usr/portage -iname "*.ebuild"|xargs grep -le labltk will give you the full list). Otherwise, as they have >= anyways in, no need to change anything. George lablgtk 1 & 2 are not compatible. I only found 2 packages using it, unison and mldonkey.
For unison there's no problem, but for the mldonkey ebuilds i'll have to add:
DEPEND="gtk? ( >=lablgtk-1.2.4
<lablgtk-2.0 )
to each ebuild. Is it the right way to specify such version numbers ranges ? Say yes and i'll commit fixed mldonkey ebuilds and lablgtk-2.2.0 too.
Well, =lablgtk-1.2* would be the more common way of specifying such dependency (it says pick the latest one of 1.2 series). The one you listed should theoretically work (according to description), but I don't have much experience with this. In any case a brief test of what emerge mldonkey -pe outputs is a usefull thing to do.. George Problem is, * does not work as expected. In our case, say someone emerge lablgtk-1.2.3, and the tries to emerge mldonkey-2.5.4, which requires lablgtk-1.2* instead of >=lablgtk-1.2.4. emerge -pv mldonkey says it won't get the latest available lablgtk-1.2 version but try to emerge mldonkey with the installed version, and it will fail. I think we spotted a portage bug. Commited in CVS, now needs testing. After changing the GTK dependency slightly from: "=x11-libs/gtk+-2.2*" to ">=x11-libs/gtk+-2.2*", it compiled fine against GTK+ 2.3.2 from BMG. I recommend applying this change, because 2.3.2 and 2.2* cannot be installed concurrently AFAIK, and mergeing lablgtk causes GTK+ 2.2* to be installed over 2.3.2. It seems to be working here. As concerns versions, why don't we do the same thing that was done for gtk+ and gtk+2 (I don't know how they manage the two different major versions, but they are also clearly incompatible). We do the same thing for lablgtk, that is we use SLOTs. |