summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2005-07-11 08:29:18 +0000
committerKeith Packard <keithp@keithp.com>2005-07-11 08:29:18 +0000
commit6e752ea1203b786423e40f43340bce15ca3de0f0 (patch)
tree2b0471579606b45f624c11d0c5a93066bf049d93
parentb46cf0d879f1dbf92dcf5a0305d18986c766ed84 (diff)
Enable loadable i18n modules, making them configurable on the configure command line.
Clean up conditionals for XKB, XCMS, XLOCALEDIR Create new lib directory for locale modules in ${X11_LIBDIR}/locale/lib. Add this to the default XLOCALEDIR search path. Create separate X11_LOCALEDATADIR variable pointing at ${datadir}/X11/locale for installing locale data. Split out xcms, xkb, xlibi18n sources from main xlib bits so they can be conditionally included more easily. Lots of source files have been moved with this step; the result seems like it might be easier to maintain. Display message at end of configure script with selected options. Fix manual building with cpp to add -traditional in cpprules.in. This isn't conditionalized at all, so it will break on systems not using GNU cpp.
-rw-r--r--ChangeLog116
-rw-r--r--configure.ac121
-rw-r--r--cpprules.in4
-rw-r--r--man/Makefile.am4
-rw-r--r--modules/im/.cvsignore2
-rw-r--r--modules/im/Makefile.am1
-rw-r--r--modules/im/ximcp/.cvsignore7
-rw-r--r--modules/im/ximcp/Makefile.am45
-rw-r--r--modules/lc/.cvsignore2
-rw-r--r--modules/lc/Makefile.am1
-rw-r--r--modules/lc/Utf8/.cvsignore7
-rw-r--r--modules/lc/Utf8/Makefile.am20
-rw-r--r--modules/lc/def/.cvsignore7
-rw-r--r--modules/lc/def/Makefile.am19
-rw-r--r--modules/lc/gen/.cvsignore7
-rw-r--r--modules/lc/gen/Makefile.am19
-rw-r--r--modules/lc/xlocale/.cvsignore7
-rw-r--r--modules/lc/xlocale/Makefile.am22
-rw-r--r--modules/om/.cvsignore2
-rw-r--r--modules/om/Makefile.am1
-rw-r--r--modules/om/generic/.cvsignore7
-rw-r--r--modules/om/generic/Makefile.am27
-rw-r--r--nls/C/Makefile.am2
-rw-r--r--nls/Makefile.am2
-rw-r--r--nls/armscii-8/Makefile.am2
-rw-r--r--nls/en_US.UTF-8/Makefile.am2
-rw-r--r--nls/georgian-academy/Makefile.am2
-rw-r--r--nls/georgian-ps/Makefile.am2
-rw-r--r--nls/ibm-cp1133/Makefile.am2
-rw-r--r--nls/iscii-dev/Makefile.am2
-rw-r--r--nls/isiri-3342/Makefile.am2
-rw-r--r--nls/iso8859-1/Makefile.am2
-rw-r--r--nls/iso8859-10/Makefile.am2
-rw-r--r--nls/iso8859-11/Makefile.am2
-rw-r--r--nls/iso8859-13/Makefile.am2
-rw-r--r--nls/iso8859-14/Makefile.am2
-rw-r--r--nls/iso8859-15/Makefile.am2
-rw-r--r--nls/iso8859-2/Makefile.am2
-rw-r--r--nls/iso8859-3/Makefile.am2
-rw-r--r--nls/iso8859-4/Makefile.am2
-rw-r--r--nls/iso8859-5/Makefile.am2
-rw-r--r--nls/iso8859-6/Makefile.am2
-rw-r--r--nls/iso8859-7/Makefile.am2
-rw-r--r--nls/iso8859-8/Makefile.am2
-rw-r--r--nls/iso8859-9/Makefile.am2
-rw-r--r--nls/iso8859-9e/Makefile.am2
-rw-r--r--nls/ja.JIS/Makefile.am2
-rw-r--r--nls/ja.S90/Makefile.am2
-rw-r--r--nls/ja.SJIS/Makefile.am2
-rw-r--r--nls/ja.U90/Makefile.am2
-rw-r--r--nls/ja/Makefile.am2
-rw-r--r--nls/ja_JP.UTF-8/Makefile.am2
-rw-r--r--nls/ko/Makefile.am2
-rw-r--r--nls/ko_KR.UTF-8/Makefile.am2
-rw-r--r--nls/koi8-c/Makefile.am2
-rw-r--r--nls/koi8-r/Makefile.am2
-rw-r--r--nls/koi8-u/Makefile.am2
-rw-r--r--nls/microsoft-cp1251/Makefile.am2
-rw-r--r--nls/microsoft-cp1255/Makefile.am2
-rw-r--r--nls/microsoft-cp1256/Makefile.am2
-rw-r--r--nls/mulelao-1/Makefile.am2
-rw-r--r--nls/nokhchi-1/Makefile.am2
-rw-r--r--nls/pt_BR.UTF-8/Makefile.am2
-rw-r--r--nls/tatar-cyr/Makefile.am2
-rw-r--r--nls/th_TH.UTF-8/Makefile.am2
-rw-r--r--nls/th_TH/Makefile.am2
-rw-r--r--nls/tscii-0/Makefile.am2
-rw-r--r--nls/vi_VN.tcvn/Makefile.am2
-rw-r--r--nls/vi_VN.viscii/Makefile.am2
-rw-r--r--nls/zh_CN.UTF-8/Makefile.am2
-rw-r--r--nls/zh_CN.gb18030/Makefile.am2
-rw-r--r--nls/zh_CN.gbk/Makefile.am2
-rw-r--r--nls/zh_CN/Makefile.am2
-rw-r--r--nls/zh_HK.UTF-8/Makefile.am2
-rw-r--r--nls/zh_HK.big5/Makefile.am2
-rw-r--r--nls/zh_HK.big5hkscs/Makefile.am2
-rw-r--r--nls/zh_TW.UTF-8/Makefile.am2
-rw-r--r--nls/zh_TW.big5/Makefile.am2
-rw-r--r--nls/zh_TW/Makefile.am2
-rw-r--r--src/Makefile.am478
-rw-r--r--src/xcms/.cvsignore7
-rw-r--r--src/xcms/Makefile.am68
-rw-r--r--src/xkb/.cvsignore7
-rw-r--r--src/xkb/Makefile.am28
-rw-r--r--src/xlibi18n/.cvsignore7
-rw-r--r--src/xlibi18n/Makefile.am118
-rw-r--r--src/xlibi18n/xim_trans.c (renamed from src/xim_trans.c)0
87 files changed, 868 insertions, 407 deletions
diff --git a/ChangeLog b/ChangeLog
index 3739e3b1..48c0a3b5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,119 @@
+2005-07-11 Keith Packard <keithp@keithp.com>
+
+ * configure.ac:
+ * cpprules.in:
+ * man/Makefile.am:
+ * nls/C/Makefile.am:
+ * nls/Makefile.am:
+ * nls/armscii-8/Makefile.am:
+ * nls/en_US.UTF-8/Makefile.am:
+ * nls/georgian-academy/Makefile.am:
+ * nls/georgian-ps/Makefile.am:
+ * nls/ibm-cp1133/Makefile.am:
+ * nls/iscii-dev/Makefile.am:
+ * nls/isiri-3342/Makefile.am:
+ * nls/iso8859-1/Makefile.am:
+ * nls/iso8859-10/Makefile.am:
+ * nls/iso8859-11/Makefile.am:
+ * nls/iso8859-13/Makefile.am:
+ * nls/iso8859-14/Makefile.am:
+ * nls/iso8859-15/Makefile.am:
+ * nls/iso8859-2/Makefile.am:
+ * nls/iso8859-3/Makefile.am:
+ * nls/iso8859-4/Makefile.am:
+ * nls/iso8859-5/Makefile.am:
+ * nls/iso8859-6/Makefile.am:
+ * nls/iso8859-7/Makefile.am:
+ * nls/iso8859-8/Makefile.am:
+ * nls/iso8859-9/Makefile.am:
+ * nls/iso8859-9e/Makefile.am:
+ * nls/ja.JIS/Makefile.am:
+ * nls/ja.S90/Makefile.am:
+ * nls/ja.SJIS/Makefile.am:
+ * nls/ja.U90/Makefile.am:
+ * nls/ja/Makefile.am:
+ * nls/ja_JP.UTF-8/Makefile.am:
+ * nls/ko/Makefile.am:
+ * nls/ko_KR.UTF-8/Makefile.am:
+ * nls/koi8-c/Makefile.am:
+ * nls/koi8-r/Makefile.am:
+ * nls/koi8-u/Makefile.am:
+ * nls/microsoft-cp1251/Makefile.am:
+ * nls/microsoft-cp1255/Makefile.am:
+ * nls/microsoft-cp1256/Makefile.am:
+ * nls/mulelao-1/Makefile.am:
+ * nls/nokhchi-1/Makefile.am:
+ * nls/pt_BR.UTF-8/Makefile.am:
+ * nls/tatar-cyr/Makefile.am:
+ * nls/th_TH.UTF-8/Makefile.am:
+ * nls/th_TH/Makefile.am:
+ * nls/tscii-0/Makefile.am:
+ * nls/vi_VN.tcvn/Makefile.am:
+ * nls/vi_VN.viscii/Makefile.am:
+ * nls/zh_CN.UTF-8/Makefile.am:
+ * nls/zh_CN.gb18030/Makefile.am:
+ * nls/zh_CN.gbk/Makefile.am:
+ * nls/zh_CN/Makefile.am:
+ * nls/zh_HK.UTF-8/Makefile.am:
+ * nls/zh_HK.big5/Makefile.am:
+ * nls/zh_HK.big5hkscs/Makefile.am:
+ * nls/zh_TW.UTF-8/Makefile.am:
+ * nls/zh_TW.big5/Makefile.am:
+ * nls/zh_TW/Makefile.am:
+ * src/Makefile.am:
+ * src/xcms/.cvsignore:
+ * src/xcms/Makefile.am:
+ * src/xim_trans.c:
+ * src/xkb/.cvsignore:
+ * src/xkb/Makefile.am:
+ * src/xlibi18n/.cvsignore:
+ * src/xlibi18n/Makefile.am:
+ * src/xlibi18n/im/.cvsignore:
+ * src/xlibi18n/im/Makefile.am:
+ * src/xlibi18n/im/ximcp/.cvsignore:
+ * src/xlibi18n/im/ximcp/Makefile.am:
+ * src/xlibi18n/lc/.cvsignore:
+ * src/xlibi18n/lc/Makefile.am:
+ * src/xlibi18n/lc/Utf8/.cvsignore:
+ * src/xlibi18n/lc/Utf8/Makefile.am:
+ * src/xlibi18n/lc/def/.cvsignore:
+ * src/xlibi18n/lc/def/Makefile.am:
+ * src/xlibi18n/lc/gen/.cvsignore:
+ * src/xlibi18n/lc/gen/Makefile.am:
+ * src/xlibi18n/lc/xlocale/.cvsignore:
+ * src/xlibi18n/lc/xlocale/Makefile.am:
+ * src/xlibi18n/om/.cvsignore:
+ * src/xlibi18n/om/Makefile.am:
+ * src/xlibi18n/om/generic/.cvsignore:
+ * src/xlibi18n/om/generic/Makefile.am:
+ * src/xlibi18n/xim_trans.c:
+
+ Enable loadable i18n modules, making them
+ configurable on the configure command line.
+
+ Clean up conditionals for XKB, XCMS, XLOCALEDIR
+
+ Create new lib directory for locale modules
+ in ${X11_LIBDIR}/locale/lib. Add this to the
+ default XLOCALEDIR search path.
+
+ Create separate X11_LOCALEDATADIR variable
+ pointing at ${datadir}/X11/locale for
+ installing locale data.
+
+ Split out xcms, xkb, xlibi18n sources from
+ main xlib bits so they can be conditionally included
+ more easily. Lots of source files have been moved
+ with this step; the result seems like it might
+ be easier to maintain.
+
+ Display message at end of configure script with
+ selected options.
+
+ Fix manual building with cpp to add -traditional
+ in cpprules.in. This isn't conditionalized at all,
+ so it will break on systems not using GNU cpp.
+
2005-07-08 Keith Packard <keithp@keithp.com>
* .cvsignore:
diff --git a/configure.ac b/configure.ac
index 35dea01c..1485744f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -44,6 +44,7 @@ XTRANS_CONNECTION_FLAGS
XTRANS_SECURE_RPC_FLAGS
# Check for dlopen
+AC_MSG_CHECKING([if run-time linking is supported])
AC_SEARCH_LIBS(dlopen,[dl svld])
if test "x$ac_cv_search_dlopen" = xno; then
AC_SEARCH_LIBS(shl_load,[dld])
@@ -57,10 +58,38 @@ else
AC_CHECK_HEADERS([dlfcn.h])
fi
if test x$ac_cv_header_dlcfn_h -o x$ac_cv_header_dl_h; then
+ HAVE_LOADABLE_MODULES=yes
+else
+ HAVE_LOADABLE_MODULES=no
+fi
+AC_MSG_RESULT($HAVE_LOADABLE_MODULES)
+
+AC_MSG_CHECKING([if loadable i18n module support should be enabled])
+AC_ARG_ENABLE(loadable-i18n,
+ AC_HELP_STRING([--disable-loadable-i18n],
+ [Controls loadable i18n module support]),
+ [XLIB_LOADABLE_I18N=$enableval],
+ [XLIB_LOADABLE_I18N=$HAVE_LOADABLE_MODULES])
+if test x$XLIB_LOADABLE_I18N = xyes; then
+ AC_DEFINE(USE_DYNAMIC_LC,1,
+ [Split some i18n functions into loadable modules])
+fi
+AC_MSG_RESULT($XLIB_LOADABLE_I18N)
+
+AM_CONDITIONAL(XLIB_LOADABLE_I18N, test x$XLIB_LOADABLE_I18N = xyes)
+
+AC_MSG_CHECKING([if loadable Xcursor library support should be enabled])
+AC_ARG_ENABLE(loadable-xcursor,
+ AC_HELP_STRING([--disable-loadable-xcursor],
+ [Controls loadable xcursor library support]),
+ [XLIB_LOADABLE_XCURSOR=$enableval],
+ [XLIB_LOADABLE_XCURSOR=$HAVE_LOADABLE_MODULES])
+if test x$XLIB_LOADABLE_XCURSOR = xyes; then
AC_DEFINE(USE_DYNAMIC_XCURSOR,1,
[Use the X cursor library to load cursors])
fi
-
+AC_MSG_RESULT($XLIB_LOADABLE_XCURSOR)
+
# Checks for header files.
AC_HEADER_STDC
dnl AC_CHECK_HEADERS([stdio.h stdlib.h math.h])
@@ -153,18 +182,26 @@ esac
AC_SUBST(KEYSYMDEF)
AM_CONDITIONAL(UDC, test xfalse = xtrue)
-AM_CONDITIONAL(XCMS, test xtrue = xtrue)
AC_ARG_ENABLE(xcms,
AC_HELP_STRING([--disable-xcms],
[Disable Xlib support for CMS *EXPERIMENTAL*]),
[XCMS=$enableval],[XCMS=yes])
+AM_CONDITIONAL(XCMS, [test x$XCMS = xyes ])
+if test x"$XCMS" = "xyes"; then
+ AC_DEFINE(XCMS,1,[Include support for XCMS])
+fi
AC_ARG_ENABLE(xlocale,
AC_HELP_STRING([--disable-xlocale],
[Disable Xlib locale implementation *EXPERIMENTAL*]),
[XLOCALE=$enableval],[XLOCALE=yes])
+AM_CONDITIONAL(XLOCALE, [ test x$XLOCALE = xyes ])
+if test x"$XLOCALE" = "xyes"; then
+ AC_DEFINE(XLOCALE,1,[support for X Locales])
+fi
+
# This disables XLOCALEDIR. Set it if you're using BuildLoadableXlibI18n,
# don't have either issetugid() or getresuid(), and you need to protect
# clients that are setgid or setuid to an id other than 0.
@@ -172,25 +209,20 @@ AC_MSG_CHECKING([if XLOCALEDIR support should be enabled])
AC_ARG_ENABLE(xlocaledir,
AC_HELP_STRING([--enable-xlocaledir],
[Enable XLOCALEDIR environment variable support]),
- [XLOCALEDIR=$enableval],[XLOCALEDIR=$XLOCALEDIR_IS_SAFE])
-if test "x$XLOCALEDIR" == "xno"; then
+ [ENABLE_XLOCALEDIR=$enableval],[ENABLE_XLOCALEDIR=$XLOCALEDIR_IS_SAFE])
+if test "x$ENABLE_XLOCALEDIR" == "xno"; then
AC_DEFINE(NO_XLOCALEDIR,1,[Disable XLOCALEDIR environment variable])
fi
-AC_MSG_RESULT($XLOCALEDIR)
+AC_MSG_RESULT($ENABLE_XLOCALEDIR)
AC_ARG_ENABLE(xf86bigfont,
AC_HELP_STRING([--disable-xf86bigfont],
[Disable XF86BigFont extension support]),
[XF86BIGFONT=$enableval],[XF86BIGFONT="yes"])
-if test "x$XF86BIGFONT" == "xyes"; then
+if test "x$XF86BIGFONT" = "xyes"; then
PKG_CHECK_MODULES(BIGFONTPROTO, xf86bigfontproto,
- AC_DEFINE(XF86BIGFONT,1,[Enable XF86BIGFONT extension])
- X11_CFLAGS="$X11_CFLAGS $BIGFONTPROTO_CFLAGS"
- X11_LIBS="$X11_LIBS $BIGFONTPROTO_CFLAGS",
- XF86BIGFONT="no")
+ AC_DEFINE(XF86BIGFONT,1,[Enable XF86BIGFONT extension]),XF86BIGFONT="no")
fi
-AC_MSG_RESULT($XF86BIGFONT)
-
AC_ARG_ENABLE(xkb,
AC_HELP_STRING([--disable-xkb],
@@ -201,24 +233,19 @@ AC_ARG_ENABLE(man-pages,
AC_HELP_STRING([--enable-man-pages=section],
[Choose manual section for installing man pages]),
[LIBMAN_SUFFIX=$enableval],[LIBMAN_SUFFIX=3x])
-AC_SUBST(LIBMAN_SUFFIX)
-
-# Finalization
-
-AM_CONDITIONAL(DISABLE_XCMS, [test x$XCMS = xno ])
-if test "$XCMS" = no; then
- AC_DEFINE(DISABLE_XCMS,1,[No support for XCMS])
+
+if test "x$LIBMAN_SUFFIX" = "xyes"; then
+ LIBMAN_SUFFIX=3x
fi
-AM_CONDITIONAL(DISABLE_XLOCALE, [ test x$XLOCALE = xno ])
-if test "$XLOCALE" = no; then
- AC_DEFINE(DISABLE_XLOCALE,1,[No support for X Locales])
-fi
+AC_SUBST(LIBMAN_SUFFIX)
+
+AM_CONDITIONAL(MANPAGES, [ test x$LIBMAN_SUFFIX '!=' xno ])
AM_CONDITIONAL(XKB, [ test x$XKB = xyes ])
-if test "$XKB" = yes; then
+if test x"$XKB" = "xyes"; then
PKG_CHECK_MODULES(XKBPROTO, kbproto inputproto)
- AC_DEFINE(XKB, YES, [Use XKB])
+ AC_DEFINE(XKB,1,[Use XKB])
X11_CFLAGS="$X11_CFLAGS $XKBPROTO_CFLAGS"
X11_LIBS="$X11_LIBS $XKBPROTO_LIBS"
fi
@@ -231,12 +258,27 @@ if test "x$GCC" = "xyes"; then
fi
X11_DATADIR="${datadir}/X11"
-X11_LOCALEDIR="${X11_DATADIR}/locale"
+X11_LIBDIR="${libdir}/X11"
+
+#
+# Yes, it would be nice to put the locale data in
+# /usr/share, but the locale stuff includes loadable
+# libraries which must be located in the same directory
+# as the other locale data, so for now, everything lives
+# in ${libdir}
+#
+
+X11_LOCALEDATADIR="${X11_LIBDIR}/locale"
+X11_LOCALELIBDIR="${X11_LIBDIR}/locale/lib"
+X11_LOCALEDIR="${X11_LOCALEDATADIR}"
XKEYSYMDB="${X11_DATADIR}/XKeysymDB"
XERRORDB="${X11_DATADIR}/XErrorDB"
AC_SUBST(X11_DATADIR)
-AC_SUBST(X11_LOCALEDIR)
+AC_SUBST(X11_LIBDIR)
+AC_SUBST(X11_LOCALEDATADIR)
+AC_SUBST(X11_LOCALELIBDIR)
+AC_DEFINE_DIR(X11_DATADIR, X11_DATADIR, [Location of libX11 data])
AC_DEFINE_DIR(XKEYSYMDB, XKEYSYMDB, [Location of keysym database])
AC_DEFINE_DIR(XERRORDB, XERRORDB, [Location of error message database])
AC_DEFINE_DIR(XLOCALEDIR, X11_LOCALEDIR, [Location of libX11 locale data])
@@ -246,6 +288,18 @@ AC_OUTPUT([Makefile
man/Makefile
src/Makefile
src/util/Makefile
+ src/xcms/Makefile
+ src/xlibi18n/Makefile
+ src/xlibi18n/im/Makefile
+ src/xlibi18n/im/ximcp/Makefile
+ src/xlibi18n/lc/Makefile
+ src/xlibi18n/lc/def/Makefile
+ src/xlibi18n/lc/gen/Makefile
+ src/xlibi18n/lc/Utf8/Makefile
+ src/xlibi18n/lc/xlocale/Makefile
+ src/xlibi18n/om/Makefile
+ src/xlibi18n/om/generic/Makefile
+ src/xkb/Makefile
nls/Makefile
nls/armscii-8/Makefile
nls/C/Makefile
@@ -304,3 +358,16 @@ AC_OUTPUT([Makefile
nls/zh_TW.big5/Makefile
nls/zh_TW.UTF-8/Makefile
x11.pc])
+
+echo ""
+echo "X11 will be built with the following settings:"
+echo " Loadable i18n module support: "$XLIB_LOADABLE_I18N
+echo " Loadable xcursory library support: "$XLIB_LOADABLE_XCURSOR
+echo " Threading support: "$xthreads
+echo " XCMS: "$XCMS
+echo " Internationalization support: "$XLOCALE
+echo " XF86BigFont support: "$XF86BIGFONT
+echo " XKB support: "$XKB
+echo " XLOCALEDIR environment variable support: "$ENABLE_XLOCALEDIR
+echo " Manual pages installed: "$LIBMAN_SUFFIX
+echo ""
diff --git a/cpprules.in b/cpprules.in
index d0924add..36bfc361 100644
--- a/cpprules.in
+++ b/cpprules.in
@@ -10,6 +10,8 @@ WCHAR32_FLAGS = -DWCHAR32=@WCHAR32@
CPP_FILES_FLAGS = $(WCHAR32_FLAGS)
+RAWCPPFLAGS = -traditional
+
# Translate XCOMM into pound sign with sed, rather than passing -DXCOMM=XCOMM
# to cpp, because that trick does not work on all ANSI C preprocessors.
# Delete line numbers from the cpp output (-P is not portable, I guess).
@@ -25,4 +27,4 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \
-e '/\@\@$$/s/\@\@$$/\\/'
.pre:
- $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ \ No newline at end of file
+ $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
diff --git a/man/Makefile.am b/man/Makefile.am
index 9155bfb9..f123516a 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -4,6 +4,7 @@
LIBMANSUFFIX=@LIBMAN_SUFFIX@
libmandir = $(mandir)/man$(LIBMANSUFFIX)
+if MANPAGES
libman_SOURCES = \
AllPlanes.man \
BlackPixelOfScreen.man \
@@ -186,8 +187,9 @@ libman_SOURCES = \
XmbTextEscapement.man \
XmbTextExtents.man \
XmbTextPerCharExtents.man
+endif
-libman_DATA=$(libman_SOURCES:man=$(LIBMANSUFFIX))
+libman_DATA=$(libman_SOURCES:man=$(LIBMAN_SUFFIX))
EXTRA_DIST = $(libman_SOURCES)
diff --git a/modules/im/.cvsignore b/modules/im/.cvsignore
new file mode 100644
index 00000000..282522db
--- /dev/null
+++ b/modules/im/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/modules/im/Makefile.am b/modules/im/Makefile.am
new file mode 100644
index 00000000..0974cf61
--- /dev/null
+++ b/modules/im/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS=ximcp
diff --git a/modules/im/ximcp/.cvsignore b/modules/im/ximcp/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/im/ximcp/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/im/ximcp/Makefile.am b/modules/im/ximcp/Makefile.am
new file mode 100644
index 00000000..629f2500
--- /dev/null
+++ b/modules/im/ximcp/Makefile.am
@@ -0,0 +1,45 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=ximcp.la
+ximcp_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES=libximcp.la
+
+endif
+
+
+ximcp_la_SOURCES = \
+ imCallbk.c \
+ imDefFlt.c \
+ imDefIc.c \
+ imDefIm.c \
+ imDefLkup.c \
+ imDispch.c \
+ imEvToWire.c \
+ imExten.c \
+ imImSw.c \
+ imInsClbk.c \
+ imInt.c \
+ imLcFlt.c \
+ imLcGIc.c \
+ imLcIc.c \
+ imLcIm.c \
+ imLcLkup.c \
+ imLcPrs.c \
+ imLcSIc.c \
+ imRmAttr.c \
+ imRm.c \
+ imThaiFlt.c \
+ imThaiIc.c \
+ imThaiIm.c \
+ imTrans.c \
+ imTransR.c \
+ imTrX.c
+
+libximcp_la_SOURCES = $(ximcp_la_SOURCES)
diff --git a/modules/lc/.cvsignore b/modules/lc/.cvsignore
new file mode 100644
index 00000000..282522db
--- /dev/null
+++ b/modules/lc/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/modules/lc/Makefile.am b/modules/lc/Makefile.am
new file mode 100644
index 00000000..3cad2d61
--- /dev/null
+++ b/modules/lc/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS=Utf8 def gen xlocale
diff --git a/modules/lc/Utf8/.cvsignore b/modules/lc/Utf8/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/lc/Utf8/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/lc/Utf8/Makefile.am b/modules/lc/Utf8/Makefile.am
new file mode 100644
index 00000000..10a5646f
--- /dev/null
+++ b/modules/lc/Utf8/Makefile.am
@@ -0,0 +1,20 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=xlcUTF8Load.la
+xlcUTF8Load_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES = libxlcUTF8Load.la
+
+endif
+
+
+xlcUTF8Load_la_SOURCES = \
+ lcUTF8Load.c
+
+libxlcUTF8Load_la_SOURCES = $(xlcUTF8Load_la_SOURCES)
diff --git a/modules/lc/def/.cvsignore b/modules/lc/def/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/lc/def/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/lc/def/Makefile.am b/modules/lc/def/Makefile.am
new file mode 100644
index 00000000..6684a147
--- /dev/null
+++ b/modules/lc/def/Makefile.am
@@ -0,0 +1,19 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=xlcDef.la
+xlcDef_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES = libxlcDef.la
+
+endif
+
+xlcDef_la_SOURCES = \
+ lcDefConv.c
+
+libxlcDef_la_SOURCES = $(xlcDef_la_SOURCES)
diff --git a/modules/lc/gen/.cvsignore b/modules/lc/gen/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/lc/gen/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/lc/gen/Makefile.am b/modules/lc/gen/Makefile.am
new file mode 100644
index 00000000..7c80cac4
--- /dev/null
+++ b/modules/lc/gen/Makefile.am
@@ -0,0 +1,19 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=xlibi18n.la
+xlibi18n_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES = libxlibi18n.la
+
+endif
+
+xlibi18n_la_SOURCES = \
+ lcGenConv.c
+
+libxlibi18n_la_SOURCES = $(xlibi18n_la_SOURCES)
diff --git a/modules/lc/xlocale/.cvsignore b/modules/lc/xlocale/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/lc/xlocale/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/lc/xlocale/Makefile.am b/modules/lc/xlocale/Makefile.am
new file mode 100644
index 00000000..67bed9d5
--- /dev/null
+++ b/modules/lc/xlocale/Makefile.am
@@ -0,0 +1,22 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=xlocale.la
+xlocale_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES = libxlocale.la
+
+endif
+
+
+xlocale_la_SOURCES = \
+ lcEuc.c
+ lcJis.c
+ lcSjis.c
+
+libxlocale_la_SOURCES = $(xlocale_la_SOURCES)
diff --git a/modules/om/.cvsignore b/modules/om/.cvsignore
new file mode 100644
index 00000000..282522db
--- /dev/null
+++ b/modules/om/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/modules/om/Makefile.am b/modules/om/Makefile.am
new file mode 100644
index 00000000..24f4c06a
--- /dev/null
+++ b/modules/om/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS=generic
diff --git a/modules/om/generic/.cvsignore b/modules/om/generic/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/modules/om/generic/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/modules/om/generic/Makefile.am b/modules/om/generic/Makefile.am
new file mode 100644
index 00000000..9e3e99ba
--- /dev/null
+++ b/modules/om/generic/Makefile.am
@@ -0,0 +1,27 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+if XLIB_LOADABLE_I18N
+
+commonlibdir = $(X11_LOCALELIBDIR)/common
+commonlib_LTLIBRARIES=xomGeneric.la
+xomGeneric_la_LDFLAGS = -module -version-number 2:0:0
+
+else
+
+noinst_LTLIBRARIES = libxomGeneric.la
+
+endif
+
+
+xomGeneric_la_SOURCES = \
+ omDefault.c \
+ omGeneric.c \
+ omImText.c \
+ omText.c \
+ omTextEsc.c \
+ omTextExt.c \
+ omTextPer.c \
+ omXChar.c
+
+libxomGeneric_la_SOURCES = $(xomGeneric_la_SOURCES)
diff --git a/nls/C/Makefile.am b/nls/C/Makefile.am
index b8eda401..a08a0a02 100644
--- a/nls/C/Makefile.am
+++ b/nls/C/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/C
+x11thislocaledir = @X11_LOCALEDATADIR@/C
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/Makefile.am b/nls/Makefile.am
index 4183fb9a..756bff22 100644
--- a/nls/Makefile.am
+++ b/nls/Makefile.am
@@ -1,4 +1,4 @@
-x11localedir = @X11_LOCALEDIR@
+x11localedir = @X11_LOCALEDATADIR@
EXTRA_DIST = locale.alias.pre compose.dir.pre
diff --git a/nls/armscii-8/Makefile.am b/nls/armscii-8/Makefile.am
index 0c21458d..09735957 100644
--- a/nls/armscii-8/Makefile.am
+++ b/nls/armscii-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/armscii-8
+x11thislocaledir = @X11_LOCALEDATADIR@/armscii-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/en_US.UTF-8/Makefile.am b/nls/en_US.UTF-8/Makefile.am
index e4247411..906ac1c9 100644
--- a/nls/en_US.UTF-8/Makefile.am
+++ b/nls/en_US.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/en_US.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/en_US.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/georgian-academy/Makefile.am b/nls/georgian-academy/Makefile.am
index 849bf8fe..80c01695 100644
--- a/nls/georgian-academy/Makefile.am
+++ b/nls/georgian-academy/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/georgian-academy
+x11thislocaledir = @X11_LOCALEDATADIR@/georgian-academy
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/georgian-ps/Makefile.am b/nls/georgian-ps/Makefile.am
index 89568bea..8c9b69d3 100644
--- a/nls/georgian-ps/Makefile.am
+++ b/nls/georgian-ps/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/georgian-ps
+x11thislocaledir = @X11_LOCALEDATADIR@/georgian-ps
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ibm-cp1133/Makefile.am b/nls/ibm-cp1133/Makefile.am
index d1fdd4ee..cfa71309 100644
--- a/nls/ibm-cp1133/Makefile.am
+++ b/nls/ibm-cp1133/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ibm-cp1133
+x11thislocaledir = @X11_LOCALEDATADIR@/ibm-cp1133
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iscii-dev/Makefile.am b/nls/iscii-dev/Makefile.am
index 02f7e595..9e41e695 100644
--- a/nls/iscii-dev/Makefile.am
+++ b/nls/iscii-dev/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iscii-dev
+x11thislocaledir = @X11_LOCALEDATADIR@/iscii-dev
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/isiri-3342/Makefile.am b/nls/isiri-3342/Makefile.am
index 477f0272..e3f83a07 100644
--- a/nls/isiri-3342/Makefile.am
+++ b/nls/isiri-3342/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/isiri-3342
+x11thislocaledir = @X11_LOCALEDATADIR@/isiri-3342
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-1/Makefile.am b/nls/iso8859-1/Makefile.am
index 746de925..f64d20aa 100644
--- a/nls/iso8859-1/Makefile.am
+++ b/nls/iso8859-1/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-1
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-1
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-10/Makefile.am b/nls/iso8859-10/Makefile.am
index 540e50bf..f0b7a8a2 100644
--- a/nls/iso8859-10/Makefile.am
+++ b/nls/iso8859-10/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-10
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-10
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-11/Makefile.am b/nls/iso8859-11/Makefile.am
index 11fdf8d9..cb778d10 100644
--- a/nls/iso8859-11/Makefile.am
+++ b/nls/iso8859-11/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-11
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-11
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-13/Makefile.am b/nls/iso8859-13/Makefile.am
index bd5ae648..f204431d 100644
--- a/nls/iso8859-13/Makefile.am
+++ b/nls/iso8859-13/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-13
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-13
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-14/Makefile.am b/nls/iso8859-14/Makefile.am
index c0ce8c03..2b80faea 100644
--- a/nls/iso8859-14/Makefile.am
+++ b/nls/iso8859-14/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-14
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-14
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-15/Makefile.am b/nls/iso8859-15/Makefile.am
index 6deb32f3..5fa6ac12 100644
--- a/nls/iso8859-15/Makefile.am
+++ b/nls/iso8859-15/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-15
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-15
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-2/Makefile.am b/nls/iso8859-2/Makefile.am
index 29c61227..f23cf233 100644
--- a/nls/iso8859-2/Makefile.am
+++ b/nls/iso8859-2/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-2
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-2
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-3/Makefile.am b/nls/iso8859-3/Makefile.am
index 674057f1..8a55fefb 100644
--- a/nls/iso8859-3/Makefile.am
+++ b/nls/iso8859-3/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-3
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-3
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-4/Makefile.am b/nls/iso8859-4/Makefile.am
index af3e8296..75fabf24 100644
--- a/nls/iso8859-4/Makefile.am
+++ b/nls/iso8859-4/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-4
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-4
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-5/Makefile.am b/nls/iso8859-5/Makefile.am
index 22b355dd..d5b105f8 100644
--- a/nls/iso8859-5/Makefile.am
+++ b/nls/iso8859-5/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-5
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-5
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-6/Makefile.am b/nls/iso8859-6/Makefile.am
index a11aa9a4..269fc9ee 100644
--- a/nls/iso8859-6/Makefile.am
+++ b/nls/iso8859-6/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-6
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-6
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-7/Makefile.am b/nls/iso8859-7/Makefile.am
index 814da8be..2430acaa 100644
--- a/nls/iso8859-7/Makefile.am
+++ b/nls/iso8859-7/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-7
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-7
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-8/Makefile.am b/nls/iso8859-8/Makefile.am
index bbf870b3..1502406c 100644
--- a/nls/iso8859-8/Makefile.am
+++ b/nls/iso8859-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-8
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-9/Makefile.am b/nls/iso8859-9/Makefile.am
index c021ff70..a4b2177d 100644
--- a/nls/iso8859-9/Makefile.am
+++ b/nls/iso8859-9/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-9
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-9
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/iso8859-9e/Makefile.am b/nls/iso8859-9e/Makefile.am
index ad11df40..e74503f6 100644
--- a/nls/iso8859-9e/Makefile.am
+++ b/nls/iso8859-9e/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/iso8859-9e
+x11thislocaledir = @X11_LOCALEDATADIR@/iso8859-9e
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja.JIS/Makefile.am b/nls/ja.JIS/Makefile.am
index b7d0a58e..35a6c007 100644
--- a/nls/ja.JIS/Makefile.am
+++ b/nls/ja.JIS/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja.JIS
+x11thislocaledir = @X11_LOCALEDATADIR@/ja.JIS
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja.S90/Makefile.am b/nls/ja.S90/Makefile.am
index 2d9fc990..1a8e1bbd 100644
--- a/nls/ja.S90/Makefile.am
+++ b/nls/ja.S90/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja.S90
+x11thislocaledir = @X11_LOCALEDATADIR@/ja.S90
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja.SJIS/Makefile.am b/nls/ja.SJIS/Makefile.am
index a00cf289..09de863c 100644
--- a/nls/ja.SJIS/Makefile.am
+++ b/nls/ja.SJIS/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja.SJIS
+x11thislocaledir = @X11_LOCALEDATADIR@/ja.SJIS
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja.U90/Makefile.am b/nls/ja.U90/Makefile.am
index 513b1a4d..562341bb 100644
--- a/nls/ja.U90/Makefile.am
+++ b/nls/ja.U90/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja.U90
+x11thislocaledir = @X11_LOCALEDATADIR@/ja.U90
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja/Makefile.am b/nls/ja/Makefile.am
index 35c69f5a..cc88a989 100644
--- a/nls/ja/Makefile.am
+++ b/nls/ja/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja
+x11thislocaledir = @X11_LOCALEDATADIR@/ja
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ja_JP.UTF-8/Makefile.am b/nls/ja_JP.UTF-8/Makefile.am
index 71edd67f..7c3ea2f1 100644
--- a/nls/ja_JP.UTF-8/Makefile.am
+++ b/nls/ja_JP.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ja_JP.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/ja_JP.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ko/Makefile.am b/nls/ko/Makefile.am
index 1c4aa9e9..25622d9f 100644
--- a/nls/ko/Makefile.am
+++ b/nls/ko/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ko
+x11thislocaledir = @X11_LOCALEDATADIR@/ko
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/ko_KR.UTF-8/Makefile.am b/nls/ko_KR.UTF-8/Makefile.am
index 941d01da..584376fa 100644
--- a/nls/ko_KR.UTF-8/Makefile.am
+++ b/nls/ko_KR.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/ko_KR.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/ko_KR.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/koi8-c/Makefile.am b/nls/koi8-c/Makefile.am
index fd3276d9..e9f67dd8 100644
--- a/nls/koi8-c/Makefile.am
+++ b/nls/koi8-c/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/koi8-c
+x11thislocaledir = @X11_LOCALEDATADIR@/koi8-c
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/koi8-r/Makefile.am b/nls/koi8-r/Makefile.am
index b40a9c3c..b046ce67 100644
--- a/nls/koi8-r/Makefile.am
+++ b/nls/koi8-r/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/koi8-r
+x11thislocaledir = @X11_LOCALEDATADIR@/koi8-r
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/koi8-u/Makefile.am b/nls/koi8-u/Makefile.am
index b9ca4882..f11d0fe8 100644
--- a/nls/koi8-u/Makefile.am
+++ b/nls/koi8-u/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/koi8-u
+x11thislocaledir = @X11_LOCALEDATADIR@/koi8-u
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/microsoft-cp1251/Makefile.am b/nls/microsoft-cp1251/Makefile.am
index d7b851e1..94ae30c9 100644
--- a/nls/microsoft-cp1251/Makefile.am
+++ b/nls/microsoft-cp1251/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/microsoft-cp1251
+x11thislocaledir = @X11_LOCALEDATADIR@/microsoft-cp1251
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/microsoft-cp1255/Makefile.am b/nls/microsoft-cp1255/Makefile.am
index 6d5ad6d1..70f3bb39 100644
--- a/nls/microsoft-cp1255/Makefile.am
+++ b/nls/microsoft-cp1255/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/microsoft-cp1255
+x11thislocaledir = @X11_LOCALEDATADIR@/microsoft-cp1255
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/microsoft-cp1256/Makefile.am b/nls/microsoft-cp1256/Makefile.am
index 6ff5d1c9..c178e6de 100644
--- a/nls/microsoft-cp1256/Makefile.am
+++ b/nls/microsoft-cp1256/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/microsoft-cp1256
+x11thislocaledir = @X11_LOCALEDATADIR@/microsoft-cp1256
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/mulelao-1/Makefile.am b/nls/mulelao-1/Makefile.am
index abed81af..0ae8e076 100644
--- a/nls/mulelao-1/Makefile.am
+++ b/nls/mulelao-1/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/mulelao-1
+x11thislocaledir = @X11_LOCALEDATADIR@/mulelao-1
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/nokhchi-1/Makefile.am b/nls/nokhchi-1/Makefile.am
index b83ea99d..602cf9e0 100644
--- a/nls/nokhchi-1/Makefile.am
+++ b/nls/nokhchi-1/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/nokhchi-1
+x11thislocaledir = @X11_LOCALEDATADIR@/nokhchi-1
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/pt_BR.UTF-8/Makefile.am b/nls/pt_BR.UTF-8/Makefile.am
index dbe131cd..03542bdf 100644
--- a/nls/pt_BR.UTF-8/Makefile.am
+++ b/nls/pt_BR.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/pt_BR.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/pt_BR.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/tatar-cyr/Makefile.am b/nls/tatar-cyr/Makefile.am
index 4c1d4bfe..7d566227 100644
--- a/nls/tatar-cyr/Makefile.am
+++ b/nls/tatar-cyr/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/tatar-cyr
+x11thislocaledir = @X11_LOCALEDATADIR@/tatar-cyr
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/th_TH.UTF-8/Makefile.am b/nls/th_TH.UTF-8/Makefile.am
index 7c6b3a86..83cec92a 100644
--- a/nls/th_TH.UTF-8/Makefile.am
+++ b/nls/th_TH.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/th_TH.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/th_TH.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/th_TH/Makefile.am b/nls/th_TH/Makefile.am
index a4f8e446..02bb10a2 100644
--- a/nls/th_TH/Makefile.am
+++ b/nls/th_TH/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/th_TH
+x11thislocaledir = @X11_LOCALEDATADIR@/th_TH
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/tscii-0/Makefile.am b/nls/tscii-0/Makefile.am
index 74a645c3..279e1674 100644
--- a/nls/tscii-0/Makefile.am
+++ b/nls/tscii-0/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/tscii-0
+x11thislocaledir = @X11_LOCALEDATADIR@/tscii-0
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/vi_VN.tcvn/Makefile.am b/nls/vi_VN.tcvn/Makefile.am
index c2b51eaf..5bf57145 100644
--- a/nls/vi_VN.tcvn/Makefile.am
+++ b/nls/vi_VN.tcvn/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/vi_VN.tcvn
+x11thislocaledir = @X11_LOCALEDATADIR@/vi_VN.tcvn
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/vi_VN.viscii/Makefile.am b/nls/vi_VN.viscii/Makefile.am
index 2107d97d..4b4599f6 100644
--- a/nls/vi_VN.viscii/Makefile.am
+++ b/nls/vi_VN.viscii/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/vi_VN.viscii
+x11thislocaledir = @X11_LOCALEDATADIR@/vi_VN.viscii
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_CN.UTF-8/Makefile.am b/nls/zh_CN.UTF-8/Makefile.am
index c6bbc153..e4469fad 100644
--- a/nls/zh_CN.UTF-8/Makefile.am
+++ b/nls/zh_CN.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_CN.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_CN.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_CN.gb18030/Makefile.am b/nls/zh_CN.gb18030/Makefile.am
index 9b0405dc..c3845c14 100644
--- a/nls/zh_CN.gb18030/Makefile.am
+++ b/nls/zh_CN.gb18030/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_CN.gb18030
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_CN.gb18030
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_CN.gbk/Makefile.am b/nls/zh_CN.gbk/Makefile.am
index c9e47626..d38567bc 100644
--- a/nls/zh_CN.gbk/Makefile.am
+++ b/nls/zh_CN.gbk/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_CN.gbk
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_CN.gbk
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_CN/Makefile.am b/nls/zh_CN/Makefile.am
index bada8953..7f965546 100644
--- a/nls/zh_CN/Makefile.am
+++ b/nls/zh_CN/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_CN
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_CN
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_HK.UTF-8/Makefile.am b/nls/zh_HK.UTF-8/Makefile.am
index f4d4fa4d..d1ac5e64 100644
--- a/nls/zh_HK.UTF-8/Makefile.am
+++ b/nls/zh_HK.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_HK.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_HK.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_HK.big5/Makefile.am b/nls/zh_HK.big5/Makefile.am
index 480ec355..0f790737 100644
--- a/nls/zh_HK.big5/Makefile.am
+++ b/nls/zh_HK.big5/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_HK.big5
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_HK.big5
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_HK.big5hkscs/Makefile.am b/nls/zh_HK.big5hkscs/Makefile.am
index c0478c51..c70cd74b 100644
--- a/nls/zh_HK.big5hkscs/Makefile.am
+++ b/nls/zh_HK.big5hkscs/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_HK.big5hkscs
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_HK.big5hkscs
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_TW.UTF-8/Makefile.am b/nls/zh_TW.UTF-8/Makefile.am
index a827ee95..cf1f9232 100644
--- a/nls/zh_TW.UTF-8/Makefile.am
+++ b/nls/zh_TW.UTF-8/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_TW.UTF-8
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_TW.UTF-8
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_TW.big5/Makefile.am b/nls/zh_TW.big5/Makefile.am
index e79d7fe6..60b3e082 100644
--- a/nls/zh_TW.big5/Makefile.am
+++ b/nls/zh_TW.big5/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_TW.big5
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_TW.big5
include $(top_srcdir)/nls/localerules.in
diff --git a/nls/zh_TW/Makefile.am b/nls/zh_TW/Makefile.am
index 10b4d8f5..a871bdca 100644
--- a/nls/zh_TW/Makefile.am
+++ b/nls/zh_TW/Makefile.am
@@ -1,3 +1,3 @@
-x11thislocaledir = @X11_LOCALEDIR@/zh_TW
+x11thislocaledir = @X11_LOCALEDATADIR@/zh_TW
include $(top_srcdir)/nls/localerules.in
diff --git a/src/Makefile.am b/src/Makefile.am
index 1b7f1104..d27fb3a3 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,271 +1,122 @@
-SUBDIRS=util
+SUBDIRS=util xcms xlibi18n xkb
lib_LTLIBRARIES=libX11.la
BUILT_SOURCES=ks_tables.h
CLEANFILES=ks_tables.h ks_tables_h
-AM_CFLAGS= \
- -I$(top_srcdir)/include \
- -I$(top_srcdir)/include/X11 \
- -I$(top_builddir)/include \
- -I$(top_builddir)/include/X11 \
- $(X11_CFLAGS) \
- $(BIGREQS_CFLAGS) \
- $(XDMCP_CFLAGS) \
- -DX11_DATADIR='"@X11_DATADIR@"' \
- -D_BSD_SOURCE
+AM_CFLAGS= \
+ -I$(top_srcdir)/include \
+ -I$(top_srcdir)/include/X11 \
+ -I$(top_builddir)/include \
+ -I$(top_builddir)/include/X11 \
+ -I$(top_srcdir)/src/xcms \
+ -I$(top_srcdir)/src/xkb \
+ -I$(top_srcdir)/src/xlibi18n \
+ $(X11_CFLAGS) \
+ $(BIGREQS_CFLAGS) \
+ $(BIGFONT_CFLAGS) \
+ $(XDMCP_CFLAGS) \
+ -D_BSD_SOURCE
-libX11_la_LDFLAGS = -version-number 6:2:1 -no-undefined
+#
+# =============================== I18N =============================
+#
+
+I18N_LIBS = \
+ xlibi18n/libi18n.la
+
+#
+# =============================== XCMS =============================
+#
-libX11_la_LIBADD = $(X11_LIBS) $(BIGREQS_LIBS) $(XDMCP_LIBS)
+XCMS_LIBS = \
+ xcms/libxcms.la
-XCMS_SRCS= \
- AddDIC.c \
- AddSF.c \
- CCC.c \
- CvColW.c \
- CvCols.c \
- Cv.h \
- HVC.c \
- HVCGcC.c \
- HVCGcV.c \
- HVCGcVC.c \
- HVCMnV.c \
- HVCMxC.c \
- HVCMxV.c \
- HVCMxVC.c \
- HVCMxVs.c \
- HVCWpAj.c \
- IdOfPr.c \
- LRGB.c \
- Lab.c \
- LabGcC.c \
- LabGcL.c \
- LabGcLC.c \
- LabMnL.c \
- LabMxC.c \
- LabMxL.c \
- LabMxLC.c \
- LabWpAj.c \
- Luv.c \
- LuvGcC.c \
- LuvGcL.c \
- LuvGcLC.c \
- LuvMnL.c \
- LuvMxC.c \
- LuvMxL.c \
- LuvMxLC.c \
- LuvWpAj.c \
- OfCCC.c \
- PrOfId.c \
- QBlack.c \
- QBlue.c \
- QGreen.c \
- QRed.c \
- QWhite.c \
- QuCol.c \
- QuCols.c \
- SetCCC.c \
- SetGetCols.c \
- StCol.c \
- StCols.c \
- UNDEFINED.c \
- XRGB.c \
- XYZ.c \
- cmsAllCol.c \
- cmsAllNCol.c \
- cmsCmap.c \
- cmsColNm.c \
- cmsGlobls.c \
- cmsInt.c \
- cmsLkCol.c \
- cmsMath.c \
- cmsProp.c \
- cmsTrig.c \
- uvY.c \
- xyY.c \
- Xcmsint.h
+#
+# =============================== XKB ==============================
+#
-XI18N_SRCS=\
- xim_trans.c \
- ICWrap.c \
- IMWrap.c \
- XDefaultIMIF.c \
- XDefaultOMIF.c \
- XlcDL.c \
- XlcSL.c \
- imCallbk.c \
- imConv.c \
- imDefFlt.c \
- imDefIc.c \
- imDefIm.c \
- imDefLkup.c \
- imDispch.c \
- imEvToWire.c \
- imExten.c \
- imImSw.c \
- imInsClbk.c \
- imInt.c \
- imKStoUCS.c \
- imLcFlt.c \
- imLcGIc.c \
- imLcIc.c \
- imLcIm.c \
- imLcLkup.c \
- imLcPrs.c \
- imLcSIc.c \
- imRm.c \
- imRmAttr.c \
- imThaiFlt.c \
- imThaiIc.c \
- imThaiIm.c \
- imTrX.c \
- imTrans.c \
- imTransR.c \
- lcCT.c \
- lcCharSet.c \
- lcConv.c \
- lcDB.c \
- lcDefConv.c \
- lcDynamic.c \
- lcEuc.c \
- lcFile.c \
- lcGenConv.c \
- lcGeneric.c \
- lcInit.c \
- lcJis.c \
- lcPrTxt.c \
- lcPubWrap.c \
- lcPublic.c \
- lcRM.c \
- lcSjis.c \
- lcStd.c \
- lcTxtPr.c \
- lcUTF8.c \
- lcUTF8Load.c \
- lcUtil.c \
- lcWrap.c \
- mbWMProps.c \
- mbWrap.c \
- omDefault.c \
- omGeneric.c \
- omImText.c \
- omText.c \
- omTextEsc.c \
- omTextExt.c \
- omTextPer.c \
- omXChar.c \
- utf8WMProps.c \
- utf8Wrap.c \
- wcWrap.c \
- Xaixlcint.h \
- XimImSw.h \
- XimProto.h \
- XimThai.h \
- XimTrInt.h \
- XimTrX.h \
- XimTrans.h \
- Ximint.h \
- XimintL.h \
- XimintP.h \
- XlcGeneric.h \
- XlcPubI.h \
- XlcPublic.h \
- Xlcint.h \
- lcUniConv/armscii_8.h \
- lcUniConv/ascii.h \
- lcUniConv/big5.h \
- lcUniConv/big5_emacs.h \
- lcUniConv/cp1133.h \
- lcUniConv/cp1251.h \
- lcUniConv/cp1255.h \
- lcUniConv/cp1256.h \
- lcUniConv/gb2312.h \
- lcUniConv/georgian_academy.h \
- lcUniConv/georgian_ps.h \
- lcUniConv/iso8859_1.h \
- lcUniConv/iso8859_10.h \
- lcUniConv/iso8859_11.h \
- lcUniConv/iso8859_13.h \
- lcUniConv/iso8859_14.h \
- lcUniConv/iso8859_15.h \
- lcUniConv/iso8859_16.h \
- lcUniConv/iso8859_2.h \
- lcUniConv/iso8859_3.h \
- lcUniConv/iso8859_4.h \
- lcUniConv/iso8859_5.h \
- lcUniConv/iso8859_6.h \
- lcUniConv/iso8859_7.h \
- lcUniConv/iso8859_8.h \
- lcUniConv/iso8859_9.h \
- lcUniConv/iso8859_9e.h \
- lcUniConv/jisx0201.h \
- lcUniConv/jisx0208.h \
- lcUniConv/jisx0212.h \
- lcUniConv/koi8_c.h \
- lcUniConv/koi8_r.h \
- lcUniConv/koi8_u.h \
- lcUniConv/ksc5601.h \
- lcUniConv/mulelao.h \
- lcUniConv/tatar_cyr.h \
- lcUniConv/tcvn.h \
- lcUniConv/tis620.h \
- lcUniConv/ucs2be.h \
- lcUniConv/utf8.h \
- lcUniConv/viscii.h
+XKB_LIBS = \
+ xkb/libxkb.la
-X11_SRCS= \
+#
+# =============================== XLIB =============================
+#
+
+libX11_la_SOURCES = \
AllCells.c \
+ AllowEv.c \
AllPlanes.c \
AutoRep.c \
+ Backgnd.c \
BdrWidth.c \
+ Bell.c \
Border.c \
ChAccCon.c \
+ ChActPGb.c \
+ ChClMode.c \
ChCmap.c \
ChGC.c \
ChKeyCon.c \
- ChProp.c \
- ChWAttrs.c \
ChkIfEv.c \
ChkMaskEv.c \
ChkTypEv.c \
ChkTypWEv.c \
ChkWinEv.c \
+ ChPntCon.c \
+ ChProp.c \
+ ChSaveSet.c \
+ ChWAttrs.c \
+ ChWindow.c \
CirWin.c \
CirWinDn.c \
CirWinUp.c \
ClDisplay.c \
+ ClearArea.c \
+ Clear.c \
Cmap.h \
+ ConfWind.c \
+ ConnDis.c \
Context.c \
+ ConvSel.c \
+ CopyArea.c \
CopyCmap.c \
CopyGC.c \
+ CopyPlane.c \
CrBFData.c \
CrCmap.c \
CrCursor.c \
CrGC.c \
CrGlCur.c \
+ Cr.h \
CrPFBData.c \
- ChSaveSet.c \
+ CrPixmap.c \
CrWindow.c \
Cursor.c \
+ DefCursor.c \
+ DelProp.c \
Depths.c \
+ DestSubs.c \
+ DestWind.c \
DisName.c \
DrArc.c \
DrArcs.c \
+ DrLine.c \
DrLines.c \
+ DrPoint.c \
DrPoints.c \
DrRect.c \
DrRects.c \
DrSegs.c \
ErrDes.c \
ErrHndlr.c \
+ evtomask.c \
EvToWire.c \
- FSSaver.c \
- FSWrap.c \
FetchName.c \
FillArc.c \
FillArcs.c \
+ FillPoly.c \
FillRct.c \
FillRcts.c \
FilterEv.c \
@@ -273,8 +124,14 @@ X11_SRCS= \
Font.c \
FontInfo.c \
FontNames.c \
+ FreeCmap.c \
+ FreeCols.c \
+ FreeCurs.c \
FreeEData.c \
FreeGC.c \
+ FreePix.c \
+ FSSaver.c \
+ FSWrap.c \
GCMisc.c \
Geom.c \
GetAtomNm.c \
@@ -302,30 +159,44 @@ X11_SRCS= \
GetWAttrs.c \
GetWMCMapW.c \
GetWMProto.c \
+ globals.c \
+ GrButton.c \
GrKeybd.c \
+ GrKey.c \
GrPointer.c \
+ GrServer.c \
Host.c \
Iconify.c \
IfEvent.c \
- ImText.c \
+ imConv.c \
ImText16.c \
+ ImText.c \
ImUtil.c \
InitExt.c \
+ InsCmap.c \
IntAtom.c \
KeyBind.c \
+ Key.h \
KeysymStr.c \
+ KillCl.c \
LiHosts.c \
LiICmaps.c \
LiProps.c \
ListExt.c \
LoadFont.c \
+ LockDis.c \
+ locking.c \
+ locking.h \
LookupCol.c \
LowerWin.c \
Macros.c \
MapRaised.c \
+ MapSubs.c \
+ MapWindow.c \
MaskEvent.c \
Misc.c \
ModMap.c \
+ MoveWin.c \
NextEvent.c \
OCWrap.c \
OMWrap.c \
@@ -337,13 +208,16 @@ X11_SRCS= \
PeekIfEv.c \
Pending.c \
PixFormats.c \
+ PmapBgnd.c \
PmapBord.c \
+ poly.h \
PolyReg.c \
- PolyTxt.c \
PolyTxt16.c \
+ PolyTxt.c \
PropAlloc.c \
PutBEvent.c \
PutImage.c \
+ Quarks.c \
QuBest.c \
QuColor.c \
QuColors.c \
@@ -356,182 +230,144 @@ X11_SRCS= \
QuTextExt.c \
QuTileShp.c \
QuTree.c \
- Quarks.c \
RaiseWin.c \
RdBitF.c \
RecolorC.c \
- ReconfWM.c \
ReconfWin.c \
+ ReconfWM.c \
Region.c \
RegstFlt.c \
+ RepWindow.c \
RestackWs.c \
RotProp.c \
ScrResStr.c \
+ SelInput.c \
SendEvent.c \
SetBack.c \
- SetCRects.c \
SetClMask.c \
SetClOrig.c \
+ SetCRects.c \
SetDashes.c \
- SetFPath.c \
SetFont.c \
SetFore.c \
+ SetFPath.c \
SetFunc.c \
SetHints.c \
- SetLStyle.c \
+ SetIFocus.c \
SetLocale.c \
+ SetLStyle.c \
SetNrmHint.c \
SetPMask.c \
SetPntMap.c \
SetRGBCMap.c \
- SetStCmap.c \
+ SetSOwner.c \
+ SetSSaver.c \
SetState.c \
+ SetStCmap.c \
SetStip.c \
- SetTSOrig.c \
SetTile.c \
+ SetTSOrig.c \
SetTxtProp.c \
SetWMCMapW.c \
SetWMProto.c \
StBytes.c \
StColor.c \
StColors.c \
- StNColor.c \
StName.c \
+ StNColor.c \
StrKeysym.c \
StrToText.c \
Sync.c \
Synchro.c \
- Text.c \
Text16.c \
- TextExt.c \
+ Text.c \
TextExt16.c \
+ TextExt.c \
TextToStr.c \
TrCoords.c \
UndefCurs.c \
+ UngrabBut.c \
+ UngrabKbd.c \
+ UngrabKey.c \
+ UngrabPtr.c \
+ UngrabSvr.c \
+ UninsCmap.c \
+ UnldFont.c \
+ UnmapSubs.c \
+ UnmapWin.c \
VisUtil.c \
- WMGeom.c \
- WMProps.c \
- WinEvent.c \
+ WarpPtr.c \
Window.c \
+ WinEvent.c \
Withdraw.c \
+ WMGeom.c \
+ WMProps.c \
WrBitF.c \
- XlibAsync.c \
- XlibInt.c \
- Xrm.c \
- evtomask.c \
- globals.c \
- locking.c \
- Cr.h \
- Key.h \
+ x11_trans.c \
Xatomtype.h \
Xintatom.h \
Xintconn.h \
+ XlibAsync.c \
+ XlibInt.c \
XomGeneric.h \
Xresinternal.h \
- XrmI.h \
- locking.h \
- poly.h
+ Xrm.c \
+ XrmI.h
+
+#
+# ========================= Extra stuff ============================
+#
+
+if OS2
+libX11_la_SOURCES+=os2Stubs.c
+endif OS2
+
+if UDC
+libX11_la_SOURCES+=udcInf.c
+endif
x11datadir = @X11_DATADIR@
x11data_DATA = XKeysymDB XErrorDB
EXTRA_DIST = \
- $(X11_SRCS) \
- $(XI18N_SRCS) \
- $(XCMS_SRCS) \
- $(x11data_DATA)
+ $(x11data_DATA) \
+ os2Stubs.c \
+ udcInf.c
-libX11_la_SOURCES = $(X11_SRCS)
+#
+# Figure out which sub-libraries to link into Xlib
+#
-libX11_la_SOURCES += \
- ConnDis.c \
- LockDis.c \
- AllowEv.c \
- Backgnd.c \
- Bell.c \
- ChActPGb.c \
- ChClMode.c \
- ChPntCon.c \
- ChWindow.c \
- Clear.c \
- ClearArea.c \
- ConfWind.c \
- ConvSel.c \
- CopyArea.c \
- CopyPlane.c \
- CrPixmap.c \
- DefCursor.c \
- DelProp.c \
- DestSubs.c \
- DestWind.c \
- DrLine.c \
- DrPoint.c \
- FillPoly.c \
- FreeCmap.c \
- FreeCols.c \
- FreeCurs.c \
- FreePix.c \
- GrButton.c \
- GrKey.c \
- GrServer.c \
- InsCmap.c \
- KillCl.c \
- MapSubs.c \
- MapWindow.c \
- MoveWin.c \
- PmapBgnd.c \
- RepWindow.c \
- SelInput.c \
- SetIFocus.c \
- SetSOwner.c \
- SetSSaver.c \
- UngrabBut.c \
- UngrabKbd.c \
- UngrabKey.c \
- UngrabPtr.c \
- UngrabSvr.c \
- UninsCmap.c \
- UnldFont.c \
- UnmapSubs.c \
- UnmapWin.c \
- WarpPtr.c \
- x11_trans.c
-
-if DISABLE_XLOCALE
-libX11_la_SOURCES+= #X18NCMSstubs.c
-else
-libX11_la_SOURCES+= $(XI18N_SRCS)
+if XLOCALE
+USE_I18N_LIBS = $(I18N_LIBS)
endif
-if DISABLE_XCMS
-if !DISABLE_XLOCALE
-libX11_la_SOURCES+= #X18NCMSstubs.c
-endif
-else
-libX11_la_SOURCES+= $(XCMS_SRCS)
+if XCMS
+USE_XCMS_LIBS = $(XCMS_LIBS)
endif
-if OS2
-libX11_la_SOURCES+=os2Stubs.c
-endif OS2
-
-if UDC
-libX11_la_SOURCES+=udcInf.c
+if XKB
+USE_XKB_LIBS = $(XKB_LIBS)
endif
-if XKB
-libX11_la_SOURCES+=XKB.c XKBBind.c XKBCompat.c XKBCtrls.c XKBCvt.c XKBGetMap.c \
- XKBGetByName.c XKBNames.c XKBRdBuf.c XKBSetMap.c XKBUse.c \
- XKBleds.c XKBBell.c XKBGeom.c XKBSetGeom.c XKBExtDev.c \
- XKBList.c XKBMisc.c \
- XKBMAlloc.c XKBGAlloc.c XKBAlloc.c \
- XKBlibint.h
-endif XKB
+libX11_la_LDFLAGS = -version-number 6:2:1 -no-undefined
+
+libX11_la_LIBADD = \
+ $(USE_I18N_LIBS) \
+ $(USE_XCMS_LIBS) \
+ $(USE_XKB_LIBS) \
+ $(X11_LIBS) \
+ $(BIGREQS_LIBS) \
+ $(XDMCP_LIBS)
preprocess: $(patsubst %.c,%.ii,$(libX11_la_SOURCES))
.c.ii:
$(COMPILE) -E -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+#
+# Building ks_tables.h requires the makekeys utility
+#
+
KEYSYMDEF=@KEYSYMDEF@
ks_tables.h: $(KEYSYMDEF) $(top_builddir)/src/util/makekeys$(EXEEXT)
diff --git a/src/xcms/.cvsignore b/src/xcms/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/src/xcms/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/src/xcms/Makefile.am b/src/xcms/Makefile.am
new file mode 100644
index 00000000..75af7cd5
--- /dev/null
+++ b/src/xcms/Makefile.am
@@ -0,0 +1,68 @@
+noinst_LTLIBRARIES = libxcms.la
+
+libxcms_la_SOURCES = \
+ AddDIC.c \
+ AddSF.c \
+ CCC.c \
+ CvColW.c \
+ CvCols.c \
+ Cv.h \
+ HVC.c \
+ HVCGcC.c \
+ HVCGcV.c \
+ HVCGcVC.c \
+ HVCMnV.c \
+ HVCMxC.c \
+ HVCMxV.c \
+ HVCMxVC.c \
+ HVCMxVs.c \
+ HVCWpAj.c \
+ IdOfPr.c \
+ LRGB.c \
+ Lab.c \
+ LabGcC.c \
+ LabGcL.c \
+ LabGcLC.c \
+ LabMnL.c \
+ LabMxC.c \
+ LabMxL.c \
+ LabMxLC.c \
+ LabWpAj.c \
+ Luv.c \
+ LuvGcC.c \
+ LuvGcL.c \
+ LuvGcLC.c \
+ LuvMnL.c \
+ LuvMxC.c \
+ LuvMxL.c \
+ LuvMxLC.c \
+ LuvWpAj.c \
+ OfCCC.c \
+ PrOfId.c \
+ QBlack.c \
+ QBlue.c \
+ QGreen.c \
+ QRed.c \
+ QWhite.c \
+ QuCol.c \
+ QuCols.c \
+ SetCCC.c \
+ SetGetCols.c \
+ StCol.c \
+ StCols.c \
+ UNDEFINED.c \
+ XRGB.c \
+ XYZ.c \
+ cmsAllCol.c \
+ cmsAllNCol.c \
+ cmsCmap.c \
+ cmsColNm.c \
+ cmsGlobls.c \
+ cmsInt.c \
+ cmsLkCol.c \
+ cmsMath.c \
+ cmsProp.c \
+ cmsTrig.c \
+ uvY.c \
+ xyY.c \
+ Xcmsint.h
diff --git a/src/xkb/.cvsignore b/src/xkb/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/src/xkb/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/src/xkb/Makefile.am b/src/xkb/Makefile.am
new file mode 100644
index 00000000..ba00f414
--- /dev/null
+++ b/src/xkb/Makefile.am
@@ -0,0 +1,28 @@
+INCLUDES = \
+ -I${top_srcdir}/src/xlibi18n
+
+noinst_LTLIBRARIES = libxkb.la
+
+libxkb_la_SOURCES = \
+ XKB.c \
+ XKBBind.c \
+ XKBCompat.c \
+ XKBCtrls.c \
+ XKBCvt.c \
+ XKBGetMap.c \
+ XKBGetByName.c \
+ XKBNames.c \
+ XKBRdBuf.c \
+ XKBSetMap.c \
+ XKBUse.c \
+ XKBleds.c \
+ XKBBell.c \
+ XKBGeom.c \
+ XKBSetGeom.c \
+ XKBExtDev.c \
+ XKBList.c \
+ XKBMisc.c \
+ XKBMAlloc.c \
+ XKBGAlloc.c \
+ XKBAlloc.c \
+ XKBlibint.h
diff --git a/src/xlibi18n/.cvsignore b/src/xlibi18n/.cvsignore
new file mode 100644
index 00000000..288d1a0c
--- /dev/null
+++ b/src/xlibi18n/.cvsignore
@@ -0,0 +1,7 @@
+*.lo
+*.o
+*.la
+.libs
+.deps
+Makefile
+Makefile.in
diff --git a/src/xlibi18n/Makefile.am b/src/xlibi18n/Makefile.am
new file mode 100644
index 00000000..732a0674
--- /dev/null
+++ b/src/xlibi18n/Makefile.am
@@ -0,0 +1,118 @@
+SUBDIRS=im lc om
+
+noinst_LTLIBRARIES = libi18n.la
+
+
+#
+# Dynamic loading code for i18n modules
+#
+if XLIB_LOADABLE_I18N
+XI18N_DL_SOURCES = \
+ XlcDL.c \
+ XlcSL.c
+else
+#
+# Static interfaces to input/output methods
+#
+IM_LIBS = \
+ im/ximcp/libximcp.la
+
+LC_LIBS = \
+ lc/def/libxlcDef.la \
+ lc/gen/libxlibi18n.la \
+ lc/Utf8/libxlcUTF8Load.la \
+ lc/xlocale/libxlocale.la
+
+OM_LIBS = \
+ om/generic/libxomGeneric.la
+endif
+
+libi18n_la_LIBADD = \
+ $(IM_LIBS) $(LC_LIBS) $(OM_LIBS)
+
+libi18n_la_SOURCES = \
+ $(XI18N_DL_SOURCES) \
+ XDefaultIMIF.c \
+ XDefaultOMIF.c \
+ xim_trans.c\
+ ICWrap.c\
+ IMWrap.c\
+ imKStoUCS.c\
+ lcCT.c\
+ lcCharSet.c\
+ lcConv.c\
+ lcDB.c\
+ lcDynamic.c\
+ lcFile.c\
+ lcGeneric.c\
+ lcInit.c\
+ lcPrTxt.c\
+ lcPubWrap.c\
+ lcPublic.c\
+ lcRM.c\
+ lcStd.c\
+ lcTxtPr.c\
+ lcUTF8.c\
+ lcUtil.c\
+ lcWrap.c\
+ mbWMProps.c\
+ mbWrap.c\
+ utf8WMProps.c\
+ utf8Wrap.c\
+ wcWrap.c\
+ Xaixlcint.h\
+ XimImSw.h\
+ XimProto.h\
+ XimThai.h\
+ XimTrInt.h\
+ XimTrX.h\
+ XimTrans.h\
+ Ximint.h\
+ XimintL.h\
+ XimintP.h\
+ XlcGeneric.h\
+ XlcPubI.h\
+ XlcPublic.h\
+ Xlcint.h\
+ lcUniConv/armscii_8.h\
+ lcUniConv/ascii.h\
+ lcUniConv/big5.h\
+ lcUniConv/big5_emacs.h\
+ lcUniConv/cp1133.h\
+ lcUniConv/cp1251.h\
+ lcUniConv/cp1255.h\
+ lcUniConv/cp1256.h\
+ lcUniConv/gb2312.h\
+ lcUniConv/georgian_academy.h\
+ lcUniConv/georgian_ps.h\
+ lcUniConv/iso8859_1.h\
+ lcUniConv/iso8859_10.h\
+ lcUniConv/iso8859_11.h\
+ lcUniConv/iso8859_13.h\
+ lcUniConv/iso8859_14.h\
+ lcUniConv/iso8859_15.h\
+ lcUniConv/iso8859_16.h\
+ lcUniConv/iso8859_2.h\
+ lcUniConv/iso8859_3.h\
+ lcUniConv/iso8859_4.h\
+ lcUniConv/iso8859_5.h\
+ lcUniConv/iso8859_6.h\
+ lcUniConv/iso8859_7.h\
+ lcUniConv/iso8859_8.h\
+ lcUniConv/iso8859_9.h\
+ lcUniConv/iso8859_9e.h\
+ lcUniConv/jisx0201.h\
+ lcUniConv/jisx0208.h\
+ lcUniConv/jisx0212.h\
+ lcUniConv/koi8_c.h\
+ lcUniConv/koi8_r.h\
+ lcUniConv/koi8_u.h\
+ lcUniConv/ksc5601.h\
+ lcUniConv/mulelao.h\
+ lcUniConv/tatar_cyr.h\
+ lcUniConv/tcvn.h\
+ lcUniConv/tis620.h\
+ lcUniConv/ucs2be.h\
+ lcUniConv/utf8.h\
+ lcUniConv/viscii.h
+
diff --git a/src/xim_trans.c b/src/xlibi18n/xim_trans.c
index 161dfaf5..161dfaf5 100644
--- a/src/xim_trans.c
+++ b/src/xlibi18n/xim_trans.c