GNOME Bugzilla – Bug 361233
gdm-dmx-reconnect-proxy: linking to unneccessary libraries
Last modified: 2006-10-23 22:57:20 UTC
Hi, while linking "gdm-dmx-reconnect-proxy" the following libraries are linked in: dm_dmx_reconnect_proxy_LDADD = $(GLIB_LIBS) $(X_EXTRA_LIBS) $(X_LIBS) -lX11 $(DMX_LIBS) This info was pulled from utils/Makefile.am But only "$(GLIB_LIBS) -lX11 $(DMX_LIBS)" seem to be neccessary. The other libraries which are pulled in seem to be superflous here and generate extra dependencies to these libs for the resulting (linux distribution) package. Please consider simplifying this LDADD to the reduced set after rechecking my claims. The claim that the other libraries (in my compilation: Xi, Xext) are unneccessary results from looking at the gdm-gmx-reconnect-proxy.c file. The only function calls to x libraries (besides glib) are: XOpenDisplay, XCloseDisplay, DMXAddScreen which are included in "-lX11" and DMS_LIBS.
Yes. This is a problem. The issue is that we added the function gdm_common_atspi_launch to gdmcommon.c, which makes calls to XInternAtom. This means that programs such as gdm-dmx-reconnect-proxy that use gdmcommon, but do not use this function need to link against X11 in order to build properly. Might be better to move this function into gdmlogin and gdmgreeter code directly? A bit nasty since it is nice to share the function, but we probably do not want X11 code in the common library. I'd accept a patch to move the function, or otherwise reorganize the code so that the X calls are moved out of the gdmcommon code.
I'm confused. I cannot find the connection beetwenn compiling/linking gdm-dmx-reconnect-proxy and the gdmcommon.c file or the gdm_common_atspi_launch function. gdm-dmx-reconnect-proxy compiles and links fine without compiling gdmcommon.c Please explain if i don't see the obvious. Regards, Stefan
Sorry, I misread your original report. You are right. This change is now in 2.16 and CVS head.