GNOME Bugzilla – Bug 357145
Some popt remains
Last modified: 2008-01-25 14:56:50 UTC
libbonobo-2.16 removed use of popt (thanks to the patch in bug #336610), but that work appears incomplete. In bonobo-activation/bonobo-activation-init.h, there is: #include <popt.h> [...] extern struct poptOption bonobo_activation_popt_options[]; and configure.in still appears to have mandatory requirements for popt as well. That means I still need popt installed in order to build libbonobo, and even to compile against it. Is that struct actually used anywhere anymore? There is no linking against libpopt during the build process. Should it be protected with #ifndef BONOBO_DISABLE_DEPRECCATED so that it's only exposed if one explicitly requests it?
sounds good to me; go for it :-) Of course, we can't remove the 'extern' decl. since people may have been using this, but your suggestion sounds great; Christian Persch seems to have done the work - Christian ?
Yes, it seems ok to add #ifndef:s around the popt.h inclusion and the extern struct poptOption... in bonobo-activation-init.h.
Anyone care enough to whip up a patch? :-)
Created attachment 81171 [details] [review] patch
Commited.
As of libbonobo-2.20.3 (and probably much earlier), the only use of popt itself is its .h for some typedefs (no symbols) and the popt library is not used. There is still a configure test for libpopt: AC_CHECK_LIB(popt, poptStrippedArgv, POPT_LIBS=-lpopt, AC_MSG_ERROR([You must have popt version 1.5 or greater installed.])) AC_SUBST(POPT_LIBS) but POPT_LIBS is not used in any makefile. Time to scrap that configure test?
Yes, if it's unused the configure check should be removed.
Commited. Thanks.