After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 590215 - Remove deprecated libgnome libgnomeui dependency
Remove deprecated libgnome libgnomeui dependency
Status: RESOLVED FIXED
Product: gnome-pilot
Classification: Other
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-pilot Maintainers
gnome-pilot Maintainers
Depends on: 570724 570732 571235 571238 571241 571244 571557 590225 592604
Blocks:
 
 
Reported: 2009-07-30 06:15 UTC by Halton Huo
Modified: 2011-03-20 23:17 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Remove "#include <gnome.h>", "#include <libgnome/libgnome.h>" and "#include <libgnomeui/libgnomeui.h>" (20.87 KB, patch)
2009-08-17 20:56 UTC, André Klapper
committed Details | Review
Completely remove libgnome dependency (6.91 KB, patch)
2009-12-29 04:29 UTC, Javier Jardón (IRC: jjardon)
needs-work Details | Review

Description Halton Huo 2009-07-30 06:15:38 UTC
Steps to reproduce:
According to http://live.gnome.org/LibgnomeMustDie, Libgnome and Libgnomeui must die for GNOME3. 


Stack trace:


Other information:
Comment 1 André Klapper 2009-08-17 11:27:13 UTC
Not critical - gnome-pilot is not official part of GNOME.
Comment 2 André Klapper 2009-08-17 11:32:24 UTC
First of all you should definitely get rid of the mega-include "gnome.h" to be able to actually see how much "real" work is needed here.

$:andre\> grep -r "include <gnome" .
./utils/gpilotdcm-client.c:#include <gnome.h>
./utils/gpilotd-client.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-backup.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-backup.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-sync-abs.h:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard-abs.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard-abs.h:#include <gnome.h>
./gpilotd/queue_io.c:#include <gnome.h>
./gpilotd/gpilot-gui.c:#include <gnome.h>
./gpilotd/gpilotd-conduit-mgmt.h:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-file.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-file.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-sync-abs.c:#include <gnome.h>
./gpilotd/orbit_daemon_glue.c:#include <gnome.h>
./gpilotd/gpilotd-session-wrapper.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit.gob:#include <gnome.h>
./gpilotd/gnome-pilot-conduit.gob:#include <gnome.h>
./applet/pilot.c:#include <gnome.h>
./drafts/idl/test_client.c:#include <gnome.h>
./drafts/idl/main.c:#include <gnome.h>
./drafts/idl/orbit-daemon-glue.c:#include <gnome.h>
./gpilot-fileman/multifile.c:#include <gnome.h>
./gpilot-fileman/gpilot-fileman.h:#include <gnome.h>
./gpilot-fileman/fileman.c:#include <gnome.h>
./gpilot-fileman/preferences.c:#include <gnome.h>
./capplet/gnome-pilot-cdialog.h:#include <gnome.h>
./capplet/gnome-pilot-ddialog.h:#include <gnome.h>
./capplet/gnome-pilot-pdialog.h:#include <gnome.h>
./capplet/pilot.c:#include <gnome.h>
./capplet/gnome-pilot-capplet.h:#include <gnome.h>
./capplet/gnome-pilot-druid.h:#include <gnome.h>
./capplet/gpilotd-control-applet.c:#include <gnome.h>
./capplet/util.h:#include <gnome.h>
./conduits/backup/backup_conduit.c:#include <gnome.h>
./conduits/test/test_conduit.c:#include <gnome.h>
./conduits/file/file_conduit.c:#include <gnome.h>
./conduits/file/gpilot_install_file.c:#include <gnome.h>
Comment 3 André Klapper 2009-08-17 20:56:15 UTC
Created attachment 140995 [details] [review]
Remove "#include <gnome.h>", "#include <libgnome/libgnome.h>" and "#include <libgnomeui/libgnomeui.h>"

This should be VERY carefully reviewed.
I basically commented ALL these includes and added back stuff when needed.
It *could* be that some files are not compiled by default and that I removed too much as I just ran autogen.sh, make and make install and don't know about any specific flags I could set.

There's only one flag I was unable to remove as the error really confused me:
/conduits/file/file_conduit.c:#include <libgnome/libgnome.h>
Comment 4 Matt Davey 2009-08-18 10:39:27 UTC
Thanks, André.  I'll review as early as possible.  It certainly helps focus our attention on what's required and will help us track progres..
Comment 5 Matt Davey 2009-08-20 08:11:50 UTC
There were a couple of clean ups required, to avoid inclusion of gi18n.h and gi18n-lib.h simultaneously, and a couple of other small things.  After fixing a bunch of old signedness issues I can now compile gnome-pilot with -Werror again.

