On Wed, 2008-12-03 at 09:28 -0500, Ross Mellgren wrote:
> Hey Axel,
> 
> As I've said, I've given up on trying to make --disable-deprecated  
> work... I also don't have a particular attachment to any  
> interpretation of how it should work (or even work at all ;-) ). If  
> you want to throw away my patch to do something you feel is better,  
> that's perfectly fine by me. I just went along a path and captured my  
> delta just before I gave up and threw away the code.
> 
> My goal was to make gtk2hs compile with the flag on, and since Gtk+  
> stopped exposing those symbols when the _DISABLE_DEPRECATED defines  
> were given (which I didn't add btw, those were there when I got to the  
> scene of the crime) it seemed like the right thing to do was to stop  
> building the Gtk2hs components that wrapped them.

Yes, so I guess I'm the one who's giving this flag a second
interpretation now.

> I only removed the whole module in the case where the whole module was  
> affected (e.g. FileSelection) -- for single functions I just elided  
> those particular functions.
> 
> Maybe I'm not understanding where you're going with this... what do  
> you suggest is done  in particular? It sounds like your interpretation  
> would be to remove the _DISABLE_DEPRECATED defines that Gtk+ uses from  
> the build, so that the functions/types deprecated in Gtk+ are still  
> available, and only those deprecated in Gtk2hs are disabled.

Yes, that what was I was suggesting.

If I got some time on my hands, I might make this flag work again, with
either of the interpretations.

Thanks for raising the issue, though,
Axel.


