[glade--]Re: Gnomemm-2 support in glade--
- From: Peter Wainwright <prw wainpr demon co uk>
- To: Christof Petig <christof petig-baender de>
- Cc: glademm-list gnome org
- Subject: [glade--]Re: Gnomemm-2 support in glade--
- Date: 05 Nov 2002 20:54:33 +0000
On Mon, 2002-11-04 at 11:48, Christof Petig wrote:
> Peter Wainwright wrote:
> > Hi, Christof
> >
> > I'm posting my latest patches to try to get gnomemm2 support.
>
> Well done. Actually you understood a lot of glademm's internals. Wow.
>
> I only disagree in two points:
> - I do not like the environment variable. I'd propose to default to
> gnome1 on glade-1 files and gnome2 on glade-2 files. But since I do not
> have a better solution, I took yours.
>
> - You unconditionally overwrite configure.in, Makefile.am, autogen.sh
> and the like (patch to Cxx.cc). That's not how it's supposed to be. I'd
> like the user to delete the files to get them recreated. This way user
> changes to these files are preserved. Perhaps I should spend another
> option to overwrite these files.
1. I don't like the environment variable either: I only put it in
as a temporary measure (read KLUDGE) while I was feeling my way
around. I guess "Configuration.glade2" is the flag which tells us
which version of the .glade file has been detected? If you don't
feel like correcting my patches yourself, I can provide a better
solution when I have time...
2. I don't think I unconditionally overwrite the build files.
There are lines such as autogen_name=FileNameByType(File_AUTOGEN_SH),
and it seems that these return the filenames with a "_new" postfix if
they already exist. Its up to the user to copy those to autogen.sh, etc.
if they want to - I thought that was the idea (correct me if
I'm wrong)?
I'm still working on some more patches (presently trying to learn
about the internal BonoboDock/BonoboDockItem widgets which crop
up in Gnome2 Apps) - I'll probably have some more patches in a
week or so...
Peter
>
> > I have set myself the task of getting a Gnome App widget working.
> > It's a challenge...
>
> It had been a challenge when gnome 1.0 was there, too. If you have any
> questions, please ask.
>
> > A number of issues occur to me.
> > First and foremost, how to support different Gnome versions?
> >
> > In Gnome 2, the "gnomemm" libraries have been split considerably.
> > There is libgnomemm, libgnomeuimm, libbonobomm, libbonobouimm,
> > libgnomecanvasmm, gconfmm - at least; as well as gtkmm itself.
> >
> > This makes sense from the developer's perspective. However, if
> > glade-- is to automatically determine its target, we have to
> > cope with the situation when the user has inconsistent versions
> > of the libraries installed. It comes back to the question often
> > asked "how do i find out what version of GNOME I have installed"...
> > There is no simple answer when each library has its own versioning
> > scheme.
>
> Hmm. I'd say: If gnomemm2 is detected, stay with it. If gnomemm2 is
> missing, we have a glade-1 file and we still detect gnomemm1, stay with it.
>
> > I see that the first routine called in glade-- is "call_gtkmm_config".
> > I split this into two parts, one which uses "pkg-config" style checks
> > as in Gnome 2; the other using "gtk-config" and "gnome-config" checks
> > as in Gnome 1. At present an environment variable GLADEMM_GNOME_VERSION
> > is used to select which of these sections is executed. If you set
> > GLADEMM_GNOME_VERSION to 0 both sections are executed, and the latest
> > version of each package is detected. This may leave you with
> > inconsistent versions - however at this stage we don't know if this
> > is a problem. For example, the user may be building a GTK-only
> > application, and then it doesn't matter if he has GTK 2 with Gnome 1.
> >
> > The Gnome 2 detection however will become increasingly messy if we
> > add checks for all the new component libraries... Maybe we need to
> > simplify with a simple Gnome2/Gnome1 option - I'd really appreciate your
> > thoughts on the way you want to go with this.
>
> Did I make my thoughts clear enough? (Please erase any sharp undertone
> propably found here) If not please ask.
>
> It's not uncommon to have gtkmm2 and gnome-1 installed (I still do not
> have/need gnomemm). I'd vote for using gnome-2 even if it is missing if
> gtkmm2 is selected (not the default even if detected if passed a glade-1
> file, see glade--.cc). The user should be able to figure out the missing
> packages to build his new app once configure complains.
>
> > BTW, there's also a patch in here I called "glademm.utsname.patch".
> > This is a configure problem I had with the code which tries to
> > get utsname by #defining _GNU_SOURCE or __USE_GNU.
> > (I'm using Red Hat 7.2 with updates).
>
> already applied. But shouldn't we add -D_GNU_SOURCE to cflags to really
> support it?
>
> > Sometimes autoconf drives me mad...
>
> I learned to need it. And it does it's job well ... unless you try to do
> things in unforeseen ways (which is easily done).
>
> Thank you very much for your patch
> Christof
--
Home: Work:
Email: prw wainpr demon co uk peter wainwright nrpb org
Fax: +44-870-0523185 +44-1235-822656
Web: http://www.wainpr.demon.co.uk http://www.nrpb.org
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]