summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/packages/xorg-lib/libx11-diet_git.bb19
-rw-r--r--meta/packages/xorg-lib/libx11-git/X18NCMSstubs.diff568
-rw-r--r--meta/packages/xorg-lib/libx11-git/fix-disable-xlocale.diff14
-rw-r--r--meta/packages/xorg-lib/libx11-git/fix-utf8-wrong-define.patch16
-rw-r--r--meta/packages/xorg-lib/libx11-git/include_fix.patch23
-rw-r--r--meta/packages/xorg-lib/libx11-git/x11_disable_makekeys.patch27
-rw-r--r--meta/packages/xorg-lib/libx11-git/xim.patch55
7 files changed, 722 insertions, 0 deletions
diff --git a/meta/packages/xorg-lib/libx11-diet_git.bb b/meta/packages/xorg-lib/libx11-diet_git.bb
new file mode 100644
index 000000000..4ee61fd3a
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-diet_git.bb
@@ -0,0 +1,19 @@
+require libx11.inc
+PV = "1.1.99.1+git${SRCREV}"
+
+SRC_URI = "git://anongit.freedesktop.org/git/xorg/lib/libX11;protocol=git"
+S = "${WORKDIR}/git"
+
+SRC_URI += "file://x11_disable_makekeys.patch;patch=1 \
+ file://include_fix.patch;patch=1 \
+ file://X18NCMSstubs.diff;patch=1 \
+ file://fix-disable-xlocale.diff;patch=1 \
+ file://fix-utf8-wrong-define.patch;patch=1"
+
+DEPENDS += "bigreqsproto xproto xextproto xtrans libxau xcmiscproto \
+ libxdmcp xf86bigfontproto kbproto inputproto xproto-native"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libx11-git"
+
+EXTRA_OECONF += "--without-xcb --disable-udc --disable-xcms --disable-xlocale"
+CFLAGS += "-D_GNU_SOURCE"
diff --git a/meta/packages/xorg-lib/libx11-git/X18NCMSstubs.diff b/meta/packages/xorg-lib/libx11-git/X18NCMSstubs.diff
new file mode 100644
index 000000000..2dd27fc94
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/X18NCMSstubs.diff
@@ -0,0 +1,568 @@
+---
+ configure.ac | 9 -
+ src/Makefile.am | 5
+ src/X18NCMSstubs.c | 428 +++++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/imConv.c | 4
+ src/locking.c | 4
+ 5 files changed, 448 insertions(+), 2 deletions(-)
+
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -263,11 +263,18 @@ if test -f "$KEYSYMDEF"; then
+ else
+ AC_MSG_ERROR([Cannot find keysymdef.h])
+ fi
+ AC_SUBST(KEYSYMDEF)
+
+-AM_CONDITIONAL(UDC, test xfalse = xtrue)
++AC_ARG_ENABLE(udc,
++ AC_HELP_STRING([--disable-udc],
++ [Disable Xlib support for UDC *EXPERIMENTAL*]),
++ [UDC=$enableval],[UDC=yes])
++AM_CONDITIONAL(UDC, [test x$UDC = xyes ])
++if test x"$UDC" = "xyes"; then
++ AC_DEFINE(UDC,1,[Include support for UDC])
++fi
+
+ AC_ARG_ENABLE(xcms,
+ AC_HELP_STRING([--disable-xcms],
+ [Disable Xlib support for CMS *EXPERIMENTAL*]),
+ [XCMS=$enableval],[XCMS=yes])
+--- git.orig/src/Makefile.am
++++ git/src/Makefile.am
+@@ -329,18 +329,21 @@ endif
+
+ if THRSTUBS
+ libX11_la_SOURCES+=UIThrStubs.c
+ endif
+
++libX11_la_SOURCES+=X18NCMSstubs.c
++
+ x11datadir = @X11_DATADIR@
+ x11data_DATA = XKeysymDB XErrorDB
+
+ EXTRA_DIST = \
+ $(x11data_DATA) \
+ os2Stubs.c \
+ udcInf.c \
+- UIThrStubs.c
++ UIThrStubs.c \
++ X18NCMSstubs.c
+
+ if XCB
+ libX11_la_SOURCES += \
+ xcb_lock.c \
+ xcb_disp.c \
+--- /dev/null
++++ git/src/X18NCMSstubs.c
+@@ -0,0 +1,428 @@
++/*
++ * X18NCMSstubs.c
++ * - Provides stubs and dummy funcs needed when Xcms and XLocale stuff removed
++ *
++ * Copyright © 2003 Matthew Allum
++ *
++ * Permission to use, copy, modify, distribute, and sell this software and its
++ * documentation for any purpose is hereby granted without fee, provided that
++ * the above copyright notice appear in all copies and that both that
++ * copyright notice and this permission notice appear in supporting
++ * documentation, and that the name of Matthew Allum not be used in
++ * advertising or publicity pertaining to distribution of the software without
++ * specific, written prior permission. Keith Packard and Compaq makes no
++ * representations about the suitability of this software for any purpose. It
++ * is provided "as is" without express or implied warranty.
++ *
++ * MATTHEW ALLUM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
++ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
++ * IN NO EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
++ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
++ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
++ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
++ * PERFORMANCE OF THIS SOFTWARE.
++ */
++
++#include <stdlib.h>
++#include "Xlibint.h"
++#include "Xlcint.h"
++#include <X11/Xlocale.h>
++#include <X11/Xos.h>
++#ifdef WIN32
++#undef close
++#endif
++#include <X11/Xutil.h>
++#include "XlcPubI.h"
++
++#include "Xcmsint.h" /* for XcmsCCC type */
++#include "XlcPubI.h" /* for XLCd type */
++#include "config.h"
++
++#if ! XLOCALE
++
++Bool
++XSupportsLocale()
++{
++ return False;
++}
++
++char *
++XSetLocaleModifiers(
++ const char *modifiers)
++{
++ return NULL;
++}
++
++XLCd
++_XOpenLC(
++ char *name)
++{
++ return NULL;
++}
++
++XLCd
++_XlcCurrentLC()
++{
++ return NULL;
++}
++
++void
++_XlcVaToArgList(
++ va_list var,
++ int count,
++ XlcArgList *args_ret)
++{
++ return;
++}
++
++void
++_XlcCountVaList(
++ va_list var,
++ int *count_ret)
++{
++ return;
++}
++
++void
++_XCloseLC(
++ XLCd lcd)
++{
++ return;
++}
++
++int
++_XlcConvert(
++ XlcConv conv,
++ XPointer *from,
++ int *from_left,
++ XPointer *to,
++ int *to_left,
++ XPointer *args,
++ int num_args)
++{
++ return 0;
++}
++
++/* XIM Stubs */
++
++XPointer
++_XimGetLocaleCode ( _Xconst char* encoding_name )
++{
++ return NULL;
++}
++
++int
++_XimGetCharCode (
++ XPointer ucs_conv,
++ KeySym keysym,
++ unsigned char* buf,
++ int nbytes)
++{
++ return 0;
++}
++
++/* Xrm Stubs */
++
++XrmMethods
++_XrmInitParseInfo(
++ XPointer *state)
++{
++ return (XrmMethods) NULL;
++}
++
++/* Xwc Stubs */
++
++int
++XwcTextExtents(
++ XFontSet font_set,
++ _Xconst wchar_t *text,
++ int text_len,
++ XRectangle *overall_ink_extents,
++ XRectangle *overall_logical_extents)
++{
++ return 0;
++}
++
++void
++XwcDrawString(Display *display,
++ Drawable d,
++ XFontSet font_set,
++ GC gc,
++ int x, int y,
++ _Xconst wchar_t *string,
++ int num_wchars)
++{
++ ;
++}
++
++void
++XwcDrawText(
++ Display *dpy,
++ Drawable d,
++ GC gc,
++ int x,
++ int y,
++ XwcTextItem *text_items,
++ int nitems)
++{
++ ;
++}
++
++void
++XwcDrawImageString(
++ Display *dpy,
++ Drawable d,
++ XFontSet font_set,
++ GC gc,
++ int x,
++ int y,
++ _Xconst wchar_t *text,
++ int text_len)
++{
++ ;
++}
++
++int
++XwcTextEscapement(
++ XFontSet font_set,
++ _Xconst wchar_t *text,
++ int text_len)
++{
++ return 0;
++}
++
++Status
++XwcTextPerCharExtents(
++ XFontSet font_set,
++ _Xconst wchar_t *text,
++ int text_len,
++ XRectangle *ink_extents_buffer,
++ XRectangle *logical_extents_buffer,
++ int buffer_size,
++ int *num_chars,
++ XRectangle *max_ink_extents,
++ XRectangle *max_logical_extents)
++{
++ ;
++}
++
++int
++XwcTextPropertyToTextList(
++ Display *dpy,
++ const XTextProperty *text_prop,
++ wchar_t ***list_ret,
++ int *count_ret)
++{
++ return 0;
++}
++
++int
++XwcTextListToTextProperty(
++ Display *dpy,
++ wchar_t **list,
++ int count,
++ XICCEncodingStyle style,
++ XTextProperty *text_prop)
++{
++ return 0;
++}
++
++void
++XwcFreeStringList(wchar_t **list)
++{
++ return;
++}
++
++
++void XmbSetWMProperties ( /* Actually from mbWMProps.c */
++ Display *dpy,
++ Window w,
++ _Xconst char *windowName,
++ _Xconst char *iconName,
++ char **argv,
++ int argc,
++ XSizeHints *sizeHints,
++ XWMHints *wmHints,
++ XClassHint *classHints)
++{
++ return;
++}
++
++int
++XmbTextPropertyToTextList(
++ Display *dpy,
++ const XTextProperty *text_prop,
++ char ***list_ret,
++ int *count_ret)
++{
++ return XLocaleNotSupported;
++}
++
++int
++XmbTextListToTextProperty(
++ Display *dpy,
++ char **list,
++ int count,
++ XICCEncodingStyle style,
++ XTextProperty *text_prop)
++{
++ return XLocaleNotSupported;
++}
++
++int
++XmbTextExtents(
++ XFontSet font_set,
++ _Xconst char *text,
++ int text_len,
++ XRectangle *overall_ink_extents,
++ XRectangle *overall_logical_extents)
++{
++ return 0;
++}
++
++void
++XmbDrawText(
++ Display *dpy,
++ Drawable d,
++ GC gc,
++ int x,
++ int y,
++ XmbTextItem *text_items,
++ int nitems)
++{
++ ;
++}
++
++void
++XmbDrawString(
++ Display *dpy,
++ Drawable d,
++ XFontSet font_set,
++ GC gc,
++ int x,
++ int y,
++ _Xconst char *text,
++ int text_len)
++{
++ ;
++}
++
++void
++XmbDrawImageString(
++ Display *dpy,
++ Drawable d,
++ XFontSet font_set,
++ GC gc,
++ int x,
++ int y,
++ _Xconst char *text,
++ int text_len)
++{
++ ;
++}
++
++int
++XmbTextEscapement(
++ XFontSet font_set,
++ _Xconst char *text,
++ int text_len)
++{
++ return 0;
++}
++
++Status
++XmbTextPerCharExtents(
++ XFontSet font_set,
++ _Xconst char *text,
++ int text_len,
++ XRectangle *ink_extents_buffer,
++ XRectangle *logical_extents_buffer,
++ int buffer_size,
++ int *num_chars,
++ XRectangle *max_ink_extents,
++ XRectangle *max_logical_extents)
++{
++ return 0;
++}
++
++unsigned int
++KeySymToUcs4(KeySym keysym)
++{
++ return 0;
++}
++
++#endif
++
++#if ! XCMS
++
++XcmsCCC
++XcmsCCCOfColormap(dpy, cmap)
++ Display *dpy;
++ Colormap cmap;
++{
++ return NULL;
++}
++
++Status
++_XcmsResolveColorString (
++ XcmsCCC ccc,
++ const char **color_string,
++ XcmsColor *pColor_exact_return,
++ XcmsColorFormat result_format)
++{
++ return(XcmsFailure);
++}
++
++void
++_XcmsUnresolveColor(
++ XcmsCCC ccc,
++ XcmsColor *pColor)
++{
++ return;
++}
++
++void
++_XUnresolveColor(
++ XcmsCCC ccc,
++ XColor *pXColor)
++{
++ return;
++}
++
++XcmsCmapRec *
++_XcmsAddCmapRec(dpy, cmap, windowID, visual)
++ Display *dpy;
++ Colormap cmap;
++ Window windowID;
++ Visual *visual;
++{
++ return NULL;
++}
++
++void
++_XcmsRGB_to_XColor(
++ XcmsColor *pColors,
++ XColor *pXColors,
++ unsigned int nColors)
++{
++ return;
++}
++
++XcmsCmapRec *
++_XcmsCopyCmapRecAndFree(
++ Display *dpy,
++ Colormap src_cmap,
++ Colormap copy_cmap)
++{
++ return NULL;
++}
++
++void
++_XcmsDeleteCmapRec(
++ Display *dpy,
++ Colormap cmap)
++{
++ return;
++}
++
++#endif
+--- git.orig/src/imConv.c
++++ git/src/imConv.c
+@@ -81,10 +81,11 @@ static const struct SubstRec SubstTable[
+ /*
+ * Given the name of a charset, returns the pointer to convertors
+ * from UCS char to specified charset char.
+ * This converter is needed for _XimGetCharCode subroutine.
+ */
++#ifdef XLOCALE
+ XPointer
+ _XimGetLocaleCode (
+ _Xconst char* encoding_name)
+ {
+ XPointer cvt = _Utf8GetConvByName(encoding_name);
+@@ -94,10 +95,11 @@ _XimGetLocaleCode (
+ if (!strcmp(encoding_name, SubstTable[i].encoding_name))
+ return _Utf8GetConvByName(SubstTable[i].charset_name);
+ }
+ return cvt;
+ }
++#endif
+
+ /*
+ * Returns the locale dependent representation of a keysym.
+ * The locale's encoding is passed in form of pointer to UCS convertor.
+ * The resulting multi-byte sequence is placed starting at buf (a buffer
+@@ -105,10 +107,11 @@ _XimGetLocaleCode (
+ * Returns the length of the resulting multi-byte sequence, excluding the
+ * terminating NUL byte. Return 0 if the keysym is not representable in the
+ * locale
+ */
+ /*ARGSUSED*/
++#ifdef XLOCALE
+ int
+ _XimGetCharCode (
+ XPointer ucs_conv,
+ KeySym keysym,
+ unsigned char* buf,
+@@ -133,10 +136,11 @@ _XimGetCharCode (
+ return nbytes;
+ if (count<nbytes)
+ buf[count]= '\0';
+ return count;
+ }
++#endif
+
+ #ifdef XKB
+ static int lookup_string(
+ XKeyEvent* event,
+ char* buffer,
+--- git.orig/src/locking.c
++++ git/src/locking.c
+@@ -53,11 +53,13 @@ in this Software without prior written a
+ #endif
+
+ #define NUM_FREE_CVLS 4
+
+ /* in lcWrap.c */
++#ifdef XLOCALE
+ extern LockInfoPtr _Xi18n_lock;
++#endif
+
+ #ifdef WIN32
+ static DWORD _X_TlsIndex = (DWORD)-1;
+
+ void _Xthread_init()
+@@ -623,13 +625,15 @@ Status XInitThreads()
+ return 0;
+ }
+ _Xglobal_lock = &global_lock;
+ xmutex_init(_Xglobal_lock->lock);
+ xmutex_set_name(_Xglobal_lock->lock, "Xlib global");
++#ifdef XLOCALE
+ _Xi18n_lock = &i18n_lock;
+ xmutex_init(_Xi18n_lock->lock);
+ xmutex_set_name(_Xi18n_lock->lock, "Xlib i18n");
++#endif
+ _XLockMutex_fn = _XLockMutex;
+ _XUnlockMutex_fn = _XUnlockMutex;
+ _XCreateMutex_fn = _XCreateMutex;
+ _XFreeMutex_fn = _XFreeMutex;
+ _XInitDisplayLock_fn = _XInitDisplayLock;
diff --git a/meta/packages/xorg-lib/libx11-git/fix-disable-xlocale.diff b/meta/packages/xorg-lib/libx11-git/fix-disable-xlocale.diff
new file mode 100644
index 000000000..9dbf6dac6
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/fix-disable-xlocale.diff
@@ -0,0 +1,14 @@
+--- libX11-X11R7.0-1.0.0/src/Font.c.orig 2006-03-12 18:35:42.000000000 +0100
++++ libX11-X11R7.0-1.0.0/src/Font.c 2006-03-12 18:40:27.000000000 +0100
+@@ -701,7 +701,11 @@
+ }
+ if (l - 2 - (p - charset) < 0)
+ return 0;
++#ifdef XLOCALE
+ if (_XlcNCompareISOLatin1(name + l - 2 - (p - charset), charset, p - charset))
++#else
++ if (strncasecmp(name + l - 2 - (p - charset), charset, p - charset))
++#endif
+ return 0;
+ if (strlen(p + 1) + l - 1 >= sizeof(buf) - 1)
+ return 0;
diff --git a/meta/packages/xorg-lib/libx11-git/fix-utf8-wrong-define.patch b/meta/packages/xorg-lib/libx11-git/fix-utf8-wrong-define.patch
new file mode 100644
index 000000000..a098db194
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/fix-utf8-wrong-define.patch
@@ -0,0 +1,16 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- libX11-X11R7.0-1.0.0/include/X11/Xlib.h~fix-utf8-wrong-define
++++ libX11-X11R7.0-1.0.0/include/X11/Xlib.h
+@@ -103,7 +103,7 @@
+
+ /* API mentioning "UTF8" or "utf8" is an XFree86 extension, introduced in
+ November 2000. Its presence is indicated through the following macro. */
+-#define X_HAVE_UTF8_STRING 1
++#undef X_HAVE_UTF8_STRING
+
+ typedef char *XPointer;
+
diff --git a/meta/packages/xorg-lib/libx11-git/include_fix.patch b/meta/packages/xorg-lib/libx11-git/include_fix.patch
new file mode 100644
index 000000000..99ed57194
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/include_fix.patch
@@ -0,0 +1,23 @@
+---
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- libX11-1.1.5.orig/configure.ac
++++ libX11-1.1.5/configure.ac
+@@ -218,13 +218,13 @@ AC_SUBST(XDMCP_LIBS)
+ AC_CHECK_FUNC(poll, [AC_DEFINE(USE_POLL, 1, [poll() function is available])], )
+
+ #
+ # Find keysymdef.h
+ #
+-AC_MSG_CHECKING([keysymdef.h])
+-dir=`pkg-config --variable=includedir xproto`
+-KEYSYMDEF="$dir/X11/keysymdef.h"
++AC_ARG_WITH(keysymdef,
++ AC_HELP_STRING([--with-keysymdef=DIR/keysymdef.h], [The location of keysymdef.h]),
++ KEYSYMDEF=$withval, KEYSYMDEF="")
+ if test -f "$KEYSYMDEF"; then
+ AC_MSG_RESULT([$KEYSYMDEF])
+ else
+ AC_MSG_ERROR([Cannot find keysymdef.h])
+ fi
diff --git a/meta/packages/xorg-lib/libx11-git/x11_disable_makekeys.patch b/meta/packages/xorg-lib/libx11-git/x11_disable_makekeys.patch
new file mode 100644
index 000000000..92bec975f
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/x11_disable_makekeys.patch
@@ -0,0 +1,27 @@
+---
+ src/util/Makefile.am | 17 -----------------
+ 1 file changed, 17 deletions(-)
+
+--- git.orig/src/util/Makefile.am
++++ git/src/util/Makefile.am
+@@ -1,20 +1,3 @@
+ # $XdotOrg: lib/X11/src/util/Makefile.am,v 1.4 2006-02-19 02:14:12 jamey Exp $
+
+-noinst_PROGRAMS=makekeys
+-
+-makekeys_CFLAGS=$(X11_CFLAGS)
+-
+-CC = @CC_FOR_BUILD@
+-
+ EXTRA_DIST = mkks.sh
+-
+-if LINT
+-# Check source code with tools like lint & sparse
+-
+-ALL_LINT_FLAGS=$(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS)
+-
+-lint:
+- $(LINT) $(ALL_LINT_FLAGS) makekeys.c
+-
+-endif LINT
diff --git a/meta/packages/xorg-lib/libx11-git/xim.patch b/meta/packages/xorg-lib/libx11-git/xim.patch
new file mode 100644
index 000000000..0eab197a8
--- /dev/null
+++ b/meta/packages/xorg-lib/libx11-git/xim.patch
@@ -0,0 +1,55 @@
+--- libX11-6.2.1/src/X18NCMSstubs.c 2003-12-04 22:47:47.000000000 +0000
++++ libX11-6.2.1/src/X18NCMSstubs.c-new 2005-12-09 12:09:03.000000000 +0000
+@@ -90,6 +90,52 @@
+ return;
+ }
+
++XIM
++XOpenIM (
++ Display* display,
++ struct _XrmHashBucketRec* rdb,
++ char* res_name,
++ char* res_class)
++{
++ return (XIM) NULL;
++}
++
++Status
++XCloseIM ( XIM im )
++{
++ return NULL;
++}
++
++XIC
++XCreateIC ( XIM im, ...)
++{
++ return NULL;
++}
++
++void
++XDestroyIC ( XIC ic )
++{
++ return;
++}
++
++int
++XmbLookupString (
++ XIC ic,
++ XKeyPressedEvent* ev,
++ char* buffer,
++ int nbytes,
++ KeySym* keysym,
++ Status* status)
++{
++ return XLookupNone;
++}
++
++char *
++XGetICValues( XIC ic, ...)
++{
++ return (char *) NULL;
++}
++
+ XPointer
+ _XimGetLocaleCode ( _Xconst char* encoding_name )
+ {