From 46aede552aa43cd59f81980303826b5c3d889c02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Sandmann=20Pedersen?= Date: Mon, 15 Aug 2005 18:59:16 +0000 Subject: [PATCH] =?UTF-8?q?Mon=20Aug=2015=2014:56:57=202005=20S=C3=B8ren?= =?UTF-8?q?=20Sandmann=20=20Remove=20the=20xkb*=20fil?= =?UTF-8?q?es.=20Add=20xkbVT.o=20and=20friends=20as=20the=20last=20things?= =?UTF-8?q?=20on=20the=20link=20line=20so=20they=20will=20=20=20=20=20over?= =?UTF-8?q?ride=20the=20symbols=20in=20libxkb.a.=20Add=20a=20comment=20on?= =?UTF-8?q?=20how=20this=20situation=20=20=20=20=20might=20not=20be=20cons?= =?UTF-8?q?idered=20ideal.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ChangeLog | 10 ++++++++++ hw/xfree86/Makefile.am | 26 +++++++++++++++++++++++++- hw/xfree86/dixmods/Makefile.am | 11 +---------- 3 files changed, 36 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9d9477936..0ab6874c4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Mon Aug 15 14:56:57 2005 Søren Sandmann + + * hw/xfree86/dixmods/Makefile.am (libdixmods_la_SOURCES): Remove + the xkb* files. + + * hw/xfree86/Makefile.am (Xorg_LDADD): Add xkbVT.o and friends as + the last things on the link line so they will override the symbols + in libxkb.a. Add a comment on how this situation might not be + considered ideal. + Mon Aug 8 13:36:23 2005 Søren Sandmann * include/xorg-config.h.in: #undef PIXPRIV here. diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am index cd0df4da6..f379b8e23 100644 --- a/hw/xfree86/Makefile.am +++ b/hw/xfree86/Makefile.am @@ -12,6 +12,9 @@ DIST_SUBDIRS = common ddc dummylib i2c x86emu int10 fbdevhw os-support \ bin_PROGRAMS = Xorg +AM_CFLAGS = @XORG_CFLAGS@ +INCLUDES = @XORG_INCS@ + Xorg_SOURCES = xorg.c DISTCLEANFILES = xorg.c @@ -41,11 +44,32 @@ XORG_LIBS = \ parser/libparser.a \ $(OS_LIBS) \ dummylib/libdummy.a \ - dixmods/libdixmods.la \ + dixmods/libdixmods.la \ @XORG_LIBS@ +# +# The xkbVT.c xkbKillSrv.c and xkbPrivate.c files used below are really +# the same files as ddxVT.c ddxKillSrv.c and ddxPrivate.c from +# $(top_srcdir)/xkb. However they are compiled with the flag +# XF86DDXACTIONS which means they'll do stuff like Ctrl-Alt-Fx etc. +# They have to be last on the link line so that their symbols will +# override the ones from libxkb.a. +# +# Unfortunately, those symbols can't be removed from libxkb because that +# causes other ddx'es to break. One possible fix would be to turn libxkb +# into shared a shared library and add API that would people linking to +# it to install callbacks for those actions. +# + +xkb%.c: + echo "#define XF86DDXACTIONS" > $@ + echo "#include \"$(top_srcdir)/xkb/ddx$*.c\"" >> $@ + Xorg_LDADD = $(XORG_LIBS) \ @XSERVER_LIBS@ \ + xkbVT.o \ + xkbKillSrv.o \ + xkbPrivate.o \ -ldl Xorg_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG) diff --git a/hw/xfree86/dixmods/Makefile.am b/hw/xfree86/dixmods/Makefile.am index bf7463acd..7283e2bcc 100644 --- a/hw/xfree86/dixmods/Makefile.am +++ b/hw/xfree86/dixmods/Makefile.am @@ -88,13 +88,4 @@ libshadow_la_LDFLAGS = -avoid-version libshadow_la_LIBADD = $(top_builddir)/miext/shadow/libshadow.la libshadow_la_SOURCES = shmodule.c -libdixmods_la_SOURCES = xkbKillSrv.c \ - xkbPrivate.c \ - xkbVT.c \ - $(top_srcdir)/mi/miinitext.c - -xkb%.c: - echo "#define XF86DDXACTIONS" > $@ - echo "#include \"$(top_srcdir)/xkb/ddx$*.c\"" >> $@ - -DISTCLEANFILES = xkbKillSrv.c xkbPrivate.c xkbVT.c +libdixmods_la_SOURCES = $(top_srcdir)/mi/miinitext.c