The problem with file_conduit.c was that pi-file.h seems to use "FILE" without an include file to define it.  That was creeping in via libgnome.h

I should be ready to commit this later today.
Comment 6 André Klapper 2009-08-20 09:27:12 UTC
Yeah, I admit that my patch was very rough - just wanted to have something initial that work can be continued on.

With regard to Glib/Gtk #includes also be aware that soon only toplevel includes should be used: http://live.gnome.org/GnomeGoals/CleanupGTKIncludes http://live.gnome.org/GnomeGoals/CleanupGlibIncludes (though I personally currently expect GTK3 to happen later than GNOME3).
Comment 7 André Klapper 2009-08-28 15:00:56 UTC
(In reply to comment #5)
> I should be ready to commit this later today.

A friendly *ping*. ;-)
Comment 8 Halton Huo 2009-08-28 17:00:07 UTC
Matt and myself committed several changes these days. Now the git-master is 
$grep -r "include <gnome" .
./gpilotd/gnome-pilot-conduit.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit.h:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-file.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-file.h:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-backup.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-backup.h:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard.c:#include <gnome.h>
./gpilotd/gnome-pilot-conduit-standard.h:#include <gnome.h>

After GnomeDruid -> GtkAssistant is done, I think it is safe to close this bug.
Comment 9 Matt Davey 2009-10-22 01:52:47 UTC
This work is mostly done now.  libgnome* is still in use for gnome_program_init; this is still handy to get the corba stuff initialised until we manage to rip out bonobo.  work work work ! :)
Comment 10 Matt Davey 2009-10-22 01:54:09 UTC
Comment on attachment 140995 [details] [review]
Remove "#include <gnome.h>", "#include <libgnome/libgnome.h>" and "#include <libgnomeui/libgnomeui.h>"

Committed with changes.
Comment 11 André Klapper 2009-10-22 08:33:40 UTC
Cool. Remaining:

./utils/gpilotdcm-client.c:#include <libgnomeui/gnome-ui-init.h>
./utils/gpilotd-client.c:#include <libgnomeui/gnome-ui-init.h>
./gpilotd/gpilotd.c:#include <libgnome/gnome-init.h>
./gpilotd/gpilotd.c:#include <libgnomeui/gnome-ui-init.h>
./conduits/file/gpilot_install_file.c:#include <libgnomeui/gnome-ui-init.h>
Comment 12 Matt Davey 2009-10-22 11:09:01 UTC
Hi Andre,

Thanks for your help in this stuff.

I think I can remove the includes above simply by replacing LIBGNOMEUI_MODULE with LIBGNOME_MODULE, but that still leaves us with with libgnome until (at least) bonobo is removed.  It got a bit late last night... :)
Comment 13 Matt Davey 2009-10-25 21:57:50 UTC
libgnomeui is now gone.
Comment 14 Javier Jardón (IRC: jjardon) 2009-12-29 04:29:15 UTC
Created attachment 150519 [details] [review]
Completely remove libgnome dependency

This patch removes libgnome dependency completely. I've used gtk_init_with_args() to replace gnome_program_init().
Comment 15 André Klapper 2010-01-27 18:32:11 UTC
ping - can Javier's patch get a review/commit?
Comment 16 Matt Davey 2010-01-27 19:13:18 UTC
Thanks for the patch, Javier.  I should be able to review and commit this weekend.
Comment 17 Matt Davey 2010-02-01 22:31:38 UTC
See comment 9.  We can't get rid of gnome_program_init until we remove the bonobo stuff.  Either that, or we need another way of initialising bonobo.
Comment 18 Matt Davey 2010-02-01 22:33:24 UTC
Review of attachment 150519 [details] [review]:

Needs work.  Can't rip out gnome_program_init() just yet, as it is required for initialising bonobo.
Comment 19 Javier Jardón (IRC: jjardon) 2010-02-02 04:21:32 UTC
Ok Matt, setting dependency then
Comment 20 Matt Davey 2010-07-31 22:56:16 UTC
Work progressing on dbus branch.  libgnome is gone.  libgnomeui and bonobo remain only via panel-applet dependency.  Not sure when the "bonoboless" panel is going to be available...
Comment 21 André Klapper 2010-08-01 09:28:58 UTC
(In reply to comment #20)
> Not sure when the "bonoboless" panel is going to be available...

It's available for about two months now.
Comment 22 Matt Davey 2010-08-09 08:24:03 UTC
Thanks, I'll take a look at how to migrate the panel applet while keeping backwards compatibility for pre 2.31.x

I've merged the recent dbus branch back to master, so gnome-pilot/ shouldn't contain any deprecated symbols.
Comment 23 Matt Davey 2011-03-20 23:17:08 UTC
This is now fixed in head.