> I'm definitely confused by this thread, so sorry about the confusion :-/
> 
> -Ross
> 
> 
> On Dec 3, 2008, at 4:58 AM, Axel Simon wrote:
> 
> > On Sat, 2008-11-29 at 13:33 -0500, Ross Mellgren wrote:
> >>
> >> The approach I took for whole modules that were deprecated was to
> >> AM_PARAMETER(DISABLE_DEPRECATED) into Makefile.am, and not add them  
> >> to
> >> the sources list in that case, and modify hierarchy.list similarly.
> >> I'm not sure if this is the approach you would take, but I figured
> >> that it seems the semantic meaning of --disable-deprecated is to
> >> compile something that has no deprecated APIs, either in Gtk2hs
> >> directly or the underlying Gtk+/Glib/Gdk.
> >
> > Um. As I've explained in my previous mail, I though of
> > --disable-deprecated as a flag to exclude anything in Gtk2Hs that we
> > think shouldn't be used anymore. To also pass this flag to CPP when
> > compiling the Gtk+ headers was probably the original intend and  
> > maybe a
> > sensible one. I guess it depends on why one wants to use this flag for
> > which the answer is probably "Developers want to know that they use  
> > the
> > latest features.". However, the developer might want to know that they
> > use features of Gtk2Hs that won't go away anytime soon (my
> > interpretation) or they want to use the latest and most bug-free
> > features of Gtk+ (your interpretation). My interpretation is a must  
> > for
> > anyone who wants his/her code to compile with future versions of  
> > Gtk2Hs
> > since we're removing deprecated features with increasing versions  
> > (until
> > we reach version 1.0). Gtk+ never removes any functions until the next
> > major version (3.x).
> >
> > You interpretation implies more work, but is easy to check (since
> > compilation will fall over). My interpretation is useful to generate
> > documentation (as it allows us to exclude all functions that are
> > deprecated).
> >
> > Maybe we should have different flags. But that's even more work. I'm
> > currently undecided about this, so comments welcome.
> >
> > Cheers,
> > Axel.
> >
> >> Here's the versions of the Gtk related stuff, so you know what  
> >> version
> >> of the library I was compiling against (and got build errors due to
> >> missing symbols from headers):
> >>
> >> [EMAIL PROTECTED]:/Library/Frameworks/Gtk.framework/Resources/dev/lib/ 
> >> pkgconfig
> >> $ grep Version *.pc
> >> atk.pc:Version: 1.24.0
> >> gdk-2.0.pc:Version: 2.14.3
> >> gdk-pixbuf-2.0.pc:Version: 2.14.3
> >> gdk-quartz-2.0.pc:Version: 2.14.3
> >> gtk+-2.0.pc:Version: 2.14.3
> >> gtk+-quartz-2.0.pc:Version: 2.14.3
> >> gtk+-unix-print-2.0.pc:Version: 2.14.3
> >> ige-mac-integration.pc:Version: 0.8.2
> >> pango.pc:Version: 1.22.0
> >> pangocairo.pc:Version: 1.22.0
> >>
> >> [EMAIL PROTECTED]:/Library/Frameworks/GLib.framework/Resources/dev/lib/ 
> >> pkgconfig
> >> $ grep Version *.pc
> >> gio-2.0.pc:Version: 2.18.1
> >> gio-unix-2.0.pc:Version: 2.18.1
> >> glib-2.0.pc:Version: 2.18.1
> >> gmodule-2.0.pc:Version: 2.18.1
> >> gmodule-export-2.0.pc:Version: 2.18.1
> >> gmodule-no-export-2.0.pc:Version: 2.18.1
> >> gobject-2.0.pc:Version: 2.18.1
> >> gthread-2.0.pc:Version: 2.18.1
> >>
> >> [EMAIL PROTECTED]:/Library/Frameworks/Cairo.framework/Resources/dev/lib/
> >> pkgconfig$ grep Version *.pc
> >> cairo-pdf.pc:Version: 1.7.6
> >> cairo-png.pc:Version: 1.7.6
> >> cairo-ps.pc:Version: 1.7.6
> >> cairo-quartz-font.pc:Version: 1.7.6
> >> cairo-quartz.pc:Version: 1.7.6
> >> cairo-svg.pc:Version: 1.7.6
> >> cairo.pc:Version: 1.7.6
> >> pixman-1.pc:Version: 0.12.0
> >>
> >>
> >> Thanks for taking a look!
> >> -Ross
> >>
> >> On Nov 28, 2008, at 7:47 AM, Axel Simon wrote:
> >>
> >>> On Thu, 2008-11-27 at 14:03 -0500, Ross Mellgren wrote:
> >>>> I spent a night trying to get --disable-deprecated to work, but I
> >>>> didn't
> >>>> have success. There were a bunch of places where the
> >>>> *_DISABLE_DEPRECATED defines cause Gtk+ and the other libraries to
> >>>> cease
> >>>> exporting things, such as Tooltips.
> >>>>
> >>>> I can send you the patch I stashed before giving up on it, if  
> >>>> you're
> >>>> interested.
> >>>
> >>> Yes, that'd be helpful!
> >>>
> >>> Thanks,
> >>> Axel.
> >>>> -Ross
> >>>>
> >>>>
> >>>> Axel Simon wrote:
> >>>>> On Tue, 2008-11-25 at 21:03 -0500, Ross Mellgren wrote:
> >>>>>> Hi all,
> >>>>>>
> >>>>>> I tried to build my gtk2hs kit with --disable-deprecated, since I
> >>>>>> saw
> >>>>>> that the previous event hook functions I had been using such as
> >>>>>> onButtonPress had been deprecated and I have no reason to develop
> >>>>>> against the old interfaces.
> >>>>>>
> >>>>>> However, it turns out that gtk2hs didn't build once I had
> >>>>>> configured
> >>>>>> with --disable-deprecated for two reasons (and I won't go into
> >>>>>> how long
> >>>>>> it took me to nail it down to this -- it's embarrassing):
> >>>>>>
> >>>>>> - FileSelection is omitted from Gtk when GTK_DISABLE_DEPRECATED  
> >>>>>> is
> >>>>>> defined, which --disable-deprecated does (among others).
> >>>>>> - Same with Tooltips.
> >>>>>>
> >>>>>> FileSelection apparently has been replaced with FileChooser and
> >>>>>> has a
> >>>>>> binding in gtk2hs, and it looks like Tooltips (plural) should be
> >>>>>> replaced with Tooltip (singular), but there is apparently no
> >>>>>> binding
> >>>>>> (yet?) for Tooltip.
> >>>>>>
> >>>>>> My question, then, is twofold... what is the policy on
> >>>>>> --disable-deprecated (should I give up on it early), and does
> >>>>>> anyone
> >>>>>> have a binding of Tooltip hanging around, or is one already in
> >>>>>> there
> >>>>>> that I didn't see? I can easily make the deprecated modules in
> >>>>>> gtk2hs
> >>>>>> not be built with --disable-deprecated, but without a replacement
> >>>>>> for
> >>>>>> Tooltips it seems like a bad idea.
> >>>>>
> >>>>> I haven't tested the DISABLE_DEPRECATED variant in a long time.
> >>>>> I'll try
> >>>>> to get it to work again.
> >>>>>
> >>>>> With respect to Tooltip vs Tooltips: I don't think we have any
> >>>>> code yet
> >>>>> that is marked as deprecated starting from a certain version
> >>>>> number of
> >>>>> Gtk+. So far, the --disable-deprecated option was merely meant to
> >>>>> disable parts of the Gtk2Hs API that has been superseded by other
> >>>>> functionality. Thus, an API that exists in Gtk+ and in Gtk2Hs  
> >>>>> but is
> >>>>> superseded by an new API in Gtk+ remains in Gtk2Hs as long as it
> >>>>> remains
> >>>>> in Gtk+. That was a bit of a mouth full. In a nutshell: We shall  
> >>>>> not
> >>>>> remove APIs from Gtk2Hs just because they have been marked as
> >>>>> deprecated
> >>>>> in Gtk+.
> >>>>>
> >>>>> Hope this helps,
> >>>>> Axel.
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>> -Ross
> >>>>>>
> >>>>>>
> >>>>>> -------------------------------------------------------------------------
> >>>>>> This SF.Net email is sponsored by the Moblin Your Move
> >>>>>> Developer's challenge
> >>>>>> Build the coolest Linux based applications with Moblin SDK & win
> >>>>>> great prizes
> >>>>>> Grand prize is a trip for two to an Open Source event anywhere in
> >>>>>> the world
> >>>>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >>>>>> _______________________________________________
> >>>>>> Gtk2hs-devel mailing list
> >>>>>> Gtk2hs-devel@lists.sourceforge.net
> >>>>>> https://lists.sourceforge.net/lists/listinfo/gtk2hs-devel
> >>>>>
> >>>
> >>
> >


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Gtk2hs-devel mailing list
Gtk2hs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtk2hs-devel

Reply via email to