GNOME Bugzilla – Bug 580887
Metabug: Burn down all libgnome(ui) dependencies of evolution
Last modified: 2009-09-18 16:50:40 UTC
Die! Die! Die!
Generic headers not covered by subbugs: ./addressbook/tools/evolution-addressbook-export-list-folders.c: #include <libgnome/libgnome.h> ./addressbook/tools/evolution-addressbook-export-list-cards.c: #include <libgnome/libgnome.h> ./plugins/mail-notification/mail-notification.c: #include <libgnome/libgnome.h> ./widgets/table/e-table-group-container.c: #include <libgnome/libgnome.h> ./plugins/backup-restore/backup-restore.c: #include <libgnomeui/libgnomeui.h> ./plugins/startup-wizard/startup-wizard.c: #include <libgnomeui/libgnomeui.h> ./plugins/groupwise-features/share-folder-common.c: #include <libgnomeui/libgnomeui.h> ./plugins/groupwise-features/install-shared.c: #include <libgnomeui/libgnomeui.h> ./calendar/gui/dialogs/calendar-setup.c: #include <libgnomeui/libgnomeui.h>
Haxx0rz also see bug 580904 for fun with evo-exchange. Some fixes might be quite similar...
The generic headers should be killed ASAP because they pull in deprecated GTK+ stuff and make it impossible to build with GTK_DISABLE_DEPRECATED. We should either remove them outright or, if that breaks compilation, temporarily replace them with specific libgnome[ui] headers to satisfy whatever the file needs.
Milan: Please don't remove deps. Thanks. :)
(In reply to comment #3) > We should either remove them outright or, if that breaks compilation, > temporarily replace them with specific libgnome[ui] headers to satisfy whatever > the file needs. Handled this in http://git.gnome.org/cgit/evolution/commit/?id=71c5738707028d12a3129a94a1b3823a7fab573c No more <gnome.h>, <libgnome/libgnome.h> or <libgnomeui/libgnomeui.h> includes. We picked up a few more GnomeDruid hits, and a gnome-sound hit. The rest were unnecessary.
So updating the overall TODO status for current 2.29 (KB branch etc) according to the dependency bugs (I didn't grep): ==libgnome== calendar/gui/alarm-notify/notify-main.c:#include <libgnome/gnome-init.h> calendar/gui/main.c:#include <libgnome/gnome-init.h> e-util/e-win32-reloc.c:#include <libgnome/gnome-init.h> e-util/e-util.c:#include <libgnome/gnome-init.h> tools/killev.c:#include <libgnome/gnome-util.h> shell/main.c:#include <libgnome/gnome-sound.h> calendar/gui/alarm-notify/notify-main.c:#include <libgnome/gnome-sound.h> calendar/gui/alarm-notify/alarm-queue.c:#include <libgnome/gnome-sound.h> mail/mail-folder-cache.c:#include <libgnome/gnome-sound.h> mail/mail-session.c:#include <libgnome/gnome-sound.h> ==libgnomeui== calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-ui-init.h> shell/main.c:#include <libgnomeui/gnome-ui-init.h> widgets/misc/test-dropdown-button.c:#include <libgnomeui/gnome-ui-init.h> calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-client.h>
Great. Another TO-DO update for potential contributors (yes, call me naive): ==libgnome== calendar/gui/alarm-notify/notify-main.c:#include <libgnome/gnome-init.h> calendar/gui/main.c:#include <libgnome/gnome-init.h> e-util/e-win32-reloc.c:#include <libgnome/gnome-init.h> e-util/e-util.c:#include <libgnome/gnome-init.h> tools/killev.c:#include <libgnome/gnome-util.h> ==libgnomeui== calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-ui-init.h> shell/main.c:#include <libgnomeui/gnome-ui-init.h> widgets/misc/test-dropdown-button.c:#include <libgnomeui/gnome-ui-init.h> calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-client.h>
Of these, only the following remain on kill-bonobo: ==libgnome== calendar/gui/alarm-notify/notify-main.c:#include <libgnome/gnome-init.h> e-util/e-util.c:#include <libgnome/gnome-init.h> ==libgnomeui== calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-ui-init.h> calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-client.h> The e-util case is trivial to fix. The only thing really keeping this bug alive now is evolution-alarm-notify.
Now that kill-bonobo has been merged into master, grepping comes up with: ./e-util/e-util.c:#include <libgnome/gnome-init.h> ./tools/killev.c:#include <libgnome/gnome-util.h> ./calendar/gui/alarm-notify/notify-main.c:#include <libgnome/gnome-init.h> ./e-util/e-icon-factory.c:#include <libgnomeui/gnome-desktop-thumbnail.h> ./calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-client.h> ./calendar/gui/alarm-notify/notify-main.c:#include <libgnomeui/gnome-ui-init.h>
The e-icon-factory case is actually coming from gnome-desktop, which unfortunately also installs its headers into a "libgnomeui" subdirectory, presumably for backward-compatibility reasons.
Fixed the remaining cases in a series of commits: http://git.gnome.org/cgit/evolution/commit/?id=3f1448b0119585493e1d213af9afde5faf50cb2c http://git.gnome.org/cgit/evolution/commit/?id=12d1810be39661750956ec1e041f7f572ea86698 http://git.gnome.org/cgit/evolution/commit/?id=461f022eb7fae7147845797c0544304ae35c7e8b http://git.gnome.org/cgit/evolution/commit/?id=acb28fef9de532b4f1a62f1d2ca90e744eaf85c4