Re: [GtkGLExt] GObject Introspection



Hi,

and thanks again.

> > 
> > Why is this empty? Either this is missing a value, or it shouldn't
> > be here at all. If you need to clear CLEANFILES here, put a comment
> > above that says why.
> This is a matter of style. Either empty it at beginning and fill it
> with += later as gtk does [1][2] or set it with = when is first used.
> Now I've done the latter.

Ok. If GTK does it this way, it's probably best to do so as well.

> >> 
> >> EXTRA_DIST = \ gdkglversion.h.in       \ gdkglext.def @@ -177,5
> >> +179,49 @@ gtkglenumtypes.c.template
> >> 
> >> # +# Introspection +# + +-include $(INTROSPECTION_MAKEFILE) 
> >> +INTROSPECTION_GIRS = +INTROSPECTION_SCANNER_ARGS = 
> >> +INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) + +if
> >> HAVE_INTROSPECTION +introspection_sources = \ +
> >> $(filter-out gdkgldebug.h gdkglglext.h, $(gdkglext_headers)) \ +
> >> $(gdkglext_c_sources) \ +       $(gdkglext_built_c_sources) + +if
> >> USE_X11 +introspection_sources += \ +       x11/gdkglconfig-x11.c
> >> \ +       x11/gdkglcontext-x11.c  \ +       x11/gdkglquery-x11.c
> >> \ +       x11/gdkglwindow-x11.c +endif # USE_X11 + 
> >> +GdkGLExt-1.0.gir: $(gdkglext_targetlib) 
> >> +GdkGLExt_1_0_gir_INCLUDES = Gdk-3.0 
> >> +GdkGLExt_1_0_gir_SCANNERFLAGS = \ +       --warn-all \ +
> >> --identifier-prefix=GdkGL \ +       --symbol-prefix=gdk_gl \ +
> >> --symbol-prefix=gdk +GdkGLExt_1_0_gir_CFLAGS =
> >> $(common_includes) +GdkGLExt_1_0_gir_LIBS =
> >> $(gdkglext_targetlib) +GdkGLExt_1_0_gir_FILES =
> >> $(introspection_sources) +INTROSPECTION_GIRS += GdkGLExt-1.0.gir
> > 
> > I don't know much about introspection, but I'd expect the version 
> > numbers to match the major and minor version of the source code,
> > right? All these GdkGLExt_1.0_*s and friends should then be
> > replaced by GdkGLExt_@API_MJ@_@API_MI@_*.
> done

I had a look at one of the headers you cited and there the version is
hard-coded to 3.0. Could you change this again please to GdkGLExt_3_0,
etc? Sorry for the inconvenience.

> > 
> > 
> >> + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(INTROSPECTION_GIRS) 
> >> + +typelibdir = $(libdir)/girepository-1.0 +typelib_DATA =
> >> $(INTROSPECTION_GIRS:.gir=.typelib) + +CLEANFILES += $(gir_DATA)
> >> $(typelib_DATA) +endif # HAVE_INTROSPECTION + +# # Extra rules #
> >> 
> ...
> >> === modified file 'gtk/gtkglwidget.c'
> >> 
> > 
> > I don't like patches that touch too many unrelated files. There
> > should be separate patch for the C file before the build-system
> > patch.
> > 
> This one line was just to get the Python example running, but I will
> fix more annotations.

I still don't like mixing C and the build-system stuff, because it's
mostly unrelated.

I've spend a lot of time with setting up the tree's history to go from
GTK 2 to GTK 3 without breakages or major inconsistencies. If you've
ever tried bisection with a history full of broken commits, you know
why.

The goal is thus to keep the source tree in a good and consistent state.
Enabling introspection now would probably leave out most of the C
interface's functions (and thus make the tree inconsistent).

In an ideal world, all functions would be annotated first, and then
introspection would be enabled. However, I realize that this might not
be feasible in practice. If you're going to submit more patches, is
there a way for grouping C-related changes into meaningful chunks?
Something like 'one-patch-per-Glib-object'? So I could take the
build-system patch first and then all C stuff.

Best regards
Thomas


> >> 
> >> --- gtk/gtkglwidget.c   2012-03-22 17:42:49 +0000 +++
> >> gtk/gtkglwidget.c   2012-05-22 09:26:58 +0000 @@ -235,7 +235,7
> >> @@ * gtk_widget_set_gl_capability: * @widget: the #GtkWidget to
> >> be used as the rendering area. * @glconfig: a #GdkGLConfig. - *
> >> @share_list: the #GdkGLContext with which to share display lists 
> >> and texture + * @share_list: (allow-none): the #GdkGLContext with
> >> which to share display lists and texture *              objects.
> >> NULL indicates that no sharing is to take place. * @direct:
> >> whether rendering is to be done with a direct connection to *
> >> the graphics system.
> > 
> > 
> > Best regards Thomas
> > 
> > [1] https://live.gnome.org/GnomeLove/SubmittingPatches
> > 
> > 
> > 
> > 
> > 
> > _______________________________________________ gtkglext-list
> > mailing list gtkglext-list gnome org 
> > http://mail.gnome.org/mailman/listinfo/gtkglext-list
> 
> Thanks for the review.
> 
> Best regards, B.C.
> 
> [1] http://git.gnome.org/browse/gtk+/tree/gdk/Makefile.am#n187
> [2] http://git.gnome.org/browse/gtk+/tree/gtk/Makefile.am#n1224
> _______________________________________________
> gtkglext-list mailing list
> gtkglext-list gnome org
> https://mail.gnome.org/mailman/listinfo/gtkglext-list

-- 
GnuPG:          http://tdz.users.sourceforge.net/tdz.asc
Fingerprint:    16FF F599 82F8 E5AA 18C6 5220 D9DA D7D4 4EF1 DF08

jsapigen - A free glue-code generator for Mozilla SpiderMonkey. See
http://jsapigen.sourceforge.net for more information.

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]