Hi Andy, I cannot find anything wrong with the Makefile.
I installed webkit 1.1.10. Since the configure script requires at least version 1.1.14, I simply changed the configure file. When I run make, I get: rm -f libHSgio.a ./mk/link-splitobjs.sh libHSgio.a gio/System/GIO/AsyncResult.o gio/ System/GIO/Base.o gio/System/GIO/Cancellable.o gio/System/GIO/ FileAttribute.o gio/System/GIO/File.o gio/System/GIO.o gio/System/GIO/ Types.o gio/System/GIO/Signals.o gio/System/GIO/Base_stub.o Linking libHSgio.a, for larger libs this can take quite some time... ar: creating archive libHSgio.a ranlib libHSgio.a rm soegtk/Graphics/SOE/Gtk.hs make: *** [all] Error 2 However, there's lots of output before this error message and scrolling up reveals that there was an error (I don't know why make doesn't stop immediately). Running make again gave me: make all-am ./tools/c2hs/c2hsLocal +RTS -RTS -igtk:glib:webkit --precomp=webkit/ webkit.precomp -o webkit/Graphics/UI/Gtk/WebKit/Types.hs webkit/ Graphics/UI/Gtk/WebKit/Types.chs c2hsLocal: Errors during expansion of binding hooks: webkit/Graphics/UI/Gtk/WebKit/Types.chs:232: (column 12) [ERROR] >>> Unknown identifier! Cannot find a definition for `NetworkResponse' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:255: (column 22) [ERROR] >>> Unknown identifier! Cannot find a definition for `webkit_network_response_get_type' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:448: (column 12) [ERROR] >>> Unknown identifier! Cannot find a definition for `WebDatabase' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:471: (column 22) [ERROR] >>> Unknown identifier! Cannot find a definition for `webkit_web_database_get_type' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:475: (column 12) [ERROR] >>> Unknown identifier! Cannot find a definition for `WebDataSource' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:498: (column 22) [ERROR] >>> Unknown identifier! Cannot find a definition for `webkit_web_data_source_get_type' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:502: (column 12) [ERROR] >>> Unknown identifier! Cannot find a definition for `WebResource' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:525: (column 22) [ERROR] >>> Unknown identifier! Cannot find a definition for `webkit_web_resource_get_type' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:529: (column 12) [ERROR] >>> Unknown identifier! Cannot find a definition for `SecurityOrigin' in the header file. webkit/Graphics/UI/Gtk/WebKit/Types.chs:552: (column 22) [ERROR] >>> Unknown identifier! Cannot find a definition for `webkit_security_origin_get_type' in the header file. make: *** [all] Error 2 Which means that the version of webkit I'm using is lacking certain types. I removed these types from tools/hierarchyGen/hierarchy.list but ran into problems of missing functions. I think you just have to scroll up to find the actual error (or run make again). Since my packaging system doesn't provide webkit 1.10.14, I cannot build with the proper version right now. On Mar 17, 2010, at 12:03, Andy Stewart wrote: > Hi Axel, > > I want update all functions/signals under Widget to Gtk+ 2.18. Please consider using the apiGen tool to generate these functions. If you don't, you are likely to forget an #ifdef or get the documentation wrong. Fixing these thing takes longer for me than merging the new functions generated by apiGen myself. > Below are missing functions/singals: > ------------------------------> Gtk+ 2.18 Update start > <------------------------------ > * TODO Missing Functions > ** TODO gtk_widget_realize > ** TODO gtk_widget_get_visual I don't know if we ever need Visuals. I think they are a defined as type but there are no methods for Visual. But in general I'm ok to bind these functions. > ** TODO gtk_widget_hide_on_delete > ** TODO gtk_widget_ensure_style > ** TODO gtk_widget_get_default_visual > ** TODO gtk_widget_modify_cursor > ** TODO gtk_widget_pop_composite_child > ** TODO gtk_widget_push_composite_child > ** TODO gtk_widget_mnemonic_activate > ** TODO gtk_widget_class_install_style_property > ** TODO gtk_widget_class_find_style_property > ** TODO gtk_widget_class_list_style_properties > ** TODO gtk_widget_send_expose The docs say that this function is rarely used. I don't think we should confuse the user with this. > ** TODO gtk_widget_style_get_property You have to come up with what a property may be. Letting the user deal with raw GValues is not an option as they can contain pointers. > ** TODO gtk_widget_style_get_valist We can't bind vararg functions. > ** TODO gtk_widget_child_notify > ** TODO gtk_widget_freeze_child_notify > ** TODO gtk_widget_get_clipboard Are you sure this is missing? Clipboard support is there, in principle. > ** TODO gtk_widget_thaw_child_notify > ** TODO gtk_widget_error_bell > ** TODO gtk_widget_keynav_failed There is little point in *calling* this function. You might bind it's signal. > ** TODO gtk_widget_get_tooltip_markup > ** TODO gtk_widget_set_tooltip_markup > ** TODO gtk_widget_get_tooltip_text > ** TODO gtk_widget_set_tooltip_text > ** TODO gtk_widget_get_tooltip_window > ** TODO gtk_widget_set_tooltip_window > ** TODO gtk_widget_get_has_tooltip > ** TODO gtk_widget_set_has_tooltip All of these should be implemented as attributes, not as set/get functions. > ** TODO gtk_widget_trigger_tooltip_query > ** TODO gtk_widget_get_snapshot > ** TODO gtk_widget_get_allocation > ** TODO gtk_widget_set_allocation Only the get variant is useful. > ** TODO gtk_widget_get_double_buffered > ** TODO gtk_widget_get_has_window > ** TODO gtk_widget_set_has_window We cannot allow users to call this functions. > ** TODO gtk_widget_is_sensitive > ** TODO gtk_widget_set_visible > ** TODO gtk_widget_has_grab > ** TODO gtk_widget_is_drawable > ** TODO gtk_widget_is_toplevel > ** TODO gtk_widget_set_window > ** TODO gtk_widget_set_receives_default > ** TODO gtk_widget_get_receives_default > ** TODO gtk_requisition_copy > ** TODO gtk_requisition_free > > * TODO Signal > ** TODO"can-activate-accel" > ** TODO"child-notify" We need a way to handle properties of widgets. This needs some conceptual work, as in how to set and retrieve widget properties in a type safe way. > ** TODO"client-event" You need to add this even to EventM first. > ** TODO"composited-changed" > ** TODO"damage-event" > ** TODO"direction-changed" > ** TODO"drag-begin" > ** TODO"drag-data-delete" > ** TODO"drag-data-get" > ** TODO"drag-data-received" > ** TODO"drag-drop" > ** TODO"drag-end" > ** TODO"drag-failed" > ** TODO"drag-leave" > ** TODO"drag-motion" No! Drag and drop is implemented and these are low-level signals that nobody should use. > ** TODO"enter-notify-event" Don't we have this? > ** TODO"event" > ** TODO"event-after" I don't know if these are useful. > ** TODO"expose-event" Don't we have this? > ** TODO"focus" > ** TODO"grab-focus" > ** TODO"grab-notify" > ** TODO"hide" > ** TODO"hierarchy-changed" > ** TODO"keynav-failed" > ** TODO"map" > ** TODO"mnemonic-activate" > ** TODO"move-focus" > ** TODO"no-expose-event" > ** TODO"parent-set" > ** TODO"popup-menu" > ** TODO"property-notify-event" > ** TODO"query-tooltip" > ** TODO"realize" Some of these we have I believe. > ** TODO"selection-clear-event" > ** TODO"selection-get" > ** TODO"selection-notify-event" > ** TODO"selection-received" > ** TODO"selection-request-event" Do we not deal with these in Selection? > ** TODO"show" > ** TODO"show-help" > ** TODO"size-allocate" > ** TODO"size-request" > ** TODO"state-changed" > ** TODO"style-set" > ** TODO"unmap" > ** TODO"unrealize" > ------------------------------> Gtk+ 2.18 Update end > <------------------------------ > In order to ensure some quality of the binding, every function and signal that we bind needs to be understood. A lot of functions simply emit signals and a lot of signals are just there to trigger some default behaviour. I don't think we will ever need to enable the user to write their own instances of Widget and only then do these functions make sense. Cheers, Axel. ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Gtk2hs-devel mailing list Gtk2hs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtk2hs-devel