summaryrefslogtreecommitdiff
path: root/gtk/STATUS.gtk3
blob: 06338f60fa05f213e59977c31a95bbc61689df87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Status of the GTK+ 3 port :
===========================

$Id$

Take a look at the "Migrating from GTK+ 2.x to GTK+ 3" document at:
http://developer.gnome.org/gtk3/stable/gtk-migrating-2-to-3.html

There are two ways to make the Wireshark code gtk3 ready:

1) CMake and configure options to build with gtk3 instead of gtk2:
  cmake:     ENABLE_GTK3=ON
  configure: --enable-gtk3
  This will currently break the build and not gain much until the last
  problem has been fixed. It will also require everyone interested in
  working on this to have gtk3 installed.

2) The compat flags:
  -DGTK_DISABLE_SINGLE_INCLUDES [works]
  -DGSEAL_ENABLE
  -DGDK_DISABLE_DEPRECATED
  -DGTK_DISABLE_DEPRECATED [works if building with UI_MANAGER code]
  Gtk2 offers several compile time flags, so if you run a sufficiently new
  version of gtk2 and turn on one or more of these flags, you can find many
  things that are not gtk3 compatible yet. 
  This is a subset of what breaks when compiling with Gtk3/Gdk3.

Some statistics (as of rev 38217)

-DGSEAL_ENABLE
  grep error: make.log| cut -d: -f5 | sort | uniq -c
      1  ‘GtkDialog’ has no member named ‘vbox’
      4  ‘GtkTreeViewColumn’ has no member named ‘button’
      1  ‘GtkWidget’ has no member named ‘window’

-DGDK_DISABLE_DEPRECATED
  grep error: make.log| grep -v assignment | cut -d: -f5 | sort | uniq -c
      2  implicit declaration of function ‘gdk_draw_arc’
      1  implicit declaration of function ‘gdk_draw_drawable’
      9  implicit declaration of function ‘gdk_draw_layout’
      6  implicit declaration of function ‘gdk_draw_line’
      1  implicit declaration of function ‘gdk_draw_pixbuf’
      4  implicit declaration of function ‘gdk_draw_pixmap’
      1  implicit declaration of function ‘gdk_draw_polygon’
      5  implicit declaration of function ‘gdk_draw_rectangle’
      5  implicit declaration of function ‘gdk_gc_new’
      1  implicit declaration of function ‘gdk_gc_set_fill’
      2  implicit declaration of function ‘gdk_gc_set_foreground’
      1  implicit declaration of function ‘gdk_gc_set_function’
      1  implicit declaration of function ‘gdk_gc_set_line_attributes’
      3  implicit declaration of function ‘gdk_gc_set_rgb_fg_color’
      1  implicit declaration of function ‘gdk_gc_set_tile’
      1  implicit declaration of function ‘gdk_gc_set_ts_origin’
      1  implicit declaration of function ‘gdk_pixmap_create_from_xpm_d’

-DGTK_DISABLE_DEPRECATED
	Will work if and only if building with UI_MANAGER enabled:
        autofoo: configure ... --enable-uimanager ...
	cmake: cmake ... -DUI_MANAGER=ON ...
	Right now this looses the proto_help functionality and quite some
	additional stuff (mostly? statistics).