diff options
Diffstat (limited to 'meta/recipes-graphics')
466 files changed, 15104 insertions, 0 deletions
diff --git a/meta/recipes-graphics/cairo/cairo-1.8.10/hardcoded_libtool.patch b/meta/recipes-graphics/cairo/cairo-1.8.10/hardcoded_libtool.patch new file mode 100644 index 00000000000..afdf2c8f08c --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo-1.8.10/hardcoded_libtool.patch @@ -0,0 +1,17 @@ +Index: cairo-1.8.2/build/aclocal.dolt.m4 +=================================================================== +--- cairo-1.8.2.orig/build/aclocal.dolt.m4 ++++ cairo-1.8.2/build/aclocal.dolt.m4 +@@ -163,7 +163,11 @@ done + if $modeok && $tagok ; then + . ${top_builddir_slash}doltcompile "${args@<:@@@:>@}" + else +- exec ${top_builddir_slash}libtool "$[]@" ++__DOLTLIBTOOL__EOF__ ++ ++echo ' exec ${top_builddir_slash}'${host_alias}-libtool' "$[]@"' >> doltlibtool ++ ++ cat << '__DOLTLIBTOOL__EOF__' >> doltlibtool + fi + __DOLTLIBTOOL__EOF__ + diff --git a/meta/recipes-graphics/cairo/cairo-fpu.inc b/meta/recipes-graphics/cairo/cairo-fpu.inc new file mode 100644 index 00000000000..bdaf789799f --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo-fpu.inc @@ -0,0 +1,6 @@ + +def get_cairo_fpu_setting(bb, d): + if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: + return "--disable-some-floating-point" + return "" + diff --git a/meta/recipes-graphics/cairo/cairo.inc b/meta/recipes-graphics/cairo/cairo.inc new file mode 100644 index 00000000000..e73a8396714 --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Cairo graphics library" +HOMEPAGE = "http://cairographics.org" +BUGTRACKER = "http://bugs.freedesktop.org" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "MPLv1.1 & LGPLv2.1" +DEPENDS = "virtual/libx11 libsm libpng fontconfig libxrender pixman" + +#check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points +require cairo-fpu.inc +EXTRA_OECONF += "${@get_cairo_fpu_setting(bb, d)}" + +inherit autotools pkgconfig diff --git a/meta/recipes-graphics/cairo/cairo_1.8.10.bb b/meta/recipes-graphics/cairo/cairo_1.8.10.bb new file mode 100644 index 00000000000..9e7e7a3bf67 --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo_1.8.10.bb @@ -0,0 +1,8 @@ +require cairo.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=7d7cc3410ae869ed913ebd30d7f45941" + +PR = "r0" + +SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.gz \ + file://hardcoded_libtool.patch" diff --git a/meta/recipes-graphics/clutter/aaina.inc b/meta/recipes-graphics/clutter/aaina.inc new file mode 100644 index 00000000000..afbc022cdb4 --- /dev/null +++ b/meta/recipes-graphics/clutter/aaina.inc @@ -0,0 +1,7 @@ +DESCRIPTION = "Aaina Clutter Demo" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "GPL" + +DEPENDS = "clutter-0.6 libxml2 gtk+ neon" + +inherit autotools pkgconfig diff --git a/meta/recipes-graphics/clutter/aaina_git.bb b/meta/recipes-graphics/clutter/aaina_git.bb new file mode 100644 index 00000000000..a348cd3d4de --- /dev/null +++ b/meta/recipes-graphics/clutter/aaina_git.bb @@ -0,0 +1,7 @@ +require aaina.inc + +PV = "0.3.0+git${SRCPV}" + +SRC_URI = "git://git.clutter-project.org/toys.git;protocol=git" + +S = "${WORKDIR}/git/aaina" diff --git a/meta/recipes-graphics/clutter/clutter-0.6_git.bb b/meta/recipes-graphics/clutter/clutter-0.6_git.bb new file mode 100644 index 00000000000..5a8ccec1640 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-0.6_git.bb @@ -0,0 +1,15 @@ +require clutter.inc + +PV = "0.6.0+gitr${SRCPV}" +PR = "r5" + +PACKAGES =+ "clutter-examples-0.6" +FILES_clutter-examples-0.6 = "${bindir}/test-* ${pkgdatadir}/redhand.png" + + +SRC_URI = "git://git.clutter-project.org/clutter.git;protocol=git;branch=clutter-0-6 \ + file://symconflict.patch;patch=1 \ + file://enable_tests-0.6.patch;patch=1 " + +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/clutter/clutter-0.8_git.bb b/meta/recipes-graphics/clutter/clutter-0.8_git.bb new file mode 100644 index 00000000000..71e6198030e --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-0.8_git.bb @@ -0,0 +1,13 @@ +require clutter.inc + +PV = "0.8.0+gitr${SRCREV}" +PR = "r2" + +PACKAGES =+ "clutter-examples-0.8" +FILES_clutter-examples-0.8 = "${bindir}/test-* ${pkgdatadir}/redhand.png" + +SRC_URI = "git://git.clutter-project.org/clutter.git;protocol=git;branch=clutter-0-8 \ + file://enable_tests-0.8.patch;patch=1 \ + file://build-fix.patch;patch=1" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-1.0_git.bb b/meta/recipes-graphics/clutter/clutter-1.0_git.bb new file mode 100644 index 00000000000..7e62954ee57 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-1.0_git.bb @@ -0,0 +1,20 @@ +require clutter.inc + +PV = "1.0+git${SRCPV}" +PR = "r3" + +PACKAGES =+ "clutter-examples-1.0" +FILES_clutter-examples-1.0 = "${bindir}/test-* ${pkgdatadir}/redhand.png" + +SRC_URI = "git://git.clutter-project.org/clutter.git;protocol=git;branch=clutter-1.0 \ + file://enable_tests-1.0.patch;patch=1 " + +S = "${WORKDIR}/git" + +BASE_CONF += "--disable-introspection" + + +do_configure_prepend () { + # Disable DOLT + sed -i -e 's/^DOLT//' ${S}/configure.ac +} diff --git a/meta/recipes-graphics/clutter/clutter-box2d.inc b/meta/recipes-graphics/clutter/clutter-box2d.inc new file mode 100644 index 00000000000..1a107c39933 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-box2d.inc @@ -0,0 +1,15 @@ +DESCRIPTION = "Clutter Box2D" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "GPLv2" + +DEPENDS = "clutter-0.8" + +# The main clutter lib is machine specific so we need to be too +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit autotools pkgconfig gtk-doc + +do_install_append () { + install -d ${D}${bindir} + install ${S}/examples/.libs/blockbox ${D}${bindir} +} diff --git a/meta/recipes-graphics/clutter/clutter-box2d_git.bb b/meta/recipes-graphics/clutter/clutter-box2d_git.bb new file mode 100644 index 00000000000..4c74ffeb44b --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-box2d_git.bb @@ -0,0 +1,10 @@ +require clutter-box2d.inc + +PV = "0.0+git${SRCPV}" +PR = "r3" + +SRC_URI = "git://git.clutter-project.org/clutter-box2d.git;protocol=git" + +S = "${WORKDIR}/git" + + diff --git a/meta/recipes-graphics/clutter/clutter-cairo-0.6_git.bb b/meta/recipes-graphics/clutter/clutter-cairo-0.6_git.bb new file mode 100644 index 00000000000..3b7f6a9be52 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-cairo-0.6_git.bb @@ -0,0 +1,13 @@ +require clutter-cairo.inc + +PV = "0.6.0+git${SRCREV}" +PR = "r1" + +DEPENDS += "clutter-0.6" + +SRC_URI = "git://git.clutter-project.org/clutter-cairo.git;protocol=git;branch=clutter-cairo-0-6 \ + file://enable_examples-0.6.patch;patch=1" + +S = "${WORKDIR}/git" + + diff --git a/meta/recipes-graphics/clutter/clutter-cairo-0.8_git.bb b/meta/recipes-graphics/clutter/clutter-cairo-0.8_git.bb new file mode 100644 index 00000000000..cb8482b742c --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-cairo-0.8_git.bb @@ -0,0 +1,12 @@ +require clutter-cairo.inc + +PV = "0.8.0+git${SRCPV}" + +DEPENDS += "clutter-0.8" + +SRC_URI = "git://git.clutter-project.org/clutter-cairo.git;protocol=git;branch=clutter-cairo-0-8 \ + file://enable_examples.patch;patch=1" + +S = "${WORKDIR}/git" + + diff --git a/meta/recipes-graphics/clutter/clutter-cairo.inc b/meta/recipes-graphics/clutter/clutter-cairo.inc new file mode 100644 index 00000000000..ff889899e78 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-cairo.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Clutter Cairo" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "cairo" + +FILESPATH = "${FILE_DIRNAME}/clutter-cairo" + +PACKAGES =+ "${PN}-examples" +FILES_${PN}-examples = "${bindir}/flowers ${bindir}/clock" + +inherit autotools pkgconfig + diff --git a/meta/recipes-graphics/clutter/clutter-cairo/enable_examples-0.6.patch b/meta/recipes-graphics/clutter/clutter-cairo/enable_examples-0.6.patch new file mode 100644 index 00000000000..3baea4c5c9e --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-cairo/enable_examples-0.6.patch @@ -0,0 +1,23 @@ +Index: clutter-cairo-0-6/examples/Makefile.am +=================================================================== +--- clutter-cairo-0-6.orig/examples/Makefile.am 2008-10-02 22:03:18.000000000 +0100 ++++ clutter-cairo-0-6/examples/Makefile.am 2008-10-02 22:03:31.000000000 +0100 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = clock flowers ++bin_PROGRAMS = clock flowers + + INCLUDES = -I$(top_srcdir)/ @GCC_FLAGS@ @DEPS_CFLAGS@ + AM_LDFLAGS = @DEPS_LIBS@ $(top_builddir)/libclutter-cairo-@CLUTTER_CAIRO_MAJORMINOR@.la +Index: clutter-cairo-0-6/examples/flowers.c +=================================================================== +--- clutter-cairo-0-6.orig/examples/flowers.c 2008-10-02 22:03:23.000000000 +0100 ++++ clutter-cairo-0-6/examples/flowers.c 2008-10-02 22:03:39.000000000 +0100 +@@ -11,7 +11,7 @@ + + #define PETAL_MIN 20 + #define PETAL_VAR 40 +-#define N_FLOWERS 40 /* reduce if you have a small card */ ++#define N_FLOWERS 8 /* reduce if you have a small card */ + + typedef struct Flower + { diff --git a/meta/recipes-graphics/clutter/clutter-cairo/enable_examples.patch b/meta/recipes-graphics/clutter/clutter-cairo/enable_examples.patch new file mode 100644 index 00000000000..c5ed63ff12e --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-cairo/enable_examples.patch @@ -0,0 +1,28 @@ +--- + examples/Makefile.am | 2 +- + examples/flowers.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: clutter-cairo/examples/Makefile.am +=================================================================== +--- clutter-cairo.orig/examples/Makefile.am 2008-08-11 16:30:04.000000000 +0100 ++++ clutter-cairo/examples/Makefile.am 2008-08-11 16:30:24.000000000 +0100 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = clock flowers bubbles ++bin_PROGRAMS = clock flowers bubbles + + INCLUDES = -I$(top_srcdir)/ @GCC_FLAGS@ @DEPS_CFLAGS@ + AM_LDFLAGS = @DEPS_LIBS@ $(top_builddir)/libclutter-cairo-@CLUTTER_CAIRO_MAJORMINOR@.la +Index: clutter-cairo/examples/flowers.c +=================================================================== +--- clutter-cairo.orig/examples/flowers.c 2008-08-11 16:30:04.000000000 +0100 ++++ clutter-cairo/examples/flowers.c 2008-08-11 16:30:10.000000000 +0100 +@@ -11,7 +11,7 @@ + + #define PETAL_MIN 20 + #define PETAL_VAR 40 +-#define N_FLOWERS 40 /* reduce if you have a small card */ ++#define N_FLOWERS 8 /* reduce if you have a small card */ + + typedef struct Flower + { diff --git a/meta/recipes-graphics/clutter/clutter-fpu.inc b/meta/recipes-graphics/clutter/clutter-fpu.inc new file mode 100644 index 00000000000..21a16feac21 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-fpu.inc @@ -0,0 +1,6 @@ + +def get_clutter_fpu_setting(bb, d): + if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: + return "--without-fpu" + return "" + diff --git a/meta/recipes-graphics/clutter/clutter-gst-0.10_git.bb b/meta/recipes-graphics/clutter/clutter-gst-0.10_git.bb new file mode 100644 index 00000000000..a0f874db25e --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst-0.10_git.bb @@ -0,0 +1,14 @@ +require clutter-gst.inc + +PV = "0.10.0+git${SRCPV}" + +DEPENDS += "clutter-1.0" + +SRC_URI = "git://git.clutter-project.org/clutter-gst.git;protocol=git;branch=clutter-gst-0.10" + +S = "${WORKDIR}/git" + +do_configure_prepend () { + # Disable DOLT + sed -i -e 's/^DOLT//' ${S}/configure.ac +} diff --git a/meta/recipes-graphics/clutter/clutter-gst-0.6_git.bb b/meta/recipes-graphics/clutter/clutter-gst-0.6_git.bb new file mode 100644 index 00000000000..09979f9e0c9 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst-0.6_git.bb @@ -0,0 +1,9 @@ +require clutter-gst.inc + +PV = "0.6.0+git${SRCPV}" + +DEPENDS += "clutter-0.6" + +SRC_URI = "git://git.clutter-project.org/clutter-gst.git;protocol=git;branch=clutter-gst-0-6" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-gst-0.8_git.bb b/meta/recipes-graphics/clutter/clutter-gst-0.8_git.bb new file mode 100644 index 00000000000..c5348ecefe4 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst-0.8_git.bb @@ -0,0 +1,9 @@ +require clutter-gst.inc + +PV = "0.8.0+git${SRCPV}" + +DEPENDS += "clutter-0.8" + +SRC_URI = "git://git.clutter-project.org/clutter-gst.git;protocol=git;branch=clutter-gst-0-8" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-gst-1.0_git.bb b/meta/recipes-graphics/clutter/clutter-gst-1.0_git.bb new file mode 100644 index 00000000000..5580596f091 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst-1.0_git.bb @@ -0,0 +1,14 @@ +require clutter-gst.inc + +PV = "0.11.0+git${SRCPV}" + +DEPENDS += "clutter-1.0" + +SRC_URI = "git://git.clutter-project.org/clutter-gst.git;protocol=git;branch=master" + +S = "${WORKDIR}/git" + +do_configure_prepend () { + # Disable DOLT + sed -i -e 's/^DOLT//' ${S}/configure.ac +} diff --git a/meta/recipes-graphics/clutter/clutter-gst.inc b/meta/recipes-graphics/clutter/clutter-gst.inc new file mode 100644 index 00000000000..0a2f261531b --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Clutter GStreamer" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "clutter-1.0 gstreamer gst-plugins-base" + +FILESPATH = "${FILE_DIRNAME}/clutter-gst" + +PACKAGES =+ "${PN}-examples" +FILES_${PN}-examples = "${bindir}/video-player ${bindir}/video-sink ${bindir}/audio" + +inherit autotools pkgconfig gtk-doc + diff --git a/meta/recipes-graphics/clutter/clutter-gst/autofoo-0.4.patch b/meta/recipes-graphics/clutter/clutter-gst/autofoo-0.4.patch new file mode 100644 index 00000000000..54df63d2972 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst/autofoo-0.4.patch @@ -0,0 +1,15 @@ +--- + doc/reference/Makefile.am | 2 +- + examples/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: clutter-gst/examples/Makefile.am +=================================================================== +--- clutter-gst.orig/examples/Makefile.am 2007-11-06 12:31:36.000000000 +0000 ++++ clutter-gst/examples/Makefile.am 2007-11-06 18:53:59.000000000 +0000 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = video-player video-sink audio ++bin_PROGRAMS = video-player video-sink audio + + INCLUDES = -I$(top_srcdir)/ + diff --git a/meta/recipes-graphics/clutter/clutter-gst/autofoo-9db4a61a25677764bb927369c5c68ada958fb65c.patch b/meta/recipes-graphics/clutter/clutter-gst/autofoo-9db4a61a25677764bb927369c5c68ada958fb65c.patch new file mode 100644 index 00000000000..569b0d8be9a --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst/autofoo-9db4a61a25677764bb927369c5c68ada958fb65c.patch @@ -0,0 +1,25 @@ +--- + doc/reference/Makefile.am | 2 +- + examples/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: clutter-gst/examples/Makefile.am +=================================================================== +--- clutter-gst.orig/examples/Makefile.am 2007-11-06 12:31:36.000000000 +0000 ++++ clutter-gst/examples/Makefile.am 2007-11-06 18:53:59.000000000 +0000 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = video-player video-sink audio ++bin_PROGRAMS = video-player video-sink audio + + INCLUDES = -I$(top_srcdir)/ + +Index: clutter-gst/doc/reference/Makefile.am +=================================================================== +--- clutter-gst.orig/doc/reference/Makefile.am 2007-11-06 19:36:56.000000000 +0000 ++++ clutter-gst/doc/reference/Makefile.am 2007-11-06 19:37:02.000000000 +0000 +@@ -77,4 +77,4 @@ include $(top_srcdir)/gtk-doc.make + + # Other files to distribute + # e.g. EXTRA_DIST += version.xml.in +-EXTRA_DIST += version.xml.in ++EXTRA_DIST = version.xml.in diff --git a/meta/recipes-graphics/clutter/clutter-gst/autofoo.patch b/meta/recipes-graphics/clutter/clutter-gst/autofoo.patch new file mode 100644 index 00000000000..ad77d636c14 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gst/autofoo.patch @@ -0,0 +1,27 @@ +--- + doc/reference/Makefile.am | 2 +- + examples/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: git/examples/Makefile.am +=================================================================== +--- git.orig/examples/Makefile.am 2009-06-30 16:41:53.000000000 +0100 ++++ git/examples/Makefile.am 2009-06-30 16:43:00.000000000 +0100 +@@ -1,6 +1,6 @@ + NULL = # + +-noinst_PROGRAMS = video-player video-sink audio-player ++bin_PROGRAMS = video-player video-sink audio-player + + INCLUDES = -I$(top_srcdir) \ + $(MAINTAINER_CFLAGS) \ +Index: git/doc/reference/Makefile.am +=================================================================== +--- git.orig/doc/reference/Makefile.am 2009-06-30 16:41:53.000000000 +0100 ++++ git/doc/reference/Makefile.am 2009-06-30 16:41:53.000000000 +0100 +@@ -77,4 +77,4 @@ + + # Other files to distribute + # e.g. EXTRA_DIST += version.xml.in +-EXTRA_DIST += version.xml.in ++EXTRA_DIST = version.xml.in diff --git a/meta/recipes-graphics/clutter/clutter-gtk-0.10_git.bb b/meta/recipes-graphics/clutter/clutter-gtk-0.10_git.bb new file mode 100644 index 00000000000..d0613277a73 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gtk-0.10_git.bb @@ -0,0 +1,12 @@ +require clutter-gtk.inc + +PV = "0.10.3+git${SRCPV}" +PR = "r1" + +SRC_URI = "git://git.clutter-project.org/clutter-gtk.git;protocol=git;branch=clutter-gtk-0.10" + +S = "${WORKDIR}/git" + +DEPENDS += "clutter-1.0" + +EXTRA_OECONF += "--disable-introspection" diff --git a/meta/recipes-graphics/clutter/clutter-gtk-0.6_git.bb b/meta/recipes-graphics/clutter/clutter-gtk-0.6_git.bb new file mode 100644 index 00000000000..d2633ff2d4b --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gtk-0.6_git.bb @@ -0,0 +1,9 @@ +require clutter-gtk.inc + +PV = "0.6.0+git${SRCPV}" + +DEPENDS += "clutter-0.6" + +SRC_URI = "git://git.clutter-project.org/clutter-gtk.git;protocol=git;branch=clutter-gtk-0-6" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-gtk-0.8_git.bb b/meta/recipes-graphics/clutter/clutter-gtk-0.8_git.bb new file mode 100644 index 00000000000..506d3fb156b --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gtk-0.8_git.bb @@ -0,0 +1,9 @@ +require clutter-gtk.inc + +PV = "0.8.0+git${SRCPV}" + +DEPENDS += "clutter-0.8" + +SRC_URI = "git://git.clutter-project.org/clutter-gtk.git;protocol=git;branch=clutter-gtk-0-8" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-gtk-1.0_git.bb b/meta/recipes-graphics/clutter/clutter-gtk-1.0_git.bb new file mode 100644 index 00000000000..dfabbd56cc2 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gtk-1.0_git.bb @@ -0,0 +1,12 @@ +require clutter-gtk.inc + +PV = "0.90.0+git${SRCPV}" +PR = "r1" + +SRC_URI = "git://git.clutter-project.org/clutter-gtk.git;protocol=git;branch=master" + +S = "${WORKDIR}/git" + +DEPENDS += "clutter-1.0" + +EXTRA_OECONF += "--disable-introspection" diff --git a/meta/recipes-graphics/clutter/clutter-gtk.inc b/meta/recipes-graphics/clutter/clutter-gtk.inc new file mode 100644 index 00000000000..89ae3e53ca1 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-gtk.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Clutter GTK+" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "gtk+" + +FILESPATH = "${FILE_DIRNAME}/clutter-gtk" + +PACKAGES =+ "${PN}-examples" +FILES_${PN}-examples = "${bindir}/gtk-clutter-test ${bindir}/gtk-clutter-events ${bindir}/gtk-clutter-multistage" + +inherit autotools pkgconfig gtk-doc + diff --git a/meta/recipes-graphics/clutter/clutter-helix.inc b/meta/recipes-graphics/clutter/clutter-helix.inc new file mode 100644 index 00000000000..6bbbb244d77 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-helix.inc @@ -0,0 +1,15 @@ +DESCRIPTION = "Clutter Helix" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "helix-libs" + +FILESPATH = "${FILE_DIRNAME}/clutter-helix" + +COMPATIBLE_HOST = '(x86_64|i.86.*)-linux' + +PACKAGES =+ "${PN}-examples" +FILES_${PN}-examples = "${bindir}/video-player ${bindir}/audio-player" + +inherit autotools pkgconfig gtk-doc + diff --git a/meta/recipes-graphics/clutter/clutter-helix_git.bb b/meta/recipes-graphics/clutter/clutter-helix_git.bb new file mode 100644 index 00000000000..1c272306bf0 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-helix_git.bb @@ -0,0 +1,8 @@ +require clutter-helix.inc + +PV = "0.8.0+git${SRCPV}" +PR = "r0" + +SRC_URI = "git://git.clutter-project.org/clutter-helix.git;protocol=git" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-mozembed.inc b/meta/recipes-graphics/clutter/clutter-mozembed.inc new file mode 100644 index 00000000000..72c9412d047 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-mozembed.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "Clutter Mozilla Embedded" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "mozilla-headless mozilla-headless-services clutter-1.0" + +FILESPATH = "${FILE_DIRNAME}/clutter-mozembed" + +FILES_${PN} =+ "${datadir}/cluttermozembed/chrome/" + +EXTRA_OECONF = "--enable-plugins" + +inherit autotools pkgconfig gtk-doc + diff --git a/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++-da7632f3e2c8d1a70ab01cc7adb63760d8718b41.patch b/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++-da7632f3e2c8d1a70ab01cc7adb63760d8718b41.patch new file mode 100644 index 00000000000..135b9e79f0b --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++-da7632f3e2c8d1a70ab01cc7adb63760d8718b41.patch @@ -0,0 +1,13 @@ +Index: git/cluttermozembed/Makefile.am +=================================================================== +--- git.orig/cluttermozembed/Makefile.am 2009-06-10 15:04:54.000000000 +0100 ++++ git/cluttermozembed/Makefile.am 2009-06-10 15:10:12.000000000 +0100 +@@ -61,7 +61,7 @@ + clutter-mozembed-private.h + source_c = \ + clutter-mozembed.c \ +- clutter-mozembed-download.c ++ clutter-mozembed-download.c dummy.cpp + + bin_PROGRAMS = clutter-mozheadless + diff --git a/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++.patch b/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++.patch new file mode 100644 index 00000000000..cc9d43a6749 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-mozembed/link-with-g++.patch @@ -0,0 +1,13 @@ +Index: git/cluttermozembed/Makefile.am +=================================================================== +--- git.orig/clutter-mozembed/Makefile.am 2009-07-24 16:58:24.000000000 +0100 ++++ git/clutter-mozembed/Makefile.am 2009-07-24 17:00:53.000000000 +0100 +@@ -66,7 +66,7 @@ + clutter-mozembed.c \ + clutter-mozembed-comms.c \ + clutter-mozembed-comms.h \ +- clutter-mozembed-download.c ++ clutter-mozembed-download.c dummy.cpp + + bin_PROGRAMS = clutter-mozheadless + diff --git a/meta/recipes-graphics/clutter/clutter-mozembed_git.bb b/meta/recipes-graphics/clutter/clutter-mozembed_git.bb new file mode 100644 index 00000000000..e2da2d6a7d1 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-mozembed_git.bb @@ -0,0 +1,14 @@ +require clutter-mozembed.inc + +PV = "0.8.0+git${SRCPV}" +PR = "r7" + +SRC_URI = "git://git.clutter-project.org/clutter-mozembed.git;protocol=git \ + file://link-with-g++-da7632f3e2c8d1a70ab01cc7adb63760d8718b41.patch;patch=1;rev=da7632f3e2c8d1a70ab01cc7adb63760d8718b41 \ + file://link-with-g++.patch;patch=1;notrev=da7632f3e2c8d1a70ab01cc7adb63760d8718b41" +S = "${WORKDIR}/git" + +do_configure_prepend () { + touch ${S}/clutter-mozembed/dummy.cpp + touch ${S}/clutter-mozembed/dummy2.cpp +} diff --git a/meta/recipes-graphics/clutter/clutter-package.inc b/meta/recipes-graphics/clutter/clutter-package.inc new file mode 100644 index 00000000000..22993ffd01c --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter-package.inc @@ -0,0 +1,2 @@ +PACKAGES =+ "clutter-examples" +FILES_clutter-examples = "${bindir}/test-* ${pkgdatadir}/redhand.png" diff --git a/meta/recipes-graphics/clutter/clutter.inc b/meta/recipes-graphics/clutter/clutter.inc new file mode 100644 index 00000000000..c099309bbbd --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter.inc @@ -0,0 +1,57 @@ +DESCRIPTION = "Clutter graphics library" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +COMPATIBLE_MACHINE = "(zylonite|mx31litekit|omap-3430ldp|omap-3430sdp|mx31ads|qemuarm|qemux86|ipodtouch|netbook|menlow)" + +STDDEPENDS = "virtual/libx11 gtk-doc-native pango glib-2.0 libxfixes gtk+ libxi" +BASE_CONF = "--disable-gtk-doc ${@get_clutter_fpu_setting(bb, d)}" + +DEPENDS = "${STDDEPENDS} virtual/libgl" +EXTRA_OECONF = "${BASE_CONF} --with-flavour=glx" + +DEPENDS_zylonite = "${STDDEPENDS} libgles-zylonite tslib" +EXTRA_OECONF_zylonite = "${BASE_CONF} --with-flavour=eglnative" +PACKAGE_ARCH_zylonite = "${MACHINE_ARCH}" +LDFLAGS_append_zylonite = " -lnws -lstdc++ " + +DEPENDS_mx31litekit = "${STDDEPENDS} libgles-mx31 tslib" +EXTRA_OECONF_mx31litekit = "${BASE_CONF} --with-flavour=eglnative" +PACKAGE_ARCH_mx31litekit = "${MACHINE_ARCH}" +LDFLAGS_append_mx31litekit = " -lpvrNULLWSEGL -lstdc++ " + +DEPENDS_omap-3430ldp = "${STDDEPENDS} libgles-omap3 tslib" +# The eglx drivers are pretty dire, use eglnative +EXTRA_OECONF_omap-3430ldp = "${BASE_CONF} --with-flavour=eglnative" +PACKAGE_ARCH_omap-3430ldp = "${MACHINE_ARCH}" + +DEPENDS_omap-3430sdp = "${STDDEPENDS} libgles-omap3 tslib" +# The eglx drivers are pretty dire, use eglnative +EXTRA_OECONF_omap-3430sdp = "${BASE_CONF} --with-flavour=eglnative" +PACKAGE_ARCH_omap-3430sdp = "${MACHINE_ARCH}" + +DEPENDS_mx31ads = "${STDDEPENDS} libgles-mx31 tslib" +EXTRA_OECONF_mx31ads = "${BASE_CONF} --with-flavour=eglnative" +PACKAGE_ARCH_mx31ads = "${MACHINE_ARCH}" +LDFLAGS_append_mx31ads = " -lpvrNULLWSEGL -lstdc++ " + +DEPENDS_netbook = "${STDDEPENDS} virtual/xserver-xf86 virtual/libgl" +EXTRA_OECONF_netbook = "${BASE_CONF} --with-flavour=glx" +PACKAGE_ARCH_netbook = "${MACHINE_ARCH}" + +DEPENDS_menlow = "${STDDEPENDS} virtual/xserver-xf86 virtual/libgl" +EXTRA_OECONF_menlow = "${BASE_CONF} --with-flavour=glx" +PACKAGE_ARCH_menlow = "${MACHINE_ARCH}" + +FILESPATH = "${FILE_DIRNAME}/clutter" + +inherit autotools pkgconfig gtk-doc + +#check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points +require clutter-fpu.inc + +#Fix up some weirdness in the docs +do_configure_prepend() { + sed -i s:doc/reference/Makefile::g ${S}/configure.ac + sed -i s:doc::g ${S}/Makefile.am +} diff --git a/meta/recipes-graphics/clutter/clutter/build-fix.patch b/meta/recipes-graphics/clutter/clutter/build-fix.patch new file mode 100644 index 00000000000..68cf84ec227 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/build-fix.patch @@ -0,0 +1,16 @@ +Installing the same file twice causes an error in Automake 1.11 + +JL 19/03/10 + +Index: git/clutter/Makefile.am +=================================================================== +--- git.orig/clutter/Makefile.am 2010-03-19 11:37:51.000000000 +0000 ++++ git/clutter/Makefile.am 2010-03-19 11:50:46.744042007 +0000 +@@ -219,7 +219,6 @@ + $(source_h) \ + clutter-json.h \ + clutter-enum-types.h \ +- clutter-version.h \ + clutter.h + + DISTCLEANFILES = \ diff --git a/meta/recipes-graphics/clutter/clutter/enable_tests-0.6.patch b/meta/recipes-graphics/clutter/clutter/enable_tests-0.6.patch new file mode 100644 index 00000000000..544a7e588ce --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/enable_tests-0.6.patch @@ -0,0 +1,40 @@ +--- + tests/Makefile.am | 7 ++++++- + tests/test-actors.c | 2 +- + tests/test-text.c | 2 +- + 3 files changed, 8 insertions(+), 3 deletions(-) + +Index: clutter-0-6/tests/Makefile.am +=================================================================== +--- clutter.orig/tests/Makefile.am 2007-11-06 12:29:17.000000000 +0000 ++++ clutter-0-6/tests/Makefile.am 2007-11-06 12:30:11.000000000 +0000 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = test-textures test-events test-offscreen test-scale \ ++bin_PROGRAMS = test-textures test-events test-offscreen test-scale \ + test-actors test-behave test-text test-entry test-project \ + test-boxes test-perspective test-rotate test-depth \ + test-threads test-timeline test-score test-script +@@ -26,4 +26,9 @@ test_timeline_SOURCES = test-timeline.c + test_score_SOURCES = test-score.c + test_script_SOURCES = test-script.c + ++test_textdir = $(pkgdatadir) ++test_text_DATA = test-text.c ++test_actorsdir = $(pkgdatadir) ++test_actors_DATA = redhand.png ++ + EXTRA_DIST = redhand.png test-script.json +Index: clutter-0-6/tests/test-actors.c +=================================================================== +--- clutter.orig/tests/test-actors.c 2007-11-06 12:29:17.000000000 +0000 ++++ clutter-0-6/tests/test-actors.c 2007-11-06 12:29:21.000000000 +0000 +@@ -143,7 +143,7 @@ main (int argc, char *argv[]) + stage = clutter_stage_get_default (); + clutter_actor_set_size (stage, 800, 600); + +- pixbuf = gdk_pixbuf_new_from_file ("redhand.png", NULL); ++ pixbuf = gdk_pixbuf_new_from_file ("/usr/share/clutter/redhand.png", NULL); + + if (!pixbuf) + g_error("pixbuf load failed"); + diff --git a/meta/recipes-graphics/clutter/clutter/enable_tests-0.8.patch b/meta/recipes-graphics/clutter/clutter/enable_tests-0.8.patch new file mode 100644 index 00000000000..4f449b1177d --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/enable_tests-0.8.patch @@ -0,0 +1,50 @@ +--- + tests/Makefile.am | 7 ++++++- + tests/test-actors.c | 2 +- + tests/test-text.c | 2 +- + 3 files changed, 8 insertions(+), 3 deletions(-) + +Index: clutter/tests/Makefile.am +=================================================================== +--- clutter.orig/tests/Makefile.am 2008-06-26 16:46:26.000000000 +0100 ++++ clutter/tests/Makefile.am 2008-06-26 16:46:50.000000000 +0100 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = test-textures test-events test-offscreen test-scale \ ++bin_PROGRAMS = test-textures test-events test-offscreen test-scale \ + test-actors test-behave test-text test-entry test-project \ + test-perspective test-rotate test-depth \ + test-threads test-timeline test-timeline-dup-frames \ +@@ -17,8 +17,8 @@ + test-invariants + + if X11_TESTS +-noinst_PROGRAMS += test-pixmap +-noinst_PROGRAMS += test-devices ++bin_PROGRAMS += test-pixmap ++bin_PROGRAMS += test-devices + endif + + INCLUDES = -I$(top_srcdir)/ -I$(top_srcdir)/clutter -I$(top_builddir)/clutter +@@ -73,4 +73,9 @@ + test_invariants_SOURCES = test-invariants.c + test_devices_SOURCES = test-devices.c + ++test_textdir = $(pkgdatadir) ++test_text_DATA = test-text.c ++test_actorsdir = $(pkgdatadir) ++test_actors_DATA = redhand.png ++ + EXTRA_DIST = redhand.png test-script.json +Index: clutter/tests/test-actors.c +=================================================================== +--- clutter.orig/tests/test-actors.c 2008-06-26 16:46:26.000000000 +0100 ++++ clutter/tests/test-actors.c 2008-06-26 16:46:31.000000000 +0100 +@@ -195,7 +195,7 @@ + /* Create a texture from file, then clone in to same resources */ + if (i == 0) + { +- if ((oh->hand[i] = clutter_texture_new_from_file ("redhand.png", ++ if ((oh->hand[i] = clutter_texture_new_from_file ("/usr/share/clutter/redhand.png", + &error)) == NULL) + { + g_error ("image load failed: %s", error->message); diff --git a/meta/recipes-graphics/clutter/clutter/enable_tests-1.0.patch b/meta/recipes-graphics/clutter/clutter/enable_tests-1.0.patch new file mode 100644 index 00000000000..953edf6bbc3 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/enable_tests-1.0.patch @@ -0,0 +1,32 @@ +--- + tests/Makefile.am | 7 ++++++- + tests/test-actors.c | 2 +- + tests/test-text.c | 2 +- + 3 files changed, 8 insertions(+), 3 deletions(-) + +Index: git/tests/interactive/Makefile.am +=================================================================== +--- git.orig/tests/interactive/Makefile.am 2009-03-12 11:01:36.000000000 +0000 ++++ git/tests/interactive/Makefile.am 2009-03-12 11:04:12.000000000 +0000 +@@ -77,7 +77,7 @@ + AM_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) + AM_LDFLAGS = $(CLUTTER_LIBS) + +-noinst_PROGRAMS = test-interactive ++bin_PROGRAMS = test-interactive + + test_interactive_SOURCES = \ + test-main.c \ +Index: git/tests/interactive/test-actors.c +=================================================================== +--- git.orig/tests/interactive/test-actors.c 2009-03-12 11:01:36.000000000 +0000 ++++ git/tests/interactive/test-actors.c 2009-03-12 11:06:32.000000000 +0000 +@@ -182,7 +182,7 @@ + oh->scaler_1 = clutter_behaviour_scale_new (alpha, 0.5, 0.5, 1.0, 1.0); + oh->scaler_2 = clutter_behaviour_scale_new (alpha, 1.0, 1.0, 0.5, 0.5); + +- real_hand = clutter_texture_new_from_file ("redhand.png", &error); ++ real_hand = clutter_texture_new_from_file ("/usr/share/clutter/redhand.png", &error); + if (real_hand == NULL) + { + g_error ("image load failed: %s", error->message); diff --git a/meta/recipes-graphics/clutter/clutter/enable_tests-654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673.patch b/meta/recipes-graphics/clutter/clutter/enable_tests-654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673.patch new file mode 100644 index 00000000000..953edf6bbc3 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/enable_tests-654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673.patch @@ -0,0 +1,32 @@ +--- + tests/Makefile.am | 7 ++++++- + tests/test-actors.c | 2 +- + tests/test-text.c | 2 +- + 3 files changed, 8 insertions(+), 3 deletions(-) + +Index: git/tests/interactive/Makefile.am +=================================================================== +--- git.orig/tests/interactive/Makefile.am 2009-03-12 11:01:36.000000000 +0000 ++++ git/tests/interactive/Makefile.am 2009-03-12 11:04:12.000000000 +0000 +@@ -77,7 +77,7 @@ + AM_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) + AM_LDFLAGS = $(CLUTTER_LIBS) + +-noinst_PROGRAMS = test-interactive ++bin_PROGRAMS = test-interactive + + test_interactive_SOURCES = \ + test-main.c \ +Index: git/tests/interactive/test-actors.c +=================================================================== +--- git.orig/tests/interactive/test-actors.c 2009-03-12 11:01:36.000000000 +0000 ++++ git/tests/interactive/test-actors.c 2009-03-12 11:06:32.000000000 +0000 +@@ -182,7 +182,7 @@ + oh->scaler_1 = clutter_behaviour_scale_new (alpha, 0.5, 0.5, 1.0, 1.0); + oh->scaler_2 = clutter_behaviour_scale_new (alpha, 1.0, 1.0, 0.5, 0.5); + +- real_hand = clutter_texture_new_from_file ("redhand.png", &error); ++ real_hand = clutter_texture_new_from_file ("/usr/share/clutter/redhand.png", &error); + if (real_hand == NULL) + { + g_error ("image load failed: %s", error->message); diff --git a/meta/recipes-graphics/clutter/clutter/enable_tests.patch b/meta/recipes-graphics/clutter/clutter/enable_tests.patch new file mode 100644 index 00000000000..f4af7c94f64 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/enable_tests.patch @@ -0,0 +1,32 @@ +--- + tests/Makefile.am | 7 ++++++- + tests/test-actors.c | 2 +- + tests/test-text.c | 2 +- + 3 files changed, 8 insertions(+), 3 deletions(-) + +Index: git/tests/interactive/Makefile.am +=================================================================== +--- git.orig/tests/interactive/Makefile.am 2009-11-30 17:39:46.000000000 +0000 ++++ git/tests/interactive/Makefile.am 2009-11-30 17:42:30.000000000 +0000 +@@ -88,7 +88,7 @@ + + common_ldadd = $(top_builddir)/clutter/libclutter-@CLUTTER_WINSYS@-@CLUTTER_API_VERSION@.la + +-noinst_PROGRAMS = test-interactive ++bin_PROGRAMS = test-interactive + + test_interactive_SOURCES = test-main.c $(UNIT_TESTS) + test_interactive_CFLAGS = $(CLUTTER_CFLAGS) $(MAINTAINER_CFLAGS) +Index: git/tests/interactive/test-actors.c +=================================================================== +--- git.orig/tests/interactive/test-actors.c 2009-11-30 17:39:46.000000000 +0000 ++++ git/tests/interactive/test-actors.c 2009-11-30 17:43:03.000000000 +0000 +@@ -178,7 +178,7 @@ + oh->scaler_1 = clutter_behaviour_scale_new (alpha, 0.5, 0.5, 1.0, 1.0); + oh->scaler_2 = clutter_behaviour_scale_new (alpha, 1.0, 1.0, 0.5, 0.5); + +- file = g_build_filename (TESTS_DATADIR, "redhand.png", NULL); ++ file = g_build_filename (TESTS_DATADIR, "/usr/share/clutter/redhand.png", NULL); + real_hand = clutter_texture_new_from_file (file, &error); + if (real_hand == NULL) + g_error ("image load failed: %s", error->message); diff --git a/meta/recipes-graphics/clutter/clutter/symconflict.patch b/meta/recipes-graphics/clutter/clutter/symconflict.patch new file mode 100644 index 00000000000..7685c211616 --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter/symconflict.patch @@ -0,0 +1,31 @@ +Index: git/tests/test-depth.c +=================================================================== +--- git.orig/tests/test-depth.c 2009-05-24 14:54:40.000000000 +0100 ++++ git/tests/test-depth.c 2009-05-24 14:55:13.000000000 +0100 +@@ -11,13 +11,13 @@ + clutter_timeline_start (timeline); + } + +-static ClutterActor *raise[2]; ++static ClutterActor *clutterraise[2]; + static gboolean raise_no = 0; + + static gboolean + raise_top (gpointer ignored) + { +- clutter_actor_raise_top (raise[raise_no]); ++ clutter_actor_raise_top (clutterraise[raise_no]); + raise_no = !raise_no; + return TRUE; + } +@@ -202,8 +202,8 @@ + + clutter_timeline_start (timeline); + +- raise[0] = rect; +- raise[1] = hand; ++ clutterraise[0] = rect; ++ clutterraise[1] = hand; + g_timeout_add (2000, raise_top, NULL); + + clutter_main (); diff --git a/meta/recipes-graphics/clutter/clutter_git.bb b/meta/recipes-graphics/clutter/clutter_git.bb new file mode 100644 index 00000000000..a20515ec5eb --- /dev/null +++ b/meta/recipes-graphics/clutter/clutter_git.bb @@ -0,0 +1,17 @@ +require clutter.inc +require clutter-package.inc + +PV = "1.0.0+git${SRCPV}" +PR = "r8" + +SRC_URI = "git://git.clutter-project.org/clutter.git;protocol=git;branch=master \ + file://enable_tests-654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673.patch;patch=1;rev=654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673 \ + file://enable_tests.patch;patch=1;notrev=654c26a1301c9bc5f8e3e5e3b68af5eb1b2e0673 " +S = "${WORKDIR}/git" + +BASE_CONF += "--disable-introspection" + +do_configure_prepend () { + # Disable DOLT + sed -i -e 's/^DOLT//' ${S}/configure.ac +}
\ No newline at end of file diff --git a/meta/recipes-graphics/clutter/moblin-proto/fix-shader-and-callbacks.patch b/meta/recipes-graphics/clutter/moblin-proto/fix-shader-and-callbacks.patch new file mode 100644 index 00000000000..4a3eddb8cdc --- /dev/null +++ b/meta/recipes-graphics/clutter/moblin-proto/fix-shader-and-callbacks.patch @@ -0,0 +1,44 @@ +diff --git a/Makefile b/Makefile +index e05b5b7..c348a1e 100644 +--- a/Makefile ++++ b/Makefile +@@ -64,7 +64,7 @@ HFILES = $(wildcard *.h) + %.o: %.c $(HFILES) + $(CC) -g $(CFLAGS) $(INCS) -c $< -o$@ + $(BINARY): $(OBJECTS) +- $(CXX) -o $@ $(OBJECTS) $(LIBS) ++ $(CXX) -rdynamic -o $@ $(OBJECTS) $(LIBS) + + #$(BINARY): $(CFILES) + # $(LD) $(CFLAGS) $(INCS) $(CFILES) $(LIBS) -o $@ +diff --git a/moblin-desktop.c b/moblin-desktop.c +index 6dd4f2c..fb9d231 100644 +--- a/moblin-desktop.c ++++ b/moblin-desktop.c +@@ -103,6 +103,8 @@ void moblin_blur (void) + if (desktop->maincopy) + return; + ++ if (clutter_feature_available (CLUTTER_FEATURE_SHADERS_GLSL)) ++ { + #if 0 + desktop->maincopy = clutter_texture_new_from_actor (desktop->mainstuff); + #else +@@ -158,6 +160,17 @@ void moblin_blur (void) + 1.0f / moblin_desktop_width ()); + } + clutter_actor_set_shader_param (desktop->maincopy, "radius", 3.0); ++ } ++ else ++ { ++ ClutterColor clr= { 0x44, 0x44, 0x44, 0x77 }; ++ guint w, h; ++ ++ desktop->maincopy = clutter_rectangle_new_with_color (&clr); ++ clutter_actor_get_size (desktop->mainstuff, &w, &h); ++ clutter_actor_set_size (desktop->maincopy, w, h); ++ clutter_group_add (desktop->copyholder, desktop->maincopy); ++ } + } + + void moblin_unblur (void) diff --git a/meta/recipes-graphics/clutter/moblin-proto/fix.patch b/meta/recipes-graphics/clutter/moblin-proto/fix.patch new file mode 100644 index 00000000000..8bde67762c9 --- /dev/null +++ b/meta/recipes-graphics/clutter/moblin-proto/fix.patch @@ -0,0 +1,22 @@ +Index: git/Makefile +=================================================================== +--- git.orig/Makefile 2008-08-11 22:49:48.000000000 +0100 ++++ git/Makefile 2008-08-12 12:16:52.000000000 +0100 +@@ -15,7 +15,7 @@ + + SCP_DESTINATION=pug.vpn:tmp + +-BINARY=$(shell basename `pwd`)# ++BINARY=moblin-proto + PACKAGE=../$(BINARY).tar.bz2 # you can use both .gz and .bz2 as extension here + + #CFLAGS= -Wall -I /home/pippin/src/clutter-box2d/clutter-box2d +@@ -61,7 +61,7 @@ + %.o: %.c $(HFILES) + $(CC) -g $(CFLAGS) $(INCS) -c $< -o$@ + $(BINARY): $(OBJECTS) +- $(CC) -o $@ $(OBJECTS) $(LIBS) ++ $(CXX) -o $@ $(OBJECTS) $(LIBS) + + #$(BINARY): $(CFILES) + # $(LD) $(CFLAGS) $(INCS) $(CFILES) $(LIBS) -o $@ diff --git a/meta/recipes-graphics/clutter/moblin-proto/paths.patch b/meta/recipes-graphics/clutter/moblin-proto/paths.patch new file mode 100644 index 00000000000..d241c8ff713 --- /dev/null +++ b/meta/recipes-graphics/clutter/moblin-proto/paths.patch @@ -0,0 +1,15 @@ +diff --git a/moblin-desktop.h b/moblin-desktop.h +index 880a9ad..3d51a14 100644 +--- a/moblin-desktop.h ++++ b/moblin-desktop.h +@@ -29,8 +29,8 @@ + #define __MAIN_H__ + + +-#define ASSET_ROOT "./assets/" +-#define JSON_ROOT "./layouts/" ++#define ASSET_ROOT "/usr/share/moblin-proto/assets/" ++#define JSON_ROOT "/usr/share/moblin-proto/layouts/" + + typedef struct + { diff --git a/meta/recipes-graphics/clutter/moblin-proto_git.bb b/meta/recipes-graphics/clutter/moblin-proto_git.bb new file mode 100644 index 00000000000..b86d6223853 --- /dev/null +++ b/meta/recipes-graphics/clutter/moblin-proto_git.bb @@ -0,0 +1,19 @@ +DEPENDS = "clutter-box2d" + +PV = "0.0+git${SRCPV}" +PR = "r2" + +SRC_URI = "git://moblin.org/repos/users/pippin/prototype.git/;protocol=http \ + file://paths.patch;patch=1 \ + file://fix-shader-and-callbacks.patch;patch=1" + +S = "${WORKDIR}/git" + +do_install () { + install -d ${D}${bindir} + install ${S}/moblin-proto ${D}${bindir} + + install -d ${D}${datadir}/moblin-proto/ + cp -a ${S}/assets ${D}${datadir}/moblin-proto/ + cp -a ${S}/layouts ${D}${datadir}/moblin-proto/ +} diff --git a/meta/recipes-graphics/clutter/table.inc b/meta/recipes-graphics/clutter/table.inc new file mode 100644 index 00000000000..dc949172b5b --- /dev/null +++ b/meta/recipes-graphics/clutter/table.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Table Clutter Demo" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +DEPENDS = "clutter-gst-0.6 gnome-vfs" + +inherit autotools pkgconfig + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${S}/table ${D}${bindir}/table +} + diff --git a/meta/recipes-graphics/clutter/table/fixes.patch b/meta/recipes-graphics/clutter/table/fixes.patch new file mode 100644 index 00000000000..a7cdc437134 --- /dev/null +++ b/meta/recipes-graphics/clutter/table/fixes.patch @@ -0,0 +1,14 @@ +Index: table/Makefile +=================================================================== +--- table.orig/Makefile 2007-07-10 13:24:18.000000000 +0100 ++++ table/Makefile 2007-07-10 13:28:10.000000000 +0100 +@@ -8,7 +8,7 @@ all: table + + + table: table.o clutter-dominatrix.o clutter-video-player.o +- $(CC) -g -Wall $(CFLAGS) -o $@ table.o clutter-dominatrix.o clutter-video-player.o $(LIBS) ++ $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) -o $@ table.o clutter-dominatrix.o clutter-video-player.o $(LIBS) + + clean: + rm -fr *.o table +\ No newline at end of file diff --git a/meta/recipes-graphics/clutter/table_git.bb b/meta/recipes-graphics/clutter/table_git.bb new file mode 100644 index 00000000000..5aa4153c1ab --- /dev/null +++ b/meta/recipes-graphics/clutter/table_git.bb @@ -0,0 +1,11 @@ +require table.inc + +PV = "0.3.0+git${SRCPV}" +PR = "r1" + +SRC_URI = "git://git.clutter-project.org/toys.git;protocol=git \ + file://fixes.patch;patch=1" + +S = "${WORKDIR}/git/table" + + diff --git a/meta/recipes-graphics/clutter/tidy.inc b/meta/recipes-graphics/clutter/tidy.inc new file mode 100644 index 00000000000..3fa387c0493 --- /dev/null +++ b/meta/recipes-graphics/clutter/tidy.inc @@ -0,0 +1,20 @@ +DESCRIPTION = "Tidy library" +HOMEPAGE = "http://www.clutter-project.org/" +LICENSE = "LGPL" + +STDDEPENDS = "clutter-0.8" +BASE_CONF = "--disable-gtk-doc" + +DEPENDS = "${STDDEPENDS}" +EXTRA_OECONF = "${BASE_CONF}" + +inherit autotools pkgconfig + +PACKAGES =+ "tidy-examples" +FILES_tidy-examples = "${bindir}/test-*" + +do_configure_prepend() { + touch ${S}/gtk-doc.make + sed -i s:docs/reference/Makefile::g ${S}/configure.ac + sed -i s:docs::g ${S}/Makefile.am +} diff --git a/meta/recipes-graphics/clutter/tidy/autofoo.patch b/meta/recipes-graphics/clutter/tidy/autofoo.patch new file mode 100644 index 00000000000..7f54a3372a1 --- /dev/null +++ b/meta/recipes-graphics/clutter/tidy/autofoo.patch @@ -0,0 +1,11 @@ +Index: tidy/doc/reference/Makefile.am +=================================================================== +--- tidy.orig/doc/reference/Makefile.am 2007-11-06 19:36:56.000000000 +0000 ++++ tidy/doc/reference/Makefile.am 2007-11-06 19:37:02.000000000 +0000 +@@ -77,4 +77,4 @@ include $(top_srcdir)/gtk-doc.make + + # Other files to distribute + # e.g. EXTRA_DIST += version.xml.in +-EXTRA_DIST += version.xml.in ++EXTRA_DIST = version.xml.in + diff --git a/meta/recipes-graphics/clutter/tidy/tidy-enable-tests.patch b/meta/recipes-graphics/clutter/tidy/tidy-enable-tests.patch new file mode 100644 index 00000000000..c5e1660c545 --- /dev/null +++ b/meta/recipes-graphics/clutter/tidy/tidy-enable-tests.patch @@ -0,0 +1,20 @@ +Index: trunk/tests/Makefile.am +=================================================================== +--- trunk.orig/tests/Makefile.am 2008-03-04 12:22:10.000000000 +0000 ++++ trunk/tests/Makefile.am 2008-03-04 12:23:46.000000000 +0000 +@@ -1,4 +1,4 @@ +-noinst_PROGRAMS = \ ++bin_PROGRAMS = \ + test-button \ + test-finger-scroll \ + test-list-view \ +@@ -14,6 +14,9 @@ + test-grow \ + test-viewport + ++test_texture_framedir = $(pkgdatadir) ++test_texture_frame_DATA = frame.png ++ + INCLUDES = -I$(top_srcdir) + LDADD = $(top_builddir)/tidy/libtidy-1.0.la + diff --git a/meta/recipes-graphics/clutter/tidy_git.bb b/meta/recipes-graphics/clutter/tidy_git.bb new file mode 100644 index 00000000000..178526027ea --- /dev/null +++ b/meta/recipes-graphics/clutter/tidy_git.bb @@ -0,0 +1,10 @@ +require tidy.inc + +PV = "0.1.0+git${SRCPV}" +PR = "r7" + +SRC_URI = "git://git.clutter-project.org/tidy.git;protocol=git \ + file://tidy-enable-tests.patch;patch=1" + +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/drm/libdrm-2.4.21/installtests.patch b/meta/recipes-graphics/drm/libdrm-2.4.21/installtests.patch new file mode 100644 index 00000000000..9d6a168bbca --- /dev/null +++ b/meta/recipes-graphics/drm/libdrm-2.4.21/installtests.patch @@ -0,0 +1,43 @@ +Index: libdrm-2.4.7/tests/Makefile.am +=================================================================== +--- libdrm-2.4.7.orig/tests/Makefile.am 2009-04-09 20:16:35.000000000 +0100 ++++ libdrm-2.4.7/tests/Makefile.am 2009-04-17 12:35:14.000000000 +0100 +@@ -6,10 +6,11 @@ + + LDADD = $(top_builddir)/libdrm.la + +-check_PROGRAMS = \ ++bin_PROGRAMS = \ + dristat \ + drmstat + ++check_PROGRAMS = + SUBDIRS = + + if HAVE_LIBKMS +Index: libdrm-2.4.7/tests/modeprint/Makefile.am +=================================================================== +--- libdrm-2.4.7.orig/tests/modeprint/Makefile.am 2009-02-17 19:52:37.000000000 +0000 ++++ libdrm-2.4.7/tests/modeprint/Makefile.am 2009-04-17 12:35:32.000000000 +0100 +@@ -3,7 +3,7 @@ + -I$(top_srcdir)/libdrm/intel/ \ + -I$(top_srcdir)/libdrm + +-noinst_PROGRAMS = \ ++bin_PROGRAMS = \ + modeprint + + modeprint_SOURCES = \ +Index: libdrm-2.4.7/tests/modetest/Makefile.am +=================================================================== +--- libdrm-2.4.7.orig/tests/modetest/Makefile.am 2009-02-17 19:52:37.000000000 +0000 ++++ libdrm-2.4.7/tests/modetest/Makefile.am 2009-04-17 12:35:42.000000000 +0100 +@@ -4,7 +4,7 @@ + -I$(top_srcdir)/libdrm \ + $(CAIRO_CFLAGS) + +-noinst_PROGRAMS = \ ++bin_PROGRAMS = \ + modetest + + modetest_SOURCES = \ diff --git a/meta/recipes-graphics/drm/libdrm.inc b/meta/recipes-graphics/drm/libdrm.inc new file mode 100644 index 00000000000..4f153ff7f75 --- /dev/null +++ b/meta/recipes-graphics/drm/libdrm.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "userspace library for accessing the DRM(direct rendering manager)" +HOMEPAGE = "http://dri.freedesktop.org" +SECTION = "x11/base" +LICENSE = "MIT" +SRC_URI = "http://dri.freedesktop.org/libdrm/libdrm-${PV}.tar.bz2" +PROVIDES = "drm" +DEPENDS = "libpthread-stubs udev cairo virtual/libx11" + +inherit autotools pkgconfig + +PACKAGES =+ "libdrm-tests" +FILES_libdrm-tests = "${bindir}/dr* ${bindir}/mode*" + +LEAD_SONAME = "libdrm.so" diff --git a/meta/recipes-graphics/drm/libdrm_2.4.21.bb b/meta/recipes-graphics/drm/libdrm_2.4.21.bb new file mode 100644 index 00000000000..97ca069004b --- /dev/null +++ b/meta/recipes-graphics/drm/libdrm_2.4.21.bb @@ -0,0 +1,4 @@ +require libdrm.inc + +SRC_URI += "file://installtests.patch" +PR = "r0" diff --git a/meta/recipes-graphics/drm/libdrm_git.bb b/meta/recipes-graphics/drm/libdrm_git.bb new file mode 100644 index 00000000000..d80dd5f4338 --- /dev/null +++ b/meta/recipes-graphics/drm/libdrm_git.bb @@ -0,0 +1,8 @@ +require libdrm.inc + +SRC_URI = "git://anongit.freedesktop.org/git/mesa/drm;protocol=git" + +S = ${WORKDIR}/git + +PV = "2.4.15+git${SRCREV}" +PR = "r0" diff --git a/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/97_fontconfig b/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/97_fontconfig new file mode 100644 index 00000000000..2993959dbbe --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/97_fontconfig @@ -0,0 +1 @@ +d root root 0755 /var/cache/fontconfig none diff --git a/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/fix-pkgconfig.patch b/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/fix-pkgconfig.patch new file mode 100644 index 00000000000..7fec1e91042 --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig-2.8.0/fix-pkgconfig.patch @@ -0,0 +1,13 @@ +--- + fontconfig.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- fontconfig-2.8.0.orig/fontconfig.pc.in ++++ fontconfig-2.8.0/fontconfig.pc.in +@@ -7,5 +7,5 @@ + Description: Font configuration and customization library + Version: @VERSION@ + Libs: -L${libdir} -lfontconfig +-Libs.private: @LIBXML2_LIBS@ @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@ ++Libs.private: @LIBXML2_LIBS@ @EXPAT_LIBS@ -L{libdir} -lfreetype @ICONV_LIBS@ + Cflags: -I${includedir} diff --git a/meta/recipes-graphics/fontconfig/fontconfig-native_2.8.0.bb b/meta/recipes-graphics/fontconfig/fontconfig-native_2.8.0.bb new file mode 100644 index 00000000000..03a1bc86c22 --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig-native_2.8.0.bb @@ -0,0 +1,12 @@ +require fontconfig_${PV}.bb +inherit native +DEPENDS = "freetype-native expat-native zlib-native" + +EXTRA_OEMAKE = "" +EXTRA_OECONF = "${@[' --disable-docs',' --disable-docs --with-freetype-config=%s/freetype-config' % bb.data.getVar('STAGING_BINDIR', d, 1)][os.path.isfile('%s/freetype-config' % bb.data.getVar('STAGING_BINDIR', d, 1))]}" + +do_install_append () { + install -d ${D}${bindir}/ + install fc-lang/fc-lang ${D}${bindir}/ + install fc-glyphname/fc-glyphname ${D}${bindir}/ +} diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.8.0.bb b/meta/recipes-graphics/fontconfig/fontconfig_2.8.0.bb new file mode 100644 index 00000000000..e0403ecb3c5 --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.8.0.bb @@ -0,0 +1,81 @@ +DESCRIPTION = "A library for configuring and customizing font access." +HOMEPAGE = "http://www.fontconfig.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig" + +LICENSE = "MIT-style & MIT & Public Domain" +LIC_FILES_CHKSUM = "file://COPYING;md5=f3ad4145dea6ca7efa2f1bee8165a7a1 \ + file://src/fcfreetype.c;endline=45;md5=bc3dd139e2f7245a02fde5545b203a6f \ + file://src/fccache.c;beginline=1020;endline=1035;md5=0326cfeb4a7333dd4dd25fbbc4b9f27f" + +SECTION = "libs" + +DEPENDS = "expat freetype zlib" + +PR = "r1" + +SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ + file://fix-pkgconfig.patch \ + file://97_fontconfig" + +PACKAGES =+ "fontconfig-utils-dbg fontconfig-utils " +FILES_fontconfig-utils-dbg = "${bindir}/*.dbg" +FILES_fontconfig-utils = "${bindir}/*" + +# Work around past breakage in debian.bbclass +RPROVIDES_fontconfig-utils = "libfontconfig-utils" +RREPLACES_fontconfig-utils = "libfontconfig-utils" +RCONFLICTS_fontconfig-utils = "libfontconfig-utils" +DEBIAN_NOAUTONAME_fontconfig-utils = "1" + +PARALLEL_MAKE = "" + +inherit autotools pkgconfig + +export HASDOCBOOK="no" + +EXTRA_OECONF = " --disable-docs --with-arch=${HOST_ARCH}" +EXTRA_OEMAKE = "FC_LANG=fc-lang FC_GLYPHNAME=fc-glyphname" + +# The tarball has some of the patched files as read only, which +# patch doesn't like at all + +fontconfig_do_unpack() { + chmod -R u+rw ${S} +} + +python do_unpack () { + bb.build.exec_func('base_do_unpack', d) + bb.build.exec_func('fontconfig_do_unpack', d) +} + +BUILD_CFLAGS += " -I${STAGING_INCDIR}/freetype2" + +do_configure_append () { + sed -i 's|LDFLAGS =.*|LDFLAGS =|' fc-case/Makefile + sed -i 's|LDFLAGS =.*|LDFLAGS =|' fc-glyphname/Makefile + sed -i 's|LDFLAGS =.*|LDFLAGS =|' fc-lang/Makefile + sed -i 's|LDFLAGS =.*|LDFLAGS =|' fc-arch/Makefile + + sed -i 's|CFLAGS =.*|CFLAGS =${BUILD_CFLAGS}|' fc-case/Makefile + sed -i 's|CFLAGS =.*|CFLAGS =${BUILD_CFLAGS}|' fc-glyphname/Makefile + sed -i 's|CFLAGS =.*|CFLAGS =${BUILD_CFLAGS}|' fc-lang/Makefile + sed -i 's|CFLAGS =.*|CFLAGS =${BUILD_CFLAGS}|' fc-arch/Makefile + + sed -i 's|CPPFLAGS =.*|CPPFLAGS =${BUILD_CPPFLAGS}|' fc-case/Makefile + sed -i 's|CPPFLAGS =.*|CPPFLAGS =${BUILD_CPPFLAGS}|' fc-glyphname/Makefile + sed -i 's|CPPFLAGS =.*|CPPFLAGS =${BUILD_CPPFLAGS}|' fc-lang/Makefile + sed -i 's|CPPFLAGS =.*|CPPFLAGS =${BUILD_CPPFLAGS}|' fc-arch/Makefile + + sed -i 's|CXXFLAGS =.*|CFLAGS =${BUILD_CXXFLAGS}|' fc-case/Makefile + sed -i 's|CXXFLAGS =.*|CFLAGS =${BUILD_CXXFLAGS}|' fc-glyphname/Makefile + sed -i 's|CXXFLAGS =.*|CFLAGS =${BUILD_CXXFLAGS}|' fc-lang/Makefile + sed -i 's|CXXFLAGS =.*|CFLAGS =${BUILD_CXXFLAGS}|' fc-arch/Makefile + +} + +do_install_append() { + install -d ${D}${sysconfdir}/default/volatiles + install -m 0644 ${WORKDIR}/97_fontconfig ${D}${sysconfdir}/default/volatiles + rmdir ${D}${localstatedir}/cache/fontconfig + rmdir ${D}${localstatedir}/cache/ +} diff --git a/meta/recipes-graphics/freetype/freetype-2.3.12/no-hardcode.patch b/meta/recipes-graphics/freetype/freetype-2.3.12/no-hardcode.patch new file mode 100644 index 00000000000..44ae450a149 --- /dev/null +++ b/meta/recipes-graphics/freetype/freetype-2.3.12/no-hardcode.patch @@ -0,0 +1,11 @@ +--- freetype-2.1.10/builds/unix/freetype-config.in.old 2006-05-01 12:39:20.000000000 +0100 ++++ freetype-2.1.10/builds/unix/freetype-config.in 2006-05-01 12:39:34.000000000 +0100 +@@ -16,7 +16,7 @@ + libdir=@libdir@ + enable_shared=@enable_shared@ + wl=@wl@ +-hardcode_libdir_flag_spec='@hardcode_libdir_flag_spec@' ++hardcode_libdir_flag_spec='' + + usage() + { diff --git a/meta/recipes-graphics/freetype/freetype_2.3.12.bb b/meta/recipes-graphics/freetype/freetype_2.3.12.bb new file mode 100644 index 00000000000..da62ffb3b2c --- /dev/null +++ b/meta/recipes-graphics/freetype/freetype_2.3.12.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "Freetype font rendering library" +HOMEPAGE = "http://www.freetype.org/" +BUGTRACKER = "https://savannah.nongnu.org/bugs/?group=freetype" + +LICENSE = "FreeTypeLicense | GPLv2+" +LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=8bc1a580aeb518100d00a2dd29e68edf \ + file://docs/FTL.TXT;md5=d479e83797f699fe873b38dadd0fcd4c \ + file://docs/GPL.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" + +SECTION = "libs" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/freetype/freetype-${PV}.tar.bz2 \ + file://no-hardcode.patch" + +S = "${WORKDIR}/freetype-${PV}" + +inherit autotools pkgconfig binconfig + +LIBTOOL = "${S}/builds/unix/${HOST_SYS}-libtool" +EXTRA_OEMAKE = "'LIBTOOL=${LIBTOOL}'" +EXTRA_OEMAKE_virtclass-native = "" +EXTRA_OECONF = "--without-zlib" + +do_configure() { + cd builds/unix + libtoolize --force --copy + aclocal -I . + gnu-configize --force + autoconf + cd ${S} + oe_runconf +} + +do_configure_virtclass-native() { + (cd builds/unix && gnu-configize) || die "failure running gnu-configize" + oe_runconf +} + +do_compile_prepend() { + ${BUILD_CC} -o objs/apinames src/tools/apinames.c +} + +FILES_${PN} = "${libdir}/lib*${SOLIBS}" +FILES_${PN}-dev += "${bindir}" + +BBCLASSEXTEND = "native" + diff --git a/meta/recipes-graphics/libfakekey/libfakekey_svn.bb b/meta/recipes-graphics/libfakekey/libfakekey_svn.bb new file mode 100644 index 00000000000..634fd4ea0f6 --- /dev/null +++ b/meta/recipes-graphics/libfakekey/libfakekey_svn.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "libfakekey" +HOMEPAGE = "http://matchbox-project.org/" +BUGTRACKER = "http://bugzilla.openedhand.com/" + +LICENSE = "LGPLv2+" + +DEPENDS = "libxtst" +SECTION = "x11/wm" +PV = "0.0+svnr${SRCREV}" +PR = "r1" + +SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http" + +S = "${WORKDIR}/${PN}" + +inherit autotools pkgconfig gettext diff --git a/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch b/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch new file mode 100644 index 00000000000..ab9cdc74a5b --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch @@ -0,0 +1,258 @@ +--- libmatchbox/libmb/mbpixbuf.c.orig 2007-05-04 14:41:55.000000000 +0100 ++++ libmatchbox/libmb/mbpixbuf.c 2007-05-04 14:41:55.000000000 +0100 +@@ -710,46 +710,19 @@ + return colnum; + } + +- +-static unsigned long +-mb_pixbuf_get_pixel(MBPixbuf *pb, int r, int g, int b, int a) ++/* ++ * Split the mb_pixbuf_get_pixel() function into several specialized ++ * functions which we will inline; this allows us to optimize ++ * mb_pixbuf_img_render_to_drawable_with_gc () by taking some of the ++ * decision taking outside of the double loop ++ */ ++ ++/* ++ * Get pixel value for rgb values and pixel depth <= 8 ++ */ ++static inline unsigned long ++mb_pixbuf_get_pixel_le8_rgb (MBPixbuf *pb, int r, int g, int b) + { +- if (pb->depth > 8) +- { +- switch (pb->depth) +- { +- case 15: +- return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3); +- case 16: +- return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3); +- case 24: +- case 32: +- switch (pb->byte_order) +- { +- case BYTE_ORD_24_RGB: +- return ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff); +- case BYTE_ORD_24_RBG: +- return ((r & 0xff) << 16) | ((b & 0xff) << 8) | (g & 0xff); +- case BYTE_ORD_24_BRG: +- return ((b & 0xff) << 16) | ((r & 0xff) << 8) | (g & 0xff); +- case BYTE_ORD_24_BGR: +- return ((b & 0xff) << 16) | ((g & 0xff) << 8) | (r & 0xff); +- case BYTE_ORD_24_GRB: +- return ((g & 0xff) << 16) | ((r & 0xff) << 8) | (b & 0xff); +- case BYTE_ORD_24_GBR: +- return ((g & 0xff) << 16) | ((b & 0xff) << 8) | (r & 0xff); +- case BYTE_ORD_32_ARGB: +- return (a << 24) | (r << 16) | (g << 8) | b; +- default: +- return 0; +- } +- default: +- return 0; +- } +- return 0; +- } +- +- /* pb->depth <= 8 */ + switch(pb->vis->class) + { + case PseudoColor: +@@ -794,6 +767,111 @@ + return 0; + } + ++/* ++ * Get pixel value from a pointer to 16bbp value for pixel depth <= 8 ++ * and advance the pointer ++ */ ++static inline unsigned long ++mb_pixbuf_get_pixel_le8_16bpp_advance (MBPixbuf *pb, unsigned char ** p) ++{ ++ unsigned short s = SHORT_FROM_2BYTES(*p); ++ int r, b, g; ++ ++ r = (s & 0xf800) >> 8; ++ g = (s & 0x07e0) >> 3; ++ b = (s & 0x001f) << 3; ++ ++ *p += 2; ++ ++ return mb_pixbuf_get_pixel_le8_rgb (pb, r, g, b); ++} ++ ++/* ++ * Get pixel value for rgba values and pixel depth > 8 ++ * ++ */ ++static inline unsigned long ++mb_pixbuf_get_pixel_gt8_rgba (MBPixbuf *pb, int r, int g, int b, int a) ++{ ++ switch (pb->depth) ++ { ++ case 15: ++ switch (pb->byte_order) ++ { ++ case BYTE_ORD_24_RGB: ++ return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3); ++ case BYTE_ORD_24_BGR: ++ return ((b & 0xf8) << 7) | ((g & 0xf8) << 2) | ((r & 0xf8) >> 3); ++ } ++ case 16: ++ switch (pb->byte_order) ++ { ++ case BYTE_ORD_24_RGB: ++ return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3); ++ case BYTE_ORD_24_BGR: ++ return ((b & 0xf8) << 8) | ((g & 0xfc) << 3) | ((r & 0xf8) >> 3); ++ } ++ case 24: ++ case 32: ++ switch (pb->byte_order) ++ { ++ case BYTE_ORD_24_RGB: ++ return ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff); ++ case BYTE_ORD_24_RBG: ++ return ((r & 0xff) << 16) | ((b & 0xff) << 8) | (g & 0xff); ++ case BYTE_ORD_24_BRG: ++ return ((b & 0xff) << 16) | ((r & 0xff) << 8) | (g & 0xff); ++ case BYTE_ORD_24_BGR: ++ return ((b & 0xff) << 16) | ((g & 0xff) << 8) | (r & 0xff); ++ case BYTE_ORD_24_GRB: ++ return ((g & 0xff) << 16) | ((r & 0xff) << 8) | (b & 0xff); ++ case BYTE_ORD_24_GBR: ++ return ((g & 0xff) << 16) | ((b & 0xff) << 8) | (r & 0xff); ++ case BYTE_ORD_32_ARGB: ++ return (a << 24) | (r << 16) | (g << 8) | b; ++ default: ++ return 0; ++ } ++ default: ++ return 0; ++ } ++} ++ ++/* ++ * Get pixel value from pointer to 16bpp data for pixel depth > 8 ++ * and advance the pointer ++ * ++ * TODO ? We could take the 32bit case out of here, which would allow ++ * to ignore the alpha value for <15, 24>, but we might not gain that ++ * much by this on arm due to the conditional execution. ++ */ ++static inline unsigned long ++mb_pixbuf_get_pixel_gt8_16bpp_advance (MBPixbuf *pb, unsigned char ** p, ++ int has_alpha) ++{ ++ unsigned short s = SHORT_FROM_2BYTES(*p); ++ int r, b, g, a; ++ ++ r = (s & 0xf800) >> 8; ++ g = (s & 0x07e0) >> 3; ++ b = (s & 0x001f) << 3; ++ ++ *p += 2; ++ ++ a = has_alpha ? *(*p)++ : 0xff; ++ ++ return mb_pixbuf_get_pixel_gt8_rgba (pb, r, g, b, a); ++} ++ ++static inline unsigned long ++mb_pixbuf_get_pixel(MBPixbuf *pb, int r, int g, int b, int a) ++{ ++ if (pb->depth > 8) ++ return mb_pixbuf_get_pixel_gt8_rgba (pb, r, g, b, a); ++ ++ return mb_pixbuf_get_pixel_le8_rgb (pb, r, g, b); ++} ++ + unsigned long + mb_pixbuf_lookup_x_pixel(MBPixbuf *pb, int r, int g, int b, int a) + { +@@ -1825,7 +1903,6 @@ + mb_pixbuf_img_render_to_drawable_with_gc(pb, img, drw, drw_x, drw_y, pb->gc); + } + +- + void + mb_pixbuf_img_render_to_drawable_with_gc(MBPixbuf *pb, + MBPixbufImage *img, +@@ -1883,31 +1960,57 @@ + + if (pb->internal_bytespp == 2) + { +- for(y=0; y<img->height; y++) +- for(x=0; x<img->width; x++) +- { +- /* Below is potentially dangerous. +- */ +- pixel = ( *p | (*(p+1) << 8)); +- +- p += ((img->has_alpha) ? 3 : 2); +- +- XPutPixel(img->ximg, x, y, pixel); +- } ++ if (pb->depth > 8) ++ { ++ for(y=0; y<img->height; y++) ++ for(x=0; x<img->width; x++) ++ { ++ pixel = mb_pixbuf_get_pixel_gt8_16bpp_advance(pb, &p, ++ img->has_alpha); ++ XPutPixel(img->ximg, x, y, pixel); ++ } ++ } ++ else ++ { ++ for(y=0; y<img->height; y++) ++ for(x=0; x<img->width; x++) ++ { ++ pixel = mb_pixbuf_get_pixel_le8_16bpp_advance(pb, &p); ++ XPutPixel(img->ximg, x, y, pixel); ++ } ++ } + } + else + { +- for(y=0; y<img->height; y++) ++ if (pb->depth > 8) + { +- for(x=0; x<img->width; x++) ++ for(y=0; y<img->height; y++) + { +- r = ( *p++ ); +- g = ( *p++ ); +- b = ( *p++ ); +- a = ((img->has_alpha) ? *p++ : 0xff); ++ for(x=0; x<img->width; x++) ++ { ++ r = ( *p++ ); ++ g = ( *p++ ); ++ b = ( *p++ ); ++ a = ((img->has_alpha) ? *p++ : 0xff); + +- pixel = mb_pixbuf_get_pixel(pb, r, g, b, a); +- XPutPixel(img->ximg, x, y, pixel); ++ pixel = mb_pixbuf_get_pixel_gt8_rgba(pb, r, g, b, a); ++ XPutPixel(img->ximg, x, y, pixel); ++ } ++ } ++ } ++ else ++ { ++ for(y=0; y<img->height; y++) ++ { ++ for(x=0; x<img->width; x++) ++ { ++ r = ( *p++ ); ++ g = ( *p++ ); ++ b = ( *p++ ); ++ ++ pixel = mb_pixbuf_get_pixel_le8_rgb(pb, r, g, b); ++ XPutPixel(img->ximg, x, y, pixel); ++ } + } + } + } diff --git a/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch b/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch new file mode 100644 index 00000000000..09a03478099 --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch @@ -0,0 +1,36 @@ +Index: libmb/mbpixbuf.c +=================================================================== +--- libmatchbox/libmb.orig/mbpixbuf.c 2006-02-01 12:45:55.000000000 +0000 ++++ libmatchbox/libmb/mbpixbuf.c 2006-03-11 15:20:47.000000000 +0000 +@@ -716,7 +716,13 @@ + case 15: + return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3); + case 16: +- return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3); ++ switch (pb->byte_order) ++ { ++ case BYTE_ORD_24_RGB: ++ return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3); ++ case BYTE_ORD_24_BGR: ++ return ((b & 0xf8) << 8) | ((g & 0xfc) << 3) | ((r & 0xf8) >> 3); ++ } + case 24: + case 32: + switch (pb->byte_order) +@@ -1880,12 +1886,11 @@ + for(y=0; y<img->height; y++) + for(x=0; x<img->width; x++) + { +- /* Below is potentially dangerous. +- */ +- pixel = ( *p | (*(p+1) << 8)); ++ internal_16bpp_pixel_to_rgb(p, r, g, b); ++ internal_16bpp_pixel_next(p); ++ a = ((img->has_alpha) ? *p++ : 0xff); + +- p += ((img->has_alpha) ? 3 : 2); +- ++ pixel = mb_pixbuf_get_pixel(pb, r, g, b, a); + XPutPixel(img->ximg, x, y, pixel); + } + } diff --git a/meta/recipes-graphics/libmatchbox/files/autofoo.patch b/meta/recipes-graphics/libmatchbox/files/autofoo.patch new file mode 100644 index 00000000000..ad3be578e4a --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/autofoo.patch @@ -0,0 +1,19 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- libmatchbox-1.5/configure.ac~autofoo 2004-12-21 12:56:46.000000000 -0500 ++++ libmatchbox-1.5/configure.ac 2005-01-18 16:40:04.421179624 -0500 +@@ -1,10 +1,10 @@ + AC_PREREQ(2.53) + AC_INIT([libmatchbox], 1.5, [mallum@handhelds.org]) + AC_CONFIG_SRCDIR([libmb/mbtray.c]) ++AC_CONFIG_AUX_DIR(.) + + AM_INIT_AUTOMAKE() + AM_CONFIG_HEADER([config.h]) +-AC_CONFIG_AUX_DIR(.) + + # Checks for programs. + AC_GNU_SOURCE diff --git a/meta/recipes-graphics/libmatchbox/files/check.m4 b/meta/recipes-graphics/libmatchbox/files/check.m4 new file mode 100644 index 00000000000..97bfd9c478d --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/check.m4 @@ -0,0 +1,133 @@ +dnl AM_PATH_CHECK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS +dnl + +AC_DEFUN(AM_PATH_CHECK, +[ + AC_ARG_WITH(check, + [ --with-check=PATH prefix where check is installed [default=auto]]) + + min_check_version=ifelse([$1], ,0.8.2,$1) + + AC_MSG_CHECKING(for check - version >= $min_check_version) + + if test x$with_check = xno; then + AC_MSG_RESULT(disabled) + ifelse([$3], , AC_MSG_ERROR([disabling check is not supported]), [$3]) + else + if test "x$with_check" != x; then + CHECK_CFLAGS="-I$with_check/include" + CHECK_LIBS="-L$with_check/lib -lcheck" + else + CHECK_CFLAGS="" + CHECK_LIBS="-lcheck" + fi + + ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + + CFLAGS="$CFLAGS $CHECK_CFLAGS" + LIBS="$CHECK_LIBS $LIBS" + + rm -f conf.check-test + AC_TRY_RUN([ +#include <stdio.h> +#include <stdlib.h> + +#include <check.h> + +int main () +{ + int major, minor, micro; + char *tmp_version; + + system ("touch conf.check-test"); + + /* HP/UX 9 (%@#!) writes to sscanf strings */ + tmp_version = strdup("$min_check_version"); + if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + printf("%s, bad version string\n", "$min_check_version"); + return 1; + } + + if ((CHECK_MAJOR_VERSION != check_major_version) || + (CHECK_MINOR_VERSION != check_minor_version) || + (CHECK_MICRO_VERSION != check_micro_version)) + { + printf("\n*** The check header file (version %d.%d.%d) does not match\n", + CHECK_MAJOR_VERSION, CHECK_MINOR_VERSION, CHECK_MICRO_VERSION); + printf("*** the check library (version %d.%d.%d).\n", + check_major_version, check_minor_version, check_micro_version); + return 1; + } + + if ((check_major_version > major) || + ((check_major_version == major) && (check_minor_version > minor)) || + ((check_major_version == major) && (check_minor_version == minor) && (check_micro_version >= micro))) + { + return 0; + } + else + { + printf("\n*** An old version of check (%d.%d.%d) was found.\n", + check_major_version, check_minor_version, check_micro_version); + printf("*** You need a version of check being at least %d.%d.%d.\n", major, minor, micro); + printf("***\n"); + printf("*** If you have already installed a sufficiently new version, this error\n"); + printf("*** probably means that the wrong copy of the check library and header\n"); + printf("*** file is being found. Rerun configure with the --with-check=PATH option\n"); + printf("*** to specify the prefix where the correct version was installed.\n"); + } + + return 1; +} +],, no_check=yes, [echo $ac_n "cross compiling; assumed OK... $ac_c"]) + + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + + if test "x$no_check" = x ; then + AC_MSG_RESULT(yes) + ifelse([$2], , :, [$2]) + else + AC_MSG_RESULT(no) + if test -f conf.check-test ; then + : + else + echo "*** Could not run check test program, checking why..." + CFLAGS="$CFLAGS $CHECK_CFLAGS" + LIBS="$CHECK_LIBS $LIBS" + AC_TRY_LINK([ +#include <stdio.h> +#include <stdlib.h> + +#include <check.h> +], , [ echo "*** The test program compiled, but did not run. This usually means" + echo "*** that the run-time linker is not finding check. You'll need to set your" + echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" + echo "*** to the installed location Also, make sure you have run ldconfig if that" + echo "*** is required on your system" + echo "***" + echo "*** If you have an old version installed, it is best to remove it, although" + echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], + [ echo "*** The test program failed to compile or link. See the file config.log for" + echo "*** the exact error that occured." ]) + + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + fi + + CHECK_CFLAGS="" + CHECK_LIBS="" + + rm -f conf.check-test + ifelse([$3], , AC_MSG_ERROR([check not found]), [$3]) + fi + + AC_SUBST(CHECK_CFLAGS) + AC_SUBST(CHECK_LIBS) + + rm -f conf.check-test + + fi +]) diff --git a/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch b/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch new file mode 100644 index 00000000000..083d32a04f0 --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch @@ -0,0 +1,79 @@ +--- + configure.ac | 15 +++++++-------- + libmb.pc.in | 2 +- + 2 files changed, 8 insertions(+), 9 deletions(-) + +Index: libmatchbox-1.9/configure.ac +=================================================================== +--- libmatchbox-1.9.orig/configure.ac 2007-11-11 22:26:43.000000000 +0000 ++++ libmatchbox-1.9/configure.ac 2007-11-11 22:52:09.000000000 +0000 +@@ -84,6 +84,7 @@ if test $have_libx11pc = yes; then + xft_pkg=xft + SUPPORTS_XFT=1 + AC_DEFINE(USE_XFT, [1], [Use Xft]) ++ XFT_REQUIRED="xft" + fi + # XXX : xau is missing from x11.pc - workaround is too add here + PKG_CHECK_MODULES(XLIBS, x11 xext $xft_pkg) +@@ -108,6 +109,7 @@ if test x$enable_xft != xno; then + AC_DEFINE(USE_XFT, [1], [Use Xft]) + SUPPORTS_XFT=1 + AC_MSG_RESULT(yes) ++ XFT_REQUIRED="xft" + else + + AC_PATH_PROG(XFT_CONFIG, xft-config, no) +@@ -122,21 +124,17 @@ if test x$enable_xft != xno; then + AC_DEFINE(USE_XFT, [1], [Use Xft]) + SUPPORTS_XFT=1 + AC_MSG_RESULT(yes) ++ MB_EXTRA_CFLAGS="$MB_EXTRA_CFLAGS $XFT_CFLAGS" ++ MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XFT_LIBS" + fi + fi + fi + + XLIBS_CFLAGS="$XLIBS_CLAGS $XFT_CFLAGS" +-XLIBS_LIBS="$X_LIBS $XFT_LIBS -lX11 -lXext" +- +-MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XLIBS_LIBS" ++XLIBS_LIBS="$XLIBS_LIBS $XFT_LIBS -lX11 -lXext" + + fi + +-# do this here for freetype include +-MB_EXTRA_CFLAGS="$MB_EXTRA_CFLAGS $XLIBS_CFLAGS" +- +- + dnl ------ Check for Pango --------------------------------------------------- + + if test x$enable_pango != xno; then +@@ -172,7 +170,7 @@ if test x$enable_png != xno; then + AC_DEFINE(USE_PNG, [1], [Use Png]) + SUPPORTS_PNG=1 + PNG_LIBS="-lpng -lz" +- MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XLIBS_LIBS $PNG_LIBS" ++ MB_EXTRA_LIBS="$MB_EXTRA_LIBS $PNG_LIBS" + else + AC_MSG_WARN([*** Cannot find PNG, disabling support]) + enable_png=no +@@ -340,6 +338,7 @@ AC_SUBST(MB_EXTRA_CFLAGS) + AC_SUBST(XLIBS_REQUIRED) + AC_SUBST(PANGO_REQUIRED) + AC_SUBST(PNG_REQUIRED) ++AC_SUBST(XFT_REQUIRED) + + dnl ------ Below used for mbconfig.h ---------------------------------------- + +Index: libmatchbox-1.9/libmb.pc.in +=================================================================== +--- libmatchbox-1.9.orig/libmb.pc.in 2007-11-11 22:30:47.000000000 +0000 ++++ libmatchbox-1.9/libmb.pc.in 2007-11-11 22:31:01.000000000 +0000 +@@ -7,6 +7,6 @@ Name: libmb + Description: Utility Library used by Matchbox utilities. + Version: @VERSION@ + +-Requires: @XLIBS_REQUIRED@ @PANGO_REQUIRED@ @PNG_REQUIRED@ ++Requires: @XLIBS_REQUIRED@ @PANGO_REQUIRED@ @PNG_REQUIRED@ @XFT_REQUIRED@ + Libs: -L${libdir} -lmb @MB_EXTRA_LIBS@ + Cflags: -I${includedir} @MB_EXTRA_CFLAGS@ diff --git a/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch b/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch new file mode 100644 index 00000000000..990b738e66f --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch @@ -0,0 +1,14 @@ +diff -urNd ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac libmatchbox-1.6/configure.ac +--- ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac 2005-01-11 21:47:39 +00:00 ++++ libmatchbox-1.6/configure.ac 2005-03-14 03:06:25 +00:00 +@@ -2,9 +2,9 @@ + AC_INIT([libmatchbox], 1.6, [mallum@handhelds.org]) + AC_CONFIG_SRCDIR([libmb/mbtray.c]) + ++AC_CONFIG_AUX_DIR(.) + AM_INIT_AUTOMAKE() + AM_CONFIG_HEADER([config.h]) +-AC_CONFIG_AUX_DIR(.) + + # Checks for programs. + AC_GNU_SOURCE diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox.inc b/meta/recipes-graphics/libmatchbox/libmatchbox.inc new file mode 100644 index 00000000000..fdc866fe024 --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/libmatchbox.inc @@ -0,0 +1,17 @@ +DESCRIPTION = "Matchbox window manager core library" +HOMEPAGE = "http://matchbox-project.org/" +BUGTRACKER = "http://bugzilla.openedhand.com/" + +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \ + file://libmb/mbexp.c;endline=20;md5=28c0aef3b23e308464f5dae6a11b0d2f \ + file://libmb/mbdotdesktop.c;endline=21;md5=5a287156b3207e851c1d68d09c439b51" + +SECTION = "x11/libs" +DEPENDS = "virtual/libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--enable-jpeg --enable-expat --enable-xsettings --enable-startup-notification" + +S = "${WORKDIR}/libmatchbox-${PV}" diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb new file mode 100644 index 00000000000..1d7d9c8f44c --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb @@ -0,0 +1,12 @@ +require libmatchbox.inc + +PR = "r7" + +SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/${PV}/${PN}-${PV}.tar.gz \ + file://16bppfixes.patch;patch=1 \ + file://configure_fixes.patch;patch=1 \ + file://check.m4" + +do_configure_prepend () { + cp ${WORKDIR}/check.m4 ${S}/ +} diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb new file mode 100644 index 00000000000..3cdcd324f4c --- /dev/null +++ b/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb @@ -0,0 +1,16 @@ +require libmatchbox.inc + +PV = "1.7+svnr${SRCREV}" +PR = "r4" +DEFAULT_PREFERENCE = "-1" + +SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http \ + file://configure_fixes.patch;patch=1 \ + file://check.m4 \ + file://16bppfixes.patch;patch=1" + +S = "${WORKDIR}/libmatchbox" + +do_configure_prepend () { + cp ${WORKDIR}/check.m4 ${S}/ +} diff --git a/meta/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch b/meta/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch new file mode 100644 index 00000000000..4aaafb2b1e1 --- /dev/null +++ b/meta/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch @@ -0,0 +1,15 @@ +Index: libxklavier-3.7/libxklavier.pc.in +=================================================================== +--- libxklavier-3.7.orig/libxklavier.pc.in 2009-06-10 15:58:46.000000000 +0100 ++++ libxklavier-3.7/libxklavier.pc.in 2009-06-10 16:00:45.000000000 +0100 +@@ -5,7 +5,7 @@ + + Name: libxklavier + Description: libxklavier library +-Requires: libxml-2.0 ++Requires: libxml-2.0 glib-2.0 + Version: @VERSION@ +-Libs: -L${libdir} -lxklavier @GLIB_LIBS@ @XML_LIBS@ +-Cflags: -I${includedir} @GLIB_CFLAGS@ ++Libs: -L${libdir} -lxklavier ++Cflags: -I${includedir} diff --git a/meta/recipes-graphics/libxklavier/libxklavier_3.9.bb b/meta/recipes-graphics/libxklavier/libxklavier_3.9.bb new file mode 100644 index 00000000000..1d9b6f21a40 --- /dev/null +++ b/meta/recipes-graphics/libxklavier/libxklavier_3.9.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "Utility library to make using XKB easier" +SECTION = "x11/libs" +PRIORITY = "optional" +DEPENDS = "iso-codes libxml2 glib-2.0 libxkbfile" +LICENSE = "LGPL" +PR = "r2" + +SRC_URI = "${SOURCEFORGE_MIRROR}/gswitchit/libxklavier-${PV}.tar.bz2 \ + file://pkgconfigfix.patch;patch=1" + +inherit autotools + diff --git a/meta/recipes-graphics/libxsettings-client/libxsettings-client/MIT-style-license b/meta/recipes-graphics/libxsettings-client/libxsettings-client/MIT-style-license new file mode 100644 index 00000000000..628de9830dd --- /dev/null +++ b/meta/recipes-graphics/libxsettings-client/libxsettings-client/MIT-style-license @@ -0,0 +1,22 @@ +/* + * Copyright © 2001 Red Hat, Inc. + * + * 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 Red Hat not be used in advertising or + * publicity pertaining to distribution of the software without specific, + * written prior permission. Red Hat makes no representations about the + * suitability of this software for any purpose. It is provided "as is" + * without express or implied warranty. + * + * RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL RED HAT + * 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. + * + * Author: Owen Taylor, Red Hat, Inc. + */ diff --git a/meta/recipes-graphics/libxsettings-client/libxsettings-client/link-x11.patch b/meta/recipes-graphics/libxsettings-client/libxsettings-client/link-x11.patch new file mode 100644 index 00000000000..ee12f0a5b32 --- /dev/null +++ b/meta/recipes-graphics/libxsettings-client/libxsettings-client/link-x11.patch @@ -0,0 +1,11 @@ +Index: Xsettings-client-0.10/Makefile.am +=================================================================== +--- Xsettings-client-0.10.orig/Makefile.am 2008-02-07 14:49:54.000000000 +0000 ++++ Xsettings-client-0.10/Makefile.am 2008-02-07 14:50:00.000000000 +0000 +@@ -9,4 +9,4 @@ + + libXsettings_client_la_SOURCES= $(source_c) $(source_h) + +-libXsettings_client_la_LIBADD = @X_LIBS@ +\ No newline at end of file ++libXsettings_client_la_LIBADD = @X_LIBS@ -lX11 diff --git a/meta/recipes-graphics/libxsettings-client/libxsettings-client_0.10.bb b/meta/recipes-graphics/libxsettings-client/libxsettings-client_0.10.bb new file mode 100644 index 00000000000..ecd6d181eb6 --- /dev/null +++ b/meta/recipes-graphics/libxsettings-client/libxsettings-client_0.10.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "Common code for XSETTINGS" +HOMEPAGE = "http://matchbox-project.org/sources/optional-dependencies/" +BUGTRACKER = "http://bugzilla.openedhand.com/" +SECTION = "x/libs" +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=7cfac9d2d4dc3694cc7eb605cf32a69b \ + file://xsettings-client.h;endline=22;md5=7cfac9d2d4dc3694cc7eb605cf32a69b \ + file://xsettings-common.h;endline=22;md5=7cfac9d2d4dc3694cc7eb605cf32a69b" +PRIORITY = "optional" +DEPENDS = "virtual/libx11" + +PR = "r3" + +headers = "xsettings-common.h xsettings-client.h" + +SRC_URI = "http://projects.o-hand.com/matchbox/sources/optional-dependencies/Xsettings-client-0.10.tar.gz \ + file://MIT-style-license \ + file://link-x11.patch;apply=yes" + +S = "${WORKDIR}/Xsettings-client-0.10" + +inherit autotools gettext + +do_configure_prepend() { + # This package doesn't ship with its own COPYING file and + # autotools will install a GPLv2 one instead of the actual MIT-style license here. + # Add the correct license here to avoid confusion. + cp -f ${WORKDIR}/MIT-style-license ${S}/COPYING +} + diff --git a/meta/recipes-graphics/matchbox-session/matchbox-session/matchbox-session b/meta/recipes-graphics/matchbox-session/matchbox-session/matchbox-session new file mode 100644 index 00000000000..4d6caa0c5a5 --- /dev/null +++ b/meta/recipes-graphics/matchbox-session/matchbox-session/matchbox-session @@ -0,0 +1,24 @@ +#!/bin/sh +# +# Very simple session manager for matchbox tools +# + +# Uncomment below to enable parsing of debian menu entrys +# export MB_USE_DEB_MENUS=1 + +if [ -e $HOME/.matchbox/session ] +then +exec $HOME/.matchbox/session +fi + +if [ -e /etc/matchbox/session ] +then +exec /etc/matchbox/session +fi + +# Default files to run if $HOME/.matchbox/session or /etc/matchbox/session +# dont exist. + +matchbox-desktop & +matchbox-panel & +exec matchbox-window-manager $@ diff --git a/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb b/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb new file mode 100644 index 00000000000..df9f2ab603d --- /dev/null +++ b/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Custom MB session files for poky" +HOMEPAGE = "http://www.matchbox-project.org/" +BUGTRACKER = "http://bugzilla.openedhand.com/" + +LICENSE = "GPL" +LIC_FILES_CHKSUM = "file://matchbox-session;endline=20;md5=180f1c169a15d059a56c30094f6fb5ea" + +SECTION = "x11" +RCONFLICTS = "matchbox-common" + +SRC_URI = "file://matchbox-session" +S = "${WORKDIR}" + +inherit update-alternatives + +ALTERNATIVE_NAME = "x-session-manager" +ALTERNATIVE_LINK = "${bindir}/x-session-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/matchbox-session ${D}/${bindir} +} diff --git a/meta/recipes-graphics/matchbox-wm-2/matchbox-wm-2_svn.bb b/meta/recipes-graphics/matchbox-wm-2/matchbox-wm-2_svn.bb new file mode 100644 index 00000000000..f67e06083eb --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm-2/matchbox-wm-2_svn.bb @@ -0,0 +1,42 @@ +SECTION = "x11/wm" +DESCRIPTION = "Matchbox window manager" +LICENSE = "GPL" +DEPENDS = "virtual/libx11 libxext libxrender startup-notification expat gconf pango libxdamage libxcomposite gtk+" + +PV = "0.0+svnr${SRCREV}" +PR = "r4" + +SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=matchbox-window-manager-2;proto=http \ + " + +S = "${WORKDIR}/matchbox-window-manager-2" + +inherit autotools pkgconfig update-alternatives + +# Change this to x-session-manager->matchbox-session and put in +# matchbox-session, then change this to x-window-manager to +# matchbox-window-manager-2. +ALTERNATIVE_NAME = "x-window-manager" +ALTERNATIVE_LINK = "${bindir}/x-window-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +PACKAGES =+ "libmatchbox2" + +FILES_libmatchbox2 = "${libdir}/*${SOLIBS}" + +FILES_${PN} += "${datadir}/matchbox-2 \ + ${sysconfdir}/matchbox-2 \ + ${datadir}/themes/*" + +EXTRA_OECONF = "--enable-debug \ + --enable-simple-manager \ + --enable-compositing-manager \ + --enable-libmatchbox \ + --enable-png-theme \ + " + +do_install_append () { + cd ${D}${bindir} + ln -s matchbox-window-manager-2-simple matchbox-window-manager +} diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm/configure_fix.patch b/meta/recipes-graphics/matchbox-wm/matchbox-wm/configure_fix.patch new file mode 100644 index 00000000000..52cea0e8f79 --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm/configure_fix.patch @@ -0,0 +1,13 @@ +Index: matchbox-window-manager/configure.ac +=================================================================== +--- matchbox-window-manager.orig/configure.ac 2007-11-14 12:02:28.000000000 +0000 ++++ matchbox-window-manager/configure.ac 2007-11-14 12:18:55.000000000 +0000 +@@ -283,7 +283,7 @@ + yes) + + case "$expat" in +- yes) ++ yes|"") + EXPAT_LIBS="-lexpat" + ;; + *) diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm/gconf-2.m4 b/meta/recipes-graphics/matchbox-wm/matchbox-wm/gconf-2.m4 new file mode 100644 index 00000000000..aca7c7da459 --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm/gconf-2.m4 @@ -0,0 +1,39 @@ +dnl AM_GCONF_SOURCE_2 +dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas +dnl (i.e. pass to gconftool-2 +dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where +dnl you should install foo.schemas files +dnl + +AC_DEFUN([AM_GCONF_SOURCE_2], +[ + if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then + GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` + else + GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE + fi + + AC_ARG_WITH(gconf-source, + [ --with-gconf-source=sourceaddress Config database for installing schema files.],GCONF_SCHEMA_CONFIG_SOURCE="$withval",) + + AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE) + AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation]) + + if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then + GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' + fi + + AC_ARG_WITH(gconf-schema-file-dir, + [ --with-gconf-schema-file-dir=dir Directory for installing schema files.],GCONF_SCHEMA_FILE_DIR="$withval",) + + AC_SUBST(GCONF_SCHEMA_FILE_DIR) + AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files]) + + AC_ARG_ENABLE(schemas-install, + [ --disable-schemas-install Disable the schemas installation], + [case ${enableval} in + yes|no) ;; + *) AC_MSG_ERROR(bad value ${enableval} for --enable-schemas-install) ;; + esac]) + AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no]) +]) diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm/kbdconfig b/meta/recipes-graphics/matchbox-wm/matchbox-wm/kbdconfig new file mode 100644 index 00000000000..239da8f57c3 --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm/kbdconfig @@ -0,0 +1,42 @@ +# +# This is an example keyboard config file for matchbox +# +# You can edit this file or change per user by copying to +# ~/.matchbox/kbdconfig +# +# Se the matchbox manual for more info ( http://projects.o-hand.com/matchbox ) + +### Window operation short cuts + +<Alt>n=next +<Alt>p=prev +<Alt>c=close +<Alt>d=desktop +<Alt>m=!matchbox-remote -mbmenu + +### App launching. + +<ctrl><alt>x=!xterm +<ctrl><alt>r=!rxvt + +### poky additions + +XF86Calendar=!$contacts +telephone=!$dates +XF86Start=!matchbox-remote -desktop +F2=!matchbox-remote -mbmenu + +#XF86Mail=!$tasks +#Escape=close + +### windows style key shortcuts + +<alt>Tab=next +<alt><shift>Tab=prev + +<alt>space=taskmenu +<alt>escape=!matchbox-remote -mbmenu +<alt>f4=close + +f11=fullscreen + diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm_0.9.5.bb b/meta/recipes-graphics/matchbox-wm/matchbox-wm_0.9.5.bb new file mode 100644 index 00000000000..e09eb00ed11 --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm_0.9.5.bb @@ -0,0 +1,32 @@ +SECTION = "x11/wm" +DESCRIPTION = "Matchbox window manager" +LICENSE = "GPL" +DEPENDS = "libmatchbox virtual/libx11 libxext libxcomposite libxfixes xdamage libxrender startup-notification expat gconf" +PR="r2" + + +SRC_URI = "http://projects.o-hand.com/matchbox/sources/matchbox-window-manager/0.9/matchbox-window-manager-${PV}.tar.gz \ + file://kbdconfig" + +S = "${WORKDIR}/matchbox-window-manager-${PV}" + +inherit autotools pkgconfig update-alternatives + +FILES_${PN} = "${bindir}/* \ + ${datadir}/matchbox \ + ${sysconfdir}/matchbox \ + ${datadir}/themes/blondie/matchbox \ + ${datadir}/themes/Default/matchbox \ + ${datadir}/themes/MBOpus/matchbox" + +ALTERNATIVE_NAME = "x-session-manager" +ALTERNATIVE_LINK = "${bindir}/x-session-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +EXTRA_OECONF = " --enable-startup-notification --disable-xrm" + +do_install_prepend() { + install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig +} + diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.1.bb b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.1.bb new file mode 100644 index 00000000000..ebed31e2a5c --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.1.bb @@ -0,0 +1,37 @@ +SECTION = "x11/wm" +DESCRIPTION = "Matchbox window manager" +LICENSE = "GPL" +DEPENDS = "libmatchbox virtual/libx11 libxext libxcomposite libxfixes xdamage libxrender startup-notification expat" +PR="r4" + + +SRC_URI = "http://projects.o-hand.com/matchbox/sources/matchbox-window-manager/1.1/matchbox-window-manager-${PV}.tar.gz \ + file://kbdconfig \ + file://gconf-2.m4" + +S = "${WORKDIR}/matchbox-window-manager-${PV}" + +inherit autotools pkgconfig update-alternatives + +FILES_${PN} = "${bindir}/* \ + ${datadir}/matchbox \ + ${sysconfdir}/matchbox \ + ${datadir}/themes/blondie/matchbox \ + ${datadir}/themes/Default/matchbox \ + ${datadir}/themes/MBOpus/matchbox" + +ALTERNATIVE_NAME = "x-session-manager" +ALTERNATIVE_LINK = "${bindir}/x-session-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +EXTRA_OECONF = " --enable-startup-notification --disable-xrm" + +do_configure_prepend () { + cp ${WORKDIR}/gconf-2.m4 ${S}/ +} + +do_install_prepend() { + install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig +} + diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.bb b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.bb new file mode 100644 index 00000000000..f68eb2b4aec --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.bb @@ -0,0 +1,41 @@ +SECTION = "x11/wm" +DESCRIPTION = "Matchbox window manager" +LICENSE = "GPL" +DEPENDS = "libmatchbox virtual/libx11 libxext libxcomposite libxfixes xdamage libxrender startup-notification expat" +PR = "r4" + +SRC_URI = "http://matchbox-project.org/sources/matchbox-window-manager/1.2/matchbox-window-manager-${PV}.tar.bz2 \ + file://configure_fix.patch;patch=1 \ + file://kbdconfig \ + file://gconf-2.m4" + +S = "${WORKDIR}/matchbox-window-manager-${PV}" + +inherit autotools pkgconfig update-alternatives + +FILES_${PN} = "${bindir}/* \ + ${datadir}/matchbox \ + ${sysconfdir}/matchbox \ + ${datadir}/themes/blondie/matchbox \ + ${datadir}/themes/Default/matchbox \ + ${datadir}/themes/MBOpus/matchbox" + +ALTERNATIVE_NAME = "x-session-manager" +ALTERNATIVE_LINK = "${bindir}/x-session-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +EXTRA_OECONF = " --enable-startup-notification \ + --disable-xrm \ + --enable-expat \ + --with-expat-lib=${STAGING_LIBDIR} \ + --with-expat-includes=${STAGING_INCDIR}" + + +do_configure_prepend () { + cp ${WORKDIR}/gconf-2.m4 ${S}/ +} + +do_install_prepend() { + install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig +} diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm_svn.bb b/meta/recipes-graphics/matchbox-wm/matchbox-wm_svn.bb new file mode 100644 index 00000000000..09c0f70f47e --- /dev/null +++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm_svn.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "Matchbox window manager" +HOMEPAGE = "http://matchbox-project.org" +BUGTRACKER = "http://bugzilla.openedhand.com/" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://src/wm.h;endline=21;md5=a7e844465edbcf79c282369f93caa835 \ + file://src/main.c;endline=21;md5=3e5d9f832b527b0d72dbe8e3c4c60b95 \ + file://src/wm.c;endline=21;md5=8dc9d24477d87ef5dfbc2e4927146aab" + +SECTION = "x11/wm" +DEPENDS = "libmatchbox virtual/libx11 libxext libxrender startup-notification expat gconf" + +PV = "1.2+svnr${SRCREV}" +PR = "r4" + +SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=matchbox-window-manager;proto=http \ + file://configure_fix.patch;patch=1;maxrev=1818 \ + file://kbdconfig" + +S = "${WORKDIR}/matchbox-window-manager" + +inherit autotools pkgconfig update-alternatives + +ALTERNATIVE_NAME = "x-session-manager" +ALTERNATIVE_LINK = "${bindir}/x-session-manager" +ALTERNATIVE_PATH = "${bindir}/matchbox-session" +ALTERNATIVE_PRIORITY = "10" + +FILES_${PN} = "${bindir}/* \ + ${datadir}/matchbox \ + ${sysconfdir}/matchbox \ + ${datadir}/themes/blondie/matchbox \ + ${datadir}/themes/Default/matchbox \ + ${datadir}/themes/MBOpus/matchbox" + +EXTRA_OECONF = " --enable-startup-notification \ + --disable-xrm \ + --enable-expat \ + --with-expat-lib=${STAGING_LIBDIR} \ + --with-expat-includes=${STAGING_INCDIR}" + +do_install_prepend() { + install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig +} diff --git a/meta/recipes-graphics/menu-cache/menu-cache_0.3.2.bb b/meta/recipes-graphics/menu-cache/menu-cache_0.3.2.bb new file mode 100644 index 00000000000..90cc5716bb4 --- /dev/null +++ b/meta/recipes-graphics/menu-cache/menu-cache_0.3.2.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "A library creating and utilizing caches to speed up freedesktop.org application menus" +HOMEPAGE = "http://lxde.sourceforge.net/" +BUGTRACKER = "" + +LICENSE = "GPLv2 & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://libmenu-cache/menu-cache.h;endline=29;md5=ca0101a419b3584963e0c45f2b6b55ef \ + file://menu-cache-daemon/menu-cached.c;endline=22;md5=fcecb7d315c57ef804103fa9cdab7111" + +SECTION = "x11/libs" +DEPENDS = "glib-2.0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/lxde/menu-cache-${PV}.tar.gz" + +PR = "r0" + +inherit autotools pkgconfig diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc new file mode 100644 index 00000000000..240f956b8ac --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-common.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "An open source implementation of the OpenGL spec" +HOMEPAGE = "http://mesa3d.org" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11" +LICENSE = "MIT" + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ + ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaDemos-${PV}.tar.bz2 " + +S = "${WORKDIR}/Mesa-${PV}" + +PROVIDES = "virtual/libgl" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-glu \ + --disable-glw \ + --disable-glut \ + --enable-glx-tls" + +# Multiple virtual/gl providers being built breaks staging +EXCLUDE_FROM_WORLD = "1" + + diff --git a/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb new file mode 100644 index 00000000000..f6121c19a42 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "gl shader language specific build from mesa-dri" +HOMEPAGE = "http://mesa3d.org" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11" +LICENSE = "MIT" +PR = "r0" + +DEPENDS = "makedepend-native" + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2" + +S = "${WORKDIR}/Mesa-7.8.2/src/glsl/" + +inherit native + +# use default config for native build +do_configure_prepend() { + ln -s ${S}/../../configs/default ${S}/../../configs/current +} + +do_install() { + install -d ${D}/${bindir} + install -m 755 ${S}/apps/compile ${D}/${bindir}/glsl-compile +} diff --git a/meta/recipes-graphics/mesa/mesa-dri/cross2.patch b/meta/recipes-graphics/mesa/mesa-dri/cross2.patch new file mode 100644 index 00000000000..d2147910ae4 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/cross2.patch @@ -0,0 +1,44 @@ +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2009-09-01 16:38:26.000000000 +0100 ++++ git/configure.ac 2009-09-01 16:38:47.000000000 +0100 +@@ -269,15 +269,6 @@ + GLAPI_ASM_SOURCES="" + AC_MSG_CHECKING([whether to enable assembly]) + test "x$enable_asm" = xno && AC_MSG_RESULT([no]) +-# disable if cross compiling on x86/x86_64 since we must run gen_matypes +-if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then +- case "$host_cpu" in +- i?86 | x86_64) +- enable_asm=no +- AC_MSG_RESULT([no, cross compiling]) +- ;; +- esac +-fi + # check for supported arches + if test "x$enable_asm" = xyes; then + case "$host_cpu" in +Index: git/src/mesa/x86/Makefile +=================================================================== +--- git.orig/src/mesa/x86/Makefile 2009-09-01 16:40:02.000000000 +0100 ++++ git/src/mesa/x86/Makefile 2009-09-01 16:40:13.000000000 +0100 +@@ -14,19 +14,6 @@ + -I../tnl + + +-default: gen_matypes matypes.h +- +-clean: +- -rm -f matypes.h gen_matypes +- +- +-gen_matypes: gen_matypes.c +- $(HOST_CC) $(ARCH_FLAGS) $(INCLUDE_DIRS) $(HOST_CFLAGS) gen_matypes.c -o gen_matypes +- +-# need some special rules here, unfortunately +-matypes.h: ../main/mtypes.h ../tnl/t_context.h gen_matypes +- ./gen_matypes > matypes.h +- + common_x86_asm.o: matypes.h + 3dnow_normal.o: matypes.h + 3dnow_xform1.o: matypes.h diff --git a/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch b/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch new file mode 100644 index 00000000000..84be428c4fb --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch @@ -0,0 +1,16 @@ +Index: Mesa-7.5/bin/mklib +=================================================================== +--- Mesa-7.5.orig/bin/mklib 2009-08-12 13:01:34.000000000 +0100 ++++ Mesa-7.5/bin/mklib 2009-08-12 13:04:19.000000000 +0100 +@@ -234,9 +234,9 @@ + if [ "x$LINK" = "x" ] ; then + # -linker was not specified so set default link command now + if [ $CPLUSPLUS = 1 ] ; then +- LINK=g++ ++ LINK=$CXX + else +- LINK=gcc ++ LINK=$CC + fi + fi + diff --git a/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h b/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h new file mode 100644 index 00000000000..98d2188e755 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h @@ -0,0 +1,162 @@ +/* + * This file is automatically generated from the Mesa internal type + * definitions. Do not edit directly. + */ + +#ifndef __ASM_TYPES_H__ +#define __ASM_TYPES_H__ + + + +/* ============================================================= + * Offsets for GLcontext + */ + +#define CTX_DRIVER_CTX 996 + +#define CTX_LIGHT_ENABLED 39404 +#define CTX_LIGHT_SHADE_MODEL 39408 +#define CTX_LIGHT_COLOR_MAT_FACE 39412 +#define CTX_LIGHT_COLOR_MAT_MODE 39416 +#define CTX_LIGHT_COLOR_MAT_MASK 39420 +#define CTX_LIGHT_COLOR_MAT_ENABLED 39424 +#define CTX_LIGHT_ENABLED_LIST 39432 +#define CTX_LIGHT_NEED_VERTS 43793 +#define CTX_LIGHT_FLAGS 43796 +#define CTX_LIGHT_BASE_COLOR 43800 + + +/* ============================================================= + * Offsets for struct vertex_buffer + */ + +#define VB_SIZE 0 +#define VB_COUNT 4 + +#define VB_ELTS 8 +#define VB_OBJ_PTR 12 +#define VB_EYE_PTR 16 +#define VB_CLIP_PTR 20 +#define VB_PROJ_CLIP_PTR 24 +#define VB_CLIP_OR_MASK 28 +#define VB_CLIP_MASK 32 +#define VB_NORMAL_PTR 36 +#define VB_EDGE_FLAG 44 +#define VB_TEX0_COORD_PTR 48 +#define VB_TEX1_COORD_PTR 52 +#define VB_TEX2_COORD_PTR 56 +#define VB_TEX3_COORD_PTR 60 +#define VB_INDEX_PTR 80 +#define VB_COLOR_PTR 88 +#define VB_SECONDARY_COLOR_PTR 96 +#define VB_FOG_COORD_PTR 104 +#define VB_PRIMITIVE 108 + + +/* + * Flags for struct vertex_buffer + */ + +#define VERT_BIT_OBJ 0x1 +#define VERT_BIT_NORM 0x4 +#define VERT_BIT_RGBA 0x8 +#define VERT_BIT_SPEC_RGB 0x10 +#define VERT_BIT_FOG_COORD 0x20 +#define VERT_BIT_TEX0 0x100 +#define VERT_BIT_TEX1 0x200 +#define VERT_BIT_TEX2 0x400 +#define VERT_BIT_TEX3 0x800 + + +/* ============================================================= + * Offsets for GLvector4f + */ + +#define V4F_DATA 0 +#define V4F_START 4 +#define V4F_COUNT 8 +#define V4F_STRIDE 12 +#define V4F_SIZE 16 +#define V4F_FLAGS 20 + +/* + * Flags for GLvector4f + */ + +#define VEC_MALLOC 0x10 +#define VEC_NOT_WRITEABLE 0x40 +#define VEC_BAD_STRIDE 0x100 + +#define VEC_SIZE_1 0x1 +#define VEC_SIZE_2 0x3 +#define VEC_SIZE_3 0x7 +#define VEC_SIZE_4 0xf + + +/* ============================================================= + * Offsets for GLmatrix + */ + +#define MATRIX_DATA 0 +#define MATRIX_INV 4 +#define MATRIX_FLAGS 8 +#define MATRIX_TYPE 12 + + +/* ============================================================= + * Offsets for struct gl_light + */ + +#define LIGHT_NEXT 0 +#define LIGHT_PREV 4 + +#define LIGHT_AMBIENT 8 +#define LIGHT_DIFFUSE 24 +#define LIGHT_SPECULAR 40 +#define LIGHT_EYE_POSITION 56 +#define LIGHT_SPOT_DIRECTION 72 +#define LIGHT_SPOT_EXPONENT 88 +#define LIGHT_SPOT_CUTOFF 92 +#define LIGHT_COS_CUTOFF 100 +#define LIGHT_CONST_ATTEN 104 +#define LIGHT_LINEAR_ATTEN 108 +#define LIGHT_QUADRATIC_ATTEN 112 +#define LIGHT_ENABLED 116 + +#define LIGHT_FLAGS 120 + +#define LIGHT_POSITION 124 +#define LIGHT_VP_INF_NORM 140 +#define LIGHT_H_INF_NORM 152 +#define LIGHT_NORM_DIRECTION 164 +#define LIGHT_VP_INF_SPOT_ATTEN 180 + +#define LIGHT_SPOT_EXP_TABLE 184 +#define LIGHT_MAT_AMBIENT 4280 +#define LIGHT_MAT_DIFFUSE 4304 +#define LIGHT_MAT_SPECULAR 4328 + +#define SIZEOF_GL_LIGHT 4360 + +/* + * Flags for struct gl_light + */ + +#define LIGHT_SPOT 0x1 +#define LIGHT_LOCAL_VIEWER 0x2 +#define LIGHT_POSITIONAL 0x4 + +#define LIGHT_NEED_VERTICES 0x6 + + +/* ============================================================= + * Offsets for struct gl_lightmodel + */ + +#define LIGHT_MODEL_AMBIENT 0 +#define LIGHT_MODEL_LOCAL_VIEWER 16 +#define LIGHT_MODEL_TWO_SIDE 17 +#define LIGHT_MODEL_COLOR_CONTROL 20 + + +#endif /* __ASM_TYPES_H__ */ diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.5.bb b/meta/recipes-graphics/mesa/mesa-dri_7.5.bb new file mode 100644 index 00000000000..6e9cdc9aa80 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.5.bb @@ -0,0 +1,48 @@ +include mesa-common.inc + +SRC_URI += "file://crossfix.patch;patch=1" +# file://mesa-DRI2Swapbuffer.patch;patch=1 + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PR = "r11" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + + +# +# Header generated by i586-poky-linux-gcc gen_matypes.c -o gen_matypes -I ../../../include/GL -I ../../../include -I .. -I ../main/ -I ../math -I ../glapi/ -I ../tnl +# then run gen_matypes > matypes.h on device +#
\ No newline at end of file diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.7.bb b/meta/recipes-graphics/mesa/mesa-dri_7.7.bb new file mode 100644 index 00000000000..a5899f38924 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.7.bb @@ -0,0 +1,49 @@ +include mesa-common.inc + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/7.7/MesaLib-${PV}.tar.bz2 \ + ftp://ftp.freedesktop.org/pub/mesa/7.7/MesaDemos-${PV}.tar.bz2 \ + file://crossfix.patch;patch=1" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PR = "r11" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + + +# +# Header generated by i586-poky-linux-gcc gen_matypes.c -o gen_matypes -I ../../../include/GL -I ../../../include -I .. -I ../main/ -I ../math -I ../glapi/ -I ../tnl +# then run gen_matypes > matypes.h on device +#
\ No newline at end of file diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb new file mode 100644 index 00000000000..ffd885f2937 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb @@ -0,0 +1,53 @@ +include mesa-common.inc + +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} mesa-dri-glsl-native" + +PR = "r1" + +SRC_URI += "file://crossfix.patch" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +# We need glsl-compile built for buildhost arch instead of target (is provided by mesa-dri-glsl-native)" +do_configure_prepend() { + sed -i "s#^GLSL_CL = .*\$#GLSL_CL = ${STAGING_BINDIR_NATIVE}/glsl-compile#g" ${S}/src/mesa/shader/slang/library/Makefile +} + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +# +# Header generated by i586-poky-linux-gcc gen_matypes.c -o gen_matypes -I ../../../include/GL -I ../../../include -I .. -I ../main/ -I ../math -I ../glapi/ -I ../tnl +# then run gen_matypes > matypes.h on device +# diff --git a/meta/recipes-graphics/mesa/mesa-dri_git.bb b/meta/recipes-graphics/mesa/mesa-dri_git.bb new file mode 100644 index 00000000000..fa0a7c8dc27 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_git.bb @@ -0,0 +1,59 @@ +include mesa-common.inc + +SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git \ + file://cross2.patch;patch=1 \ + file://matypes.h" +# file://mesa-DRI2Swapbuffer.patch;patch=1 " +S = "${WORKDIR}/git" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PV = "7.7+git${SRCPV}" +PR = "r0" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_configure_prepend () { + cp ${WORKDIR}/matypes.h ${S}/src/mesa/x86 + touch ${S}/src/mesa/x86/matypes.h +} + +do_compile () { + oe_runmake clean + oe_runmake -C src/glsl CC='${BUILD_CC}' CFLAGS="" + mv ${S}/src/glsl/apps/compile ${S}/host_compile + oe_runmake clean + oe_runmake GLSL_CL="${S}/host_compile" +} + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86|x86_64).*-linux' diff --git a/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb new file mode 100644 index 00000000000..093ad6ed7cb --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb @@ -0,0 +1,22 @@ +include mesa-common.inc + +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" + +PROTO_DEPS = "xf86driproto glproto" +LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PE = "1" +PR = "r0" + +EXTRA_OECONF += "--with-driver=xlib" + +do_install_append () { + install -d ${D}/${bindir} + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/${bindir} +} + +PACKAGES =+ "${PN}-xprogs" + +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" diff --git a/meta/recipes-graphics/mesa/qemugl/versionfix.patch b/meta/recipes-graphics/mesa/qemugl/versionfix.patch new file mode 100644 index 00000000000..a3d33e83036 --- /dev/null +++ b/meta/recipes-graphics/mesa/qemugl/versionfix.patch @@ -0,0 +1,30 @@ +Index: git/Makefile +=================================================================== +--- git.orig/Makefile 2009-01-19 23:37:36.000000000 +0000 ++++ git/Makefile 2009-06-09 20:30:37.000000000 +0100 +@@ -1,9 +1,9 @@ + GL_CFLAGS := -Wall -g -O2 -fno-strict-aliasing + +-all: libGL.so ++all: libGL.so.1.2 + +-libGL.so: client_stub.c opengl_client.c glgetv_cst.h opengl_func.h opengl_utils.h opengl_client_xfonts.c mesa_gl.h mesa_glext.h mesa_glx.h mesa_glxext.h +- $(CC) -fPIC $(GL_CFLAGS) opengl_client.c -shared -o libGL.so -lX11 -lXfixes -lm -L$(D)/usr/X11R6/lib -lpthread -I. ++libGL.so.1.2: client_stub.c opengl_client.c glgetv_cst.h opengl_func.h opengl_utils.h opengl_client_xfonts.c mesa_gl.h mesa_glext.h mesa_glx.h mesa_glxext.h ++ $(CC) -fPIC $(GL_CFLAGS) opengl_client.c -shared -o libGL.so.1.2 -lX11 -lXfixes -lm -L$(D)/usr/X11R6/lib -lpthread -I. + + opengl_func.h: gl_func.h + +Index: git/opengl_client.c +=================================================================== +--- git.orig/opengl_client.c 2009-06-09 21:07:15.000000000 +0100 ++++ git/opengl_client.c 2009-06-09 21:07:33.000000000 +0100 +@@ -11578,7 +11578,7 @@ + tab_assoc = calloc(tabSize, sizeof(AssocProcAdress)); + + #ifndef WIN32 +- handle = dlopen(getenv("REAL_LIBGL") ? getenv("REAL_LIBGL") : "libGL.so" ,RTLD_LAZY); ++ handle = dlopen(getenv("REAL_LIBGL") ? getenv("REAL_LIBGL") : "libGL.so.1.2" ,RTLD_LAZY); + if (!handle) { + log_gl("%s\n", dlerror()); + exit(1); diff --git a/meta/recipes-graphics/mesa/qemugl_git.bb b/meta/recipes-graphics/mesa/qemugl_git.bb new file mode 100644 index 00000000000..184c7827223 --- /dev/null +++ b/meta/recipes-graphics/mesa/qemugl_git.bb @@ -0,0 +1,37 @@ +DESCRIPTION = "QEMU i386 OpenGL passtrough" +HOMEPAGE = "http://savannah.nongnu.org/projects/qemugl" +SECTION = "x11/drivers" +LICENSE = "GPL" + +DEPENDS = "virtual/libx11 xproto glproto libxfixes" + +COMPATIBLE_HOST = '(x86_64.*|i.86.*)-(linux|freebsd.*)' + +SRC_URI = "git://git.o-hand.com/qemugl.git;protocol=git \ + file://versionfix.patch" +S = "${WORKDIR}/git" + +PV = "0.0+git${SRCPV}" +PR = "r6" + +DEFAULT_PREFERENCE = "-1" + +do_install () { + install -d ${D}${libdir}/ + if [ "${PN}" != "qemugl-nativesdk" ]; then + install -m 0755 ${S}/libGL.so.1.2 ${D}${libdir}/libGL-qemu.so.1.2 + else + install -m 0755 ${S}/libGL.so.1.2 ${D}${libdir}/libGL.so.1.2 + ln -s libGL.so.1.2 ${D}${libdir}/libGL.so.1 + ln -s libGL.so.1 ${D}${libdir}/libGL.so + fi +} + +pkg_postinst_${PN} () { + if [ "${PN}" != "qemugl-nativesdk" ]; then + rm -f $D${libdir}/libGL.so.1.2 + ln -s libGL-qemu.so.1.2 $D${libdir}/libGL.so.1.2 + fi +} + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/mutter/mutter.inc b/meta/recipes-graphics/mutter/mutter.inc new file mode 100644 index 00000000000..456348754f8 --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter.inc @@ -0,0 +1,43 @@ +SECTION = "x11/wm" +DESCRIPTION = "Metacity is the boring window manager for the adult in you. Mutter is metacity + clutter." +LICENSE = "GPLv2" +DEPENDS = "startup-notification gtk+ gconf clutter-1.0 gdk-pixbuf-csource-native intltool glib-2.0-native" +# gobject-introspection +inherit gnome update-alternatives + +ALTERNATIVE_NAME = "x-window-manager" +ALTERNATIVE_LINK = "${bindir}/x-window-manager" +ALTERNATIVE_PATH = "${bindir}/mutter" +ALTERNATIVE_PRIORITY = "11" + +EXTRA_OECONF += "--disable-verbose \ + --disable-xinerama \ + --without-introspection \ + --with-clutter" + +#RDEPENDS_${PN} = "zenity" + +FILES_${PN} += "${datadir}/themes ${libdir}/mutter/plugins/*.so ${datadir}/gnome/wm-properties/" +FILES_${PN}-dbg += "${libdir}/mutter/plugins/.debug/*" + +export CC_FOR_BUILD = "${BUILD_CC}" +export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE}/glib-2.0 -I${STAGING_INCDIR_NATIVE}/glib-2.0/include" +export LDFLAGS_FOR_BUILD = "${BUILD_LDFLAGS} -L${STAGING_LIBDIR_NATIVE} -lglib-2.0" + +do_configure_prepend () { + echo "EXTRA_DIST=" > ${S}/gnome-doc-utils.make +} + +pkg_postinst_${PN} () { +#!/bin/sh -e +if [ "x$D" != "x" ]; then + exit 1 +fi + +. ${sysconfdir}/init.d/functions + +gconftool-2 --config-source=xml::$D${sysconfdir}/gconf/gconf.xml.defaults --direct --type list --list-type string --set /apps/mutter/general/clutter_plugins '[default]' + +gconftool-2 --config-source=xml::$D${sysconfdir}/gconf/gconf.xml.defaults --direct --type bool --set /apps/mutter/general/compositing_manager true +} + diff --git a/meta/recipes-graphics/mutter/mutter/crosscompile.patch b/meta/recipes-graphics/mutter/mutter/crosscompile.patch new file mode 100644 index 00000000000..b27383b09ab --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter/crosscompile.patch @@ -0,0 +1,55 @@ +Index: git/configure.in +=================================================================== +--- git.orig/configure.in 2009-01-27 14:49:10.000000000 +0000 ++++ git/configure.in 2009-01-27 15:29:41.000000000 +0000 +@@ -46,6 +46,32 @@ + AC_LIBTOOL_WIN32_DLL + AM_PROG_LIBTOOL + ++if test x"$CC_FOR_BUILD" = x; then ++ if test x"$cross_compiling" = xyes; then ++ AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc) ++ else ++ CC_FOR_BUILD="$CC" ++ fi ++fi ++AC_SUBST([CC_FOR_BUILD]) ++if test x"$CFLAGS_FOR_BUILD" = x; then ++ if test x"$cross_compiling" = xyes; then ++ AC_CHECK_PROGS(CFLAGS_FOR_BUILD, gcc cc) ++ else ++ CFLAGS_FOR_BUILD="$CFLAGS" ++ fi ++fi ++AC_SUBST([CFLAGS_FOR_BUILD]) ++if test x"$LDFLAGS_FOR_BUILD" = x; then ++ if test x"$cross_compiling" = xyes; then ++ AC_CHECK_PROGS(LDFLAGS_FOR_BUILD, gcc cc) ++ else ++ LDFLAGS_FOR_BUILD="$LDFLAGS" ++ fi ++fi ++AC_SUBST([LDFLAGS_FOR_BUILD]) ++ ++ + #### Integer sizes + + AC_CHECK_SIZEOF(char) +Index: git/src/Makefile.am +=================================================================== +--- git.orig/src/Makefile.am 2009-01-27 15:25:31.000000000 +0000 ++++ git/src/Makefile.am 2009-01-27 15:39:54.000000000 +0000 +@@ -168,11 +168,9 @@ + metacity_dialog_SOURCES= \ + ui/metacity-dialog.c + +-schema_bindings_SOURCES = \ +- core/schema-bindings.c \ +- metacity.schemas.in.in ++schema_bindings: ++ @CC_FOR_BUILD@ core/schema-bindings.c -I./include -I ../ @CFLAGS_FOR_BUILD@ @LDFLAGS_FOR_BUILD@ -o schema_bindings + +-schema_bindings_LDADD = @METACITY_LIBS@ + metacity.schemas.in: schema_bindings ${srcdir}/metacity.schemas.in.in + @echo Generating keybinding schemas... ${srcdir}/metacity.schemas.in.in + ${builddir}/schema_bindings ${srcdir}/metacity.schemas.in.in ${builddir}/metacity.schemas.in diff --git a/meta/recipes-graphics/mutter/mutter/fix_pkgconfig-7adb574bb3fa3880eb85dbc86e580cf3452d57c4.patch b/meta/recipes-graphics/mutter/mutter/fix_pkgconfig-7adb574bb3fa3880eb85dbc86e580cf3452d57c4.patch new file mode 100644 index 00000000000..3714383bc1a --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter/fix_pkgconfig-7adb574bb3fa3880eb85dbc86e580cf3452d57c4.patch @@ -0,0 +1,10 @@ +Index: git/src/metacity-plugins.pc.in +=================================================================== +--- git.orig/src/metacity-plugins.pc.in 2008-12-17 22:42:19.000000000 +0000 ++++ git/src/metacity-plugins.pc.in 2008-12-17 22:42:25.000000000 +0000 +@@ -14,4 +14,4 @@ + Requires: @CLUTTER_PACKAGE@ + Version: @VERSION@ + Libs: @CLUTTER_LIBS@ +-Cflags: @CLUTTER_CFLAGS@ -DWITH_CLUTTER -I${includedir}/metacity-1/metacity-private -DMETACITY_MAJOR_VERSION=${metacity_major_version} -DMETACITY_MINOR_VERSION=${metacity_minor_version} -DMETACITY_MICRO_VERSION=${metacity_micro_version} -DMETACITY_CLUTTER_PLUGIN_API_VERSION=${metacity_clutter_plugin_api_version} -DMUTTER_PLUGIN_DIR=\"${mutterplugindir}\" ++Cflags: -DWITH_CLUTTER -I${includedir}/metacity-1/metacity-private -DMETACITY_MAJOR_VERSION=${metacity_major_version} -DMETACITY_MINOR_VERSION=${metacity_minor_version} -DMETACITY_MICRO_VERSION=${metacity_micro_version} -DMETACITY_CLUTTER_PLUGIN_API_VERSION=${metacity_clutter_plugin_api_version} -DMUTTER_PLUGIN_DIR=\"${mutterplugindir}\" diff --git a/meta/recipes-graphics/mutter/mutter/fix_pkgconfig.patch b/meta/recipes-graphics/mutter/mutter/fix_pkgconfig.patch new file mode 100644 index 00000000000..5ac5ecc609f --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter/fix_pkgconfig.patch @@ -0,0 +1,10 @@ +Index: git/src/mutter-plugins.pc.in +=================================================================== +--- git.orig/src/mutter-plugins.pc.in 2009-07-03 17:30:39.000000000 +0100 ++++ git/src/mutter-plugins.pc.in 2009-07-03 18:03:09.000000000 +0100 +@@ -14,4 +14,4 @@ + Requires: @CLUTTER_PACKAGE@ + Version: @VERSION@ + Libs: @CLUTTER_LIBS@ +-Cflags: @CLUTTER_CFLAGS@ -DWITH_CLUTTER -I${includedir}/mutter/mutter-private -DMUTTER_MAJOR_VERSION=${mutter_major_version} -DMUTTER_MINOR_VERSION=${mutter_minor_version} -DMUTTER_MICRO_VERSION=${mutter_micro_version} -DMUTTER_PLUGIN_API_VERSION=${mutter_plugin_api_version} -DMUTTER_PLUGIN_DIR=\"${plugindir}\" ++Cflags: -DWITH_CLUTTER -I${includedir}/mutter/mutter-private -DMUTTER_MAJOR_VERSION=${mutter_major_version} -DMUTTER_MINOR_VERSION=${mutter_minor_version} -DMUTTER_MICRO_VERSION=${mutter_micro_version} -DMUTTER_PLUGIN_API_VERSION=${mutter_plugin_api_version} -DMUTTER_PLUGIN_DIR=\"${plugindir}\" diff --git a/meta/recipes-graphics/mutter/mutter/nodocs.patch b/meta/recipes-graphics/mutter/mutter/nodocs.patch new file mode 100644 index 00000000000..98f43be5e86 --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter/nodocs.patch @@ -0,0 +1,29 @@ +Index: git/Makefile.am +=================================================================== +--- git.orig/Makefile.am 2009-01-27 13:26:12.000000000 +0000 ++++ git/Makefile.am 2009-01-27 14:07:13.000000000 +0000 +@@ -1,5 +1,5 @@ + +-SUBDIRS=src po doc ++SUBDIRS=src po + + EXTRA_DIST = HACKING MAINTAINERS rationales.txt \ + intltool-extract.in intltool-merge.in intltool-update.in +Index: git/configure.in +=================================================================== +--- git.orig/configure.in 2009-01-27 13:26:12.000000000 +0000 ++++ git/configure.in 2009-01-27 14:11:16.000000000 +0000 +@@ -538,12 +538,9 @@ + + # Warnings are there for a reason + if test "x$GCC" = "xyes"; then +- CFLAGS="$CFLAGS -Wall -Werror -ansi" ++ CFLAGS="$CFLAGS -Wall -ansi" + fi + +-# Use gnome-doc-utils: +-GNOME_DOC_INIT([0.8.0]) +- + AC_CONFIG_FILES([ + Makefile + doc/Makefile diff --git a/meta/recipes-graphics/mutter/mutter/nozenity.patch b/meta/recipes-graphics/mutter/mutter/nozenity.patch new file mode 100644 index 00000000000..06f59095337 --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter/nozenity.patch @@ -0,0 +1,16 @@ +Index: git/configure.in +=================================================================== +--- git.orig/configure.in 2009-06-16 13:12:17.000000000 +0100 ++++ git/configure.in 2009-06-16 13:12:33.000000000 +0100 +@@ -575,11 +575,6 @@ + GCONF_SCHEMAS_INSTALL_FALSE= + fi + +-AC_PATH_PROG(ZENITY, zenity, no) +-if test x"$ZENITY" = xno; then +- AC_MSG_ERROR([zenity not found in your path - needed for dialogs]) +-fi +- + AC_ARG_ENABLE(debug, + [ --enable-debug enable debugging],, + enable_debug=no) diff --git a/meta/recipes-graphics/mutter/mutter_2.28.1.bb b/meta/recipes-graphics/mutter/mutter_2.28.1.bb new file mode 100644 index 00000000000..c4b81078996 --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter_2.28.1.bb @@ -0,0 +1,9 @@ +require mutter.inc + +SRC_URI = "http://download.moblin.org/sources/mutter/2.28/mutter-2.28.1_0.0.tar.bz2 \ + file://nodocs.patch;patch=1 \ + file://nozenity.patch;patch=1 \ + file://fix_pkgconfig.patch;patch=1 \ + " + +S = "${WORKDIR}/mutter-2.28.1_0.0"
\ No newline at end of file diff --git a/meta/recipes-graphics/mutter/mutter_git.bb b/meta/recipes-graphics/mutter/mutter_git.bb new file mode 100644 index 00000000000..b41bf1e5051 --- /dev/null +++ b/meta/recipes-graphics/mutter/mutter_git.bb @@ -0,0 +1,17 @@ +require mutter.inc + +PV = "2.28.1+git${SRCPV}" +PR = "r18" + +# Gnome is the upstream but moblin is under more active development atm +# git://git.gnome.org/mutter.git;protocol=git;branch=master +# +SRC_URI = "git://git.moblin.org/mutter.git;protocol=git;branch=master \ + file://nodocs.patch;patch=1 \ + file://nozenity.patch;patch=1 \ + file://crosscompile.patch;patch=1;rev=7adb574bb3fa3880eb85dbc86e580cf3452d57c4 \ + file://fix_pkgconfig-7adb574bb3fa3880eb85dbc86e580cf3452d57c4.patch;patch=1;rev=7adb574bb3fa3880eb85dbc86e580cf3452d57c4 \ + file://fix_pkgconfig.patch;patch=1;notrev=7adb574bb3fa3880eb85dbc86e580cf3452d57c4 \ + " +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/pango/pango-1.28.0/no-tests.patch b/meta/recipes-graphics/pango/pango-1.28.0/no-tests.patch new file mode 100644 index 00000000000..4a74d8c4d64 --- /dev/null +++ b/meta/recipes-graphics/pango/pango-1.28.0/no-tests.patch @@ -0,0 +1,12 @@ +Index: pango-1.22.2/Makefile.am +=================================================================== +--- pango-1.22.2.orig/Makefile.am ++++ pango-1.22.2/Makefile.am +@@ -1,6 +1,6 @@ + ## Process this file with automake to create Makefile.in. + +-SUBDIRS= pango modules pango-view examples docs tools tests ++SUBDIRS= pango modules pango-view examples docs tools + + EXTRA_DIST = \ + autogen.sh \ diff --git a/meta/recipes-graphics/pango/pango.inc b/meta/recipes-graphics/pango/pango.inc new file mode 100644 index 00000000000..fa22fa578ed --- /dev/null +++ b/meta/recipes-graphics/pango/pango.inc @@ -0,0 +1,46 @@ +DESCRIPTION = "The goal of the Pango project is to provide an \ +Open Source framework for the layout and rendering of \ +internationalized text." +HOMEPAGE = "http://www.pango.org/" +BUGTRACKER = "http://bugzilla.gnome.org" +SECTION = "x11/libs" +LICENSE = "LGPL" + +DEPENDS = "glib-2.0 fontconfig freetype zlib virtual/libiconv virtual/libx11 libxft gtk-doc-native cairo" + +PACKAGES_DYNAMIC = "pango-module-*" + +RRECOMMENDS_${PN} = "pango-module-basic-x pango-module-basic-fc" + +inherit gnome + +EXTRA_AUTORECONF = "" + +# seems to go wrong with default cflags +FULL_OPTIMIZATION_arm = "-O2" + +EXTRA_OECONF = "--disable-glibtest \ + --enable-explicit-deps=no \ + --disable-debug" + +LEAD_SONAME = "libpango-1.0*" +LIBV = "1.6.0" + +postinst_prologue() { +if [ "x$D" != "x" ]; then + exit 1 +fi + +} + +python populate_packages_prepend () { + prologue = bb.data.getVar("postinst_prologue", d, 1) + + modules_root = bb.data.expand('${libdir}/pango/${LIBV}/modules', d) + + do_split_packages(d, modules_root, '^pango-(.*)\.so$', 'pango-module-%s', 'Pango module %s', prologue + 'pango-querymodules > /etc/pango/pango.modules') +} + +FILES_${PN} = "/etc ${bindir}/* ${libdir}/libpango*${SOLIBS}" +FILES_${PN}-dbg += "${libdir}/pango/${LIBV}/modules/.debug" +FILES_${PN}-dev += "${libdir}/pango/${LIBV}/modules/*.la" diff --git a/meta/recipes-graphics/pango/pango_1.28.0.bb b/meta/recipes-graphics/pango/pango_1.28.0.bb new file mode 100644 index 00000000000..ae914ffc537 --- /dev/null +++ b/meta/recipes-graphics/pango/pango_1.28.0.bb @@ -0,0 +1,9 @@ +require pango.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" + +PR = "r0" + +SRC_URI += "file://no-tests.patch" + +PARALLEL_MAKE = "" diff --git a/meta/recipes-graphics/startup-notification/startup-notification_0.10.bb b/meta/recipes-graphics/startup-notification/startup-notification_0.10.bb new file mode 100644 index 00000000000..8b349821f5e --- /dev/null +++ b/meta/recipes-graphics/startup-notification/startup-notification_0.10.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Startup-notification contains a reference implementation of the startup notification protocol." +HOMEPAGE = "http://www.freedesktop.org/wiki/software/startup-notification/" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=Specifications" + +# most files are under MIT, but libsn/sn-util.c is under LGPL, the +# effective license is LGPL +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=a2ae2cd47d6d2f238410f5364dfbc0f2 \ + file://libsn/sn-util.c;endline=18;md5=18a14dc1825d38e741d772311fea9ee1 \ + file://libsn/sn-common.h;endline=23;md5=6d05bc0ebdcf5513a6e77cb26e8cd7e2 \ + file://test/test-boilerplate.h;endline=23;md5=923e706b2a70586176eead261cc5bb98" + +PR = "r0" + +SECTION = "libs" + +PRIORITY = "optional" + +DEPENDS = "virtual/libx11 libsm xcb-util" + +inherit autotools pkgconfig + +SRC_URI = "http://www.freedesktop.org/software/startup-notification/releases/${PN}-${PV}.tar.gz" diff --git a/meta/recipes-graphics/tslib/tslib/a780/tslib.sh b/meta/recipes-graphics/tslib/tslib/a780/tslib.sh new file mode 100644 index 00000000000..51cd0f1f36e --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/a780/tslib.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/event1 +TSLIB_CONFFILE=/etc/ts.conf + +export TSLIB_TSDEVICE TSLIB_CONFFILE diff --git a/meta/recipes-graphics/tslib/tslib/collie/ts.conf b/meta/recipes-graphics/tslib/tslib/collie/ts.conf new file mode 100644 index 00000000000..2099b9b4141 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/collie/ts.conf @@ -0,0 +1,5 @@ +module_raw collie +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/collie/tslib.sh b/meta/recipes-graphics/tslib/tslib/collie/tslib.sh new file mode 100644 index 00000000000..664bda426ad --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/collie/tslib.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/touchscreen0 +TSLIB_CONFFILE=/etc/ts.conf + +case `uname -r` in +2.4*) + TSLIB_TSDEVICE=/dev/ts + TSLIB_CONFFILE=/usr/share/tslib/ts.conf-collie-2.4 + ;; +esac + +export TSLIB_TSDEVICE TSLIB_CONFFILE diff --git a/meta/recipes-graphics/tslib/tslib/devfs.patch b/meta/recipes-graphics/tslib/tslib/devfs.patch new file mode 100644 index 00000000000..d7ef0a95899 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/devfs.patch @@ -0,0 +1,18 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- tslib/tests/fbutils.c~devfs.patch ++++ tslib/tests/fbutils.c +@@ -44,8 +44,8 @@ + static unsigned colormap [256]; + int xres, yres; + +-static char *defaultfbdevice = "/dev/fb0"; +-static char *defaultconsoledevice = "/dev/tty"; ++static char *defaultfbdevice = "/dev/fb/0"; ++static char *defaultconsoledevice = "/dev/vc/"; + static char *fbdevice = NULL; + static char *consoledevice = NULL; + diff --git a/meta/recipes-graphics/tslib/tslib/e680/tslib.sh b/meta/recipes-graphics/tslib/tslib/e680/tslib.sh new file mode 100644 index 00000000000..51cd0f1f36e --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/e680/tslib.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/event1 +TSLIB_CONFFILE=/etc/ts.conf + +export TSLIB_TSDEVICE TSLIB_CONFFILE diff --git a/meta/recipes-graphics/tslib/tslib/event1.patch b/meta/recipes-graphics/tslib/tslib/event1.patch new file mode 100644 index 00000000000..88cc3f3a2ac --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/event1.patch @@ -0,0 +1,80 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- tslib/tests/ts_calibrate.c~event1 ++++ tslib/tests/ts_calibrate.c +@@ -179,11 +179,7 @@ + if( (tsdevice = getenv("TSLIB_TSDEVICE")) != NULL ) { + ts = ts_open(tsdevice,0); + } else { +-#ifdef USE_INPUT_API +- ts = ts_open("/dev/input/event0", 0); +-#else +- ts = ts_open("/dev/touchscreen/ucb1x00", 0); +-#endif /* USE_INPUT_API */ ++ ts = ts_open("/dev/input/event1", 0); + } + + if (!ts) { +--- tslib/tests/ts_print.c~event1 ++++ tslib/tests/ts_print.c +@@ -28,11 +28,7 @@ + if( (tsdevice = getenv("TSLIB_TSDEVICE")) != NULL ) { + ts = ts_open(tsdevice,0); + } else { +-#ifdef USE_INPUT_API +- ts = ts_open("/dev/input/event0", 0); +-#else +- ts = ts_open("/dev/touchscreen/ucb1x00", 0); +-#endif /* USE_INPUT_API */ ++ ts = ts_open("/dev/input/event1", 0); + } + + if (!ts) { +--- tslib/tests/ts_test.c~event1 ++++ tslib/tests/ts_test.c +@@ -120,11 +120,7 @@ + signal(SIGTERM, sig); + + if ((tsdevice = getenv("TSLIB_TSDEVICE")) == NULL) { +-#ifdef USE_INPUT_API +- tsdevice = strdup ("/dev/input/event0"); +-#else +- tsdevice = strdup ("/dev/touchscreen/ucb1x00"); +-#endif /* USE_INPUT_API */ ++ tsdevice = strdup ("/dev/input/event1"); + } + + ts = ts_open (tsdevice, 0); +--- tslib/tests/ts_print_raw.c~event1 ++++ tslib/tests/ts_print_raw.c +@@ -28,11 +28,7 @@ + if( (tsdevice = getenv("TSLIB_TSDEVICE")) != NULL ) { + ts = ts_open(tsdevice,0); + } else { +-#ifdef USE_INPUT_API +- ts = ts_open("/dev/input/event0", 0); +-#else +- ts = ts_open("/dev/touchscreen/ucb1x00", 0); +-#endif /* USE_INPUT_API */ ++ ts = ts_open("/dev/input/event1", 0); + } + + if (!ts) { +--- tslib/tests/ts_harvest.c~event1 ++++ tslib/tests/ts_harvest.c +@@ -75,11 +75,7 @@ + signal(SIGTERM, sig); + + if ((tsdevice = getenv("TSLIB_TSDEVICE")) == NULL) { +-#ifdef USE_INPUT_API +- tsdevice = strdup ("/dev/input/event0"); +-#else +- tsdevice = strdup ("/dev/touchscreen/ucb1x00"); +-#endif /* USE_INPUT_API */ ++ tsdevice = strdup ("/dev/input/event1"); + } + + ts = ts_open (tsdevice, 0); diff --git a/meta/recipes-graphics/tslib/tslib/fix_version.patch b/meta/recipes-graphics/tslib/tslib/fix_version.patch new file mode 100644 index 00000000000..d6a0ebd0f35 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/fix_version.patch @@ -0,0 +1,32 @@ +--- + configure.ac | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +Index: tslib-1.0/configure.ac +=================================================================== +--- tslib-1.0.orig/configure.ac 2006-08-24 22:02:55.000000000 +0100 ++++ tslib-1.0/configure.ac 2007-07-09 21:04:38.000000000 +0100 +@@ -2,7 +2,7 @@ + # Process this file with autoconf to produce a configure script. + + AC_PREREQ(2.57) +-AC_INIT(tslib, 0.0.2, kergoth@handhelds.org) ++AC_INIT(tslib, 1.0.0, kergoth@handhelds.org) + # AC_CONFIG_AUX_DIR(config) + AM_INIT_AUTOMAKE(dist-bzip2) + AC_CONFIG_SRCDIR([src/ts_close.c]) +@@ -193,10 +193,10 @@ TS_CONF='${sysconfdir}/ts.conf' + AC_SUBST(TS_CONF) + + # Library versioning +-LT_RELEASE=0.0 +-LT_CURRENT=1 +-LT_REVISION=1 +-LT_AGE=1 ++LT_RELEASE=1.0 ++LT_CURRENT=0 ++LT_REVISION=0 ++LT_AGE=0 + AC_SUBST(LT_RELEASE) + AC_SUBST(LT_CURRENT) + AC_SUBST(LT_REVISION) diff --git a/meta/recipes-graphics/tslib/tslib/jornada56x/ts.conf b/meta/recipes-graphics/tslib/tslib/jornada56x/ts.conf new file mode 100644 index 00000000000..20729b61540 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada56x/ts.conf @@ -0,0 +1,5 @@ +module_raw h3600 +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/jornada56x/tslib.sh b/meta/recipes-graphics/tslib/tslib/jornada56x/tslib.sh new file mode 100644 index 00000000000..8f907b07553 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada56x/tslib.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/tsraw0 + +export TSLIB_TSDEVICE diff --git a/meta/recipes-graphics/tslib/tslib/jornada6xx/ts.conf b/meta/recipes-graphics/tslib/tslib/jornada6xx/ts.conf new file mode 100644 index 00000000000..20729b61540 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada6xx/ts.conf @@ -0,0 +1,5 @@ +module_raw h3600 +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/jornada6xx/tslib.sh b/meta/recipes-graphics/tslib/tslib/jornada6xx/tslib.sh new file mode 100644 index 00000000000..1b5db781c1e --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada6xx/tslib.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/ts0 + +export TSLIB_TSDEVICE diff --git a/meta/recipes-graphics/tslib/tslib/jornada7xx/ts.conf b/meta/recipes-graphics/tslib/tslib/jornada7xx/ts.conf new file mode 100644 index 00000000000..09309719f29 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada7xx/ts.conf @@ -0,0 +1,5 @@ +module_raw input +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/jornada7xx/tslib.sh b/meta/recipes-graphics/tslib/tslib/jornada7xx/tslib.sh new file mode 100644 index 00000000000..040f4de3d5e --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/jornada7xx/tslib.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/event1 + +export TSLIB_TSDEVICE diff --git a/meta/recipes-graphics/tslib/tslib/mnci/ts.conf b/meta/recipes-graphics/tslib/tslib/mnci/ts.conf new file mode 100644 index 00000000000..adff17717b1 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/mnci/ts.conf @@ -0,0 +1,5 @@ +module_raw input +module pthres pmin=600 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/mnci/tslib.sh b/meta/recipes-graphics/tslib/tslib/mnci/tslib.sh new file mode 100644 index 00000000000..07928f226dc --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/mnci/tslib.sh @@ -0,0 +1 @@ +export TSLIB_TSDEVICE=/dev/input/event1 diff --git a/meta/recipes-graphics/tslib/tslib/multievent.patch b/meta/recipes-graphics/tslib/tslib/multievent.patch new file mode 100644 index 00000000000..854e7af5ddb --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/multievent.patch @@ -0,0 +1,843 @@ +--- tslib/plugins/linear.c~multievent ++++ tslib/plugins/linear.c +@@ -39,14 +39,12 @@ + linear_read(struct tslib_module_info *info, struct ts_sample *samp, int nr) + { + struct tslib_linear *lin = (struct tslib_linear *)info; +- int ret; ++ int ret, i = 0; + int xtemp,ytemp; + + ret = info->next->ops->read(info->next, samp, nr); + if (ret >= 0) { +- int nr; +- +- for (nr = 0; nr < ret; nr++, samp++) { ++ for (i = 0; i < ret; i++, samp++) { + #ifdef DEBUG + fprintf(stderr,"BEFORE CALIB--------------------> %d %d %d\n",samp->x, samp->y, samp->pressure); + #endif /*DEBUG*/ +@@ -66,6 +64,7 @@ + samp->y = tmp; + } + } ++ ret = i; + } + + return ret; +--- tslib/plugins/dejitter.c~multievent ++++ tslib/plugins/dejitter.c +@@ -24,7 +24,6 @@ + + struct tslib_threshold { + struct tslib_module_info module; +- int pthreshold; + int xdelta; + int ydelta; + int delta2; +@@ -36,40 +35,28 @@ + static int threshold_read(struct tslib_module_info *info, struct ts_sample *samp, int nr) + { + struct tslib_threshold *thr = (struct tslib_threshold *)info; +- struct ts_sample *s; +- int ret; ++ struct ts_sample *src = samp, *dest = samp; ++ int ret, i = 0; + + ret = info->next->ops->read(info->next, samp, nr); + if (ret >= 0) { +- int nr = 0; +- +- for (s = samp; s < samp + ret; s++) { ++ for (i = 0; i < ret; i++, samp++) { + int dr2; + #ifdef DEBUG +- fprintf(stderr,"BEFORE DEJITTER---------------> %d %d %d\n",s->x,s->y,s->pressure); ++ fprintf(stderr,"BEFORE DEJITTER---------------> %d %d %d\n", samp->x, samp->y, samp->pressure); + #endif /*DEBUG*/ +- thr->down = (s->pressure >= thr->pthreshold); +- if (thr->down) { +- dr2 = (thr->x - s->x)*(thr->x - s->x) +- + (thr->y - s->y)*(thr->y - s->y); +- if(dr2 < thr->delta2) { +- s->x = thr->x; +- s->y = thr->y; +- } else { +- thr->x = s->x; +- thr->y = s->y; +- } +- ++ dr2 = (thr->x - samp->x)*(thr->x - samp->x) ++ + (thr->y - samp->y)*(thr->y - samp->y); ++ if(dr2 < thr->delta2) { ++ samp->x = thr->x; ++ samp->y = thr->y; + } else { +- s->x = thr->x; +- s->y = thr->y; ++ thr->x = samp->x; ++ thr->y = samp->y; + } +- +- +- samp[nr++] = *s; + } + +- ret = nr; ++ ret = i; + } + return ret; + } +@@ -106,10 +93,6 @@ + thr->ydelta = v; + break; + +- case 3: +- thr->pthreshold = v; +- break; +- + default: + return -1; + } +@@ -120,7 +103,6 @@ + { + { "xdelta", (void *)1, threshold_limit }, + { "ydelta", (void *)2, threshold_limit }, +- { "pthreshold", (void *)3, threshold_limit } + }; + + //#define NR_VARS (sizeof(threshold_vars) / sizeof(threshold_vars[0])) +@@ -138,7 +120,6 @@ + + thr->xdelta = 10; + thr->ydelta = 10; +- thr->pthreshold = 100; + + if (tslib_parse_vars(&thr->module, threshold_vars, NR_VARS, params)) { + free(thr); +--- tslib/plugins/variance.c~multievent ++++ tslib/plugins/variance.c +@@ -9,25 +9,36 @@ + * $Id: variance.c,v 1.3 2002/11/08 23:28:55 dlowder Exp $ + * + * Variance filter for touchscreen values ++ * ++ * Policy question (applies to all tslib modules that consume events): ++ * 1) User requests a read of 5 events using nr. ++ * 2) Lower layers return us 4 events. ++ * 3) Perform variance calculation, we now only have _1_ event. ++ * 4) Do we, a) duplicate this data across the user requested 4 events, ++ * b) push up the single event ++ * c) loop on the read from the lower layers to obtain ++ * the user's requested number of events, unless we hit ++ * a pen_up. + */ ++ + #include <errno.h> + #include <stdlib.h> + #include <string.h> + #include <limits.h> +- + #include <stdio.h> + + #include "tslib.h" + #include "tslib-filter.h" + ++#define NR_INIT -1 + #define NR_LAST 4 + + struct tslib_variance { + struct tslib_module_info module; + int nr; +- unsigned int pthreshold; + unsigned int xlimit; + unsigned int ylimit; ++ unsigned int pthreshold; + struct ts_sample last[NR_LAST]; + }; + +@@ -37,8 +48,7 @@ + * least variance, and average them. + */ + static int +-variance_calculate(struct tslib_variance *var, struct ts_sample *samp, +- struct ts_sample *s) ++variance_calculate(struct tslib_variance *var, struct ts_sample *dest, struct ts_sample *src) + { + int i, j; + int diff_x, min_x, i_x, j_x; +@@ -100,11 +110,11 @@ + } + } + +- samp->x = (var->last[i_x].x + var->last[j_x].x) / 2; +- samp->y = (var->last[i_y].y + var->last[j_y].y) / 2; +- samp->pressure = (var->last[i_p].pressure + var->last[j_p].pressure) / 2; +- samp->tv.tv_sec = s->tv.tv_sec; +- samp->tv.tv_usec = s->tv.tv_usec; ++ dest->x = (var->last[i_x].x + var->last[j_x].x) / 2; ++ dest->y = (var->last[i_y].y + var->last[j_y].y) / 2; ++ dest->pressure = (var->last[i_p].pressure + var->last[j_p].pressure) / 2; ++ dest->tv.tv_sec = src->tv.tv_sec; ++ dest->tv.tv_usec = src->tv.tv_usec; + + return 1; + } +@@ -112,55 +122,57 @@ + static int variance_read(struct tslib_module_info *info, struct ts_sample *samp, int nr) + { + struct tslib_variance *var = (struct tslib_variance *)info; +- struct ts_sample *s; +- int ret; +- +- ret = info->next->ops->read(info->next, samp, nr); +- if (ret >= 0) { +- int nr = 0; +- +- for (s = samp; s < samp + ret; s++) { +- if (s->pressure < var->pthreshold) { +- /* +- * Pen was released. Reset our state and +- * pass up the release information. +- */ +-// samp[nr].x = 0; +-// samp[nr].y = 0; +- samp[nr].pressure = s->pressure; +- samp[nr].tv.tv_sec = s->tv.tv_sec; +- samp[nr].tv.tv_usec = s->tv.tv_usec; +- +- nr++; +- +- var->nr = 0; +- continue; +- } else if (var->nr == -1) { +- /* +- * Pen was pressed. Inform upper layers +- * immediately. +- */ +- samp[nr] = *s; +- nr++; +- } +- +- if (var->nr >= 0) { +- var->last[var->nr].x = s->x; +- var->last[var->nr].y = s->y; +- var->last[var->nr].pressure = s->pressure; +- } +- +- var->nr++; ++ struct ts_sample *src = samp, *dest = samp; ++ int ret, i = 0; + +- if (var->nr == NR_LAST) { +- if (variance_calculate(var, samp + nr, s)) +- nr++; +- var->nr = 0; ++ /* ++ * NOTES: ++ * ++ * Loop on read, collecting events until we hit nr, unless ++ * we hit a pen up or encounter a failure. ++ */ ++ while ((i < nr) && (ret != -1)) { ++ ret = info->next->ops->read(info->next, dest + i, nr - i); ++ if (ret >= 0) { ++ for (src = dest + i; src < dest + ret; src++) { ++ if (src->pressure < var->pthreshold) { ++ /* pen released, reset var->nr, ++ * do a calc based on what we have so ++ * far, and let this event flow up */ ++ if (variance_calculate(var, dest + i, src)) ++ i++; ++ var->nr = NR_INIT; ++ ret = -1; /* break outer loop, push up event */ ++ break; ++ } else if (var->nr == NR_INIT) { ++ /* ++ * First pen down event. Inform upper layers ++ * immediately for responsiveness. ++ */ ++ var->nr = 0; ++ i++; ++ ret = -1; /* break outer loop */ ++ break; ++ } ++ ++ if (var->nr >= 0) { ++ var->last[var->nr].x = src->x; ++ var->last[var->nr].y = src->y; ++ var->last[var->nr].pressure = src->pressure; ++ } ++ ++ var->nr++; ++ ++ if (var->nr == NR_LAST) { ++ if (variance_calculate(var, dest + i, src)) ++ i++; ++ var->nr = 0; ++ } + } + } +- +- ret = nr; + } ++ /* if we've collected at least one event, send it up */ ++ if (i != 0) ret = i; + return ret; + } + +@@ -196,10 +208,6 @@ + var->ylimit = v; + break; + +- case 3: +- var->pthreshold = v; +- break; +- + default: + return -1; + } +@@ -210,7 +218,6 @@ + { + { "xlimit", (void *)1, variance_limit }, + { "ylimit", (void *)2, variance_limit }, +- { "pthreshold", (void *)3, variance_limit } + }; + + #define NR_VARS (sizeof(variance_vars) / sizeof(variance_vars[0])) +@@ -218,6 +225,7 @@ + struct tslib_module_info *mod_init(struct tsdev *dev, const char *params) + { + struct tslib_variance *var; ++ char *pthresvar; + + var = malloc(sizeof(struct tslib_variance)); + if (var == NULL) +@@ -225,10 +233,15 @@ + + var->module.ops = &variance_ops; + +- var->nr = -1; ++ var->nr = NR_INIT; + var->xlimit = 160; + var->ylimit = 160; + var->pthreshold = 100; ++ pthresvar = getenv("TSLIB_PTHRES"); ++ if (pthresvar != NULL) { ++ int p = strtol(pthresvar, (char **)NULL, 10); ++ if (p != -1) var->pthreshold = p; ++ } + + if (tslib_parse_vars(&var->module, variance_vars, NR_VARS, params)) { + free(var); +--- tslib/README~multievent ++++ tslib/README +@@ -36,6 +36,19 @@ + usages. They are by no means exhaustive, nor probably even good examples. + They are basically the programs I used to test this library. + ++Module Creation Notes ++===================== ++ ++For those creating tslib modules, it is important to note a couple things with ++regard to handling of the ability for a user to request more than one ts event ++at a time. The first thing to note is that the lower layers may send up less ++events than the user requested, but only if that was a result of a pen release. ++Next, your module should send up just as many events as the user requested in ++nr. If your module is one that consumes events, such as variance, then you ++loop on the read from the lower layers, and only send the events up when ++1) you have the number of events requested by the user, or 2) one of the events ++from the lower layers was a pen release. ++ + + Module Parameters + ================= +--- tslib/src/ts_read_raw.c~multievent ++++ tslib/src/ts_read_raw.c +@@ -14,10 +14,10 @@ + * + * Read raw pressure, x, y, and timestamp from a touchscreen device. + */ ++ + #include "config.h" + + #include <stdio.h> +- + #include <stdlib.h> + #ifdef HAVE_UNISTD_H + #include <unistd.h> +@@ -25,79 +25,27 @@ + #include <sys/time.h> + #include <sys/types.h> + +-#ifdef USE_INPUT_API +-#include <linux/input.h> +-#else +-struct ts_event { /* Used in UCB1x00 style touchscreens (the default) */ +- unsigned short pressure; +- unsigned short x; +- unsigned short y; +- unsigned short pad; +- struct timeval stamp; +-}; +-struct h3600_ts_event { /* Used in the Compaq IPAQ */ +- unsigned short pressure; +- unsigned short x; +- unsigned short y; +- unsigned short pad; +-}; +-struct mk712_ts_event { /* Used in the Hitachi Webpad */ +- unsigned int header; +- unsigned int x; +- unsigned int y; +- unsigned int reserved; +-}; +-struct arctic2_ts_event { /* Used in the IBM Arctic II */ +- signed short pressure; +- signed int x; +- signed int y; +- int millisecs; +- int flags; +-}; +-struct collie_ts_event { /* Used in the Sharp Zaurus SL-5000d and SL-5500 */ +- long y; +- long x; +- long pressure; +- long long millisecs; +-}; +-struct corgi_ts_event { /* Used in the Sharp Zaurus SL-C700 */ +- short pressure; +- short x; +- short y; +- short millisecs; +-}; +-#endif /* USE_INPUT_API */ +- + #include "tslib-private.h" + +-int ts_read_raw(struct tsdev *ts, struct ts_sample *samp, int nr) +-{ + #ifdef USE_INPUT_API ++#include <linux/input.h> ++ ++static inline int get_input_event(struct tsdev *ts, struct ts_sample *samp) { + struct input_event ev; +-#else +- struct ts_event *evt; +- struct h3600_ts_event *hevt; +- struct mk712_ts_event *mevt; +- struct arctic2_ts_event *aevt; +- struct collie_ts_event *collie_evt; +- struct corgi_ts_event *corgi_evt; +-#endif /* USE_INPUT_API */ +- int ret; +- int total = 0; ++ struct timeval tv = {0, 0}; ++ fd_set fdset; ++ int ret = 0; + +- char *tseventtype=NULL; +- char *defaulttseventtype="UCB1x00"; ++ /* event vars */ ++ static int curr_x = 0, curr_y = 0; ++ int curr_p = 0, next_x = 0, next_y = 0; + +-#ifdef USE_INPUT_API +- /* warning: maybe those static vars should be part of the tsdev struct? */ +- static int curr_x = 0, curr_y = 0, curr_p = 0; +- static int got_curr_x = 0, got_curr_y = 0; +- int got_curr_p = 0; +- int next_x, next_y; ++ /* state variables */ ++ int got_curr_x = 0, got_curr_y = 0, got_curr_p = 0; + int got_next_x = 0, got_next_y = 0; + int got_tstamp = 0; + +- while (total < nr) { ++ while (1) { + ret = read(ts->fd, &ev, sizeof(struct input_event)); + if (ret < sizeof(struct input_event)) break; + +@@ -146,177 +94,231 @@ + samp->tv = ev.time; + } + +- if ( (!got_curr_x || !got_curr_y) && !got_curr_p && +- !got_next_x && !got_next_y ) { +- /* +- * The current event is not complete yet. +- * Give the kernel a chance to feed us more. +- */ +- struct timeval tv = {0, 0}; +- fd_set fdset; +- FD_ZERO(&fdset); +- FD_SET(ts->fd, &fdset); +- ret = select(ts->fd+1, &fdset, NULL, NULL, &tv); +- if (ret == 1) continue; +- if (ret == -1) break; ++ if (got_curr_x && got_curr_y && got_curr_p) { ++ /* we have a complete event */ ++ samp->x = curr_x; ++ samp->y = curr_y; ++ samp->pressure = curr_p; ++ ret = 0; /* indicate success */ ++ if (got_next_x) curr_x = next_x; ++ if (got_next_y) curr_y = next_y; ++ break; + } + +- /* We consider having a complete ts event */ +- samp->x = curr_x; +- samp->y = curr_y; +- samp->pressure = curr_p; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- samp++; +- total++; +- +- /* get ready for next event */ +- if (got_next_x) curr_x = next_x; else got_curr_x = 0; +- if (got_next_y) curr_y = next_y; else got_curr_y = 0; +- got_next_x = got_next_y = got_tstamp = 0; ++ /* ++ * The current event is not complete yet. ++ * Give the kernel a chance to feed us more. ++ */ ++ FD_ZERO(&fdset); ++ FD_SET(ts->fd, &fdset); ++ ret = select(ts->fd+1, &fdset, NULL, NULL, &tv); ++ if (ret == 1) continue; ++ if (ret == -1) break; + } + +- if (ret) ret = -1; +- if (total) ret = total; ++// fprintf(stdout, "%s: returning %d\n", __FUNCTION__, ret); ++ if (ret != 0) ret = -1; ++ return ret; ++} ++ + #else ++ ++struct ucb1x00_ts_event { /* Used in UCB1x00 style touchscreens (the default) */ ++ unsigned short pressure; ++ unsigned short x; ++ unsigned short y; ++ unsigned short pad; ++ struct timeval stamp; ++}; ++struct h3600_ts_event { /* Used in the Compaq IPAQ */ ++ unsigned short pressure; ++ unsigned short x; ++ unsigned short y; ++ unsigned short pad; ++}; ++struct mk712_ts_event { /* Used in the Hitachi Webpad */ ++ unsigned int header; ++ unsigned int x; ++ unsigned int y; ++ unsigned int reserved; ++}; ++struct arctic2_ts_event { /* Used in the IBM Arctic II */ ++ signed short pressure; ++ signed int x; ++ signed int y; ++ int millisecs; ++ int flags; ++}; ++struct collie_ts_event { /* Used in the Sharp Zaurus SL-5000d and SL-5500 */ ++ long y; ++ long x; ++ long pressure; ++ long long millisecs; ++}; ++struct corgi_ts_event { /* Used in the Sharp Zaurus SL-C700 */ ++ short pressure; ++ short x; ++ short y; ++ short millisecs; ++}; ++ ++static inline int get_ucb1x00_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct ucb1x00_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct ucb1x00_ts_event)); ++ if (ret > 0) { ++ samp->x = evt.x; ++ samp->y = evt.y; ++ samp->pressure = evt.pressure; ++ samp->tv.tv_usec = evt.stamp.tv_usec; ++ samp->tv.tv_sec = evt.stamp.tv_sec; ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++static inline int get_h3600_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct h3600_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct h3600_ts_event)); ++ if (ret > 0) { ++ samp->x = evt.x; ++ samp->y = evt.y; ++ samp->pressure = evt.pressure; ++ gettimeofday(&samp->tv, NULL); ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++static inline int get_mk712_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct mk712_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct mk712_ts_event)); ++ if (ret > 0) { ++ samp->x = (short)evt.x; ++ samp->y = (short)evt.y; ++ if(evt.header==0) ++ samp->pressure=1; ++ else ++ samp->pressure=0; ++ gettimeofday(&samp->tv, NULL); ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++static inline int get_arctic2_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct arctic2_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct arctic2_ts_event)); ++ if (ret > 0) { ++ samp->x = (short)evt.x; ++ samp->y = (short)evt.y; ++ samp->pressure = evt.pressure; ++ gettimeofday(&samp->tv, NULL); ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++static inline int get_collie_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct collie_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct collie_ts_event)); ++ if (ret > 0) { ++ samp->x = evt.x; ++ samp->y = evt.y; ++ samp->pressure = evt.pressure; ++ samp->tv.tv_usec = evt.millisecs % 1000; ++ samp->tv.tv_sec = evt.millisecs / 1000; ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++static inline int get_corgi_event(struct tsdev *ts, struct ts_sample *samp) { ++ struct corgi_ts_event evt; ++ int ret = read(ts->fd, &evt, sizeof(struct corgi_ts_event)); ++ if (ret > 0) { ++ samp->x = evt.x; ++ samp->y = evt.y; ++ samp->pressure = evt.pressure; ++ samp->tv.tv_usec = evt.millisecs % 1000; ++ samp->tv.tv_sec = evt.millisecs / 1000; ++ ret = 0; /* success */ ++ } ++ return ret; ++} ++ ++#endif ++ ++int ts_read_raw(struct tsdev *ts, struct ts_sample *samp, int nr) ++{ ++ int ret; ++ int total = 0; ++ int pen_down = 1; ++ static short x_save = 0, y_save = 0; ++ static int pthres = -1; ++ ++#ifndef USE_INPUT_API ++ char *tseventtype=NULL; ++ char *defaulttseventtype="UCB1x00"; + tseventtype = getenv("TSLIB_TSEVENTTYPE"); + if(tseventtype==NULL) tseventtype=defaulttseventtype; ++#endif + +- if( strcmp(tseventtype,"H3600") == 0) { /* iPAQ style h3600 touchscreen events */ +- hevt = alloca(sizeof(*hevt) * nr); +- ret = read(ts->fd, hevt, sizeof(*hevt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*hevt); +- while(ret >= sizeof(*hevt)) { +- samp->x = hevt->x; +- samp->y = hevt->y; +- samp->pressure = hevt->pressure; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- gettimeofday(&samp->tv,NULL); +- samp++; +- hevt++; +- ret -= sizeof(*hevt); +- } +- } else { +- return -1; +- } +- } else if( strcmp(tseventtype,"MK712") == 0) { /* Hitachi Webpad events */ +- mevt = alloca(sizeof(*mevt) * nr); +- ret = read(ts->fd, mevt, sizeof(*mevt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*mevt); +- while(ret >= sizeof(*mevt)) { +- samp->x = (short)mevt->x; +- samp->y = (short)mevt->y; +- if(mevt->header==0) +- samp->pressure=1; +- else +- samp->pressure=0; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- gettimeofday(&samp->tv,NULL); +- samp++; +- mevt++; +- ret -= sizeof(*mevt); +- } +- } else { +- return -1; +- } +- +- } else if( strcmp(tseventtype,"ARCTIC2") == 0) { /* IBM Arctic II events */ +- aevt = alloca(sizeof(*aevt) * nr); +- ret = read(ts->fd, aevt, sizeof(*aevt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*aevt); +- while(ret >= sizeof(*aevt)) { +- samp->x = (short)aevt->x; +- samp->y = (short)aevt->y; +- samp->pressure = aevt->pressure; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- gettimeofday(&samp->tv,NULL); +- samp++; +- aevt++; +- ret -= sizeof(*aevt); +- } ++ while ((total < nr) && pen_down) { ++// fprintf(stdout, "total: %d, nr: %d\n", total, nr); ++#ifdef USE_INPUT_API ++ ret = get_input_event(ts, samp); ++#else ++ if (strcmp(tseventtype, "H3600") == 0) { ++ /* iPAQ style h3600 touchscreen events */ ++ ret = get_h3600_event(ts, samp); ++ } else if (strcmp(tseventtype, "MK712") == 0) { ++ /* Hitachi Webpad events */ ++ ret = get_mk712_event(ts, samp); ++ } else if (strcmp(tseventtype, "ARCTIC2") == 0) { ++ /* IBM Arctic II events */ ++ ret = get_arctic2_event(ts, samp); ++ } else if (strcmp(tseventtype, "COLLIE") == 0) { ++ /* Sharp Zaurus SL-5000d/5500 events */ ++ ret = get_collie_event(ts, samp); ++ } else if (strcmp(tseventtype,"CORGI") == 0) { ++ /* Sharp Zaurus SL-C700 events */ ++ ret = get_corgi_event(ts, samp); + } else { +- return -1; ++ /* Use normal UCB1x00 type events */ ++ ret = get_ucb1x00_event(ts, samp); + } ++#endif ++ if (ret != 0) break; + +- } else if( strcmp(tseventtype,"COLLIE") == 0) { /* Sharp Zaurus SL-5000d/5500 events */ +- collie_evt = alloca(sizeof(*collie_evt) * nr); +- ret = read(ts->fd, collie_evt, sizeof(*collie_evt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*collie_evt); +- while(ret >= sizeof(*collie_evt)) { +- samp->x = collie_evt->x; +- samp->y = collie_evt->y; +- samp->pressure = collie_evt->pressure; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- samp->tv.tv_usec = collie_evt->millisecs % 1000; +- samp->tv.tv_sec = collie_evt->millisecs / 1000; +- samp++; +- collie_evt++; +- ret -= sizeof(*collie_evt); ++ if (pthres == -1) { ++ char *pthresvar = getenv("TSLIB_PTHRES"); ++ pthres = 100; ++ if (pthresvar != NULL) { ++ int p = strtol(pthresvar, (char **)NULL, 10); ++ if (p != -1) pthres = p; + } +- } else { +- return -1; + } + +- } else if( strcmp(tseventtype,"CORGI") == 0) { /* Sharp Zaurus SL-C700 events */ +- corgi_evt = alloca(sizeof(*corgi_evt) * nr); +- ret = read(ts->fd, corgi_evt, sizeof(*corgi_evt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*corgi_evt); +- while(ret >= sizeof(*corgi_evt)) { +- samp->x = corgi_evt->x; +- samp->y = corgi_evt->y; +- samp->pressure = corgi_evt->pressure; +-#ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); +-#endif /*DEBUG*/ +- samp->tv.tv_usec = corgi_evt->millisecs % 1000; +- samp->tv.tv_sec = corgi_evt->millisecs / 1000; +- samp++; +- corgi_evt++; +- ret -= sizeof(*corgi_evt); +- } ++ if (samp->pressure < pthres) { ++ /* pen released, send events up */ ++ pen_down = 0; ++ /* set x and y to previous values */ ++ samp->x = x_save; ++ samp->y = y_save; + } else { +- return -1; ++ pen_down = 1; ++ x_save = samp->x; ++ y_save = samp->y; + } +- +- } else { /* Use normal UCB1x00 type events */ +- evt = alloca(sizeof(*evt) * nr); +- ret = read(ts->fd, evt, sizeof(*evt) * nr); +- if(ret > 0) { +- int nr = ret / sizeof(*evt); +- while(ret >= sizeof(*evt)) { +- samp->x = evt->x; +- samp->y = evt->y; +- samp->pressure = evt->pressure; + #ifdef DEBUG +- fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x,samp->y,samp->pressure); ++ fprintf(stderr,"RAW---------------------------> %d %d %d\n",samp->x, samp->y, samp->pressure); + #endif /*DEBUG*/ +- samp->tv.tv_usec = evt->stamp.tv_usec; +- samp->tv.tv_sec = evt->stamp.tv_sec; +- samp++; +- evt++; +- ret -= sizeof(*evt); +- } +- } else { +- return -1; +- } ++ samp++; ++ total++; + } +- ret = nr; +-#endif /* USE_INPUT_API */ + ++ if (ret != 0) ret = -1; ++ if (total) ret = total; + return ret; + } + diff --git a/meta/recipes-graphics/tslib/tslib/netbook-pro/ts.conf b/meta/recipes-graphics/tslib/tslib/netbook-pro/ts.conf new file mode 100644 index 00000000000..6d94a8f4683 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/netbook-pro/ts.conf @@ -0,0 +1,5 @@ +module_raw input +module variance delta=80 +#module dejitter delta=2 +module linear + diff --git a/meta/recipes-graphics/tslib/tslib/netbook-pro/tslib.sh b/meta/recipes-graphics/tslib/tslib/netbook-pro/tslib.sh new file mode 100644 index 00000000000..d31bc76368f --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/netbook-pro/tslib.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +TSLIB_TSDEVICE=`detect-stylus --device` + +export TSLIB_TSDEVICE diff --git a/meta/recipes-graphics/tslib/tslib/omap1610h2/tslib.sh b/meta/recipes-graphics/tslib/tslib/omap1610h2/tslib.sh new file mode 100644 index 00000000000..040f4de3d5e --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/omap1610h2/tslib.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/event1 + +export TSLIB_TSDEVICE diff --git a/meta/recipes-graphics/tslib/tslib/omap5912osk/tslib.sh b/meta/recipes-graphics/tslib/tslib/omap5912osk/tslib.sh new file mode 100644 index 00000000000..6bb56651f88 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/omap5912osk/tslib.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +export TSLIB_TSDEVICE=/dev/input/event1 +export QWS_MOUSE_PROTO=TPanel diff --git a/meta/recipes-graphics/tslib/tslib/simpad/tslib.sh b/meta/recipes-graphics/tslib/tslib/simpad/tslib.sh new file mode 100644 index 00000000000..9c4eb1e0f9b --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/simpad/tslib.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +TSLIB_TSDEVICE=/dev/input/touchscreen0 +TSLIB_CONFFILE=/etc/ts.conf + +case `uname -r` in +2.4*) + TSLIB_TSDEVICE=/dev/touchscreen/ucb1x00 + TSLIB_CONFFILE=/usr/share/tslib/ts.conf-simpad-2.4 + ;; +esac + +export TSLIB_TSDEVICE TSLIB_CONFFILE + diff --git a/meta/recipes-graphics/tslib/tslib/ts.conf b/meta/recipes-graphics/tslib/tslib/ts.conf new file mode 100644 index 00000000000..1b0da937e80 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/ts.conf @@ -0,0 +1,25 @@ +# Uncomment if you wish to use the linux input layer event interface +module_raw input + +# Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d +# module_raw collie + +# Uncomment if you're using a Sharp Zaurus SL-C700/C750/C760/C860 +# module_raw corgi + +# Uncomment if you're using a device with a UCB1200/1300/1400 TS interface +# module_raw ucb1x00 + +# Uncomment if you're using an HP iPaq h3600 or similar +# module_raw h3600 + +# Uncomment if you're using a Hitachi Webpad +# module_raw mk712 + +# Uncomment if you're using an IBM Arctic II +# module_raw arctic2 + +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/ts.conf-collie-2.4 b/meta/recipes-graphics/tslib/tslib/ts.conf-collie-2.4 new file mode 100644 index 00000000000..2099b9b4141 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/ts.conf-collie-2.4 @@ -0,0 +1,5 @@ +module_raw collie +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/ts.conf-simpad-2.4 b/meta/recipes-graphics/tslib/tslib/ts.conf-simpad-2.4 new file mode 100644 index 00000000000..035e794cb48 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/ts.conf-simpad-2.4 @@ -0,0 +1,5 @@ +module_raw ucb1x00 +module pthres pmin=1 +module variance delta=10 +module dejitter delta=150 +module linear diff --git a/meta/recipes-graphics/tslib/tslib/tslib.sh b/meta/recipes-graphics/tslib/tslib/tslib.sh new file mode 100644 index 00000000000..7068e8d9229 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib/tslib.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +if [ -e /dev/input/touchscreen0 ]; then + TSLIB_TSDEVICE=/dev/input/touchscreen0 + + export TSLIB_TSDEVICE +fi + diff --git a/meta/recipes-graphics/tslib/tslib_1.0.bb b/meta/recipes-graphics/tslib/tslib_1.0.bb new file mode 100644 index 00000000000..12c0ace8f82 --- /dev/null +++ b/meta/recipes-graphics/tslib/tslib_1.0.bb @@ -0,0 +1,78 @@ +DESCRIPTION = "tslib is a plugin-based flexible touchscreen access library." +HOMEPAGE = "http://tslib.berlios.de/" + +AUTHOR = "Russell King w/ plugins by Chris Larson et. al." +SECTION = "base" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=f30a9716ef3762e3467a2f62bf790f0a" + +PR = "r15" + +SRC_URI = "http://download.berlios.de/tslib/tslib-${PV}.tar.bz2 \ + file://fix_version.patch;patch=1 \ + file://ts.conf \ + file://ts.conf-simpad-2.4 \ + file://ts.conf-collie-2.4 \ + file://tslib.sh" +SRC_URI_append_mnci += " file://devfs.patch;patch=1" +SRC_URI_append_mnci += " file://event1.patch;patch=1" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--enable-shared --disable-h3600 --enable-input --disable-corgi --disable-collie --disable-mk712 --disable-arctic2 --disable-ucb1x00" + +do_install_prepend() { + install -m 0644 ${WORKDIR}/ts.conf ${S}/etc/ts.conf +} + +do_install_append() { + install -d ${D}${sysconfdir}/profile.d/ + install -m 0755 ${WORKDIR}/tslib.sh ${D}${sysconfdir}/profile.d/ + case ${MACHINE} in + collie ) + install -d ${D}${datadir}/tslib + install -m 0644 ${WORKDIR}/ts.conf-collie-2.4 ${D}${datadir}/tslib/ + ;; + simpad ) + install -d ${D}${datadir}/tslib + install -m 0644 ${WORKDIR}/ts.conf-simpad-2.4 ${D}${datadir}/tslib/ + ;; + *) + ;; + esac +} + +SRC_URI_OVERRIDES_PACKAGE_ARCH = "0" + +# People should consider using udev's /dev/input/touchscreen0 symlink +# instead of detect-stylus +#RDEPENDS_tslib-conf_weird-machine = "detect-stylus" +RPROVIDES_tslib-conf = "libts-0.0-conf" + +# Machines with machine specific patches +PACKAGE_ARCH_mnci = "${MACHINE_ARCH}" +# Machines with machine specific config files (tslib.sh) +PACKAGE_ARCH_tslib-conf_a780 = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_collie = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_e680 = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_jornada56x = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_jornada6xx = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_jornada7xx = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_netbook-pro = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_omap1610h2 = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_omap5912osk = "${MACHINE_ARCH}" +PACKAGE_ARCH_tslib-conf_simpad = "${MACHINE_ARCH}" + +PACKAGES =+ "tslib-conf tslib-tests tslib-calibrate" +DEBIAN_NOAUTONAME_tslib-conf = "1" +DEBIAN_NOAUTONAME_tslib-tests = "1" +DEBIAN_NOAUTONAME_tslib-calibrate = "1" + +RDEPENDS_${PN} = "tslib-conf" +RRECOMMENDS_${PN} = "pointercal" + +FILES_${PN}-dbg += "${libdir}/ts/.debug*" +FILES_tslib-conf = "${sysconfdir}/ts.conf ${sysconfdir}/profile.d/tslib.sh ${datadir}/tslib" +FILES_${PN} = "${libdir}/*.so.* ${libdir}/ts/*.so*" +FILES_tslib-calibrate += "${bindir}/ts_calibrate" +FILES_tslib-tests = "${bindir}/ts_harvest ${bindir}/ts_print ${bindir}/ts_print_raw ${bindir}/ts_test" diff --git a/meta/recipes-graphics/ttf-fonts/liberation-fonts/30-liberation-aliases.conf b/meta/recipes-graphics/ttf-fonts/liberation-fonts/30-liberation-aliases.conf new file mode 100644 index 00000000000..06094503cce --- /dev/null +++ b/meta/recipes-graphics/ttf-fonts/liberation-fonts/30-liberation-aliases.conf @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<!-- conf.d/sub-pixel.conf --> +<fontconfig> + <alias> + <family>sans-serif</family> + <accept><family>Liberation Sans</family></accept> + </alias> + <alias> + <family>serif</family> + <accept><family>Liberation Serif</family></accept> + </alias> + <alias> + <family>monospace</family> + <accept><family>Liberation Mono</family></accept> + </alias> +</fontconfig> diff --git a/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb b/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb new file mode 100644 index 00000000000..6b887e31b6c --- /dev/null +++ b/meta/recipes-graphics/ttf-fonts/liberation-fonts_1.04.bb @@ -0,0 +1,34 @@ +DESCRIPTION = "The Liberation(tm) Fonts is a font family originally created by Ascender(c) which aims metric compatibility as usage of Arial, Times New Roman, Courier New" +HOMEPAGE = "https://fedorahosted.org/liberation-fonts/" +BUGTRACKER = "https://bugzilla.redhat.com/" + +SECTION = "x11/fonts" +PRIORITY = "optional" +LICENSE = "GPLv2" +PACKAGE_ARCH = "all" +RDEPENDS = "fontconfig-utils" +PE = "1" + +SRC_URI = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-${PV}.tar.gz \ + file://30-liberation-aliases.conf" + +do_install () { + install -d ${D}${datadir}/fonts/ttf/ + for i in *.ttf; do + install -m 0644 $i ${D}${prefix}/share/fonts/ttf/${i} + done + + install -d ${D}${sysconfdir}/fonts/conf.d/ + install -m 0644 ${WORKDIR}/30-liberation-aliases.conf ${D}${sysconfdir}/fonts/conf.d/ + + install -d ${D}${prefix}/share/doc/${PN}/ + install -m 0644 License.txt ${D}${datadir}/doc/${PN}/ +} + +pkg_postinst () { +#!/bin/sh +fc-cache +} + +PACKAGES = "${PN}" +FILES_${PN} += "${sysconfdir} ${datadir}" diff --git a/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb b/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb new file mode 100644 index 00000000000..a6f4cd62fb1 --- /dev/null +++ b/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb @@ -0,0 +1,34 @@ +DESCRIPTION = "The Bitstream Vera fonts - TTF Edition" +SECTION = "x11/fonts" +PRIORITY = "optional" +LICENSE = "Bitstream Vera" +PACKAGE_ARCH = "all" +PR = "r3" +RDEPENDS = "fontconfig-utils" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/ttf-bitstream-vera-${PV}.tar.bz2" + +do_install () { + install -d ${D}${prefix}/share/fonts/ttf/ + for i in *.ttf; do + install -m 644 $i ${D}${prefix}/share/fonts/ttf/${i} + done + + # fontconfig ships this too. not sure what to do about it. + #install -d ${D}${sysconfdir}/fonts + #install -m 644 local.conf ${D}${sysconfdir}/fonts/local.conf + + + install -d ${D}${prefix}/share/doc/${PN}/ + for i in *.TXT; do + install -m 644 $i ${D}${prefix}/share/doc/${PN}/$i + done +} + +pkg_postinst () { +#!/bin/sh +fc-cache +} + + +FILES_${PN} = "/etc ${datadir}/fonts" diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults new file mode 100644 index 00000000000..f5b69dd5161 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xdefaults @@ -0,0 +1,3 @@ +Rxvt*scrollBar_right: true +Rxvt*font: xft:Mono:pixelsize=9 + diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver new file mode 100644 index 00000000000..3d4aa74b953 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver @@ -0,0 +1,77 @@ +#!/bin/sh +# + +# note xinit needs full server path +XSERVER=/usr/bin/Xipaq +if [ -f /usr/bin/Xfbdev ]; then + XSERVER=/usr/bin/Xfbdev +fi +if [ -f /usr/bin/Xepson ]; then + XSERVER=/usr/bin/Xepson +fi +if [ -f /usr/bin/Xorg ]; then + XSERVER=/usr/bin/Xorg +fi +if [ -f /usr/bin/Xomap ]; then + XSERVER=/usr/bin/Xomap +fi + +. /etc/profile + +module_id() { + ## used to read from assets, but sometimes assets is corrupted + # grep "Module ID" /proc/hal/assets | sed "s/.*://" + ## used to read from /proc/hal/model, but that is removed in 2.6 + # echo ' iPAQ' `cat /proc/hal/model` + awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo +} + +ARGS=" -br -pn" + +if [ "$XSERVER" != "/usr/bin/Xorg" ]; then + + . /etc/formfactor/config + + ARGS="$ARGS -keybd keyboard" + + # use usb mouse if present + if [ -z "$TSLIB_TSDEVICE" ] && [ -e /dev/input/mice ]; then + ARGS="$ARGS -mouse /dev/input/mice" + fi + + # kdrive 1.4 onwards needs -mouse args + if [ -n "$TSLIB_TSDEVICE" ]; then + ARGS="$ARGS -mouse tslib" + fi + + # start off server in conventional location. + case `module_id` in + "Generic OMAP1510/1610/1710") + ARGS="$ARGS -mouse /dev/input/event0" ;; + "Compulab CM-x270") + #modprobe mbxfb + #ARGS="$ARGS -fb /dev/fb1" + ;; + "Nokia N800") + ARGS="$ARGS -mouse tslib" ;; + "Nokia 770") + ARGS="$ARGS -mouse tslib" ;; + *) + ;; + esac + + ARGS="$ARGS -screen ${DISPLAY_WIDTH_PIXELS}x${DISPLAY_HEIGHT_PIXELS}@${DISPLAY_ORIENTATION}x${DISPLAY_BPP}" + + if [ ! -z "$DISPLAY_DPI" ]; then + ARGS="$ARGS -dpi $DISPLAY_DPI" + fi + + if [ ! -z "$DISPLAY_SUBPIXEL_ORDER" ]; then + ARGS="$ARGS -rgba $DISPLAY_SUBPIXEL_ORDER" + fi + +fi + +DISPLAY=':0' + +exec xinit /etc/X11/Xsession -- $XSERVER $DISPLAY $ARGS $* diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession new file mode 100644 index 00000000000..a87447a879a --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession @@ -0,0 +1,38 @@ +#!/bin/sh + +if [ -x /usr/bin/dbus-launch ]; then + # As this is the X session script, always start a new DBus session. + eval `dbus-launch --sh-syntax --exit-with-session` + echo "D-BUS per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS" +fi + +. /etc/profile + +if [ -f $HOME/.profile ]; then + . $HOME/.profile +fi + +SYSSESSIONDIR=/etc/X11/Xsession.d + +export CLUTTER_DISABLE_MIPMAPPED_TEXT=1 + +for SESSIONFILE in $SYSSESSIONDIR/*; do + set +e + case "$SESSIONFILE" in + *.sh) + . "$SESSIONFILE" + ;; + *.shbg) + "$SESSIONFILE" & + ;; + *~) + # Ignore backup files + ;; + *) + "$SESSIONFILE" + ;; + esac + set -e +done + +exit 0 diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/12keymap.sh b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/12keymap.sh new file mode 100644 index 00000000000..a9d102c7467 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/12keymap.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +# kdrive 1.4 does not have default keymap in server +#xmodmap - </etc/X11/default.xmodmap diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/89xdgautostart.sh b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/89xdgautostart.sh new file mode 100644 index 00000000000..db7aa229d29 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/89xdgautostart.sh @@ -0,0 +1,7 @@ +XDGAUTOSTART=/etc/xdg/autostart +if [ -d $XDGAUTOSTART ]; then + for SCRIPT in $XDGAUTOSTART/*; do + CMD=`grep ^Exec= $SCRIPT | cut -d '=' -f 2` + $CMD & + done +fi
\ No newline at end of file diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/90XWindowManager.sh b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/90XWindowManager.sh new file mode 100644 index 00000000000..b936dedf3b7 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/Xsession.d/90XWindowManager.sh @@ -0,0 +1,7 @@ +if [ -x $HOME/.Xsession ]; then + exec $HOME/.Xsession +elif [ -x /usr/bin/x-session-manager ]; then + exec /usr/bin/x-session-manager +else + exec /usr/bin/x-window-manager +fi diff --git a/meta/recipes-graphics/x11-common/x11-common/etc/X11/default.xmodmap b/meta/recipes-graphics/x11-common/x11-common/etc/X11/default.xmodmap new file mode 100644 index 00000000000..05a13fa3c85 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common/etc/X11/default.xmodmap @@ -0,0 +1,260 @@ +keycode 8 = +keycode 9 = Escape +keycode 10 = 1 exclam +keycode 11 = 2 at +keycode 12 = 3 numbersign +keycode 13 = 4 dollar +keycode 14 = 5 percent +keycode 15 = 6 asciicircum +keycode 16 = 7 ampersand braceleft +keycode 17 = 8 asterisk bracketleft +keycode 18 = 9 parenleft bracketright +keycode 19 = 0 parenright braceright +keycode 20 = minus underscore backslash +keycode 21 = equal plus +keycode 22 = BackSpace +keycode 23 = Tab +keycode 24 = q Q q +keycode 25 = w W w +keycode 26 = e E +keycode 27 = r R r +keycode 28 = t T t +keycode 29 = y Y y +keycode 30 = u U u +keycode 31 = i I i +keycode 32 = o O o +keycode 33 = p P p +keycode 34 = bracketleft braceleft +keycode 35 = bracketright braceright asciitilde +keycode 36 = Return +keycode 37 = Control_L +keycode 38 = a A +keycode 39 = s S s +keycode 40 = d D +keycode 41 = f F +keycode 42 = g G g +keycode 43 = h H h +keycode 44 = j J j +keycode 45 = k K k +keycode 46 = l L l +keycode 47 = semicolon colon +keycode 48 = apostrophe quotedbl +keycode 49 = grave asciitilde +keycode 50 = Shift_L +keycode 51 = backslash bar +keycode 52 = z Z z +keycode 53 = x X x +keycode 54 = c C +keycode 55 = v V v +keycode 56 = b B +keycode 57 = n N n +keycode 58 = m M m +keycode 59 = comma less +keycode 60 = period greater +keycode 61 = slash question +keycode 62 = Shift_R +keycode 63 = KP_Multiply +keycode 64 = Alt_L +keycode 65 = space +keycode 66 = Caps_Lock +keycode 67 = F1 F11 +keycode 68 = F2 F12 +keycode 69 = F3 F13 +keycode 70 = F4 F14 +keycode 71 = F5 F15 +keycode 72 = F6 F16 +keycode 73 = F7 F17 +keycode 74 = F8 F18 +keycode 75 = F9 F19 +keycode 76 = F10 F20 +keycode 77 = Num_Lock +keycode 78 = Scroll_Lock +keycode 79 = KP_7 +keycode 80 = KP_8 +keycode 81 = KP_9 +keycode 82 = KP_Subtract +keycode 83 = KP_4 +keycode 84 = KP_5 +keycode 85 = KP_6 +keycode 86 = KP_Add +keycode 87 = KP_1 +keycode 88 = KP_2 +keycode 89 = KP_3 +keycode 90 = KP_0 +keycode 91 = KP_Decimal +keycode 92 = +keycode 93 = +keycode 94 = less greater bar +keycode 95 = F11 +keycode 96 = F12 +keycode 97 = +keycode 98 = +keycode 99 = +keycode 100 = +keycode 101 = +keycode 102 = +keycode 103 = +keycode 104 = KP_Enter +keycode 105 = Control_R +keycode 106 = KP_Divide +keycode 107 = +keycode 108 = Mode_switch +keycode 109 = Break +keycode 110 = Home +keycode 111 = Up +keycode 112 = Prior +keycode 113 = Left +keycode 114 = Right +keycode 115 = End +keycode 116 = Down +keycode 117 = Next +keycode 118 = Insert +keycode 119 = Delete +keycode 120 = Menu +keycode 121 = F13 +keycode 122 = F14 +keycode 123 = Help +keycode 124 = Execute +keycode 125 = F17 +keycode 126 = KP_Subtract +keycode 127 = Pause +keycode 128 = +keycode 129 = +keycode 130 = +keycode 131 = +keycode 132 = +keycode 133 = +keycode 134 = +keycode 135 = +keycode 136 = +keycode 137 = +keycode 138 = +keycode 139 = +keycode 140 = +keycode 141 = +keycode 142 = +keycode 143 = +keycode 144 = +keycode 145 = +keycode 146 = +keycode 147 = +keycode 148 = +keycode 149 = +keycode 150 = +keycode 151 = +keycode 152 = +keycode 153 = +keycode 154 = +keycode 155 = +keycode 156 = +keycode 157 = +keycode 158 = +keycode 159 = +keycode 160 = +keycode 161 = +keycode 162 = +keycode 163 = +keycode 164 = +keycode 165 = +keycode 166 = +keycode 167 = +keycode 168 = +keycode 169 = +keycode 170 = +keycode 171 = +keycode 172 = +keycode 173 = +keycode 174 = +keycode 175 = +keycode 176 = +keycode 177 = +keycode 178 = +keycode 179 = +keycode 180 = +keycode 181 = +keycode 182 = +keycode 183 = +keycode 184 = +keycode 185 = +keycode 186 = +keycode 187 = +keycode 188 = +keycode 189 = +keycode 190 = +keycode 191 = +keycode 192 = +keycode 193 = +keycode 194 = +keycode 195 = +keycode 196 = +keycode 197 = +keycode 198 = +keycode 199 = +keycode 200 = +keycode 201 = +keycode 202 = +keycode 203 = +keycode 204 = +keycode 205 = +keycode 206 = +keycode 207 = +keycode 208 = +keycode 209 = +keycode 210 = +keycode 211 = +keycode 212 = +keycode 213 = +keycode 214 = +keycode 215 = +keycode 216 = +keycode 217 = +keycode 218 = +keycode 219 = +keycode 220 = +keycode 221 = +keycode 222 = +keycode 223 = +keycode 224 = +keycode 225 = +keycode 226 = +keycode 227 = +keycode 228 = +keycode 229 = +keycode 230 = +keycode 231 = +keycode 232 = +keycode 233 = +keycode 234 = +keycode 235 = +keycode 236 = +keycode 237 = +keycode 238 = +keycode 239 = +keycode 240 = +keycode 241 = +keycode 242 = +keycode 243 = +keycode 244 = +keycode 245 = +keycode 246 = +keycode 247 = +keycode 248 = +keycode 249 = +keycode 250 = +keycode 251 = +keycode 252 = +keycode 253 = +keycode 254 = + +add shift = Shift_L +add shift = Shift_R +add shift = Menu +add lock = Caps_Lock +add control = Control_L +add control = Control_R +add mod1 = Alt_L +add mod2 = Num_Lock +!mod3 +add mod4 = Mode_switch +!mod5 + diff --git a/meta/recipes-graphics/x11-common/x11-common_0.1.bb b/meta/recipes-graphics/x11-common/x11-common_0.1.bb new file mode 100644 index 00000000000..6791f961a10 --- /dev/null +++ b/meta/recipes-graphics/x11-common/x11-common_0.1.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Common X11 scripts" +LICENSE = "GPLv2" +SECTION = "x11" +RDEPENDS_${PN} = "xmodmap xdpyinfo xtscal xinit formfactor" +PR = "r38" + +SRC_URI = "file://etc" +S = ${WORKDIR} + +PACKAGE_ARCH = "all" + +do_install() { + cp -R ${S}/etc ${D}/etc + chmod -R 755 ${D}/etc + find ${D}/etc -type d -name .svn -prune -exec rm -rf {} \; + find ${D}/etc -type f -name \*~ -exec rm -rf {} \; +} diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init.bb b/meta/recipes-graphics/x11-common/xserver-nodm-init.bb new file mode 100644 index 00000000000..c77b2f0f8bd --- /dev/null +++ b/meta/recipes-graphics/x11-common/xserver-nodm-init.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Simple Xserver Init Script (no dm)" +LICENSE = "GPL" +SECTION = "x11" +PRIORITY = "optional" +PR = "r22" +RDEPENDS_${PN} = "dbus-wait sudo" + +SRC_URI = "file://xserver-nodm" +S = ${WORKDIR} + +PACKAGE_ARCH = "all" + +do_install() { + install -d ${D}/etc + install -d ${D}/etc/init.d + install xserver-nodm ${D}/etc/init.d +} + +inherit update-rc.d + +INITSCRIPT_NAME = "xserver-nodm" +INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ." diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm new file mode 100755 index 00000000000..69ea9497241 --- /dev/null +++ b/meta/recipes-graphics/x11-common/xserver-nodm-init/xserver-nodm @@ -0,0 +1,58 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: xserver +# Required-Start: $local_fs $remote_fs dbus +# Required-Stop: $local_fs $remote_fs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +### END INIT INFO + +killproc() { # kill the named process(es) + pid=`/bin/pidof $1` + [ "$pid" != "" ] && kill $pid +} + +read CMDLINE < /proc/cmdline +for x in $CMDLINE; do + case $x in + x11=false) + echo "X Server disabled" + exit 0; + ;; + esac +done + +case "$1" in + start) + . /etc/profile + username=root + echo "Starting Xserver" + if [ -f /etc/X11/Xusername ]; then + username=`cat /etc/X11/Xusername` + fi + # Using sudo -i here has the nice side effect of making sire + # HOME, USER and other previously problematic variables + # are set correctly + sudo -b -i -u $username /etc/X11/Xserver + # Wait for the desktop to say its finished loading + dbus-wait org.matchbox_project.desktop Loaded + ;; + + stop) + echo "Stopping XServer" + killproc xinit + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 { start | stop | restart }" + ;; +esac + +exit 0 diff --git a/meta/recipes-graphics/xcb/libpthread-stubs_0.3.bb b/meta/recipes-graphics/xcb/libpthread-stubs_0.3.bb new file mode 100644 index 00000000000..8ded7a0747d --- /dev/null +++ b/meta/recipes-graphics/xcb/libpthread-stubs_0.3.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "This library provides weak aliases for pthread functions \ +not provided in libc or otherwise available by default." +HOMEPAGE = "http://xcb.freedesktop.org" +BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=XCB" +SECTION = "x11/libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=6edc1fea03d959f0c2d743fe5ca746ad" +PR = "r0" + +PARALLEL_MAKE = "" +#DEPENDS = "xcb-proto xproto libxau libxslt-native" +# DEPENDS += "xsltproc-native gperf-native" + +SRC_URI = "http://xcb.freedesktop.org/dist/libpthread-stubs-${PV}.tar.bz2" + +inherit autotools pkgconfig + +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})" diff --git a/meta/recipes-graphics/xcb/libxcb.inc b/meta/recipes-graphics/xcb/libxcb.inc new file mode 100644 index 00000000000..37d1f863396 --- /dev/null +++ b/meta/recipes-graphics/xcb/libxcb.inc @@ -0,0 +1,53 @@ +DESCRIPTION = "XCB: an X protocol C binding" +HOMEPAGE = "http://xcb.freedesktop.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" + +SECTION = "x11/libs" +LICENSE = "MIT-X" + +PARALLEL_MAKE = "" +DEPENDS = "xcb-proto xproto libxau libxslt-native xcb-proto-native" +# DEPENDS += "xsltproc-native gperf-native" + +SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2" +# file://xcbincludedir.patch;patch=1" + +PACKAGES =+ "libxcb-composite libxcb-damage libxcb-dpms libxcb-glx \ + libxcb-randr libxcb-record libxcb-render libxcb-res \ + libxcb-screensaver libxcb-shape libxcb-shm libxcb-sync \ + libxcb-xevie libxcb-xf86dri libxcb-xfixes libxcb-xlib \ + libxcb-xprint libxcb-xtest libxcb-xv libxcb-xvmc" + +FILES_${PN} = "${libdir}/libxcb.so.*" +#FILES_${PN}-dev = "${libdir}/libxcb.* ${libdir}/pkgconfig/*.pc ${includedir}/xcb/*.h" +FILES_libxcb-composite = "${libdir}/libxcb-composite.so.*" +FILES_libxcb-damage = "${libdir}/libxcb-damage.so.*" +FILES_libxcb-dpms = "${libdir}/libxcb-dpms.so.*" +FILES_libxcb-glx = "${libdir}/libxcb-glx.so.*" +FILES_libxcb-randr = "${libdir}/libxcb-randr.so.*" +FILES_libxcb-record = "${libdir}/libxcb-record.so.*" +FILES_libxcb-render = "${libdir}/libxcb-render.so.*" +FILES_libxcb-res = "${libdir}/libxcb-res.so.*" +FILES_libxcb-screensaver = "${libdir}/libxcb-screensaver.so.*" +FILES_libxcb-shape = "${libdir}/libxcb-shape.so.*" +FILES_libxcb-shm = "${libdir}/libxcb-shm.so.*" +FILES_libxcb-sync = "${libdir}/libxcb-sync.so.*" +FILES_libxcb-xevie = "${libdir}/libxcb-xevie.so.*" +FILES_libxcb-xf86dri = "${libdir}/libxcb-xf86dri.so.*" +FILES_libxcb-xfixes = "${libdir}/libxcb-xfixes.so.*" +FILES_libxcb-xinerama = "${libdir}/libxcb-xinerama.so.*" +FILES_libxcb-xlib = "${libdir}/libxcb-xlib.so.*" +FILES_libxcb-xprint = "${libdir}/libxcb-xprint.so.*" +FILES_libxcb-xtest = "${libdir}/libxcb-xtest.so.*" +FILES_libxcb-xv = "${libdir}/libxcb-xv.so.*" +FILES_libxcb-xvmc = "${libdir}/libxcb-xvmc.so.*" + +inherit autotools pkgconfig + +# XCBPROTO_XCBINCLUDEDIR is setup based on `pkg-config --variable=xcbincludedir xcb-proto` +# but the xcbincludedir variable doesn't point into the staging area, so it needs some +# tweeking here: +do_configure_prepend () { + sed -i "s|XCBPROTO_XCBINCLUDEDIR=|XCBPROTO_XCBINCLUDEDIR=${STAGING_DIR_HOST}/|" \ + ${S}/configure.ac +} diff --git a/meta/recipes-graphics/xcb/libxcb/xcbincludedir.patch b/meta/recipes-graphics/xcb/libxcb/xcbincludedir.patch new file mode 100644 index 00000000000..cef635096e2 --- /dev/null +++ b/meta/recipes-graphics/xcb/libxcb/xcbincludedir.patch @@ -0,0 +1,11 @@ +--- libxcb-1.0.orig/configure.ac 2006-11-23 15:33:01.000000000 +0000 ++++ libxcb-1.0/configure.ac 2008-09-10 20:29:12.000000000 +0100 +@@ -50,7 +50,7 @@ + + # Find the xcb-proto protocol descriptions + AC_MSG_CHECKING(XCBPROTO_XCBINCLUDEDIR) +-XCBPROTO_XCBINCLUDEDIR=`$PKG_CONFIG --variable=xcbincludedir xcb-proto` ++XCBPROTO_XCBINCLUDEDIR=$PKG_CONFIG_SYSROOT_DIR/`$PKG_CONFIG --variable=xcbincludedir xcb-proto` + AC_MSG_RESULT($XCBPROTO_XCBINCLUDEDIR) + AC_SUBST(XCBPROTO_XCBINCLUDEDIR) + diff --git a/meta/recipes-graphics/xcb/libxcb_1.1.91.bb b/meta/recipes-graphics/xcb/libxcb_1.1.91.bb new file mode 100644 index 00000000000..ae0cc5761d3 --- /dev/null +++ b/meta/recipes-graphics/xcb/libxcb_1.1.91.bb @@ -0,0 +1,6 @@ +include libxcb.inc +PR = "r1" + +DEPENDS += "libpthread-stubs xcb-proto-native" + +PACKAGES =+ "libxcb-xinerama" diff --git a/meta/recipes-graphics/xcb/libxcb_1.6.bb b/meta/recipes-graphics/xcb/libxcb_1.6.bb new file mode 100644 index 00000000000..fc80927be67 --- /dev/null +++ b/meta/recipes-graphics/xcb/libxcb_1.6.bb @@ -0,0 +1,10 @@ +include libxcb.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7" + +PR = "r0" + +DEPENDS += "libpthread-stubs xcb-proto-native" + +PACKAGES =+ "libxcb-xinerama" diff --git a/meta/recipes-graphics/xcb/libxcb_git.bb b/meta/recipes-graphics/xcb/libxcb_git.bb new file mode 100644 index 00000000000..b9ac0734107 --- /dev/null +++ b/meta/recipes-graphics/xcb/libxcb_git.bb @@ -0,0 +1,11 @@ +DEFAULT_PREFERENCE = "-1" + +include libxcb.inc +PV = "1.1.90.1+gitr${SRCREV}" + +DEPENDS += "libpthread-stubs xcb-proto-native" + +SRC_URI = "git://anongit.freedesktop.org/git/xcb/libxcb;protocol=git" +S = "${WORKDIR}/git" + +PACKAGES =+ "libxcb-xinerama" diff --git a/meta/recipes-graphics/xcb/xcb-proto.inc b/meta/recipes-graphics/xcb/xcb-proto.inc new file mode 100644 index 00000000000..2e1810f6f27 --- /dev/null +++ b/meta/recipes-graphics/xcb/xcb-proto.inc @@ -0,0 +1,18 @@ +DESCRIPTION = "XCB: an X protocol C binding" +HOMEPAGE = "http://xcb.freedesktop.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" + +SECTION = "x11/libs" +LICENSE = "MIT-X" + +SRC_URI = "http://xcb.freedesktop.org/dist/xcb-proto-${PV}.tar.bz2" + +inherit autotools pkgconfig + +FILES_${PN}-dev += "${datadir}/xcb/*.xml" + +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})" + +DEPENDS_append_virtclass-native = " python-native" +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xcb/xcb-proto_1.6.bb b/meta/recipes-graphics/xcb/xcb-proto_1.6.bb new file mode 100644 index 00000000000..a367b7cacfe --- /dev/null +++ b/meta/recipes-graphics/xcb/xcb-proto_1.6.bb @@ -0,0 +1,7 @@ +include xcb-proto.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \ + file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65" + +PR = "r0" diff --git a/meta/recipes-graphics/xcb/xcb-proto_git.bb b/meta/recipes-graphics/xcb/xcb-proto_git.bb new file mode 100644 index 00000000000..b96fc121c5d --- /dev/null +++ b/meta/recipes-graphics/xcb/xcb-proto_git.bb @@ -0,0 +1,8 @@ +DEFAULT_PREFERENCE = "-1" + +include xcb-proto.inc +PV = "1.2+gitr${SRCREV}" +PR = "r1" + +SRC_URI = "git://anongit.freedesktop.org/git/xcb/proto;protocol=git" +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/xcb/xcb-util.inc b/meta/recipes-graphics/xcb/xcb-util.inc new file mode 100644 index 00000000000..6bda3d0bfa8 --- /dev/null +++ b/meta/recipes-graphics/xcb/xcb-util.inc @@ -0,0 +1,30 @@ +DESCRIPTION = "XCB: an X protocol C binding" +HOMEPAGE = "http://xcb.freedesktop.org/XcbUtil/" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=XCB" + +LICENSE = "MIT" + +SECTION = "x11/libs" + +DEPENDS = "libxcb" +DEPENDS += "gperf-native" + +PARALLEL_MAKE = "" + +SRC_URI = "http://xcb.freedesktop.org/dist/xcb-util-${PV}.tar.bz2" + +PACKAGES =+ "libxcbatom libxcbaux libxcbevent libxcbicccm \ + libxcbimage libxcbkeysyms libxcbproperty \ + libxcbreply libxcbwm" + +FILES_libxcbatom = "${libdir}/libXCBAtom.so.*" +FILES_libxcbaux = "${libdir}/libXCBAux.so.*" +FILES_libxcbevent = "${libdir}/libXCBEvent.so.*" +FILES_libxcbicccm = "${libdir}/libXCBICCCM.so.*" +FILES_libxcbimage = "${libdir}/libXCBImage.so.*" +FILES_libxcbkeysyms = "${libdir}/libXCBKeysyms.so.*" +FILES_libxcbproperty = "${libdir}/libXCBProperty.so.*" +FILES_libxcbreply = "${libdir}/libXCBReply.so.*" +FILES_libxcbwm = "${libdir}/libXCBWM.so.*" + +inherit autotools pkgconfig diff --git a/meta/recipes-graphics/xcb/xcb-util_0.3.6.bb b/meta/recipes-graphics/xcb/xcb-util_0.3.6.bb new file mode 100644 index 00000000000..b0e50d85c37 --- /dev/null +++ b/meta/recipes-graphics/xcb/xcb-util_0.3.6.bb @@ -0,0 +1,15 @@ +require xcb-util.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://xcb-util-common.h;endline=30;md5=6c74595925fd773cc8cf387ff7bc53c7 \ + file://reply/reply.c;endline=27;md5=f9a1d6b55bba632d349949cbf33cd635 \ + file://aux/xcb_aux.c;endline=30;md5=ae305b9c2a38f9ba27060191046a6460 \ + file://renderutil/xcb_renderutil.h;endline=24;md5=d0ddab3052dd4949c93cfcb0891c96df \ + file://event/xcb_event.h;endline=27;md5=627be355aee59e1b8ade80d5bd90fad9 \ + file://property/xcb_property.h;endline=27;md5=f5890866ee0c655c36ef1c6c738fee6b \ + file://keysyms/keysyms.c;endline=30;md5=2f8de023ed823bb92f0b47900574ea9e \ + file://image/xcb_pixel.h;beginline=4;endline=27;md5=48cd25ae55e7de525fe1e1a3a7672e1c" + + +PR = "r0" + diff --git a/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/fix_watch_cursor.patch b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/fix_watch_cursor.patch new file mode 100644 index 00000000000..73a5b2a87a7 --- /dev/null +++ b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/fix_watch_cursor.patch @@ -0,0 +1,24 @@ +diff -NurP xcursor-transparent-theme-0.1.1-orig/cursors/Makefile.am xcursor-transparent-theme-0.1.1/cursors/Makefile.am +--- xcursor-transparent-theme-0.1.1-orig/cursors/Makefile.am 2003-10-30 13:13:59.000000000 +0100 ++++ xcursor-transparent-theme-0.1.1/cursors/Makefile.am 2005-12-20 23:35:17.000000000 +0100 +@@ -79,7 +79,7 @@ + ul_angle \ + ur_angle \ + v_double_arrow \ +- watcha \ ++ watch \ + xterm + + CURSOR_DIR = $(datadir)/icons/xcursor-transparent/cursors +diff -NurP xcursor-transparent-theme-0.1.1-orig/cursors/Makefile.in xcursor-transparent-theme-0.1.1/cursors/Makefile.in +--- xcursor-transparent-theme-0.1.1-orig/cursors/Makefile.in 2003-10-31 15:31:13.000000000 +0100 ++++ xcursor-transparent-theme-0.1.1/cursors/Makefile.in 2005-12-20 23:35:36.000000000 +0100 +@@ -67,7 +67,7 @@ + PACKAGE = @PACKAGE@ + VERSION = @VERSION@ + +-CURSOR_NAMES = 00008160000006810000408080010102 028006030e0e7ebffc7f7070c0600140 03b6e0fcb3499374a867c041f52298f0 08e8e1c95fe2fc01f976f1e063a24ccd 14fef782d02440884392942c11205230 2870a09082c103050810ffdffffe0204 3ecb610c1bf2410f44200f48c40d3599 4498f0e0c1937ffe01fd06f973665830 9d800788f1b08800ae810202380a0822 c7088f0f3e6c8088236ef8e1e3e70000 d9ce0ab605698f320427677b458ad60b e29285e634086352946a0e7090d73106 fcf1c3c7cd4491d801f1e1c78f100000 X_cursor arrow base_arrow_down base_arrow_up based_arrow_down based_arrow_up bd_double_arrow boat bottom_left_corner bottom_right_corner bottom_side bottom_tee center_ptr circle cross cross_reverse crossed_circle crosshair dot dot_box_mask dotbox double_arrow draft_large draft_small draped_box exchange fd_double_arrow fleur gumby h_double_arrow hand hand1 hand2 left_ptr left_ptr_watch left_side left_tee ll_angle lr_angle move pencil pirate plus question_arrow right_ptr right_side right_tee sailboat sb_down_arrow sb_h_double_arrow sb_left_arrow sb_right_arrow sb_up_arrow sb_v_double_arrow shuttle sizing target tcross top_left_arrow top_left_corner top_right_corner top_side top_tee trek ul_angle ur_angle v_double_arrow watcha xterm ++CURSOR_NAMES = 00008160000006810000408080010102 028006030e0e7ebffc7f7070c0600140 03b6e0fcb3499374a867c041f52298f0 08e8e1c95fe2fc01f976f1e063a24ccd 14fef782d02440884392942c11205230 2870a09082c103050810ffdffffe0204 3ecb610c1bf2410f44200f48c40d3599 4498f0e0c1937ffe01fd06f973665830 9d800788f1b08800ae810202380a0822 c7088f0f3e6c8088236ef8e1e3e70000 d9ce0ab605698f320427677b458ad60b e29285e634086352946a0e7090d73106 fcf1c3c7cd4491d801f1e1c78f100000 X_cursor arrow base_arrow_down base_arrow_up based_arrow_down based_arrow_up bd_double_arrow boat bottom_left_corner bottom_right_corner bottom_side bottom_tee center_ptr circle cross cross_reverse crossed_circle crosshair dot dot_box_mask dotbox double_arrow draft_large draft_small draped_box exchange fd_double_arrow fleur gumby h_double_arrow hand hand1 hand2 left_ptr left_ptr_watch left_side left_tee ll_angle lr_angle move pencil pirate plus question_arrow right_ptr right_side right_tee sailboat sb_down_arrow sb_h_double_arrow sb_left_arrow sb_right_arrow sb_up_arrow sb_v_double_arrow shuttle sizing target tcross top_left_arrow top_left_corner top_right_corner top_side top_tee trek ul_angle ur_angle v_double_arrow watch xterm + + + CURSOR_DIR = $(datadir)/icons/xcursor-transparent/cursors diff --git a/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/use-relative-symlinks.patch b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/use-relative-symlinks.patch new file mode 100644 index 00000000000..df28dfbc882 --- /dev/null +++ b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme-0.1.1/use-relative-symlinks.patch @@ -0,0 +1,11 @@ +diff -ur xcursor-transparent-theme-0.1.1~/cursors/Makefile.am xcursor-transparent-theme-0.1.1/cursors/Makefile.am +--- xcursor-transparent-theme-0.1.1~/cursors/Makefile.am 2003-10-30 12:13:59.000000000 +0000 ++++ xcursor-transparent-theme-0.1.1/cursors/Makefile.am 2004-07-27 12:56:24.000000000 +0100 +@@ -91,6 +91,6 @@ + $(INSTALL_DATA) $(CURSOR_REAL) $(DESTDIR)$(CURSOR_DIR)/ + for CURSOR in $(CURSOR_NAMES); do \ + echo '-- Installing cursor '$$CURSOR; \ +- ln -s $(DESTDIR)$(CURSOR_DIR)/transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \ ++ ln -s transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \ + done + diff --git a/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_0.1.1.bb b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_0.1.1.bb new file mode 100644 index 00000000000..67ca086be7e --- /dev/null +++ b/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_0.1.1.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Transparent xcursor theme for handheld systems" +HOMEPAGE = "http://www.matchbox-project.org/" +BUGTRACKER = "http://bugzilla.openedhand.com/" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +SECTION = "x11/base" +PR="r3" + +SRC_URI = "http://matchbox-project.org/sources/utils/xcursor-transparent-theme-${PV}.tar.gz \ + file://use-relative-symlinks.patch;patch=1 \ + file://fix_watch_cursor.patch;patch=1" +FILES_${PN} = "${datadir}/icons/xcursor-transparent/cursors/*" + +inherit autotools + +PACKAGE_ARCH = "all" diff --git a/meta/recipes-graphics/xorg-app/mkfontdir_1.0.5.bb b/meta/recipes-graphics/xorg-app/mkfontdir_1.0.5.bb new file mode 100644 index 00000000000..ebd5775725b --- /dev/null +++ b/meta/recipes-graphics/xorg-app/mkfontdir_1.0.5.bb @@ -0,0 +1,11 @@ +require xorg-app-common.inc + +DESCRIPTION = "a program to create an index of X font files in a directory" + +PE = "1" + +RDEPENDS += "mkfontscale" + +BBCLASSEXTEND = "native" + +LIC_FILES_CHKSUM = "file://COPYING;md5=b4fcf2b90cadbfc15009b9e124dc3a3f" diff --git a/meta/recipes-graphics/xorg-app/mkfontscale_1.0.7.bb b/meta/recipes-graphics/xorg-app/mkfontscale_1.0.7.bb new file mode 100644 index 00000000000..46a73111b1d --- /dev/null +++ b/meta/recipes-graphics/xorg-app/mkfontscale_1.0.7.bb @@ -0,0 +1,9 @@ +require xorg-app-common.inc + +DESCRIPTION = "a program to create an index of scalable font files for X" + +DEPENDS += " zlib libfontenc freetype virtual/libx11" + +BBCLASSEXTEND = "native" + +LIC_FILES_CHKSUM = "file://COPYING;md5=8ecbbbc1259a329e96ccc4dd86ad2ca2" diff --git a/meta/recipes-graphics/xorg-app/x11perf_1.5.bb b/meta/recipes-graphics/xorg-app/x11perf_1.5.bb new file mode 100644 index 00000000000..35680e7925c --- /dev/null +++ b/meta/recipes-graphics/xorg-app/x11perf_1.5.bb @@ -0,0 +1,6 @@ +require xorg-app-common.inc + +DESCRIPTION = "X11 server performance test program" +DEPENDS += "libxmu libxrender libxft libxext fontconfig" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xauth_1.0.4.bb b/meta/recipes-graphics/xorg-app/xauth_1.0.4.bb new file mode 100644 index 00000000000..d5f35768af5 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xauth_1.0.4.bb @@ -0,0 +1,10 @@ +require xorg-app-common.inc + +DESCRIPTION = "X application to edit and display the authorization \ +information used in connecting to the X server" + +LIC_FILES_CHKSUM = "file://COPYING;md5=5ec74dd7ea4d10c4715a7c44f159a40b" + +DEPENDS += "libxau libxext libxmu" +PR = "r0" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xbacklight_1.1.bb b/meta/recipes-graphics/xorg-app/xbacklight_1.1.bb new file mode 100644 index 00000000000..78804d734ee --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xbacklight_1.1.bb @@ -0,0 +1,4 @@ +require xorg-app-common.inc + +DESCRIPTION = "X Backlight Utility" +DEPENDS += "libxrender libxrandr" diff --git a/meta/recipes-graphics/xorg-app/xdpyinfo/disable-xkb.patch b/meta/recipes-graphics/xorg-app/xdpyinfo/disable-xkb.patch new file mode 100644 index 00000000000..24af21f4fc3 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xdpyinfo/disable-xkb.patch @@ -0,0 +1,18 @@ +--- xdpyinfo-1.0.1/configure.ac.orig 2006-03-08 16:33:05.000000000 +0100 ++++ xdpyinfo-1.0.1/configure.ac 2006-03-08 16:41:59.000000000 +0100 +@@ -45,11 +45,15 @@ + AC_CHECK_HEADERS([X11/extensions/multibuf.h X11/extensions/XShm.h],,,[#include <X11/Xlib.h>]) + CPPFLAGS="$SAVE_CPPFLAGS"],[echo "not found"]) + ++AC_ARG_ENABLE(xkb, AC_HELP_STRING([--disable-xkb], [Disable XKB support]), ++ XKB="$enableval", XKB="yes") ++if test "x$XKB" = "xyes" ; then + PKG_CHECK_MODULES(DPY_XKB, x11, + [SAVE_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $DPY_XKB_CFLAGS $DPY_X11_CFLAGS" + AC_CHECK_HEADERS([X11/extensions/XKB.h X11/XKBlib.h],,,[#include <X11/Xlib.h>]) + CPPFLAGS="$SAVE_CPPFLAGS"],[echo "not found"]) ++fi + + PKG_CHECK_MODULES(DPY_XF86VIDMODE, xxf86vm, + [SAVE_CPPFLAGS="$CPPFLAGS" diff --git a/meta/recipes-graphics/xorg-app/xdpyinfo_1.1.0.bb b/meta/recipes-graphics/xorg-app/xdpyinfo_1.1.0.bb new file mode 100644 index 00000000000..f5d47e1392d --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xdpyinfo_1.1.0.bb @@ -0,0 +1,11 @@ +require xorg-app-common.inc + +DESCRIPTION = "X display information utility" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94" +DEPENDS += "libxtst libxext libxxf86vm libxxf86dga libxxf86misc libxi libxrender libxinerama libdmx libxp libxau" +PR = "r0" +PE = "1" + +SRC_URI += "file://disable-xkb.patch" + +EXTRA_OECONF = "--disable-xkb" diff --git a/meta/recipes-graphics/xorg-app/xev/diet-x11.patch b/meta/recipes-graphics/xorg-app/xev/diet-x11.patch new file mode 100644 index 00000000000..9f515e8c73c --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xev/diet-x11.patch @@ -0,0 +1,80 @@ +--- + xev.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +Index: xev-1.0.2/xev.c +=================================================================== +--- xev-1.0.2.orig/xev.c 2006-06-02 00:25:44.000000000 +0100 ++++ xev-1.0.2/xev.c 2007-05-10 15:22:07.000000000 +0100 +@@ -109,7 +109,7 @@ do_KeyPress (XEvent *eventp) + nbytes = XLookupString (e, str, 256, &ks, NULL); + + /* not supposed to call XmbLookupString on a key release event */ +- if (e->type == KeyPress && xic) { ++ /*if (e->type == KeyPress && xic) { + do { + nmbbytes = XmbLookupString (xic, e, buf, bsize - 1, &ks, &status); + buf[nmbbytes] = '\0'; +@@ -119,7 +119,7 @@ do_KeyPress (XEvent *eventp) + buf = realloc (buf, bsize); + } + } while (status == XBufferOverflow); +- } ++ }*/ + + if (ks == NoSymbol) + ksname = "NoSymbol"; +@@ -149,7 +149,7 @@ do_KeyPress (XEvent *eventp) + } + + /* not supposed to call XmbLookupString on a key release event */ +- if (e->type == KeyPress && xic) { ++ /*if (e->type == KeyPress && xic) { + printf (" XmbLookupString gives %d bytes: ", nmbbytes); + if (nmbbytes > 0) { + dump (buf, nmbbytes); +@@ -157,7 +157,7 @@ do_KeyPress (XEvent *eventp) + } else { + printf ("\n"); + } +- } ++ } */ + + printf (" XFilterEvent returns: %s\n", + XFilterEvent (eventp, e->window) ? "True" : "False"); +@@ -804,7 +804,7 @@ main (int argc, char **argv) + fprintf (stderr, "%s: XSetLocaleModifiers failed\n", ProgramName); + } + +- xim = XOpenIM (dpy, NULL, NULL, NULL); ++ /*xim = XOpenIM (dpy, NULL, NULL, NULL); + if (xim == NULL) { + fprintf (stderr, "%s: XOpenIM failed\n", ProgramName); + } +@@ -831,7 +831,7 @@ main (int argc, char **argv) + } + XFree (xim_styles); + } +- } ++ }*/ + + screen = DefaultScreen (dpy); + +@@ -891,7 +891,7 @@ main (int argc, char **argv) + printf ("Outer window is 0x%lx, inner window is 0x%lx\n", w, subw); + } + +- if (xim && xim_style) { ++ /*if (xim && xim_style) { + xic = XCreateIC (xim, + XNInputStyle, xim_style, + XNClientWindow, w, +@@ -901,7 +901,7 @@ main (int argc, char **argv) + if (xic == NULL) { + fprintf (stderr, "XCreateIC failed\n"); + } +- } ++ }*/ + + for (done = 0; !done; ) { + XEvent event; diff --git a/meta/recipes-graphics/xorg-app/xev_1.0.3.bb b/meta/recipes-graphics/xorg-app/xev_1.0.3.bb new file mode 100644 index 00000000000..b7a4070a8fa --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xev_1.0.3.bb @@ -0,0 +1,7 @@ +require xorg-app-common.inc + +DESCRIPTION = "X Event Viewer" +LICENSE = "MIT" +PE = "1" + +SRC_URI += "file://diet-x11.patch;patch=1" diff --git a/meta/recipes-graphics/xorg-app/xeyes_1.0.1.bb b/meta/recipes-graphics/xorg-app/xeyes_1.0.1.bb new file mode 100644 index 00000000000..07ce0724fa2 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xeyes_1.0.1.bb @@ -0,0 +1,4 @@ +require xorg-app-common.inc +PE = "1" + +DEPENDS += " virtual/libx11 libxau libxt libxext libxmu" diff --git a/meta/recipes-graphics/xorg-app/xhost_1.0.3.bb b/meta/recipes-graphics/xorg-app/xhost_1.0.3.bb new file mode 100644 index 00000000000..2c643d81a52 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xhost_1.0.3.bb @@ -0,0 +1,7 @@ +require xorg-app-common.inc + +DESCRIPTION = "Server access control program for X" +LIC_FILES_CHKSUM = "file://COPYING;md5=cbe6a2ee97dc38c7265adfec5644689b" +DEPENDS += "libxmu libxau" +PR = "r0" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xinit_1.2.1.bb b/meta/recipes-graphics/xorg-app/xinit_1.2.1.bb new file mode 100644 index 00000000000..7a083a7884c --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xinit_1.2.1.bb @@ -0,0 +1,8 @@ +require xorg-app-common.inc + +DESCRIPTION = "X Window System initializer" +LIC_FILES_CHKSUM = "file://COPYING;md5=0d4b5eef75f1584ccbdc5e4a34314407" +PR = "r0" +PE = "1" + +FILES_${PN} += "${libdir}X11/xinit" diff --git a/meta/recipes-graphics/xorg-app/xkbcomp_1.1.1.bb b/meta/recipes-graphics/xorg-app/xkbcomp_1.1.1.bb new file mode 100644 index 00000000000..bc2b788ba2e --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xkbcomp_1.1.1.bb @@ -0,0 +1,9 @@ +require xorg-app-common.inc + +DESCRIPTION = "The X Keyboard Extension essentially replaces the core protocol definition of keyboard." + +LIC_FILES_CHKSUM = "file://COPYING;md5=08436e4f4476964e2e2dd7e7e41e076a" + +DEPENDS += "libxkbfile" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-app/xmodmap_1.0.4.bb b/meta/recipes-graphics/xorg-app/xmodmap_1.0.4.bb new file mode 100644 index 00000000000..d7d31e2677f --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xmodmap_1.0.4.bb @@ -0,0 +1,7 @@ +require xorg-app-common.inc + +DESCRIPTION = "utility for modifying keymaps and pointer button mappings in X" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4eafccf13653fd18ec3263631e5feb68" +PR = "r0" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xorg-app-common.inc b/meta/recipes-graphics/xorg-app/xorg-app-common.inc new file mode 100644 index 00000000000..4add357cc9e --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xorg-app-common.inc @@ -0,0 +1,16 @@ +DESCRIPTION = "X application" +HOMEPAGE = "http://www.x.org/" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11/apps" +LICENSE = "MIT-X" +DEPENDS = "util-macros virtual/libx11" + +XORG_PN = "${BPN}" + +SRC_URI = "${XORG_MIRROR}/individual/app/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig + +FILES_${PN} += " /usr/lib/X11/${XORG_PN}" diff --git a/meta/recipes-graphics/xorg-app/xprop_1.1.0.bb b/meta/recipes-graphics/xorg-app/xprop_1.1.0.bb new file mode 100644 index 00000000000..e9b0b2ee7f0 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xprop_1.1.0.bb @@ -0,0 +1,10 @@ +require xorg-app-common.inc + +DESCRIPTION = "utility to display window and font properties of an X server" + +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94" + +DEPENDS += " libxmu virtual/libx11" + +PR = "r0" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xrandr/resolve_symbol_clash.patch b/meta/recipes-graphics/xorg-app/xrandr/resolve_symbol_clash.patch new file mode 100644 index 00000000000..1ecf9563f6e --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xrandr/resolve_symbol_clash.patch @@ -0,0 +1,33 @@ +--- + xrandr.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- xrandr-1.2.2.orig/xrandr.c ++++ xrandr-1.2.2/xrandr.c +@@ -189,7 +189,7 @@ + + #if HAS_RANDR_1_2 + typedef enum _policy { +- clone, extend ++ policy_clone, extend + } policy_t; + + typedef enum _relation { +@@ -1602,7 +1602,7 @@ + int ret = 0; + #if HAS_RANDR_1_2 + output_t *output = NULL; +- policy_t policy = clone; ++ policy_t policy = policy_clone; + Bool setit_1_2 = False; + Bool query_1_2 = False; + Bool modeit = False; +@@ -1863,7 +1863,7 @@ + continue; + } + if (!strcmp ("--clone", argv[i])) { +- policy = clone; ++ policy = policy_clone; + setit_1_2 = True; + continue; + } diff --git a/meta/recipes-graphics/xorg-app/xrandr_1.3.2.bb b/meta/recipes-graphics/xorg-app/xrandr_1.3.2.bb new file mode 100644 index 00000000000..3ddccb24968 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xrandr_1.3.2.bb @@ -0,0 +1,10 @@ +require xorg-app-common.inc + +DESCRIPTION = "X Resize and Rotate extension command." +LICENSE= "BSD-X" +LIC_FILES_CHKSUM = "file://COPYING;md5=fe1608bdb33cf8c62a4438f7d34679b3" +DEPENDS += "libxrandr libxrender" +PE = "1" +PR = "r0" + +SRC_URI += "file://resolve_symbol_clash.patch" diff --git a/meta/recipes-graphics/xorg-app/xrdb/60XDefaults.sh b/meta/recipes-graphics/xorg-app/xrdb/60XDefaults.sh new file mode 100644 index 00000000000..08d8beca33a --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xrdb/60XDefaults.sh @@ -0,0 +1,3 @@ +if [ -e $HOME/.Xdefaults ]; then + xrdb -merge -nocpp < $HOME/.Xdefaults +fi diff --git a/meta/recipes-graphics/xorg-app/xrdb_1.0.5.bb b/meta/recipes-graphics/xorg-app/xrdb_1.0.5.bb new file mode 100644 index 00000000000..906d7d85278 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xrdb_1.0.5.bb @@ -0,0 +1,14 @@ +require xorg-app-common.inc + +DESCRIPTION = "X server resource database utility" +LICENSE = "xrdb" +DEPENDS += "libxmu" +PE = "1" +PR = "r2" + +SRC_URI += "file://60XDefaults.sh" + +do_install_append() { + install -d ${D}${sysconfdir}/X11/Xsession.d/ + install -m 0755 ${WORKDIR}/60XDefaults.sh ${D}${sysconfdir}/X11/Xsession.d/ +} diff --git a/meta/recipes-graphics/xorg-app/xset/disable-xkb.patch b/meta/recipes-graphics/xorg-app/xset/disable-xkb.patch new file mode 100644 index 00000000000..6060fbb995c --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xset/disable-xkb.patch @@ -0,0 +1,18 @@ +--- xset-1.0.1/configure.ac.orig 2006-03-08 19:46:59.000000000 +0100 ++++ xset-1.0.1/configure.ac 2006-03-08 19:47:40.000000000 +0100 +@@ -42,11 +42,15 @@ + AC_CHECK_HEADERS([X11/extensions/dpms.h X11/extensions/MITMisc.h],,,[#include <X11/Xlib.h>]) + CPPFLAGS="$SAVE_CPPFLAGS"],[echo "not found"]) + ++AC_ARG_ENABLE(xkb, AC_HELP_STRING([--disable-xkb], [Disable XKB support]), ++ XKB="$enableval", XKB="yes") ++if test "x$XKB" = "xyes" ; then + PKG_CHECK_MODULES(SET_XKB, x11, + [SAVE_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $SET_XKB_CFLAGS $SET_X11_CFLAGS" + AC_CHECK_HEADERS([X11/XKBlib.h],,,[#include <X11/Xlib.h>]) + CPPFLAGS="$SAVE_CPPFLAGS"],[echo "not found"]) ++fi + + PKG_CHECK_MODULES(SET_XF86MISC, xxf86misc, + [SAVE_CPPFLAGS="$CPPFLAGS" diff --git a/meta/recipes-graphics/xorg-app/xset_1.1.0.bb b/meta/recipes-graphics/xorg-app/xset_1.1.0.bb new file mode 100644 index 00000000000..817b0972137 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xset_1.1.0.bb @@ -0,0 +1,14 @@ +require xorg-app-common.inc + +DESCRIPTION = "Utility of setting various user preference options of the display" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=bea81cc9827cdf1af0e12c2b8228cf8d" +DISTRO_PN_ALIAS = "Fedora=xorg-x11-server-utils;Ubuntu=x11-xserver-utils;Debian=x11-xserver-utils;Opensuse=xorg-x11" +DEPENDS += "libxext libxxf86misc libxfontcache libxmu libxp libxau" +PR = "r0" +PE = "1" + +SRC_URI += "file://disable-xkb.patch" + +CFLAGS += "-D_GNU_SOURCE" +EXTRA_OECONF = "--disable-xkb" diff --git a/meta/recipes-graphics/xorg-app/xvinfo_1.0.2.bb b/meta/recipes-graphics/xorg-app/xvinfo_1.0.2.bb new file mode 100644 index 00000000000..ac27f13f342 --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xvinfo_1.0.2.bb @@ -0,0 +1,5 @@ +require xorg-app-common.inc + +DESCRIPTION = "Print out X-Video extension adaptor information" +DEPENDS += " libxv" +PE = "1" diff --git a/meta/recipes-graphics/xorg-app/xwininfo_1.0.5.bb b/meta/recipes-graphics/xorg-app/xwininfo_1.0.5.bb new file mode 100644 index 00000000000..bd3e3e7583a --- /dev/null +++ b/meta/recipes-graphics/xorg-app/xwininfo_1.0.5.bb @@ -0,0 +1,8 @@ +require xorg-app-common.inc + +DESCRIPTION = "window information utility for X" +LIC_FILES_CHKSUM = "file://COPYING;md5=2f077ba838116bbe7cfaac34aff40328" +DEPENDS += "libxext libxmu" + +PR = "r0" +PE = "0" diff --git a/meta/recipes-graphics/xorg-driver/xf86-driver-common.inc b/meta/recipes-graphics/xorg-driver/xf86-driver-common.inc new file mode 100644 index 00000000000..550423b0f83 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-driver-common.inc @@ -0,0 +1,29 @@ +DESCRIPTION = "X driver" +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11/drivers" +LICENSE = "MIT-X" + +PE = "1" +PR = "r0" + +DEPENDS = "virtual/xserver-xf86 xproto randrproto util-macros" + +XORG_PN = "${PN}" +SRC_URI = "${XORG_MIRROR}/individual/driver/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +FILES_${PN} += " ${libdir}/xorg/modules/drivers/*.so" +FILES_${PN}-dbg += " ${libdir}/xorg/modules/drivers/.debug" + +inherit autotools pkgconfig + +# AC_CHECK_FILE doesn't work when cross compiling, so we create a replacement +# macro that simply assumes the test succeeds. +do_configure_prepend () { + echo 'AC_DEFUN(CC_AC_CHECK_FILE, $2)' > configure.ac.new + sed 's/AC_CHECK_FILE/CC_AC_CHECK_FILE/g' configure.ac >> configure.ac.new + mv configure.ac.new configure.ac +} + diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-common.inc b/meta/recipes-graphics/xorg-driver/xf86-input-common.inc new file mode 100644 index 00000000000..6fc88cf9d04 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-common.inc @@ -0,0 +1,7 @@ +include xf86-driver-common.inc + +DEPENDS += "inputproto kbproto " + +FILES_${PN} += " ${libdir}/xorg/modules/input/*.so" +FILES_${PN}-dbg += " ${libdir}/xorg/modules/input/.debug" + diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.4.0.bb b/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.4.0.bb new file mode 100644 index 00000000000..fad47fbc007 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-evdev_2.4.0.bb @@ -0,0 +1,7 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- evdev input driver" + +LIC_FILES_CHKSUM = "file://COPYING;md5=ebf4ad82cd33b1432eacb1798a43c092" + +PR = "r1" diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.4.0.bb b/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.4.0.bb new file mode 100644 index 00000000000..1efb505e27d --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_1.4.0.bb @@ -0,0 +1,7 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- keyboard input driver" + +LIC_FILES_CHKSUM = "file://COPYING;md5=eae2c98cbb8c60401893ff9313ff3826" + +PR = "r1" diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb b/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb new file mode 100644 index 00000000000..a6744bda640 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-keyboard_git.bb @@ -0,0 +1,9 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- keyboard input driver" + +PV = "1.3.2+git${SRCPV}" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-keyboard;protocol=git" +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch b/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch new file mode 100644 index 00000000000..665b320df12 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-mouse/unbreak.patch @@ -0,0 +1,19 @@ +Unbreak the linux mouse driver by using config.h + +RP - 4/11/07 + +Index: git/src/lnx_mouse.c +=================================================================== +--- git.orig/src/lnx_mouse.c 2008-11-04 23:46:05.000000000 +0000 ++++ git/src/lnx_mouse.c 2008-11-04 23:46:15.000000000 +0000 +@@ -3,8 +3,8 @@ + * Copyright 1999 by The XFree86 Project, Inc. + */ + +-#ifdef HAVE_XORG_CONFIG_H +-#include <xorg-config.h> ++#ifdef HAVE_CONFIG_H ++#include <config.h> + #endif + + #include <X11/X.h> diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.5.0.bb b/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.5.0.bb new file mode 100644 index 00000000000..44d60bf7537 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-mouse_1.5.0.bb @@ -0,0 +1,5 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- mouse input driver" + +LIC_FILES_CHKSUM = "file://COPYING;md5=43eb754a9f368985c40a2a5370fc364a" diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb b/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb new file mode 100644 index 00000000000..94dedf104dd --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-mouse_git.bb @@ -0,0 +1,11 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- mouse input driver" + +PV = "1.3.0+git${SRCPV}" +PR = "r2" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-mouse;protocol=git \ + file://unbreak.patch;patch=1" +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.2.1.bb b/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.2.1.bb new file mode 100644 index 00000000000..81128394c3c --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_1.2.1.bb @@ -0,0 +1,5 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- keyboard input driver" + +DEPENDS += "libxi" diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb b/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb new file mode 100644 index 00000000000..f7dc3b731c3 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-synaptics_git.bb @@ -0,0 +1,10 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- keyboard input driver" + +PV = "0.15.2+git${SRCPV}" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-input-synaptics;protocol=git" +S = "${WORKDIR}/git" + +DEPENDS += "libxi" diff --git a/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_12.6.9.bb b/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_12.6.9.bb new file mode 100644 index 00000000000..36418ad59e4 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_12.6.9.bb @@ -0,0 +1,8 @@ +require xf86-input-common.inc + +DESCRIPTION = "X.Org X server -- VMWare mouse input driver" +PR = "r0" + +RDEPENDS_${PN} += "xf86-input-mouse" + +LIC_FILES_CHKSUM = "file://COPYING;md5=d1f16420e5ed7ed2133768425dfdab50" diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-common.inc b/meta/recipes-graphics/xorg-driver/xf86-video-common.inc new file mode 100644 index 00000000000..f2e28170e74 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-common.inc @@ -0,0 +1,4 @@ +include xf86-driver-common.inc + +DEPENDS =+ "renderproto videoproto xextproto fontsproto" + diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-intel_2.12.0.bb b/meta/recipes-graphics/xorg-driver/xf86-video-intel_2.12.0.bb new file mode 100644 index 00000000000..968c20167f7 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-intel_2.12.0.bb @@ -0,0 +1,10 @@ +require xf86-video-common.inc + +DESCRIPTION = "X.Org X server -- Intel i8xx, i9xx display driver" + +EXTRA_OECONF += "--disable-xvmc" + +DEPENDS += "virtual/libx11 libxvmc drm xf86driproto glproto \ + virtual/libgl xineramaproto xf86driproto libpciaccess" + +COMPATIBLE_HOST = '(i.86|x86_64).*-linux' diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb b/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb new file mode 100644 index 00000000000..7011b7ea795 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb @@ -0,0 +1,16 @@ +require xf86-video-common.inc + +DESCRIPTION = "X.Org X server -- Intel i8xx, i9xx display driver" +DEPENDS += "virtual/libx11 libxvmc drm dri2proto glproto \ + virtual/libgl xineramaproto libpciaccess" + +PV = "2.10.0+git${SRCPV}" +PR = "r0" + +EXTRA_OECONF += "--disable-xvmc --enable-dri --disable-static" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel;protocol=git" + +S = "${WORKDIR}/git" + +COMPATIBLE_HOST = '(i.86|x86_4).*-linux' diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omapfb-neon.diff b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omapfb-neon.diff new file mode 100644 index 00000000000..325ca66f0c2 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb/omapfb-neon.diff @@ -0,0 +1,146 @@ +--- /tmp/image-format-conversions.h 2009-02-03 10:18:04.000000000 +0100 ++++ git/src/image-format-conversions.h 2009-02-03 10:19:18.000000000 +0100 +@@ -30,6 +30,8 @@ + /* Basic C implementation of YV12/I420 to UYVY conversion */ + void uv12_to_uyvy(int w, int h, int y_pitch, int uv_pitch, uint8_t *y_p, uint8_t *u_p, uint8_t *v_p, uint8_t *dest); + ++/* NEON implementation of YV12/I420 to UYVY conversion */ ++void uv12_to_uyvy_neon(int w, int h, int y_pitch, int uv_pitch, uint8_t *y_p, uint8_t *u_p, uint8_t *v_p, uint8_t *dest); + + #endif /* __IMAGE_FORMAT_CONVERSIONS_H__ */ + +--- /tmp/image-format-conversions.c 2009-02-03 10:18:04.000000000 +0100 ++++ git/src/image-format-conversions.c 2009-02-03 10:16:47.000000000 +0100 +@@ -2,6 +2,7 @@ + * Copyright 2008 Kalle Vahlman, <zuh@iki.fi> + * Ilpo Ruotsalainen, <lonewolf@iki.fi> + * Tuomas Kulve, <tuomas.kulve@movial.com> ++ * Ian Rickards, <ian.rickards@arm.com> + * + * + * Permission to use, copy, modify, distribute and sell this software and its +@@ -89,3 +90,104 @@ + } + } + ++void uv12_to_uyvy_neon(int w, int h, int y_pitch, int uv_pitch, uint8_t *y_p, uint8_t *u_p, uint8_t *v_p, uint8_t *dest) ++{ ++ int x, y; ++ uint8_t *dest_even = dest; ++ uint8_t *dest_odd = dest + w * 2; ++ uint8_t *y_p_even = y_p; ++ uint8_t *y_p_odd = y_p + y_pitch; ++ ++ /*ErrorF("in uv12_to_uyvy, w: %d, pitch: %d\n", w, pitch);*/ ++ if (w<16) ++ { ++ for (y=0; y<h; y+=2) ++ { ++ for (x=0; x<w; x+=2) ++ { ++ /* Output two 2x1 macroblocks to form a 2x2 block from input */ ++ uint8_t u_val = *u_p++; ++ uint8_t v_val = *v_p++; ++ ++ /* Even row, first pixel */ ++ *dest_even++ = u_val; ++ *dest_even++ = *y_p_even++; ++ ++ /* Even row, second pixel */ ++ *dest_even++ = v_val; ++ *dest_even++ = *y_p_even++; ++ ++ /* Odd row, first pixel */ ++ *dest_odd++ = u_val; ++ *dest_odd++ = *y_p_odd++; ++ ++ /* Odd row, second pixel */ ++ *dest_odd++ = v_val; ++ *dest_odd++ = *y_p_odd++; ++ } ++ ++ dest_even += w * 2; ++ dest_odd += w * 2; ++ ++ u_p += ((uv_pitch << 1) - w) >> 1; ++ v_p += ((uv_pitch << 1) - w) >> 1; ++ ++ y_p_even += (y_pitch - w) + y_pitch; ++ y_p_odd += (y_pitch - w) + y_pitch; ++ } ++ } ++ else ++ { ++ for (y=0; y<h; y+=2) ++ { ++ x=w; ++ do { ++ // avoid using d8-d15 (q4-q7) aapcs callee-save registers ++ asm volatile ( ++ "1:\n\t" ++ "vld1.u8 {d0}, [%[u_p]]!\n\t" ++ "sub %[x],%[x],#16\n\t" ++ "cmp %[x],#16\n\t" ++ "vld1.u8 {d1}, [%[v_p]]!\n\t" ++ "vld1.u8 {q1}, [%[y_p_even]]!\n\t" ++ "vzip.u8 d0, d1\n\t" ++ "vld1.u8 {q2}, [%[y_p_odd]]!\n\t" ++ // use 2-element struct stores to zip up y with y&v ++ "vst2.u8 {q0,q1}, [%[dest_even]]!\n\t" ++ "vmov.u8 q1, q2\n\t" ++ "vst2.u8 {q0,q1}, [%[dest_odd]]!\n\t" ++ "bhs 1b\n\t" ++ : [u_p] "+r" (u_p), [v_p] "+r" (v_p), [y_p_even] "+r" (y_p_even), [y_p_odd] "+r" (y_p_odd), ++ [dest_even] "+r" (dest_even), [dest_odd] "+r" (dest_odd), ++ [x] "+r" (x) ++ : ++ : "cc", "memory", "d0","d1","d2","d3","d4","d5" ++ ); ++ if (x!=0) ++ { ++ // overlap final 16-pixel block to process requested width exactly ++ x = 16-x; ++ u_p -= x/2; ++ v_p -= x/2; ++ y_p_even -= x; ++ y_p_odd -= x; ++ dest_even -= x*2; ++ dest_odd -= x*2; ++ x = 16; ++ // do another 16-pixel block ++ } ++ } ++ while (x!=0); ++ ++ dest_even += w * 2; ++ dest_odd += w * 2; ++ ++ u_p += ((uv_pitch << 1) - w) >> 1; ++ v_p += ((uv_pitch << 1) - w) >> 1; ++ ++ y_p_even += (y_pitch - w) + y_pitch; ++ y_p_odd += (y_pitch - w) + y_pitch; ++ } ++ } ++} ++ +--- /tmp/omapfb-xv-generic.c 2009-02-03 10:52:18.000000000 +0100 ++++ git/src/omapfb-xv-generic.c 2009-02-03 10:52:24.000000000 +0100 +@@ -240,7 +240,7 @@ + uint8_t *yb = buf; + uint8_t *ub = yb + (src_y_pitch * src_h); + uint8_t *vb = ub + (src_uv_pitch * (src_h / 2)); +- uv12_to_uyvy(src_w & ~15, ++ uv12_to_uyvy_neon(src_w & ~15, + src_h & ~15, + src_y_pitch, + src_uv_pitch, +@@ -256,7 +256,7 @@ + uint8_t *yb = buf; + uint8_t *vb = yb + (src_y_pitch * src_h); + uint8_t *ub = vb + (src_uv_pitch * (src_h / 2)); +- uv12_to_uyvy(src_w & ~15, ++ uv12_to_uyvy_neon(src_w & ~15, + src_h & ~15, + src_y_pitch, + src_uv_pitch, diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb new file mode 100644 index 00000000000..15bef87198a --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-omapfb_git.bb @@ -0,0 +1,21 @@ +require xf86-driver-common.inc + +DESCRIPTION = "X.Org X server -- OMAP display driver" +DEPENDS += "virtual/libx11" + +PE = "1" +PR = "r1" +PV = "0.1.1+git${SRCPV}" + +SRC_URI = "git://git.pingu.fi/xf86-video-omapfb.git;protocol=http \ + " + +S = "${WORKDIR}/git" + +EXTRA_OECONF_armv7a = " --enable-neon " +CFLAGS += " -I${STAGING_INCDIR}/xorg " + +# Use overlay 2 on omap3 to enable other apps to use overlay 1 (e.g. dmai or omapfbplay) +do_compile_prepend_armv7a () { + sed -i -e s:fb1:fb2:g ${S}/src/omapfb-xv.c +} diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.3.0.bb b/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.3.0.bb new file mode 100644 index 00000000000..3212004db77 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.3.0.bb @@ -0,0 +1,9 @@ +require xf86-video-common.inc + +EXTRA_OECONF += "--disable-xvmc" + +DESCRIPTION = "X.Org X server -- Generic Vesa display driver" +DEPENDS += "virtual/libx11 libxvmc drm xf86driproto glproto \ + virtual/libgl xineramaproto xf86driproto libpciaccess" + +COMPATIBLE_HOST = '(i.86|x86_64).*-linux' diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-vmware_11.0.1.bb b/meta/recipes-graphics/xorg-driver/xf86-video-vmware_11.0.1.bb new file mode 100644 index 00000000000..56daa86c866 --- /dev/null +++ b/meta/recipes-graphics/xorg-driver/xf86-video-vmware_11.0.1.bb @@ -0,0 +1,12 @@ +require xf86-video-common.inc + +DESCRIPTION = "X.Org X server -- VMware SVGA II display driver" + +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94" + +DEPENDS += "virtual/libx11 libxvmc drm glproto \ + virtual/libgl xineramaproto libpciaccess" + +PR = "r1" + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' diff --git a/meta/recipes-graphics/xorg-font/encodings_1.0.3.bb b/meta/recipes-graphics/xorg-font/encodings_1.0.3.bb new file mode 100644 index 00000000000..02a199fc6a5 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/encodings_1.0.3.bb @@ -0,0 +1,10 @@ +DESCRIPTION = "The XFree86/Xorg encoding files" +require xorg-font-common.inc +LICENSE = "Public Domain" +LIC_FILES_CHKSUM = "file://COPYING;md5=9da93f2daf2d5572faa2bfaf0dbd9e76" +PE = "1" +PR = "${INC_PR}.1" + +DEPENDS = "mkfontscale-native font-util-native" + +EXTRA_OECONF += "--with-encodingsdir=${datadir}/fonts/X11/encodings" diff --git a/meta/recipes-graphics/xorg-font/font-alias-1.0.2/fix_COPYING_1f8141a5e3b585dfccc748400b05c9c24b41e767.patch b/meta/recipes-graphics/xorg-font/font-alias-1.0.2/fix_COPYING_1f8141a5e3b585dfccc748400b05c9c24b41e767.patch new file mode 100644 index 00000000000..db0bd27d411 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/font-alias-1.0.2/fix_COPYING_1f8141a5e3b585dfccc748400b05c9c24b41e767.patch @@ -0,0 +1,45 @@ +commit 1f8141a5e3b585dfccc748400b05c9c24b41e767 +Author: Gaetan Nadon <memsize@videotron.ca> +Date: Sun Oct 18 20:34:33 2009 -0400 + + INSTALL, NEWS, README COPYING or AUTHORS files are missing/incorrect #24206 + + Add missing INSTALL file. Use standard GNU file on building tarball + README may have been updated + COPYING may have been updated + Remove AUTHORS file as it is empty and no content available yet. + Remove NEWS file as it is empty and no content available yet. + +diff --git a/AUTHORS b/AUTHORS +deleted file mode 100644 +index e69de29..0000000 +diff --git a/COPYING b/COPYING +index 7f33cbf..e917f4b 100644 +--- a/COPYING ++++ b/COPYING +@@ -1,12 +1,9 @@ +-This is a stub file. This package has not yet had its complete licensing +-information compiled. Please see the individual source files for details on +-your rights to use and modify this software. ++Copyright (C) 1994-95 Cronyx Ltd. ++Author: Serge Vakulenko, <vak@cronyx.ru> + +-Please submit updated COPYING files to the Xorg bugzilla: ++This software may be used, modified, copied, distributed, and sold, ++in both source and binary form provided that the above copyright ++and these terms are retained. Under no circumstances is the author ++responsible for the proper functioning of this software, nor does ++the author assume any responsibility for damages incurred with its use. + +-https://bugs.freedesktop.org/enter_bug.cgi?product=xorg +- +-All licensing questions regarding this software should be directed at the +-Xorg mailing list: +- +-http://lists.freedesktop.org/mailman/listinfo/xorg +diff --git a/INSTALL b/INSTALL +deleted file mode 100644 +index e69de29..0000000 +diff --git a/NEWS b/NEWS +deleted file mode 100644 +index e69de29..0000000 diff --git a/meta/recipes-graphics/xorg-font/font-alias_1.0.2.bb b/meta/recipes-graphics/xorg-font/font-alias_1.0.2.bb new file mode 100644 index 00000000000..11ad407f3b7 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/font-alias_1.0.2.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "X font aliases." + +require xorg-font-common.inc + +LICENSE = "Font-Alias" +LIC_FILES_CHKSUM = "file://COPYING;md5=bf0158b89be493d523d69d9f29265038 \ + file://cyrillic/fonts.alias;md5=f40795b0640d6785826aecd3b16f6124 \ + file://75dpi/fonts.alias;md5=6bc48023f2ae7f3bfc105db7b0ee6b49 \ + file://misc/fonts.alias;md5=a8ec05d528431d4c9703b55a7efd67a8 \ + file://100dpi/fonts.alias;md5=85bebd6ca213aa656c301a72eb4397cb" + +SRC_URI += "file://fix_COPYING_1f8141a5e3b585dfccc748400b05c9c24b41e767.patch" + +DEPENDS = "virtual/xserver font-util" +RDEPENDS = "encodings font-util" + +PE = "1" +PR = "${INC_PR}.0" diff --git a/meta/recipes-graphics/xorg-font/font-util_1.1.1.bb b/meta/recipes-graphics/xorg-font/font-util_1.1.1.bb new file mode 100644 index 00000000000..ba4623632ac --- /dev/null +++ b/meta/recipes-graphics/xorg-font/font-util_1.1.1.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "X.Org font package creation/installation utilities" + +require xorg-font-common.inc + +LICENSE = "BSD & MIT-style & Unicode" +LIC_FILES_CHKSUM = "file://COPYING;md5=0b73d82c5f21398b013c07e8b4012376 \ + file://ucs2any.c;endline=28;md5=8357dc567fc628bd12696f15b2a33bcb \ + file://bdftruncate.c;endline=26;md5=4f82ffc101a1b165eae9c6998abff937 \ + file://map-ISO8859-1;beginline=9;endline=23;md5=1cecb984063248f29ffe5c46f5c04f34" + +PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}" + +DEPENDS = "encodings util-macros" +DEPENDS_virtclass-native = "util-macros-native" +RDEPENDS = "mkfontdir mkfontscale encodings" + +PR = "${INC_PR}.1" + +do_configure_prepend() { + sed -i "s#MAPFILES_PATH=\`pkg-config#MAPFILES_PATH=\`PKG_CONFIG_PATH=\"${STAGING_LIBDIR_NATIVE}/pkg-config\" pkg-config#g" fontutil.m4.in +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-font/xorg-font-common.inc b/meta/recipes-graphics/xorg-font/xorg-font-common.inc new file mode 100644 index 00000000000..c2175a9613e --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-font-common.inc @@ -0,0 +1,47 @@ +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" + +SECTION = "x11/fonts" +LICENSE = "MIT-X" + +DEPENDS = " encodings font-alias font-util-native mkfontdir-native mkfontscale-native" +RDEPENDS = "encodings font-util font-alias" + +XORG_PN = "${BPN}" +INC_PR = "r1" + +SRC_URI = "${XORG_MIRROR}/individual/font/${XORG_PN}-${PV}.tar.bz2" +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig + +EXTRA_OEMAKE += "FCCACHE=/bin/true" + +do_configure_prepend() { + if [ -f "${S}"/configure.ac ] ; then + sed -i "s#^MAPFILES_PATH=.*#MAPFILES_PATH=\"${STAGING_DIR_TARGET}/\$(pkg-config --variable=mapdir fontutil)\"#g" "${S}"/configure.ac + fi +} + +do_install_append() { + find ${D}${libdir}/X11/fonts -type f -name fonts.dir | xargs rm -f + find ${D}${libdir}/X11/fonts -type f -name fonts.scale | xargs rm -f + find ${D}${datadir}/fonts/X11 -type f -name fonts.dir | xargs rm -f + find ${D}${datadir}/fonts/X11 -type f -name fonts.scale | xargs rm -f +} + +PACKAGE_ARCH = "all" + +FILES_${PN} += " ${libdir}/X11/fonts ${datadir}" + +pkg_postinst_${PN} () { + set -x + for fontdir in `find $D/usr/lib/X11/fonts -type d`; do + mkfontdir $fontdir + mkfontscale $fontdir + done + for fontdir in `find $D/usr/share/fonts/X11 -type d`; do + mkfontdir $fontdir + mkfontscale $fontdir + done +} diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb new file mode 100644 index 00000000000..26a64cdd66d --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb @@ -0,0 +1,28 @@ +DESCRIPTION = "Xorg minimal fonts data" +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "n/a" + +SECTION = "x11/fonts" + +LICENSE = "Public Domain" +LIC_FILES_CHKSUM = "file://../misc/fonts.alias;md5=bbe8d3c0e4e74af96e3ac393985c4fbb \ + file://../misc/fonts.dir;md5=82a143d94d6a974aafe97132d2d519ab \ + file://../misc/cursor.pcf.gz;md5=40bc81001fef4c21ca08df4305014a2a" + +SRC_URI = "file://misc" + +PE = "1" +PR = "r0" + +PACKAGES = "${PN}" +PACKAGE_ARCH = "all" +FILES_${PN} = "${libdir}/X11/ ${datadir}/fonts/X11/" + +do_install() { + install -d ${D}/${datadir}/fonts/X11/misc + install -m 0644 ${WORKDIR}/misc/* ${D}/${datadir}/fonts/X11/misc/ + install -d ${D}/${libdir}/X11 + ln -sf ${datadir}/fonts/X11/ ${D}/${libdir}/X11/fonts -s +} + + diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-1.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-1.pcf.gz Binary files differnew file mode 100644 index 00000000000..8bc8570a4a6 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-1.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-10.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-10.pcf.gz Binary files differnew file mode 100644 index 00000000000..8fa82901526 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-10.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-11.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-11.pcf.gz Binary files differnew file mode 100644 index 00000000000..bb1c5e138de --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-11.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-13.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-13.pcf.gz Binary files differnew file mode 100644 index 00000000000..842fa1b41af --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-13.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-14.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-14.pcf.gz Binary files differnew file mode 100644 index 00000000000..cd119b66da5 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-14.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-15.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-15.pcf.gz Binary files differnew file mode 100644 index 00000000000..25fe84a0ed0 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-15.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-16.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-16.pcf.gz Binary files differnew file mode 100644 index 00000000000..e362c70cea3 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-16.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-2.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-2.pcf.gz Binary files differnew file mode 100644 index 00000000000..176a7591cc4 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-2.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-3.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-3.pcf.gz Binary files differnew file mode 100644 index 00000000000..a4faf1a6ccd --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-3.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-4.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-4.pcf.gz Binary files differnew file mode 100644 index 00000000000..96ddd15255b --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-4.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-5.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-5.pcf.gz Binary files differnew file mode 100644 index 00000000000..541a2ad2c72 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-5.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-7.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-7.pcf.gz Binary files differnew file mode 100644 index 00000000000..a4986f40660 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-7.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-8.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-8.pcf.gz Binary files differnew file mode 100644 index 00000000000..3f89abe7749 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-8.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-9.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-9.pcf.gz Binary files differnew file mode 100644 index 00000000000..432b536222d --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-ISO8859-9.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-KOI8-R.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-KOI8-R.pcf.gz Binary files differnew file mode 100644 index 00000000000..e7fcb898e1e --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13-KOI8-R.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13.pcf.gz Binary files differnew file mode 100644 index 00000000000..2df63553744 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-1.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-1.pcf.gz Binary files differnew file mode 100644 index 00000000000..a263c5dd385 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-1.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-10.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-10.pcf.gz Binary files differnew file mode 100644 index 00000000000..a1a7d37e626 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-10.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-13.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-13.pcf.gz Binary files differnew file mode 100644 index 00000000000..a148e99bce8 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-13.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-14.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-14.pcf.gz Binary files differnew file mode 100644 index 00000000000..8791b8ca342 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-14.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-15.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-15.pcf.gz Binary files differnew file mode 100644 index 00000000000..8604508684f --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-15.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-16.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-16.pcf.gz Binary files differnew file mode 100644 index 00000000000..f28b1f1c4af --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-16.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-2.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-2.pcf.gz Binary files differnew file mode 100644 index 00000000000..fd1e6cfe9f5 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-2.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-3.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-3.pcf.gz Binary files differnew file mode 100644 index 00000000000..672b759421a --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-3.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-4.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-4.pcf.gz Binary files differnew file mode 100644 index 00000000000..d90a4330d62 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-4.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-5.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-5.pcf.gz Binary files differnew file mode 100644 index 00000000000..775e7c18b47 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-5.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-7.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-7.pcf.gz Binary files differnew file mode 100644 index 00000000000..ac12fd98a22 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-7.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-8.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-8.pcf.gz Binary files differnew file mode 100644 index 00000000000..42bbd52217e --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-8.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-9.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-9.pcf.gz Binary files differnew file mode 100644 index 00000000000..690d31f8600 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B-ISO8859-9.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B.pcf.gz Binary files differnew file mode 100644 index 00000000000..d4c3184c722 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13B.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-1.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-1.pcf.gz Binary files differnew file mode 100644 index 00000000000..884b5130c56 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-1.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-10.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-10.pcf.gz Binary files differnew file mode 100644 index 00000000000..cbb1a9d7049 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-10.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-13.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-13.pcf.gz Binary files differnew file mode 100644 index 00000000000..78c8580cfeb --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-13.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-14.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-14.pcf.gz Binary files differnew file mode 100644 index 00000000000..0e90f3ee163 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-14.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-15.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-15.pcf.gz Binary files differnew file mode 100644 index 00000000000..bd1273e1ff5 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-15.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-16.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-16.pcf.gz Binary files differnew file mode 100644 index 00000000000..5100b429ac2 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-16.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-2.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-2.pcf.gz Binary files differnew file mode 100644 index 00000000000..ec5bbed297d --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-2.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-3.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-3.pcf.gz Binary files differnew file mode 100644 index 00000000000..06c835ee68f --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-3.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-4.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-4.pcf.gz Binary files differnew file mode 100644 index 00000000000..478541c2af7 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-4.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-5.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-5.pcf.gz Binary files differnew file mode 100644 index 00000000000..1c593ce0cf2 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-5.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-7.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-7.pcf.gz Binary files differnew file mode 100644 index 00000000000..335cf5fc3e9 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-7.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-9.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-9.pcf.gz Binary files differnew file mode 100644 index 00000000000..099423e6401 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O-ISO8859-9.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O.pcf.gz Binary files differnew file mode 100644 index 00000000000..4a546ddb1a7 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/6x13O.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/cursor.pcf.gz b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/cursor.pcf.gz Binary files differnew file mode 100644 index 00000000000..72eb72bbec0 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/cursor.pcf.gz diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.alias b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.alias new file mode 100644 index 00000000000..39000367392 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.alias @@ -0,0 +1,80 @@ +!! fonts.alias -- automatically generated file. DO NOT EDIT. +!! To modify, see update-fonts-alias(8). +!! /etc/X11/fonts/misc/xfonts-base.alias +! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $ +fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 +variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-1 +5x7 -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-1 +5x8 -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-1 +6x9 -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-1 +6x10 -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1 +6x12 -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-1 +6x13 -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 +6x13bold -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-1 +7x13 -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1 +7x13bold -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-1 +7x13euro -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-15 +7x13eurobold -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-15 +7x14 -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1 +7x14bold -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-1 +8x13 -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-1 +8x13bold -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1 +8x16 -sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1 +9x15 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1 +9x15bold -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1 +10x20 -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-1 +12x24 -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1 +nil2 -misc-nil-medium-r-normal--2-20-75-75-c-10-misc-fontspecific + +heb6x13 -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-8 +heb8x13 -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-8 + +k14 -misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0 +a14 -misc-fixed-medium-r-normal--14-*-*-*-*-*-iso8859-1 +r14 -misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0201.1976-0 +rk14 -misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0201.1976-0 +r16 -sony-fixed-medium-r-normal--16-*-*-*-*-*-jisx0201.1976-0 +rk16 -sony-fixed-medium-r-normal--16-*-*-*-*-*-jisx0201.1976-0 +r24 -sony-fixed-medium-r-normal--24-*-*-*-*-*-jisx0201.1976-0 +rk24 -sony-fixed-medium-r-normal--24-*-*-*-*-*-jisx0201.1976-0 +kana14 -misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0201.1976-0 +8x16kana -sony-fixed-medium-r-normal--16-120-100-100-c-80-jisx0201.1976-0 +8x16romankana -sony-fixed-medium-r-normal--16-120-100-100-c-80-jisx0201.1976-0 +12x24kana -sony-fixed-medium-r-normal--24-170-100-100-c-120-jisx0201.1976-0 +12x24romankana -sony-fixed-medium-r-normal--24-170-100-100-c-120-jisx0201.1976-0 +kanji16 -jis-fixed-medium-r-normal--16-*-*-*-*-*-jisx0208.1983-0 +kanji24 -jis-fixed-medium-r-normal--24-*-*-*-*-*-jisx0208.1983-0 + +hanzigb16st "-isas-song ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0" +hanzigb24st "-isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980-0" +hanzigb16fs "-isas-fangsong ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0" + +olcursor "-sun-open look cursor-----12-120-75-75-p-160-sunolcursor-1" +olglyph-10 "-sun-open look glyph-----10-100-75-75-p-101-sunolglyph-1" +olglyph-12 "-sun-open look glyph-----12-120-75-75-p-113-sunolglyph-1" +olglyph-14 "-sun-open look glyph-----14-140-75-75-p-128-sunolglyph-1" +olglyph-19 "-sun-open look glyph-----19-190-75-75-p-154-sunolglyph-1" + +-misc-fixed-medium-r-normal--7-50-100-100-c-50-iso8859-1 -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-1 +-misc-fixed-medium-r-normal--8-60-100-100-c-50-iso8859-1 -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-1 +-misc-fixed-medium-r-normal--9-80-100-100-c-60-iso8859-1 -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-1 +-misc-fixed-medium-r-normal--10-70-100-100-c-60-iso8859-1 -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1 +-misc-fixed-medium-r-semicondensed--12-90-100-100-c-60-iso8859-1 -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-1 +-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1 -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 +-misc-fixed-bold-r-semicondensed--13-100-100-100-c-60-iso8859-1 -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-1 +-misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1 -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1 +-misc-fixed-bold-r-normal--13-100-100-100-c-70-iso8859-1 -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-1 +-misc-fixed-medium-r-normal--13-100-100-100-c-80-iso8859-1 -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-1 +-misc-fixed-bold-r-normal--13-100-100-100-c-80-iso8859-1 -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1 +-misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1 -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1 +-misc-fixed-medium-r-normal--15-120-100-100-c-90-iso8859-1 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1 +-misc-fixed-bold-r-normal--15-120-100-100-c-90-iso8859-1 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1 +-misc-fixed-medium-r-normal--20-140-100-100-c-100-iso8859-1 -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-1 +-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-8 -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-8 +-misc-fixed-medium-r-normal--13-100-100-100-c-80-iso8859-8 -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-8 +-sony-fixed-medium-r-normal--16-150-75-75-c-80-iso8859-1 -sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1 +-sony-fixed-medium-r-normal--16-150-75-75-c-80-jisx0201.1976-0 -sony-fixed-medium-r-normal--16-120-100-100-c-80-jisx0201.1976-0 +-sony-fixed-medium-r-normal--24-230-75-75-c-120-iso8859-1 -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1 +-sony-fixed-medium-r-normal--24-230-75-75-c-120-jisx0201.1976-0 -sony-fixed-medium-r-normal--24-170-100-100-c-120-jisx0201.1976-0 +-jis-fixed-medium-r-normal--16-110-100-100-c-160-jisx0208.1983-0 -jis-fixed-medium-r-normal--16-150-75-75-c-160-jisx0208.1983-0 +-jis-fixed-medium-r-normal--24-170-100-100-c-240-jisx0208.1983-0 -jis-fixed-medium-r-normal--24-230-75-75-c-240-jisx0208.1983-0 diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.dir b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.dir new file mode 100644 index 00000000000..0a2718f7ba6 --- /dev/null +++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts/misc/fonts.dir @@ -0,0 +1,410 @@ +409 +10x20-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-1 +10x20-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-10 +10x20-ISO8859-11.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-11 +10x20-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-13 +10x20-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-14 +10x20-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-15 +10x20-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-16 +10x20-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-2 +10x20-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-3 +10x20-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-4 +10x20-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-5 +10x20-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-7 +10x20-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-8 +10x20-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-9 +10x20-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-koi8-r +10x20.pcf.gz -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1 +12x13ja.pcf.gz -misc-fixed-medium-r-normal-ja-13-120-75-75-c-120-iso10646-1 +12x24.pcf.gz -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1 +12x24rk.pcf.gz -sony-fixed-medium-r-normal--24-170-100-100-c-120-jisx0201.1976-0 +18x18ja.pcf.gz -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 +18x18ko.pcf.gz -misc-fixed-medium-r-normal-ko-18-120-100-100-c-180-iso10646-1 +4x6-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-1 +4x6-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-10 +4x6-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-13 +4x6-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-14 +4x6-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-15 +4x6-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-16 +4x6-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-2 +4x6-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-3 +4x6-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-4 +4x6-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-5 +4x6-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-7 +4x6-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-8 +4x6-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso8859-9 +4x6-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-koi8-r +4x6.pcf.gz -misc-fixed-medium-r-normal--6-60-75-75-c-40-iso10646-1 +5x7-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-1 +5x7-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-10 +5x7-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-13 +5x7-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-14 +5x7-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-15 +5x7-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-16 +5x7-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-2 +5x7-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-3 +5x7-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-4 +5x7-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-5 +5x7-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-7 +5x7-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-8 +5x7-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-9 +5x7-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-koi8-r +5x7.pcf.gz -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso10646-1 +5x8-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-1 +5x8-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-10 +5x8-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-13 +5x8-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-14 +5x8-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-15 +5x8-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-16 +5x8-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-2 +5x8-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-3 +5x8-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-4 +5x8-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-5 +5x8-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-7 +5x8-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-8 +5x8-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-9 +5x8-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-koi8-r +5x8.pcf.gz -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1 +6x10-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1 +6x10-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-10 +6x10-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-13 +6x10-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-14 +6x10-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-15 +6x10-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-16 +6x10-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-2 +6x10-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-3 +6x10-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-4 +6x10-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-5 +6x10-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-7 +6x10-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-8 +6x10-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-9 +6x10-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-koi8-r +6x10.pcf.gz -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso10646-1 +6x12-ISO8859-1.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-1 +6x12-ISO8859-10.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-10 +6x12-ISO8859-13.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-13 +6x12-ISO8859-14.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-14 +6x12-ISO8859-15.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-15 +6x12-ISO8859-16.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-16 +6x12-ISO8859-2.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-2 +6x12-ISO8859-3.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-3 +6x12-ISO8859-4.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-4 +6x12-ISO8859-5.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-5 +6x12-ISO8859-7.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-7 +6x12-ISO8859-8.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-8 +6x12-ISO8859-9.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso8859-9 +6x12-KOI8-R.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-koi8-r +6x12.pcf.gz -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso10646-1 +6x13-ISO8859-1.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 +6x13-ISO8859-10.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-10 +6x13-ISO8859-11.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-11 +6x13-ISO8859-13.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-13 +6x13-ISO8859-14.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-14 +6x13-ISO8859-15.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 +6x13-ISO8859-16.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-16 +6x13-ISO8859-2.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-2 +6x13-ISO8859-3.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-3 +6x13-ISO8859-4.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-4 +6x13-ISO8859-5.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-5 +6x13-ISO8859-7.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-7 +6x13-ISO8859-8.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-8 +6x13-ISO8859-9.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-9 +6x13-KOI8-R.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-koi8-r +6x13.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1 +6x13B-ISO8859-1.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-1 +6x13B-ISO8859-10.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-10 +6x13B-ISO8859-13.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-13 +6x13B-ISO8859-14.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-14 +6x13B-ISO8859-15.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-15 +6x13B-ISO8859-16.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-16 +6x13B-ISO8859-2.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-2 +6x13B-ISO8859-3.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-3 +6x13B-ISO8859-4.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-4 +6x13B-ISO8859-5.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-5 +6x13B-ISO8859-7.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-7 +6x13B-ISO8859-8.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-8 +6x13B-ISO8859-9.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-9 +6x13B.pcf.gz -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso10646-1 +6x13O-ISO8859-1.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-1 +6x13O-ISO8859-10.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-10 +6x13O-ISO8859-13.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-13 +6x13O-ISO8859-14.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-14 +6x13O-ISO8859-15.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-15 +6x13O-ISO8859-16.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-16 +6x13O-ISO8859-2.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-2 +6x13O-ISO8859-3.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-3 +6x13O-ISO8859-4.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-4 +6x13O-ISO8859-5.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-5 +6x13O-ISO8859-7.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-7 +6x13O-ISO8859-9.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso8859-9 +6x13O.pcf.gz -misc-fixed-medium-o-semicondensed--13-120-75-75-c-60-iso10646-1 +6x9-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-1 +6x9-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-10 +6x9-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-13 +6x9-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-14 +6x9-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-15 +6x9-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-16 +6x9-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-2 +6x9-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-3 +6x9-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-4 +6x9-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-5 +6x9-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-7 +6x9-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-8 +6x9-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso8859-9 +6x9-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-koi8-r +6x9.pcf.gz -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso10646-1 +7x13-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1 +7x13-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-10 +7x13-ISO8859-11.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-11 +7x13-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-13 +7x13-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-14 +7x13-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-15 +7x13-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-16 +7x13-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-2 +7x13-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-3 +7x13-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-4 +7x13-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-5 +7x13-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-7 +7x13-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-8 +7x13-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-9 +7x13-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-koi8-r +7x13.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso10646-1 +7x13B-ISO8859-1.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-1 +7x13B-ISO8859-10.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-10 +7x13B-ISO8859-11.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-11 +7x13B-ISO8859-13.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-13 +7x13B-ISO8859-14.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-14 +7x13B-ISO8859-15.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-15 +7x13B-ISO8859-16.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-16 +7x13B-ISO8859-2.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-2 +7x13B-ISO8859-3.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-3 +7x13B-ISO8859-4.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-4 +7x13B-ISO8859-5.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-5 +7x13B-ISO8859-7.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-7 +7x13B-ISO8859-8.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-8 +7x13B-ISO8859-9.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-9 +7x13B.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso10646-1 +7x13O-ISO8859-1.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-1 +7x13O-ISO8859-10.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-10 +7x13O-ISO8859-11.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-11 +7x13O-ISO8859-13.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-13 +7x13O-ISO8859-14.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-14 +7x13O-ISO8859-15.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-15 +7x13O-ISO8859-16.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-16 +7x13O-ISO8859-2.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-2 +7x13O-ISO8859-3.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-3 +7x13O-ISO8859-4.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-4 +7x13O-ISO8859-5.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-5 +7x13O-ISO8859-7.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-7 +7x13O-ISO8859-9.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso8859-9 +7x13O.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-70-iso10646-1 +7x14-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1 +7x14-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-10 +7x14-ISO8859-11.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-11 +7x14-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-13 +7x14-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-14 +7x14-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-15 +7x14-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-16 +7x14-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-2 +7x14-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-3 +7x14-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-4 +7x14-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-5 +7x14-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-7 +7x14-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-8 +7x14-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-9 +7x14-JISX0201.1976-0.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-jisx0201.1976-0 +7x14-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-koi8-r +7x14.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 +7x14B-ISO8859-1.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-1 +7x14B-ISO8859-10.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-10 +7x14B-ISO8859-11.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-11 +7x14B-ISO8859-13.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-13 +7x14B-ISO8859-14.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-14 +7x14B-ISO8859-15.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-15 +7x14B-ISO8859-16.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-16 +7x14B-ISO8859-2.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-2 +7x14B-ISO8859-3.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-3 +7x14B-ISO8859-4.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-4 +7x14B-ISO8859-5.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-5 +7x14B-ISO8859-7.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-7 +7x14B-ISO8859-8.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-8 +7x14B-ISO8859-9.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-9 +7x14B.pcf.gz -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso10646-1 +8x13-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-1 +8x13-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-10 +8x13-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-13 +8x13-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-14 +8x13-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-15 +8x13-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-16 +8x13-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-2 +8x13-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-3 +8x13-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-4 +8x13-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-5 +8x13-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-7 +8x13-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-8 +8x13-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-9 +8x13-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-koi8-r +8x13.pcf.gz -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1 +8x13B-ISO8859-1.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1 +8x13B-ISO8859-10.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-10 +8x13B-ISO8859-13.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-13 +8x13B-ISO8859-14.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-14 +8x13B-ISO8859-15.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-15 +8x13B-ISO8859-16.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-16 +8x13B-ISO8859-2.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-2 +8x13B-ISO8859-3.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-3 +8x13B-ISO8859-4.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-4 +8x13B-ISO8859-5.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-5 +8x13B-ISO8859-7.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-7 +8x13B-ISO8859-8.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-8 +8x13B-ISO8859-9.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-9 +8x13B.pcf.gz -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso10646-1 +8x13O-ISO8859-1.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-1 +8x13O-ISO8859-10.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-10 +8x13O-ISO8859-13.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-13 +8x13O-ISO8859-14.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-14 +8x13O-ISO8859-15.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-15 +8x13O-ISO8859-16.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-16 +8x13O-ISO8859-2.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-2 +8x13O-ISO8859-3.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-3 +8x13O-ISO8859-4.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-4 +8x13O-ISO8859-5.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-5 +8x13O-ISO8859-7.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-7 +8x13O-ISO8859-9.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso8859-9 +8x13O.pcf.gz -misc-fixed-medium-o-normal--13-120-75-75-c-80-iso10646-1 +8x16.pcf.gz -sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1 +8x16rk.pcf.gz -sony-fixed-medium-r-normal--16-120-100-100-c-80-jisx0201.1976-0 +9x15-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1 +9x15-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-10 +9x15-ISO8859-11.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-11 +9x15-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-13 +9x15-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-14 +9x15-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-15 +9x15-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-16 +9x15-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-2 +9x15-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-3 +9x15-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-4 +9x15-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-5 +9x15-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-7 +9x15-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-8 +9x15-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-9 +9x15-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-koi8-r +9x15.pcf.gz -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1 +9x15B-ISO8859-1.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1 +9x15B-ISO8859-10.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-10 +9x15B-ISO8859-11.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-11 +9x15B-ISO8859-13.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-13 +9x15B-ISO8859-14.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-14 +9x15B-ISO8859-15.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-15 +9x15B-ISO8859-16.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-16 +9x15B-ISO8859-2.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-2 +9x15B-ISO8859-3.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-3 +9x15B-ISO8859-4.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-4 +9x15B-ISO8859-5.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-5 +9x15B-ISO8859-7.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-7 +9x15B-ISO8859-8.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-8 +9x15B-ISO8859-9.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-9 +9x15B.pcf.gz -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1 +9x18-ISO8859-1.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-1 +9x18-ISO8859-10.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-10 +9x18-ISO8859-11.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-11 +9x18-ISO8859-13.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-13 +9x18-ISO8859-14.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-14 +9x18-ISO8859-15.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-15 +9x18-ISO8859-16.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-16 +9x18-ISO8859-2.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-2 +9x18-ISO8859-3.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-3 +9x18-ISO8859-4.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-4 +9x18-ISO8859-5.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-5 +9x18-ISO8859-7.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-7 +9x18-ISO8859-8.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-8 +9x18-ISO8859-9.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-9 +9x18-KOI8-R.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-koi8-r +9x18.pcf.gz -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 +9x18B-ISO8859-1.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-1 +9x18B-ISO8859-10.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-10 +9x18B-ISO8859-13.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-13 +9x18B-ISO8859-14.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-14 +9x18B-ISO8859-15.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-15 +9x18B-ISO8859-16.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-16 +9x18B-ISO8859-2.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-2 +9x18B-ISO8859-3.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-3 +9x18B-ISO8859-4.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-4 +9x18B-ISO8859-5.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-5 +9x18B-ISO8859-7.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-7 +9x18B-ISO8859-8.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-8 +9x18B-ISO8859-9.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso8859-9 +9x18B.pcf.gz -misc-fixed-bold-r-normal--18-120-100-100-c-90-iso10646-1 +arabic24.pcf.gz -arabic-newspaper-medium-r-normal--32-246-100-100-p-137-iso10646-1 +clB6x10.pcf.gz -schumacher-clean-bold-r-normal--10-100-75-75-c-60-iso646.1991-irv +clB6x12.pcf.gz -schumacher-clean-bold-r-normal--12-120-75-75-c-60-iso646.1991-irv +clB8x10.pcf.gz -schumacher-clean-bold-r-normal--10-100-75-75-c-80-iso646.1991-irv +clB8x12.pcf.gz -schumacher-clean-bold-r-normal--12-120-75-75-c-80-iso646.1991-irv +clB8x13.pcf.gz -schumacher-clean-bold-r-normal--13-130-75-75-c-80-iso646.1991-irv +clB8x14.pcf.gz -schumacher-clean-bold-r-normal--14-140-75-75-c-80-iso646.1991-irv +clB8x16.pcf.gz -schumacher-clean-bold-r-normal--16-160-75-75-c-80-iso646.1991-irv +clB8x8.pcf.gz -schumacher-clean-bold-r-normal--8-80-75-75-c-80-iso646.1991-irv +clB9x15.pcf.gz -schumacher-clean-bold-r-normal--15-150-75-75-c-90-iso646.1991-irv +clI6x12.pcf.gz -schumacher-clean-medium-i-normal--12-120-75-75-c-60-iso646.1991-irv +clI8x8.pcf.gz -schumacher-clean-medium-i-normal--8-80-75-75-c-80-iso646.1991-irv +clR4x6.pcf.gz -schumacher-clean-medium-r-normal--6-60-75-75-c-40-iso646.1991-irv +clR5x10.pcf.gz -schumacher-clean-medium-r-normal--10-100-75-75-c-50-iso646.1991-irv +clR5x6.pcf.gz -schumacher-clean-medium-r-normal--6-60-75-75-c-50-iso646.1991-irv +clR5x8.pcf.gz -schumacher-clean-medium-r-normal--8-80-75-75-c-50-iso646.1991-irv +clR6x10.pcf.gz -schumacher-clean-medium-r-normal--10-100-75-75-c-60-iso646.1991-irv +clR6x12-ISO8859-1.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-1 +clR6x12-ISO8859-10.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-10 +clR6x12-ISO8859-13.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-13 +clR6x12-ISO8859-14.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-14 +clR6x12-ISO8859-15.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-15 +clR6x12-ISO8859-16.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-16 +clR6x12-ISO8859-2.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-2 +clR6x12-ISO8859-3.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-3 +clR6x12-ISO8859-4.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-4 +clR6x12-ISO8859-5.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-5 +clR6x12-ISO8859-7.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-7 +clR6x12-ISO8859-8.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-8 +clR6x12-ISO8859-9.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-9 +clR6x12-KOI8-R.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-koi8-r +clR6x12.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso10646-1 +clR6x13.pcf.gz -schumacher-clean-medium-r-normal--13-130-75-75-c-60-iso646.1991-irv +clR6x6.pcf.gz -schumacher-clean-medium-r-normal--6-60-75-75-c-60-iso646.1991-irv +clR6x8.pcf.gz -schumacher-clean-medium-r-normal--8-80-75-75-c-60-iso646.1991-irv +clR7x10.pcf.gz -schumacher-clean-medium-r-normal--10-100-75-75-c-70-iso646.1991-irv +clR7x12.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-70-iso646.1991-irv +clR7x14.pcf.gz -schumacher-clean-medium-r-normal--14-140-75-75-c-70-iso646.1991-irv +clR7x8.pcf.gz -schumacher-clean-medium-r-normal--8-80-75-75-c-70-iso646.1991-irv +clR8x10.pcf.gz -schumacher-clean-medium-r-normal--10-100-75-75-c-80-iso646.1991-irv +clR8x12.pcf.gz -schumacher-clean-medium-r-normal--12-120-75-75-c-80-iso646.1991-irv +clR8x13.pcf.gz -schumacher-clean-medium-r-normal--13-130-75-75-c-80-iso646.1991-irv +clR8x14.pcf.gz -schumacher-clean-medium-r-normal--14-140-75-75-c-80-iso646.1991-irv +clR8x16.pcf.gz -schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso646.1991-irv +clR8x8.pcf.gz -schumacher-clean-medium-r-normal--8-80-75-75-c-80-iso646.1991-irv +clR9x15.pcf.gz -schumacher-clean-medium-r-normal--15-150-75-75-c-90-iso646.1991-irv +cu-alt12.pcf.gz -mutt-clearlyu alternate glyphs-medium-r-normal--17-120-100-100-p-122-iso10646-1 +cu-arabic12.pcf.gz -mutt-clearlyu arabic extra-medium-r-normal--17-120-100-100-p-101-fontspecific-0 +cu-devnag12.pcf.gz -mutt-clearlyu devangari extra-medium-r-normal--17-120-100-100-p-105-fontspecific-0 +cu-lig12.pcf.gz -mutt-clearlyu ligature-medium-r-normal--17-120-100-100-p-141-fontspecific-0 +cu-pua12.pcf.gz -mutt-clearlyu pua-medium-r-normal--17-120-100-100-p-110-iso10646-1 +cu12.pcf.gz -mutt-clearlyu-medium-r-normal--17-120-100-100-p-123-iso10646-1 +cuarabic12.pcf.gz -mutt-clearlyu arabic-medium-r-normal--17-120-100-100-p-93-iso10646-1 +cudevnag12.pcf.gz -mutt-clearlyu devanagari-medium-r-normal--15-120-90-90-p-104-fontspecific-0 +cursor.pcf.gz cursor +deccurs.pcf.gz decw$cursor +decsess.pcf.gz decw$session +gb16fs.pcf.gz -isas-fangsong ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0 +gb16st.pcf.gz -isas-song ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0 +gb24st.pcf.gz -isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980-0 +hanglg16.pcf.gz -daewoo-gothic-medium-r-normal--16-120-100-100-c-160-ksc5601.1987-0 +hanglm16.pcf.gz -daewoo-mincho-medium-r-normal--16-120-100-100-c-160-ksc5601.1987-0 +hanglm24.pcf.gz -daewoo-mincho-medium-r-normal--24-170-100-100-c-240-ksc5601.1987-0 +jiskan16.pcf.gz -jis-fixed-medium-r-normal--16-150-75-75-c-160-jisx0208.1983-0 +jiskan24.pcf.gz -jis-fixed-medium-r-normal--24-230-75-75-c-240-jisx0208.1983-0 +k14.pcf.gz -misc-fixed-medium-r-normal--14-130-75-75-c-140-jisx0208.1983-0 +micro.pcf.gz micro +nil2.pcf.gz -misc-nil-medium-r-normal--2-20-75-75-c-10-misc-fontspecific +olcursor.pcf.gz -sun-open look cursor-----12-120-75-75-p-160-sunolcursor-1 +olgl10.pcf.gz -sun-open look glyph-----10-100-75-75-p-101-sunolglyph-1 +olgl12.pcf.gz -sun-open look glyph-----12-120-75-75-p-113-sunolglyph-1 +olgl14.pcf.gz -sun-open look glyph-----14-140-75-75-p-128-sunolglyph-1 +olgl19.pcf.gz -sun-open look glyph-----19-190-75-75-p-154-sunolglyph-1 diff --git a/meta/recipes-graphics/xorg-lib/libapplewm_1.0.0.bb b/meta/recipes-graphics/xorg-lib/libapplewm_1.0.0.bb new file mode 100644 index 00000000000..bc502fb5050 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libapplewm_1.0.0.bb @@ -0,0 +1,7 @@ +require xorg-lib-common.inc + +DEPENDS += "libxext applewmproto" +PR = "r1" +PE = "1" + +XORG_PN = "libAppleWM" diff --git a/meta/recipes-graphics/xorg-lib/libdmx_1.1.0.bb b/meta/recipes-graphics/xorg-lib/libdmx_1.1.0.bb new file mode 100644 index 00000000000..20523b894e1 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libdmx_1.1.0.bb @@ -0,0 +1,11 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Distributed Multihead extension library" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94 \ + file://src/dmx.c;endline=33;md5=79ff7aacf716dafea0d490316f998a11" + +DEPENDS += "libxext dmxproto" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-lib/libfontenc_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libfontenc_1.0.5.bb new file mode 100644 index 00000000000..dc7b62d02d6 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libfontenc_1.0.5.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "X11 font encoding library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=96254c20ab81c63e65b26f0dbcd4a1c1" + +DEPENDS += "zlib xproto" +PR = "r0" +PE = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-lib/libfs_1.0.1.bb b/meta/recipes-graphics/xorg-lib/libfs_1.0.1.bb new file mode 100644 index 00000000000..010aa311e07 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libfs_1.0.1.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Font Services library" +DEPENDS += "xproto fontsproto xtrans" +PR = "r1" +PE = "1" + +XORG_PN = "libFS" diff --git a/meta/recipes-graphics/xorg-lib/libice_1.0.6.bb b/meta/recipes-graphics/xorg-lib/libice_1.0.6.bb new file mode 100644 index 00000000000..ec3ad136a0b --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libice_1.0.6.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "X11 Inter-Client Exchange library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=d162b1b3c6fa812da9d804dcf8584a93" + +DEPENDS += "xproto xtrans" +PROVIDES = "ice" + +PR = "r0" +PE = "1" + +XORG_PN = "libICE" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch b/meta/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch new file mode 100644 index 00000000000..029d761d958 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch @@ -0,0 +1,63 @@ +During the build process the mkg3states binary needs to be run. This patch +allows it to be built with the build systems gcc allowing this to work. + +RP 31/3/10 + +Index: liblbxutil-1.1.0/configure.ac +=================================================================== +--- liblbxutil-1.1.0.orig/configure.ac 2009-12-04 22:52:04.000000000 +0000 ++++ liblbxutil-1.1.0/configure.ac 2010-03-31 15:26:33.000000000 +0100 +@@ -50,4 +50,5 @@ + + AC_OUTPUT([Makefile + src/Makefile ++ src/image/Makefile + lbxutil.pc]) +Index: liblbxutil-1.1.0/src/Makefile.am +=================================================================== +--- liblbxutil-1.1.0.orig/src/Makefile.am 2009-12-04 23:03:17.000000000 +0000 ++++ liblbxutil-1.1.0/src/Makefile.am 2010-03-31 15:27:25.000000000 +0100 +@@ -3,10 +3,7 @@ + AM_CFLAGS = $(CWARNFLAGS) $(LBXUTIL_CFLAGS) + INCLUDES = -I$(top_srcdir)/include + +-noinst_PROGRAMS = mkg3states +- +-mkg3states_SOURCES = \ +- $(srcdir)/image/mkg3states.c ++SUBDIRS = image + + liblbxutil_la_SOURCES = \ + $(srcdir)/lbx_zlib/reqstats.h \ +@@ -38,9 +35,8 @@ + + $(srcdir)/image/dfaxg42d.c: g3states.h + +-g3states.h: mkg3states +- -rm -f g3states.h +- $(AM_V_GEN) ./mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h ++g3states.h: image/mkg3states ++ ./image/mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h + + liblbxutil_la_LDFLAGS = -version-number 1:0:0 -no-undefined + +Index: liblbxutil-1.1.0/src/image/Makefile.am +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ liblbxutil-1.1.0/src/image/Makefile.am 2010-03-31 15:26:33.000000000 +0100 +@@ -0,0 +1,15 @@ ++# evil hack ++CFLAGS=$(CFLAGS_FOR_BUILD) ++CPPFLAGS=$(CPPFLAGS_FOR_BUILD) ++LDFLAGS=$(LDFLAGS_FOR_BUILD) ++ ++CC=$(CC_FOR_BUILD) ++LIBTOOL = @LIBTOOL@ --tag=CC ++ ++noinst_PROGRAMS = mkg3states ++ ++mkg3states_SOURCES = \ ++ mkg3states.c ++ ++mkg3states_CFLAGS=$(CFLAGS_FOR_BUILD) ++mkg3states_LDFLAGS=$(LDFLAGS_FOR_BUILD) diff --git a/meta/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb b/meta/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb new file mode 100644 index 00000000000..cdf35092461 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb @@ -0,0 +1,11 @@ +require xorg-lib-common.inc + +DESCRIPTION = "XFIXES Extension" +DEPENDS += " libxext xextproto xproto zlib" +PROVIDES = "lbxutil" +PE = "1" +PR = "r1" + +SRC_URI += "file://mkg3states.patch;patch=1" + +export CC_FOR_BUILD = "gcc" diff --git a/meta/recipes-graphics/xorg-lib/liboldx_1.0.1.bb b/meta/recipes-graphics/xorg-lib/liboldx_1.0.1.bb new file mode 100644 index 00000000000..84470cbc78e --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/liboldx_1.0.1.bb @@ -0,0 +1,6 @@ +require xorg-lib-common.inc + +DEPENDS += " virtual/libx11" +PE = "1" + +XORG_PN = "liboldX" diff --git a/meta/recipes-graphics/xorg-lib/libpciaccess_0.11.0.bb b/meta/recipes-graphics/xorg-lib/libpciaccess_0.11.0.bb new file mode 100644 index 00000000000..b4032c0a100 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libpciaccess_0.11.0.bb @@ -0,0 +1,10 @@ +DESCRIPTION = "Generic PCI access library" + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=ad1647740bccb2315e6f6368dce05c6d" + +PR = "r0" + +DEPENDS += "xproto virtual/libx11" diff --git a/meta/recipes-graphics/xorg-lib/libsm_1.1.1.bb b/meta/recipes-graphics/xorg-lib/libsm_1.1.1.bb new file mode 100644 index 00000000000..0ec38c5aa9d --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libsm_1.1.1.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "X11 Session management library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=451a87de5b38d25ec6b96d548087934d" + +DEPENDS += "libice xproto xtrans e2fsprogs" + +PR = "r0" +PE = "1" + +XORG_PN = "libSM" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-lib/libwindowswm_1.0.0.bb b/meta/recipes-graphics/xorg-lib/libwindowswm_1.0.0.bb new file mode 100644 index 00000000000..a03d49505bd --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libwindowswm_1.0.0.bb @@ -0,0 +1,6 @@ +require xorg-lib-common.inc + +DEPENDS += "libxext windowswmproto" +PE = "1" + +XORG_PN = "libWindowsWM" diff --git a/meta/recipes-graphics/xorg-lib/libx11-1.3.4/include_fix.patch b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/include_fix.patch new file mode 100644 index 00000000000..c8aa08595d3 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/include_fix.patch @@ -0,0 +1,19 @@ +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- libX11-1.3.4.orig/configure.ac ++++ libX11-1.3.4/configure.ac +@@ -353,9 +353,9 @@ + # + # 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 diff --git a/meta/recipes-graphics/xorg-lib/libx11-1.3.4/nodolt.patch b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/nodolt.patch new file mode 100644 index 00000000000..011c23e8d8c --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/nodolt.patch @@ -0,0 +1,10 @@ +--- libX11-1.3.4.orig/configure.ac ++++ libX11-1.3.4/configure.ac +@@ -32,7 +32,6 @@ + + # Checks for programs. + AC_PROG_LIBTOOL +-DOLT + AC_PROG_CC + PKG_PROG_PKG_CONFIG + diff --git a/meta/recipes-graphics/xorg-lib/libx11-1.3.4/x11_disable_makekeys.patch b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/x11_disable_makekeys.patch new file mode 100644 index 00000000000..4036757e54b --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-1.3.4/x11_disable_makekeys.patch @@ -0,0 +1,31 @@ +--- + src/util/Makefile.am | 21 ----------------- + 1 file changed, 21 deletions(-) + +--- libX11-1.3.4.orig/src/util/Makefile.am ++++ libX11-1.3.4/src/util/Makefile.am +@@ -1,24 +1,3 @@ + +-noinst_PROGRAMS=makekeys +- +-makekeys_CFLAGS = \ +- $(X11_CFLAGS) \ +- $(CWARNFLAGS) +- +-CC = @CC_FOR_BUILD@ +-CPPFLAGS = @CPPFLAGS_FOR_BUILD@ +-CFLAGS = @CFLAGS_FOR_BUILD@ +-LDFLAGS = @LDFLAGS_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/recipes-graphics/xorg-lib/libx11-diet_1.3.bb b/meta/recipes-graphics/xorg-lib/libx11-diet_1.3.bb new file mode 100644 index 00000000000..a76aba16e4e --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-diet_1.3.bb @@ -0,0 +1,17 @@ +require libx11.inc + +PR = "r1" + +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" + +EXTRA_OECONF += "--without-xcb --disable-udc --disable-xcms --disable-xlocale" +CFLAGS += "-D_GNU_SOURCE" diff --git a/meta/recipes-graphics/xorg-lib/libx11-diet_git.bb b/meta/recipes-graphics/xorg-lib/libx11-diet_git.bb new file mode 100644 index 00000000000..d1f0a753fa9 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-diet_git.bb @@ -0,0 +1,12 @@ +require libx11.inc +require libx11_git.inc + +SRC_URI += "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" + +EXTRA_OECONF += "--without-xcb --disable-udc --disable-xcms --disable-xlocale" +CFLAGS += "-D_GNU_SOURCE" diff --git a/meta/recipes-graphics/xorg-lib/libx11-git/X18NCMSstubs.diff b/meta/recipes-graphics/xorg-lib/libx11-git/X18NCMSstubs.diff new file mode 100644 index 00000000000..2dd27fc94f3 --- /dev/null +++ b/meta/recipes-graphics/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/recipes-graphics/xorg-lib/libx11-git/fix-disable-xlocale.diff b/meta/recipes-graphics/xorg-lib/libx11-git/fix-disable-xlocale.diff new file mode 100644 index 00000000000..9dbf6dac689 --- /dev/null +++ b/meta/recipes-graphics/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/recipes-graphics/xorg-lib/libx11-git/fix-utf8-wrong-define.patch b/meta/recipes-graphics/xorg-lib/libx11-git/fix-utf8-wrong-define.patch new file mode 100644 index 00000000000..a098db19411 --- /dev/null +++ b/meta/recipes-graphics/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/recipes-graphics/xorg-lib/libx11-git/include_fix.patch b/meta/recipes-graphics/xorg-lib/libx11-git/include_fix.patch new file mode 100644 index 00000000000..99ed57194e5 --- /dev/null +++ b/meta/recipes-graphics/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/recipes-graphics/xorg-lib/libx11-git/nodolt.patch b/meta/recipes-graphics/xorg-lib/libx11-git/nodolt.patch new file mode 100644 index 00000000000..ecf9625cad7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-git/nodolt.patch @@ -0,0 +1,12 @@ +Index: libX11-1.2.1/configure.ac +=================================================================== +--- libX11-1.2.1.orig/configure.ac 2009-07-02 14:07:54.000000000 +0100 ++++ libX11-1.2.1/configure.ac 2009-07-02 14:08:01.000000000 +0100 +@@ -20,7 +20,6 @@ + + # Checks for programs. + AC_PROG_LIBTOOL +-DOLT + AC_PROG_CC + XORG_CWARNFLAGS + diff --git a/meta/recipes-graphics/xorg-lib/libx11-git/x11_disable_makekeys.patch b/meta/recipes-graphics/xorg-lib/libx11-git/x11_disable_makekeys.patch new file mode 100644 index 00000000000..9cc2bbbbdd8 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-git/x11_disable_makekeys.patch @@ -0,0 +1,28 @@ +--- + src/util/Makefile.am | 17 ----------------- + 1 file changed, 17 deletions(-) + +Index: git/src/util/Makefile.am +=================================================================== +--- git.orig/src/util/Makefile.am 2010-01-28 22:24:29.000000000 +0000 ++++ git/src/util/Makefile.am 2010-01-28 22:29:26.000000000 +0000 +@@ -1,19 +1,2 @@ + +-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/recipes-graphics/xorg-lib/libx11-git/xim.patch b/meta/recipes-graphics/xorg-lib/libx11-git/xim.patch new file mode 100644 index 00000000000..0eab197a805 --- /dev/null +++ b/meta/recipes-graphics/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 ) + { diff --git a/meta/recipes-graphics/xorg-lib/libx11-trim/include_fix.patch b/meta/recipes-graphics/xorg-lib/libx11-trim/include_fix.patch new file mode 100644 index 00000000000..99ed57194e5 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-trim/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/recipes-graphics/xorg-lib/libx11-trim/nodolt.patch b/meta/recipes-graphics/xorg-lib/libx11-trim/nodolt.patch new file mode 100644 index 00000000000..ecf9625cad7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-trim/nodolt.patch @@ -0,0 +1,12 @@ +Index: libX11-1.2.1/configure.ac +=================================================================== +--- libX11-1.2.1.orig/configure.ac 2009-07-02 14:07:54.000000000 +0100 ++++ libX11-1.2.1/configure.ac 2009-07-02 14:08:01.000000000 +0100 +@@ -20,7 +20,6 @@ + + # Checks for programs. + AC_PROG_LIBTOOL +-DOLT + AC_PROG_CC + XORG_CWARNFLAGS + diff --git a/meta/recipes-graphics/xorg-lib/libx11-trim/x11_disable_makekeys.patch b/meta/recipes-graphics/xorg-lib/libx11-trim/x11_disable_makekeys.patch new file mode 100644 index 00000000000..670578257c2 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-trim/x11_disable_makekeys.patch @@ -0,0 +1,29 @@ +--- + src/util/Makefile.am | 17 ----------------- + 1 file changed, 17 deletions(-) + +Index: libX11-1.2.1/src/util/Makefile.am +=================================================================== +--- libX11-1.2.1.orig/src/util/Makefile.am 2008-10-07 18:18:19.000000000 +0100 ++++ libX11-1.2.1/src/util/Makefile.am 2009-07-02 14:04:38.000000000 +0100 +@@ -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/recipes-graphics/xorg-lib/libx11-trim_1.3.4.bb b/meta/recipes-graphics/xorg-lib/libx11-trim_1.3.4.bb new file mode 100644 index 00000000000..190217d3870 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-trim_1.3.4.bb @@ -0,0 +1,14 @@ +require libx11.inc + +LICENSE = "MIT & MIT-style & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=bf75bfe4d05068311b5e6862d4b5f2c5" + +PR = "r0" + +DEPENDS += "libxcb xproto xextproto xtrans libxau kbproto inputproto xf86bigfontproto xproto-native" + +SRC_URI += "file://../libx11-${PV}/x11_disable_makekeys.patch \ + file://../libx11-${PV}/include_fix.patch \ + file://../libx11-${PV}/nodolt.patch" + +EXTRA_OECONF += "--disable-xcms --with-xcb" diff --git a/meta/recipes-graphics/xorg-lib/libx11-trim_git.bb b/meta/recipes-graphics/xorg-lib/libx11-trim_git.bb new file mode 100644 index 00000000000..99426c3c5d2 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11-trim_git.bb @@ -0,0 +1,10 @@ +require libx11.inc +require libx11_git.inc + +PR = "r2" + +DEPENDS += "libxcb xproto xextproto xtrans libxau kbproto inputproto xf86bigfontproto xproto-native" + +EXTRA_OECONF += "--disable-xcms --with-xcb" +CFLAGS += "-D_GNU_SOURCE" + diff --git a/meta/recipes-graphics/xorg-lib/libx11.inc b/meta/recipes-graphics/xorg-lib/libx11.inc new file mode 100644 index 00000000000..f8c17b1a6d6 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11.inc @@ -0,0 +1,34 @@ +DESCRIPTION = "X11 protocol and utility library" + +require xorg-lib-common.inc + +PROVIDES = "virtual/libx11" + +XORG_PN = "libX11" +LEAD_SONAME = "libX11.so" + +EXTRA_OECONF += "--with-keysymdef=${STAGING_INCDIR}/X11/keysymdef.h" + +FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${libdir}/X11/Xcms.txt" +FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale" + +do_compile() { + cd ${S}/src/util + mv makekeys.c.orig makekeys.c || true + touch makekeys-makekeys.o + ( + unset CC LD CXX CCLD CFLAGS CPPFLAGS LDFLAGS CXXFLAGS + ${BUILD_CC} ${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE} makekeys.c -o makekeys + ) + if [ "$?" != "0" ]; then + exit 1 + fi + # mv to stop it getting rebuilt + mv makekeys.c makekeys.c.orig + cd ${S} + oe_runmake +} + +# Multiple libx11 derivatives from from this file and are selected by virtual/libx11 +# A world build should only build the correct version, not all of them. +EXCLUDE_FROM_WORLD = "1" diff --git a/meta/recipes-graphics/xorg-lib/libx11/X18NCMSstubs.diff b/meta/recipes-graphics/xorg-lib/libx11/X18NCMSstubs.diff new file mode 100644 index 00000000000..54b1727a951 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/X18NCMSstubs.diff @@ -0,0 +1,528 @@ +--- libX11-X11R7.0-1.0.0/src/imConv.c.orig 2006-03-08 09:46:03.000000000 +0100 ++++ libX11-X11R7.0-1.0.0/src/imConv.c 2006-03-08 10:50:10.000000000 +0100 +@@ -83,6 +83,7 @@ + * from UCS char to specified charset char. + * This converter is needed for _XimGetCharCode subroutine. + */ ++#ifdef XLOCALE + XPointer + _XimGetLocaleCode ( + _Xconst char* encoding_name) +@@ -96,6 +97,7 @@ + } + return cvt; + } ++#endif + + /* + * Returns the locale dependent representation of a keysym. +@@ -107,6 +109,7 @@ + * locale + */ + /*ARGSUSED*/ ++#ifdef XLOCALE + int + _XimGetCharCode ( + XPointer ucs_conv, +@@ -135,6 +138,7 @@ + buf[count]= '\0'; + return count; + } ++#endif + + #ifdef XKB + static int lookup_string( +--- libX11-X11R7.0-1.0.0/src/X18NCMSstubs.c.orig 2006-03-08 08:43:19.000000000 +0100 ++++ libX11-X11R7.0-1.0.0/src/X18NCMSstubs.c 2006-03-08 11:41:28.000000000 +0100 +@@ -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 +--- libX11-X11R7.0-1.0.0/src/Makefile.am.orig 2006-03-08 08:31:09.000000000 +0100 ++++ libX11-X11R7.0-1.0.0/src/Makefile.am 2006-03-08 09:36:23.000000000 +0100 +@@ -331,6 +331,8 @@ + libX11_la_SOURCES+=UIThrStubs.c + endif + ++libX11_la_SOURCES+=X18NCMSstubs.c ++ + x11datadir = @X11_DATADIR@ + x11data_DATA = XKeysymDB XErrorDB + +@@ -338,7 +340,8 @@ + $(x11data_DATA) \ + os2Stubs.c \ + udcInf.c \ +- UIThrStubs.c ++ UIThrStubs.c \ ++ X18NCMSstubs.c + + # + # Figure out which sub-libraries to link into Xlib +--- libX11-X11R7.0-1.0.0/src/locking.c.orig 2006-03-08 11:05:56.000000000 +0100 ++++ libX11-X11R7.0-1.0.0/src/locking.c 2006-03-08 11:06:37.000000000 +0100 +@@ -55,7 +55,9 @@ + #define NUM_FREE_CVLS 4 + + /* in lcWrap.c */ ++#ifdef XLOCALE + extern LockInfoPtr _Xi18n_lock; ++#endif + + #ifdef WIN32 + static DWORD _X_TlsIndex = (DWORD)-1; +@@ -625,9 +627,11 @@ + _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; +--- libX11-X11R7.0-1.0.0/configure.ac.orig 2006-03-08 10:03:57.000000000 +0100 ++++ libX11-X11R7.0-1.0.0/configure.ac 2006-03-08 10:06:01.000000000 +0100 +@@ -215,7 +215,14 @@ + esac + 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], diff --git a/meta/recipes-graphics/xorg-lib/libx11/fix-disable-xlocale.diff b/meta/recipes-graphics/xorg-lib/libx11/fix-disable-xlocale.diff new file mode 100644 index 00000000000..9dbf6dac689 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/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/recipes-graphics/xorg-lib/libx11/fix-utf8-wrong-define.patch b/meta/recipes-graphics/xorg-lib/libx11/fix-utf8-wrong-define.patch new file mode 100644 index 00000000000..a098db19411 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/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/recipes-graphics/xorg-lib/libx11/include_fix.patch b/meta/recipes-graphics/xorg-lib/libx11/include_fix.patch new file mode 100644 index 00000000000..99ed57194e5 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/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/recipes-graphics/xorg-lib/libx11/nodolt.patch b/meta/recipes-graphics/xorg-lib/libx11/nodolt.patch new file mode 100644 index 00000000000..ecf9625cad7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/nodolt.patch @@ -0,0 +1,12 @@ +Index: libX11-1.2.1/configure.ac +=================================================================== +--- libX11-1.2.1.orig/configure.ac 2009-07-02 14:07:54.000000000 +0100 ++++ libX11-1.2.1/configure.ac 2009-07-02 14:08:01.000000000 +0100 +@@ -20,7 +20,6 @@ + + # Checks for programs. + AC_PROG_LIBTOOL +-DOLT + AC_PROG_CC + XORG_CWARNFLAGS + diff --git a/meta/recipes-graphics/xorg-lib/libx11/x11_disable_makekeys.patch b/meta/recipes-graphics/xorg-lib/libx11/x11_disable_makekeys.patch new file mode 100644 index 00000000000..670578257c2 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/x11_disable_makekeys.patch @@ -0,0 +1,29 @@ +--- + src/util/Makefile.am | 17 ----------------- + 1 file changed, 17 deletions(-) + +Index: libX11-1.2.1/src/util/Makefile.am +=================================================================== +--- libX11-1.2.1.orig/src/util/Makefile.am 2008-10-07 18:18:19.000000000 +0100 ++++ libX11-1.2.1/src/util/Makefile.am 2009-07-02 14:04:38.000000000 +0100 +@@ -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/recipes-graphics/xorg-lib/libx11/xim.patch b/meta/recipes-graphics/xorg-lib/libx11/xim.patch new file mode 100644 index 00000000000..0eab197a805 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11/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 ) + { diff --git a/meta/recipes-graphics/xorg-lib/libx11_1.3.4.bb b/meta/recipes-graphics/xorg-lib/libx11_1.3.4.bb new file mode 100644 index 00000000000..aaeb38e2d60 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11_1.3.4.bb @@ -0,0 +1,18 @@ +require libx11.inc + +LICENSE = "MIT & MIT-style & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=bf75bfe4d05068311b5e6862d4b5f2c5" + +PE = "1" +PR = "r0" + +SRC_URI += "file://x11_disable_makekeys.patch \ + file://nodolt.patch \ + file://include_fix.patch" + +DEPENDS += "bigreqsproto xproto xextproto xtrans libxau xcmiscproto \ + libxdmcp xf86bigfontproto kbproto inputproto xproto-native gettext" + +EXTRA_OECONF += "--without-xcb" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libx11_git.bb b/meta/recipes-graphics/xorg-lib/libx11_git.bb new file mode 100644 index 00000000000..a976a16cd36 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11_git.bb @@ -0,0 +1,11 @@ +require libx11.inc +require libx11_git.inc + +PR = "r2" + +DEPENDS = "xproto xextproto xcmiscproto xf86bigfontproto kbproto inputproto \ + bigreqsproto xtrans libxau libxcb libxdmcp util-macros gettext" + +DEFAULT_PREFERENCE = "-1" + +BBCLASSEXTEND = "nativesdk"
\ No newline at end of file diff --git a/meta/recipes-graphics/xorg-lib/libx11_git.inc b/meta/recipes-graphics/xorg-lib/libx11_git.inc new file mode 100644 index 00000000000..40d806178f8 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libx11_git.inc @@ -0,0 +1,11 @@ +PV = "1.2.1+git${SRCPV}" + +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://nodolt.patch;patch=1" + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libx11-git" +FILESPATH = "${FILE_DIRNAME}/libx11-git" diff --git a/meta/recipes-graphics/xorg-lib/libxau_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxau_1.0.5.bb new file mode 100644 index 00000000000..65374611ba6 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxau_1.0.5.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "A Sample Authorization Protocol for X" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=7908e342491198401321cec1956807ec" + +DEPENDS += " xproto gettext" +PROVIDES = "xau" + +PR = "r0" +PE = "1" + +XORG_PN = "libXau" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxaw_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxaw_1.0.5.bb new file mode 100644 index 00000000000..489f456647d --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxaw_1.0.5.bb @@ -0,0 +1,21 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X Athena Widget Set" +DEPENDS += "xproto virtual/libx11 libxext xextproto libxt libxmu libxpm libxp printproto libxau" +PROVIDES = "xaw" +PR = "r1" +PE = "1" + +XORG_PN = "libXaw" + +do_install_append () { + ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6 + ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so.7 + ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so +} + +PACKAGES =+ "libxaw6 libxaw7 libxaw8" + +FILES_libxaw6 = "${libdir}/libXaw6.so.6*" +FILES_libxaw7 = "${libdir}/libXaw7.so.7*" +FILES_libxaw8 = "${libdir}/libXaw8.so.8*" diff --git a/meta/recipes-graphics/xorg-lib/libxcalibrate/fix-xcb.patch b/meta/recipes-graphics/xorg-lib/libxcalibrate/fix-xcb.patch new file mode 100644 index 00000000000..0d7efc70f3e --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcalibrate/fix-xcb.patch @@ -0,0 +1,27 @@ +There is no extra reply data and if we say not to disgard it, xcb +throws fatal asserts. + +RP - 26/11/09 + +Index: git/xcalibrate.c +=================================================================== +--- git.orig/xcalibrate.c 2009-11-26 08:11:48.000000000 +0000 ++++ git/xcalibrate.c 2009-11-26 08:09:55.000000000 +0000 +@@ -216,7 +216,7 @@ + req->reqType = info->codes->major_opcode; + req->xCalibrateReqType = X_XCalibrateRawMode; + req->on = enable; +- if (!_XReply (dpy, (xReply *) &rep, 0, xFalse)) ++ if (!_XReply (dpy, (xReply *) &rep, 0, xTrue)) + { + UnlockDisplay (dpy); + SyncHandle (); +@@ -240,7 +240,7 @@ + req->xCalibrateReqType = X_XCalibrateScreenToCoord; + req->x = *x; + req->y = *y; +- if (!_XReply (dpy, (xReply *) &rep, 0, xFalse)) ++ if (!_XReply (dpy, (xReply *) &rep, 0, xTrue)) + { + UnlockDisplay (dpy); + SyncHandle (); diff --git a/meta/recipes-graphics/xorg-lib/libxcalibrate_git.bb b/meta/recipes-graphics/xorg-lib/libxcalibrate_git.bb new file mode 100644 index 00000000000..8ca731b2ef3 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcalibrate_git.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "Touchscreen calibration client library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://xcalibrate.h;endline=21;md5=fa572df6439f0f235f2612f370f153d7 \ + file://xcalibrate.c;endline=21;md5=fa572df6439f0f235f2612f370f153d7" + +DEPENDS = "virtual/libx11 calibrateproto libxext" + +PV = "0.0+git${SRCPV}" +PR = "r0" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/lib/libXCalibrate;protocol=git \ + file://fix-xcb.patch" + +S = "${WORKDIR}/git" + +FILES_${PN}-locale += "${datadir}/X11/locale" diff --git a/meta/recipes-graphics/xorg-lib/libxcomposite/change-include-order.patch b/meta/recipes-graphics/xorg-lib/libxcomposite/change-include-order.patch new file mode 100644 index 00000000000..9b10d1a26d0 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcomposite/change-include-order.patch @@ -0,0 +1,14 @@ +This patch makes the build use its own Xcomposite.h over rather than an +older Xcomposite.h that might already be installed in the staging dir. + +--- libXcomposite-0.4.1/src/Makefile.am.orig 2010-06-27 15:50:05.000000000 +0800 ++++ libXcomposite-0.4.1/src/Makefile.am 2010-06-27 15:51:48.000000000 +0800 +@@ -19,7 +19,7 @@ + # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + # PERFORMANCE OF THIS SOFTWARE. + +-AM_CFLAGS = $(CWARNFLAGS) $(XCOMPOSITE_CFLAGS) $(X_CFLAGS) ++AM_CFLAGS = -I$(top_srcdir)/include $(CWARNFLAGS) $(XCOMPOSITE_CFLAGS) $(X_CFLAGS) + AM_CPPFLAGS = -I$(top_srcdir)/include + + lib_LTLIBRARIES = libXcomposite.la diff --git a/meta/recipes-graphics/xorg-lib/libxcomposite_0.4.1.bb b/meta/recipes-graphics/xorg-lib/libxcomposite_0.4.1.bb new file mode 100644 index 00000000000..8c5ca022c7b --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcomposite_0.4.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "X Composite extension library." + +require xorg-lib-common.inc + +LICENSE= "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" + +DEPENDS += " compositeproto virtual/libx11 libxfixes libxext" +PROVIDES = "xcomposite" + +PE = "1" +PR = "r0" + +XORG_PN = "libXcomposite" + +SRC_URI += " file://change-include-order.patch" diff --git a/meta/recipes-graphics/xorg-lib/libxcursor_1.1.10.bb b/meta/recipes-graphics/xorg-lib/libxcursor_1.1.10.bb new file mode 100644 index 00000000000..4b0a3b1ab4f --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcursor_1.1.10.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "X cursor management library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=8902e6643f7bcd7793b23dcd5d8031a4" + +DEPENDS += "libxrender libxfixes" + +PR = "r0" +PE = "1" + +XORG_PN = "libXcursor" diff --git a/meta/recipes-graphics/xorg-lib/libxdamage_1.1.2.bb b/meta/recipes-graphics/xorg-lib/libxdamage_1.1.2.bb new file mode 100644 index 00000000000..2ea9891c928 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxdamage_1.1.2.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "X11 damaged region extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=10c8c88d1faea6d7c3a82d54c2b8fd2b" + +DEPENDS += "damageproto libxfixes" +PROVIDES = "xdamage" + +PR = "r0" +PE = "1" + +XORG_PN = "libXdamage" diff --git a/meta/recipes-graphics/xorg-lib/libxdmcp_1.0.3.bb b/meta/recipes-graphics/xorg-lib/libxdmcp_1.0.3.bb new file mode 100644 index 00000000000..b1648fbf38c --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxdmcp_1.0.3.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "X Display Manager Control Protocol library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=d559fb26e129626022e052a5e6e0e123" + +DEPENDS += "xproto" +PROVIDES = "xdmcp" + +PR = "r0" +PE = "1" + +DEPENDS += "gettext" + +XORG_PN = "libXdmcp" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxevie_1.0.2.bb b/meta/recipes-graphics/xorg-lib/libxevie_1.0.2.bb new file mode 100644 index 00000000000..6c6b4595aa7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxevie_1.0.2.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 EvIE extension library" +DEPENDS += "libxext evieext" +PR = "r1" +PE = "1" + +XORG_PN = "libXevie" diff --git a/meta/recipes-graphics/xorg-lib/libxext_1.1.2.bb b/meta/recipes-graphics/xorg-lib/libxext_1.1.2.bb new file mode 100644 index 00000000000..14e6c1fb7e7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxext_1.1.2.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "X11 miscellaneous extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=c70692f0f710dda89d6cfcc412d8a1aa" + +DEPENDS += "xproto virtual/libx11 xextproto libxau libxdmcp" +PROVIDES = "xext" + +PR = "r0" +PE = "1" + +XORG_PN = "libXext" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxext_git.bb b/meta/recipes-graphics/xorg-lib/libxext_git.bb new file mode 100644 index 00000000000..d0b3d7fbf5a --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxext_git.bb @@ -0,0 +1,14 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 miscellaneous extension library" +DEPENDS += "xproto virtual/libx11 xextproto libxau libxdmcp" +PROVIDES = "xext" +PE = "1" +PV = "1.0.99.1+gitr${SRCPV}" + +XORG_PN = "libXext" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/lib/${XORG_PN};protocol=git" +S = "${WORKDIR}/git/" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxfixes_4.0.4.bb b/meta/recipes-graphics/xorg-lib/libxfixes_4.0.4.bb new file mode 100644 index 00000000000..b3ee0711dcb --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxfixes_4.0.4.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "X Fixes extension library." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" + +DEPENDS += "virtual/libx11 xproto fixesproto xextproto" + +PR = "r0" +PE = "1" + +XORG_PN = "libXfixes" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxfont/no-scalable-crash.patch b/meta/recipes-graphics/xorg-lib/libxfont/no-scalable-crash.patch new file mode 100644 index 00000000000..90bded6fbaa --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxfont/no-scalable-crash.patch @@ -0,0 +1,22 @@ +--- /tmp/fontdir.c 2006-08-01 16:17:22.000000000 +0200 ++++ libXfont-1.2.0/src/fontfile/fontdir.c 2006-08-01 16:20:37.248306000 +0200 +@@ -695,6 +695,11 @@ + */ + if (isscale) + { ++ /* If the fontname says it is scalable, make sure that the ++ * renderer supports OpenScalable and GetInfoScalable. ++ */ ++ if (renderer->OpenScalable && renderer->GetInfoScalable) ++ { + if (vals.values_supplied & SIZE_SPECIFY_MASK) + { + bzero((char *)&zeroVals, sizeof(zeroVals)); +@@ -794,6 +799,7 @@ + bitmap->name.name); + } + } ++ } + } + return TRUE; + } diff --git a/meta/recipes-graphics/xorg-lib/libxfont_1.4.2.bb b/meta/recipes-graphics/xorg-lib/libxfont_1.4.2.bb new file mode 100644 index 00000000000..6aa83c4ac61 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxfont_1.4.2.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "X11 font rasterisation library" + +require xorg-lib-common.inc + +LICENSE= "MIT & MIT-style & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=deeee1c29f32ca774cecf0c83b46bb5c" + +DEPENDS += "freetype fontcacheproto xtrans fontsproto libfontenc" +PROVIDES = "xfont" + +PR = "r0" +PE = "1" + +#SRC_URI += "file://no-scalable-crash.patch;patch=1" + +XORG_PN = "libXfont" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-lib/libxfontcache_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxfontcache_1.0.5.bb new file mode 100644 index 00000000000..97f7ed62726 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxfontcache_1.0.5.bb @@ -0,0 +1,9 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X-TrueType font cache extension client library" +DEPENDS += "libxext fontcacheproto" +LIC_FILES_CHKSUM = "file://COPYING;md5=62a75d5d3da40f1f6eb1cbe3bcc0a5d0" +PR = "r0" +PE = "1" + +XORG_PN = "libXfontcache" diff --git a/meta/recipes-graphics/xorg-lib/libxft_2.1.14.bb b/meta/recipes-graphics/xorg-lib/libxft_2.1.14.bb new file mode 100644 index 00000000000..7f5ccdd0fb6 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxft_2.1.14.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "FreeType-based font drawing library for X" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" + +DEPENDS += "libxrender freetype fontconfig" +PROVIDES = "xft" + +PR = "r0" +PE = "1" + +XORG_PN = "libXft" + +python do_package() { + if bb.data.getVar('DEBIAN_NAMES', d, 1): + bb.data.setVar('PKG_${PN}', 'libxft2', d) + bb.build.exec_func('package_do_package', d) +} + +FILES_${PN} = "${libdir}/lib*${SOLIBS}" +FILES_${PN}-dev = "${includedir} ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la \ + ${libdir}/*.a ${libdir}/pkgconfig \ + ${datadir}/aclocal ${bindir} ${sbindir}" diff --git a/meta/recipes-graphics/xorg-lib/libxi_1.3.bb b/meta/recipes-graphics/xorg-lib/libxi_1.3.bb new file mode 100644 index 00000000000..bd21eadd136 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxi_1.3.bb @@ -0,0 +1,13 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Input extension library" + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=2aafbfe6127f6f03eb776283e6138cce \ + file://src/XIGetDevFocus.c;endline=23;md5=cdfb0d435a33ec57ea0d1e8e395b729f" + +DEPENDS += "libxext inputproto" +PE = "1" + +XORG_PN = "libXi" + diff --git a/meta/recipes-graphics/xorg-lib/libxi_git.bb b/meta/recipes-graphics/xorg-lib/libxi_git.bb new file mode 100644 index 00000000000..30c1778c3eb --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxi_git.bb @@ -0,0 +1,11 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Input extension library" +DEPENDS += "libxext inputproto" +PE = "1" +PV = "1.2.99.5+gitr${SRCPV}" + +XORG_PN = "libXi" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/lib/${XORG_PN};protocol=git" +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/xorg-lib/libxinerama_1.1.bb b/meta/recipes-graphics/xorg-lib/libxinerama_1.1.bb new file mode 100644 index 00000000000..35a967cff0c --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxinerama_1.1.bb @@ -0,0 +1,14 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Xinerama extension library" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94 \ + file://src/Xinerama.c;beginline=2;endline=25;md5=098e0bc089368a988092b3cbda617a57" + +DEPENDS += "libxext xineramaproto" +PROVIDES = "xinerama" +PR = "r3" +PE = "1" + +XORG_PN = "libXinerama" diff --git a/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.6.bb b/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.6.bb new file mode 100644 index 00000000000..f46c147e4a7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.6.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "X11 keyboard file manipulation library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=aa32e1b87f1da02948ab7b55e129bf5f" + +DEPENDS += "virtual/libx11 kbproto" + +PR = "r0" +PE = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb b/meta/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb new file mode 100644 index 00000000000..9a3f5f1327d --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 keyboard UI presentation library" +LICENSE= "GPL" +DEPENDS += "virtual/libx11 libxt libxkbfile" +PROVIDES = "xkbui" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-lib/libxmu_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxmu_1.0.5.bb new file mode 100644 index 00000000000..761746e2ccd --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxmu_1.0.5.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "X11 miscellaneous utility library" + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=bb8d1df693806ad17c7268086f1d5394" + +DEPENDS += "libxt libxext" +PROVIDES = "xmu" + +PR = "r0" +PE = "1" + +XORG_PN = "libXmu" + +LEAD_SONAME = "libXmu" + +PACKAGES =+ "libxmuu libxmuu-dev" + +FILES_libxmuu = "${libdir}/libXmuu.so.*" +FILES_libxmuu-dev = "${libdir}/libXmuu.so" diff --git a/meta/recipes-graphics/xorg-lib/libxp_1.0.0.bb b/meta/recipes-graphics/xorg-lib/libxp_1.0.0.bb new file mode 100644 index 00000000000..7d3b87473c3 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxp_1.0.0.bb @@ -0,0 +1,15 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X Printing Extension (Xprint) client library" + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=329e54eb6793b3d4830a4f6f1ca16e3f \ + file://src/XpPage.c;beginline=2;endline=37;md5=886b68ac3721003d54abfbd82bafc5ad" + +DEPENDS += "libxext libxau printproto" +PR = "r1" +PE = "1" + +XORG_PN = "libXp" + +CFLAGS_append += " -I ${S}/include/X11/XprintUtil -I ${S}/include/X11/extensions" diff --git a/meta/recipes-graphics/xorg-lib/libxpm_3.5.7.bb b/meta/recipes-graphics/xorg-lib/libxpm_3.5.7.bb new file mode 100644 index 00000000000..75c10bf2c9c --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxpm_3.5.7.bb @@ -0,0 +1,13 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Pixmap library" +LICENSE = "X-BSD" +DEPENDS += "libxext libsm libxt" +PR = "r3" +PE = "1" + +XORG_PN = "libXpm" + +PACKAGES =+ "sxpm cxpm" +FILES_cxpm = "${bindir}/cxpm" +FILES_sxpm = "${bindir}/sxpm" diff --git a/meta/recipes-graphics/xorg-lib/libxprintapputil_1.0.1.bb b/meta/recipes-graphics/xorg-lib/libxprintapputil_1.0.1.bb new file mode 100644 index 00000000000..3a24a888d1a --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxprintapputil_1.0.1.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "Xprint job utility client library" +DEPENDS += "libxp libxt libxprintutil" +PR = "r1" +PE = "1" + +XORG_PN = "libXprintAppUtil" diff --git a/meta/recipes-graphics/xorg-lib/libxprintutil_1.0.1.bb b/meta/recipes-graphics/xorg-lib/libxprintutil_1.0.1.bb new file mode 100644 index 00000000000..327138e7fd2 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxprintutil_1.0.1.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "Xprint printer utility client library" +DEPENDS += "libxp libxt" +PR = "r1" +PE = "1" + +XORG_PN = "libXprintUtil" diff --git a/meta/recipes-graphics/xorg-lib/libxrandr_1.3.0.bb b/meta/recipes-graphics/xorg-lib/libxrandr_1.3.0.bb new file mode 100644 index 00000000000..461dff424bd --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxrandr_1.3.0.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "X11 Resize and Rotate extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=660ef232af253760087c069d76287b85" + +DEPENDS += "randrproto libxrender libxext" + +PR = "r0" +PE = "1" + +XORG_PN = "libXrandr" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxrender_0.9.5.bb b/meta/recipes-graphics/xorg-lib/libxrender_0.9.5.bb new file mode 100644 index 00000000000..662796e90b3 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxrender_0.9.5.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "X11 Rendering Extension client library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" + +DEPENDS += "virtual/libx11 renderproto xproto xdmcp" + +PR = "r0" +PE = "1" + +XORG_PN = "libXrender" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/libxres_1.0.4.bb b/meta/recipes-graphics/xorg-lib/libxres_1.0.4.bb new file mode 100644 index 00000000000..5c8c47ccbf4 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxres_1.0.4.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "X11 Resource extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=8c89441a8df261bdc56587465e13c7fa" + +DEPENDS += "libxext resourceproto" + +PR = "r0" +PE = "1" + +XORG_PN = "libXres" diff --git a/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.0.bb b/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.0.bb new file mode 100644 index 00000000000..ff22c337a0d --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.0.bb @@ -0,0 +1,11 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X Screen Saver extension library" +LICENSE = "GPL" +DEPENDS += "libxext scrnsaverproto" +PROVIDES = "libxss" +RREPLACES = "libxss" +PR = "r1" +PE = "1" + +XORG_PN = "libXScrnSaver" diff --git a/meta/recipes-graphics/xorg-lib/libxt_1.0.8.bb b/meta/recipes-graphics/xorg-lib/libxt_1.0.8.bb new file mode 100644 index 00000000000..a35d03eb037 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxt_1.0.8.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "X11 toolkit intrinsics library" + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=0629f81eb944a4317bc6fe134614769f" + + +DEPENDS += "libsm virtual/libx11 kbproto libxdmcp" +PROVIDES = "xt" + +PR = "r0" +PE = "1" + +XORG_PN = "libXt" + +BBCLASSEXTEND = "native" + +EXTRA_OECONF += "--disable-install-makestrs --disable-xkb" + +do_compile() { + ( + unset CC LD CXX CCLD CFLAGS + oe_runmake -C util 'XT_CFLAGS=' 'CC=${BUILD_CC}' 'LD=${BUILD_LD}' 'CXX=${BUILD_CXX}' 'CCLD=${BUILD_CCLD}' 'CFLAGS=-D_GNU_SOURCE -I${STAGING_INCDIR_NATIVE} ${BUILD_CFLAGS}' 'LDFLAGS=${BUILD_LDFLAGS}' 'CXXFLAGS=${BUILD_CXXFLAGS}' 'CPPFLAGS=${BUILD_CPPFLAGS}' makestrs + ) + if [ "$?" != "0" ]; then + exit 1 + fi + oe_runmake +} diff --git a/meta/recipes-graphics/xorg-lib/libxtrap_1.0.0.bb b/meta/recipes-graphics/xorg-lib/libxtrap_1.0.0.bb new file mode 100644 index 00000000000..7a25ae5bce2 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxtrap_1.0.0.bb @@ -0,0 +1,8 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 event trapping extension library" +DEPENDS += "libxt trapproto libxext" +PR = "r1" +PE = "1" + +XORG_PN = "libXTrap" diff --git a/meta/recipes-graphics/xorg-lib/libxtst_1.1.0.bb b/meta/recipes-graphics/xorg-lib/libxtst_1.1.0.bb new file mode 100644 index 00000000000..bd18fb3c6b7 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxtst_1.1.0.bb @@ -0,0 +1,14 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X Test Extension: client side library" + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=cba677ca25c42ad29ee8ff351b50ece8 \ + file://src/XTest.c;beginline=2;endline=32;md5=1491d278aeb574e84c5235eb44cdac74" + +DEPENDS += "libxext recordproto inputproto libxi" +PROVIDES = "xtst" +PR = "r2" +PE = "1" + +XORG_PN = "libXtst" diff --git a/meta/recipes-graphics/xorg-lib/libxv_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxv_1.0.5.bb new file mode 100644 index 00000000000..d6e5777bccc --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxv_1.0.5.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "X11 Video extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=916ffd3d79baef9fb56d2c2af28f93f2" + +DEPENDS += "libxext videoproto" + +PR = "r0" + +XORG_PN = "libXv" diff --git a/meta/recipes-graphics/xorg-lib/libxvmc_1.0.5.bb b/meta/recipes-graphics/xorg-lib/libxvmc_1.0.5.bb new file mode 100644 index 00000000000..7a8013fa533 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxvmc_1.0.5.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "X Video Motion Compensation extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94 \ + file://src/XvMCWrapper.c;endline=26;md5=5151daa8172a3f1bb0cb0e0ff157d9de" + +DEPENDS += "libxext libxv videoproto" + +PR = "r0" +PE = "1" + +XORG_PN = "libXvMC" diff --git a/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.1.bb b/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.1.bb new file mode 100644 index 00000000000..6d5bd6aaa8d --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.1.bb @@ -0,0 +1,10 @@ +require xorg-lib-common.inc + +DESCRIPTION = "X11 Direct Graphics Access extension library" +DEPENDS += "libxext xf86dgaproto" +PR = "r1" +PE = "1" + +XORG_PN = "libXxf86dga" + +LIC_FILES_CHKSUM = "file://COPYING;md5=978fbe536ab97ed49f45ba81159fe4b3" diff --git a/meta/recipes-graphics/xorg-lib/libxxf86misc_1.0.2.bb b/meta/recipes-graphics/xorg-lib/libxxf86misc_1.0.2.bb new file mode 100644 index 00000000000..8284dac231a --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxxf86misc_1.0.2.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "X11 XFree86 miscellaneous extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=27c91ecc435bd3d2bfad868914c94b45" + +DEPENDS += "libxext xf86miscproto" +PROVIDES = "xxf86misc" + +PR = "r0" +PE = "1" + +XORG_PN = "libXxf86misc" diff --git a/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.0.bb b/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.0.bb new file mode 100644 index 00000000000..7dc4a3a12b5 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxxf86vm_1.1.0.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "X11 XFree86 video mode extension library" + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=de77b7cff98cf5d7a9a148069ebb4e1a" + +DEPENDS += "libxext xf86vidmodeproto" + +PR = "r0" +PE = "1" + +XORG_PN = "libXxf86vm" diff --git a/meta/recipes-graphics/xorg-lib/pixman_0.18.2.bb b/meta/recipes-graphics/xorg-lib/pixman_0.18.2.bb new file mode 100644 index 00000000000..3bc1f0202f4 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/pixman_0.18.2.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "Library for lowlevel pixel operations" + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style & Public Domain" +LIC_FILES_CHKSUM = "file://COPYING;md5=fea989a44fb012b5e79584972a863d22 \ + file://pixman/pixman-matrix.c;endline=25;md5=ba6e8769bfaaee2c41698755af04c4be \ + file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ + file://pixman/pixman-x64-mmx-emulation.h;beginline=4;endline=9;md5=4e32716f2efaa6c4659222667c339bb8" + +DEPENDS = "virtual/libx11" + +PR="r0" + +EXTRA_OECONF="--disable-gtk" diff --git a/meta/recipes-graphics/xorg-lib/xkeyboard-config_1.9.bb b/meta/recipes-graphics/xorg-lib/xkeyboard-config_1.9.bb new file mode 100644 index 00000000000..0e59bd506fd --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/xkeyboard-config_1.9.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Keyboard configuration database for X Window" +HOMEPAGE = "http://freedesktop.org/wiki/Software/XKeyboardConfig" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config" + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=0e7f21ca7db975c63467d2e7624a12f9" + +SRC_URI = "http://people.freedesktop.org/~svu/xkeyboard-config-${PV}.tar.bz2" +SECTION = "x11/libs" +DEPENDS = "intltool xkbcomp-native glib-2.0" + +PR = "r0" + +EXTRA_OECONF = "--with-xkb-rules-symlink=xorg" + +RDEPENDS_${PN} += "xkbcomp" +FILES_${PN} += "${datadir}/X11/xkb" + +inherit autotools pkgconfig + +do_install_append () { + install -d ${D}/usr/share/X11/xkb/compiled + cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg +} diff --git a/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc b/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc new file mode 100644 index 00000000000..4ed8c866ea6 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc @@ -0,0 +1,16 @@ +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" + +SECTION = "x11/libs" +LICENSE = "MIT-X" +DEPENDS = "util-macros" + +XORG_PN = "${BPN}" + +SRC_URI = "${XORG_MIRROR}/individual/lib/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--enable-malloc0returnsnull" diff --git a/meta/recipes-graphics/xorg-lib/xtrans/abstract_socket_fix.patch b/meta/recipes-graphics/xorg-lib/xtrans/abstract_socket_fix.patch new file mode 100644 index 00000000000..197da0735db --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/xtrans/abstract_socket_fix.patch @@ -0,0 +1,58 @@ +From 556a351de83fc6f401b02213dae95731553c216d Mon Sep 17 00:00:00 2001 +From: Loïc Minier <lool@dooz.org> +Date: Mon, 24 Mar 2008 19:38:27 +0000 +Subject: Bug #10489: Don't retry unix socket connect()s on ENOENT. + +If the socket isn't there, it's not gonna magically appear. Either it's +a server socket and you should have just waited for the SIGUSR1 from the +server, or it's a stale reference to an ICE socket. + +However, do retry once, so fallback from abstract to filesystem namespace +works. + +Originally Debian bug #385976. +--- +diff --git a/Xtranssock.c b/Xtranssock.c +index 8a7d2ec..da4afe9 100644 +--- a/Xtranssock.c ++++ b/Xtranssock.c +@@ -2146,8 +2146,13 @@ TRANS(SocketUNIXConnect) (XtransConnInfo ciptr, char *host, char *port) + errno = olderrno; + + /* +- * If the error was ENOENT, the server may be starting up +- * and we should try again. ++ * If the error was ENOENT, the server may be starting up; we used ++ * to suggest to try again in this case with ++ * TRANS_TRY_CONNECT_AGAIN, but this introduced problems for ++ * processes still referencing stale sockets in their environment. ++ * Hence, we now return a hard error, TRANS_CONNECT_FAILED, and it ++ * is suggested that higher level stacks handle retries on their ++ * level when they face a slow starting server. + * + * If the error was EWOULDBLOCK or EINPROGRESS then the socket + * was non-blocking and we should poll using select +@@ -2161,14 +2166,14 @@ TRANS(SocketUNIXConnect) (XtransConnInfo ciptr, char *host, char *port) + else if (olderrno == EINTR) + return TRANS_TRY_CONNECT_AGAIN; + else if (olderrno == ENOENT) { +- /* +- * If opening as abstract socket failed, try again "normally" +- */ +- if (abstract) ++ /* If opening as abstract socket failed, try again normally */ ++ if (abstract) { + ciptr->transptr->flags &= ~(TRANS_ABSTRACT); +- return TRANS_TRY_CONNECT_AGAIN; +- } +- else { ++ return TRANS_TRY_CONNECT_AGAIN; ++ } else { ++ return TRANS_CONNECT_FAILED; ++ } ++ } else { + PRMSG (2,"SocketUNIXConnect: Can't connect: errno = %d\n", + EGET(),0, 0); + +-- +cgit v0.7.2-37-g538c diff --git a/meta/recipes-graphics/xorg-lib/xtrans_1.2.5.bb b/meta/recipes-graphics/xorg-lib/xtrans_1.2.5.bb new file mode 100644 index 00000000000..52609b7e2b9 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/xtrans_1.2.5.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "network API translation layer to insulate X applications and \ +libraries from OS network vageries." + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=e334229ea6378ccb4a6202d7b715831c" + +PE = "1" +PR = "r0" + +RDEPENDS_${PN}-dev = "" +DEPENDS += "gettext" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/applewmproto_1.4.1.bb b/meta/recipes-graphics/xorg-proto/applewmproto_1.4.1.bb new file mode 100644 index 00000000000..9f09fff7b7c --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/applewmproto_1.4.1.bb @@ -0,0 +1,4 @@ +require xorg-proto-common.inc + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/bigreqsproto_1.1.0.bb b/meta/recipes-graphics/xorg-proto/bigreqsproto_1.1.0.bb new file mode 100644 index 00000000000..0ea0729bcfe --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/bigreqsproto_1.1.0.bb @@ -0,0 +1,12 @@ +require xorg-proto-common.inc + +PR = "r2" +PE = "1" + +DEPENDS += "gettext" + +DESCRIPTION = "X.Org BigReqs extension headers" + +BBCLASSEXTEND = "native nativesdk" + +LIC_FILES_CHKSUM = "file://COPYING;md5=b12715630da6f268d0d3712ee1a504f4" diff --git a/meta/recipes-graphics/xorg-proto/calibrateproto/fix.patch b/meta/recipes-graphics/xorg-proto/calibrateproto/fix.patch new file mode 100644 index 00000000000..0c85cb0ccf0 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/calibrateproto/fix.patch @@ -0,0 +1,40 @@ +Add missing length fields to the replies. Without these, sanity checking in recent X +breaks things. + +RP 11/2/10 + + +Index: git/xcalibrateproto.h +=================================================================== +--- git.orig/xcalibrateproto.h 2010-02-11 11:47:45.711985932 +0000 ++++ git/xcalibrateproto.h 2010-02-11 11:40:21.000000000 +0000 +@@ -67,13 +67,13 @@ + BYTE type; /* X_Reply */ + BYTE pad1; + CARD16 sequenceNumber B16; ++ CARD32 length; + CARD32 status; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +- CARD32 pad7 B32; + } xXCalibrateRawModeReply; + + #define sz_xXCalibrateRawModeReply 32 +@@ -92,13 +92,13 @@ + BYTE type; /* X_Reply */ + BYTE pad1; + CARD16 sequenceNumber B16; ++ CARD32 length; + CARD32 x; + CARD32 y; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +- CARD32 pad6 B32; + } xXCalibrateScreenToCoordReply; + + #define sz_xXCalibrateScreenToCoordReply 32 diff --git a/meta/recipes-graphics/xorg-proto/calibrateproto_git.bb b/meta/recipes-graphics/xorg-proto/calibrateproto_git.bb new file mode 100644 index 00000000000..9fd5c3fe0b7 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/calibrateproto_git.bb @@ -0,0 +1,14 @@ +require xorg-proto-common.inc + +DESCRIPTION = "Touchscreen calibration protocol" + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://xcalibratewire.h;endline=23;md5=7f86ef7b03cce6c4c9ebd59d20ca485f \ + file://xcalibrateproto.h;endline=23;md5=e4490491edcc171ca24f98569ee580db" + +PV = "0.0+git${SRCPV}" +PR = "r2" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/proto/calibrateproto;protocol=git \ + file://fix.patch;apply=yes" +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/xorg-proto/compositeproto_0.4.bb b/meta/recipes-graphics/xorg-proto/compositeproto_0.4.bb new file mode 100644 index 00000000000..191053b1c2d --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/compositeproto_0.4.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=f8cdfa47489609f305b91521f3a8803f \ + file://composite.h;endline=43;md5=11420a347713de702a1fe60949085464" + +CONFLICTS = "compositeext" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/damageproto_1.2.0.bb b/meta/recipes-graphics/xorg-proto/damageproto_1.2.0.bb new file mode 100644 index 00000000000..af61d03afbb --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/damageproto_1.2.0.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=d5f5a2de65c3a84cbde769f07a769608 \ + file://damagewire.h;endline=23;md5=4a4501a592dbc7de5ce89255e50d0296" + +CONFLICTS = "damageext" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/dmxproto_2.3.bb b/meta/recipes-graphics/xorg-proto/dmxproto_2.3.bb new file mode 100644 index 00000000000..635c63f9971 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/dmxproto_2.3.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=a3c3499231a8035efd0e004cfbd3b72a \ + file://dmxproto.h;endline=32;md5=ab8509955c3dd4c65fac728e1b367bc4" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/dri2proto_2.3.bb b/meta/recipes-graphics/xorg-proto/dri2proto_2.3.bb new file mode 100644 index 00000000000..048c27f559f --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/dri2proto_2.3.bb @@ -0,0 +1,9 @@ +DESCRIPTION = "DRI2 extension headers" + +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2e396fa91834f8786032cad2da5638f3 \ + file://dri2proto.h;endline=31;md5=22f28bf68d01b533f26195e94b3ed8ca" + +PR = "r0" diff --git a/meta/recipes-graphics/xorg-proto/dri2proto_git.bb b/meta/recipes-graphics/xorg-proto/dri2proto_git.bb new file mode 100644 index 00000000000..a5ad7d09190 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/dri2proto_git.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "DRI2 extension headers" + +require xorg-proto-common.inc + +PV = "1.99.3+git${SRCPV}" +PR = "r2" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/proto/dri2proto;protocol=git" + +S = "${WORKDIR}/git" + diff --git a/meta/recipes-graphics/xorg-proto/evieext_1.1.0.bb b/meta/recipes-graphics/xorg-proto/evieext_1.1.0.bb new file mode 100644 index 00000000000..16f9039b9da --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/evieext_1.1.0.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +DESCRIPTION = "X EVIE extension headers" + +PR = "r1" +PE = "1" + +LIC_FILES_CHKSUM = "file://COPYING;md5=6cf85dc8217152304ac976db1e240ebe" diff --git a/meta/recipes-graphics/xorg-proto/fixesproto_4.1.1.bb b/meta/recipes-graphics/xorg-proto/fixesproto_4.1.1.bb new file mode 100644 index 00000000000..cb709f78418 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/fixesproto_4.1.1.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=ae2c93d7226d1ed33287c3924ca61816 \ + file://xfixesproto.h;endline=41;md5=fa6bf4d92ae4dd0c1cac511105e541d2" + +CONFLICTS = "fixesext" +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/fontcacheproto_0.1.3.bb b/meta/recipes-graphics/xorg-proto/fontcacheproto_0.1.3.bb new file mode 100644 index 00000000000..302e84a5672 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/fontcacheproto_0.1.3.bb @@ -0,0 +1,10 @@ +require xorg-proto-common.inc + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=ba9fcd8fe6d09af9f733daccc1a21857 \ + file://fontcacheP.h;endline=28;md5=85c80bfa96c802ee85a570862ee60214" + +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-proto/fontsproto_2.1.0.bb b/meta/recipes-graphics/xorg-proto/fontsproto_2.1.0.bb new file mode 100644 index 00000000000..74b2fed79dd --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/fontsproto_2.1.0.bb @@ -0,0 +1,10 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=c3e48aa9ce868c8e90f0401db41c11a2 \ + file://FSproto.h;endline=44;md5=d2e58e27095e5ea7d4ad456ccb91986c" + +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-proto/glproto_1.4.11.bb b/meta/recipes-graphics/xorg-proto/glproto_1.4.11.bb new file mode 100644 index 00000000000..c1ade41f2e4 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/glproto_1.4.11.bb @@ -0,0 +1,10 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94 \ + file://glxproto.h;beginline=4;endline=32;md5=6b79c570f644363b356456e7d44471d9" + +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/inputproto_2.0.bb b/meta/recipes-graphics/xorg-proto/inputproto_2.0.bb new file mode 100644 index 00000000000..f3332a8ca91 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/inputproto_2.0.bb @@ -0,0 +1,12 @@ +require xorg-proto-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=b9f79c119df756aeffcb89ec96716a9e \ + file://XI2proto.h;endline=48;md5=1ac1581e61188da2885cc14ff49b20be" + +PR = "r2" +PE = "1" + +inherit gettext + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/inputproto_git.bb b/meta/recipes-graphics/xorg-proto/inputproto_git.bb new file mode 100644 index 00000000000..a97fb0bfab4 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/inputproto_git.bb @@ -0,0 +1,12 @@ +require xorg-proto-common.inc + +PR = "r1" +PE = "1" +PV = "1.9.99.12+git${SRCPV}" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/proto/inputproto;protocol=git" +S = "${WORKDIR}/git" + +inherit gettext + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/kbproto_1.0.4.bb b/meta/recipes-graphics/xorg-proto/kbproto_1.0.4.bb new file mode 100644 index 00000000000..b49d5a69214 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/kbproto_1.0.4.bb @@ -0,0 +1,12 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=7dd6ea99e2a83a552c02c80963623c38 \ + file://XKBproto.h;beginline=2;endline=26;md5=5744eeff407aeb6e7a1346eebab486a2" + +PR = "r2" +PE = "1" + +DEPENDS += "gettext" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/printproto_1.0.4.bb b/meta/recipes-graphics/xorg-proto/printproto_1.0.4.bb new file mode 100644 index 00000000000..194abbafc22 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/printproto_1.0.4.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=a2363c155fd3749a8cf436ef56c3070f \ + file://Print.h;beginline=2;endline=59;md5=1a2ee3cbfe3e38e136ff1b8477b51f4a" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/randrproto_1.3.1.bb b/meta/recipes-graphics/xorg-proto/randrproto_1.3.1.bb new file mode 100644 index 00000000000..725be1d7021 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/randrproto_1.3.1.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=5fa3f85d9eefaa3a945071485be11343 \ + file://randrproto.h;endline=30;md5=3885957c6048fdf3310ac8ba54ca2c3f" + +CONFLICTS = "randrext" +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/recordproto_1.14.bb b/meta/recipes-graphics/xorg-proto/recordproto_1.14.bb new file mode 100644 index 00000000000..abb91d769be --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/recordproto_1.14.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=575827a0f554bbed332542976d5f3d40 \ + file://recordproto.h;endline=19;md5=1cbb0dd45a0b060ff833901620a3e738" + +CONFLICTS = "recordext" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/renderproto_0.11.bb b/meta/recipes-graphics/xorg-proto/renderproto_0.11.bb new file mode 100644 index 00000000000..afdbb050905 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/renderproto_0.11.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=f826d99765196352e6122a406cf0d024 \ + file://renderproto.h;beginline=4;endline=24;md5=3e5e2851dad240b0a3a27c4776b4fd1f" + +CONFLICTS = "renderext" +PR = "r1" +PE = "1" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/resourceproto_1.1.0.bb b/meta/recipes-graphics/xorg-proto/resourceproto_1.1.0.bb new file mode 100644 index 00000000000..702e8f36f23 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/resourceproto_1.1.0.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6" + +CONFLICTS = "resourceext" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/scrnsaverproto_1.2.0.bb b/meta/recipes-graphics/xorg-proto/scrnsaverproto_1.2.0.bb new file mode 100644 index 00000000000..cd992516e81 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/scrnsaverproto_1.2.0.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=eed49b78b15b436c933b6b8b054e3901 \ + file://saverproto.h;endline=26;md5=a84c0637305159f3c0ab173aaeede48d" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/trapproto_3.4.3.bb b/meta/recipes-graphics/xorg-proto/trapproto_3.4.3.bb new file mode 100644 index 00000000000..c152be703c0 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/trapproto_3.4.3.bb @@ -0,0 +1,7 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=0a984c8e242256a12f3b8dac085893db" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/videoproto_2.3.0.bb b/meta/recipes-graphics/xorg-proto/videoproto_2.3.0.bb new file mode 100644 index 00000000000..baedc281c93 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/videoproto_2.3.0.bb @@ -0,0 +1,7 @@ +require xorg-proto-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=59d089e37bf57b5206602da38f58ca5d" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/windowswmproto_1.0.4.bb b/meta/recipes-graphics/xorg-proto/windowswmproto_1.0.4.bb new file mode 100644 index 00000000000..9f09fff7b7c --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/windowswmproto_1.0.4.bb @@ -0,0 +1,4 @@ +require xorg-proto-common.inc + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xcmiscproto_1.2.0.bb b/meta/recipes-graphics/xorg-proto/xcmiscproto_1.2.0.bb new file mode 100644 index 00000000000..1ed5a5f314e --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xcmiscproto_1.2.0.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=09d83047c15994e05db29b423ed6662e" + +PR = "r2" +PE = "1" + +DEPENDS += "gettext" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/xextproto_7.1.1.bb b/meta/recipes-graphics/xorg-proto/xextproto_7.1.1.bb new file mode 100644 index 00000000000..157f070309c --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xextproto_7.1.1.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=86f273291759d0ba2a22585cd1c06c53" + +PR = "r0" +PE = "1" + +inherit gettext + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/xf86bigfontproto_1.2.0.bb b/meta/recipes-graphics/xorg-proto/xf86bigfontproto_1.2.0.bb new file mode 100644 index 00000000000..f038a1c2907 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86bigfontproto_1.2.0.bb @@ -0,0 +1,11 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6" + +PR = "r1" +PE = "1" + +DEPENDS += "gettext" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/xf86dgaproto_2.1.bb b/meta/recipes-graphics/xorg-proto/xf86dgaproto_2.1.bb new file mode 100644 index 00000000000..c400193a069 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86dgaproto_2.1.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6" + +CONFLICTS = "xxf86dgaext" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xf86driproto_2.1.0.bb b/meta/recipes-graphics/xorg-proto/xf86driproto_2.1.0.bb new file mode 100644 index 00000000000..6f31845b86e --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86driproto_2.1.0.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=4641deddaa80fe7ca88e944e1fd94a94 \ + file://xf86driproto.h;endline=35;md5=42be3d8e6d429ab79172572bb0cff544" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xf86miscproto_0.9.3.bb b/meta/recipes-graphics/xorg-proto/xf86miscproto_0.9.3.bb new file mode 100644 index 00000000000..9ea07806f2e --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86miscproto_0.9.3.bb @@ -0,0 +1,7 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xf86rushproto_1.1.2.bb b/meta/recipes-graphics/xorg-proto/xf86rushproto_1.1.2.bb new file mode 100644 index 00000000000..9ea07806f2e --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86rushproto_1.1.2.bb @@ -0,0 +1,7 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e01e66e4b317088cf869bc98e6af4fb6" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xf86vidmodeproto_2.3.bb b/meta/recipes-graphics/xorg-proto/xf86vidmodeproto_2.3.bb new file mode 100644 index 00000000000..ccbbb36f154 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xf86vidmodeproto_2.3.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=499be2ff387a42f84628c35f311f1502" + +CONFLICTS = "xxf86vmext" + +PR = "r0" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xineramaproto_1.2.bb b/meta/recipes-graphics/xorg-proto/xineramaproto_1.2.bb new file mode 100644 index 00000000000..d053dbbcd37 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xineramaproto_1.2.bb @@ -0,0 +1,8 @@ +require xorg-proto-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=3e397a5326c83d5d0ebf5b3f87163ac6 \ + file://panoramiXproto.h;endline=24;md5=098e0bc089368a988092b3cbda617a57" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc b/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc new file mode 100644 index 00000000000..92aa1fe6d3d --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xorg-proto-common.inc @@ -0,0 +1,20 @@ +DESCRIPTION = "X protocol headers: ${XORG_PN}" +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" + +SECTION = "x11/libs" +LICENSE = "MIT-X" + +XORG_PN = "${BPN}" + +SRC_URI = "${XORG_MIRROR}/individual/proto/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +DEPENDS = "util-macros" + +inherit autotools pkgconfig + +# ${PN} is empty so we need to tweak -dev and -dbg package dependencies +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})" diff --git a/meta/recipes-graphics/xorg-proto/xproto_7.0.17.bb b/meta/recipes-graphics/xorg-proto/xproto_7.0.17.bb new file mode 100644 index 00000000000..c145b60b23e --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xproto_7.0.17.bb @@ -0,0 +1,9 @@ +require xorg-proto-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=70c104816b85de375ba1fc09199d0e69" + +PR = "r0" +PE = "1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb b/meta/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb new file mode 100644 index 00000000000..9c3d9efa714 --- /dev/null +++ b/meta/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb @@ -0,0 +1,5 @@ +require xorg-proto-common.inc + +PROVIDES="xproxymngproto" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-util/gccmakedep_1.0.2.bb b/meta/recipes-graphics/xorg-util/gccmakedep_1.0.2.bb new file mode 100644 index 00000000000..b1035676cae --- /dev/null +++ b/meta/recipes-graphics/xorg-util/gccmakedep_1.0.2.bb @@ -0,0 +1,8 @@ +require xorg-util-common.inc + +DESCRIPTION = "create dependencies in makefiles using 'gcc -M'" +DEPENDS = "util-macros" +RDEPENDS = "gcc" + +PR = "r2" +PE = "1" diff --git a/meta/recipes-graphics/xorg-util/imake_1.0.2.bb b/meta/recipes-graphics/xorg-util/imake_1.0.2.bb new file mode 100644 index 00000000000..e533ece461f --- /dev/null +++ b/meta/recipes-graphics/xorg-util/imake_1.0.2.bb @@ -0,0 +1,8 @@ +require xorg-util-common.inc + +DESCRIPTION = "C preprocessor interface to the make utility" +DEPENDS = "util-macros" +RDEPENDS = "perl xproto" + +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-util/lndir_1.0.1.bb b/meta/recipes-graphics/xorg-util/lndir_1.0.1.bb new file mode 100644 index 00000000000..b7bd0ad54a3 --- /dev/null +++ b/meta/recipes-graphics/xorg-util/lndir_1.0.1.bb @@ -0,0 +1,6 @@ +require xorg-util-common.inc + +DESCRIPTION = "create a shadow directory of symbolic links to another directory tree" +DEPENDS += "xproto util-macros" +PR = "r1" +PE = "1" diff --git a/meta/recipes-graphics/xorg-util/makedepend_1.0.2.bb b/meta/recipes-graphics/xorg-util/makedepend_1.0.2.bb new file mode 100644 index 00000000000..7d6a5355a6a --- /dev/null +++ b/meta/recipes-graphics/xorg-util/makedepend_1.0.2.bb @@ -0,0 +1,8 @@ +require xorg-util-common.inc + +DESCRIPTION = "create dependencies in makefiles" +DEPENDS = "xproto util-macros" +PR = "r2" +PE = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-graphics/xorg-util/util-macros/xaw.patch b/meta/recipes-graphics/xorg-util/util-macros/xaw.patch new file mode 100644 index 00000000000..8b39869cc1d --- /dev/null +++ b/meta/recipes-graphics/xorg-util/util-macros/xaw.patch @@ -0,0 +1,14 @@ +Index: util-macros-1.2.1/xorg-macros.m4.in +=================================================================== +--- util-macros-1.2.1.orig/xorg-macros.m4.in 2009-01-15 13:49:56.000000000 +0000 ++++ util-macros-1.2.1/xorg-macros.m4.in 2009-01-15 13:52:22.000000000 +0000 +@@ -456,3 +456,9 @@ + fi + AC_SUBST(CWARNFLAGS) + ]) # XORG_CWARNFLAGS ++ ++AC_DEFUN([XAW_CHECK_XPRINT_SUPPORT], [ ++PKG_CHECK_MODULES(TMP_XAW, xaw7) ++$1_CFLAGS=$TMP_XAW_CFLAGS ++$1_LIBS=$TMP_XAW_LIBS ++]) diff --git a/meta/recipes-graphics/xorg-util/util-macros_1.10.0.bb b/meta/recipes-graphics/xorg-util/util-macros_1.10.0.bb new file mode 100644 index 00000000000..d3bf613a630 --- /dev/null +++ b/meta/recipes-graphics/xorg-util/util-macros_1.10.0.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "X autotools macros" + +require xorg-util-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=b8b2965be9997891cf7ddccdfb242ca8" + +PE = "1" +PR = "r0" + +# ${PN} is empty so we need to tweak -dev and -dbg package dependencies +DEPENDS = "gettext" +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-util/xorg-cf-files_1.0.3.bb b/meta/recipes-graphics/xorg-util/xorg-cf-files_1.0.3.bb new file mode 100644 index 00000000000..7c3fb8d7e95 --- /dev/null +++ b/meta/recipes-graphics/xorg-util/xorg-cf-files_1.0.3.bb @@ -0,0 +1,8 @@ +require xorg-util-common.inc + +DESCRIPTION = "X Window System CF files" + +PR = "r1" +PE = "1" + +FILES_${PN} += " /usr/lib/X11/config" diff --git a/meta/recipes-graphics/xorg-util/xorg-util-common.inc b/meta/recipes-graphics/xorg-util/xorg-util-common.inc new file mode 100644 index 00000000000..18d022c49fc --- /dev/null +++ b/meta/recipes-graphics/xorg-util/xorg-util-common.inc @@ -0,0 +1,13 @@ +HOMEPAGE = "http://www.x.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg" + +SECTION = "x11/utils" +LICENSE = "MIT-X" + +XORG_PN = "${BPN}" + +SRC_URI = "${XORG_MIRROR}/individual/util/${XORG_PN}-${PV}.tar.gz" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig diff --git a/meta/recipes-graphics/xorg-xserver/files/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/files/macro_tweak.patch new file mode 100644 index 00000000000..6998adffe9c --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/files/macro_tweak.patch @@ -0,0 +1,18 @@ +Index: xorg-server-1.5.0/xorg-server.m4 +=================================================================== +--- xorg-server-1.5.0.orig/xorg-server.m4 2007-05-29 20:36:51.000000000 +0100 ++++ xorg-server-1.5.0/xorg-server.m4 2008-11-04 23:56:55.000000000 +0000 +@@ -28,9 +28,12 @@ + # Checks for the $1 define in xorg-server.h (from the sdk). If it + # is defined, then add $1 to $REQUIRED_MODULES. + ++m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR) ++ + AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ ++ PKG_PROG_PKG_CONFIG + SAVE_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -I`pkg-config --variable=sdkdir xorg-server`" ++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`pkg-config --variable=sdkdir xorg-server`" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include "xorg-server.h" + #if !defined $1 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-builtin-fonts.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-builtin-fonts.patch new file mode 100644 index 00000000000..13a6c2c9545 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-builtin-fonts.patch @@ -0,0 +1,12 @@ +--- xorg-server-X11R7.1-1.1.0/dix/dixfonts.c.orig 2006-06-08 14:49:12.158684250 +0200 ++++ xorg-server-X11R7.1-1.1.0/dix/dixfonts.c 2006-06-08 14:49:52.493205000 +0200 +@@ -52,8 +52,8 @@ + /* $Xorg: dixfonts.c,v 1.4 2000/08/17 19:48:18 cpqbld Exp $ */ + + #define NEED_REPLIES + #ifdef HAVE_DIX_CONFIG_H +-#include <dix-config.h> ++#include <kdrive-config.h> + #endif + + #include <X11/X.h> diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-epson.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-epson.patch new file mode 100644 index 00000000000..8ec3a37c780 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-epson.patch @@ -0,0 +1,11 @@ +Index: xorg-server-1.2.0/hw/kdrive/Makefile.am +=================================================================== +--- xorg-server-1.2.0.orig/hw/kdrive/Makefile.am 2007-03-28 17:11:38.000000000 +0200 ++++ xorg-server-1.2.0/hw/kdrive/Makefile.am 2007-03-28 17:12:28.000000000 +0200 +@@ -1,5 +1,5 @@ + if KDRIVEFBDEV +-FBDEV_SUBDIRS = fbdev ++FBDEV_SUBDIRS = fbdev epson + endif + + if KDRIVEIMAGEON diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-tslib.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-tslib.patch new file mode 100644 index 00000000000..9a59530ed33 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-tslib.patch @@ -0,0 +1,12 @@ +Index: xorg-server-1.2.0/configure.ac +=================================================================== +--- xorg-server-1.2.0.orig/configure.ac 2007-03-29 13:28:10.000000000 +0200 ++++ xorg-server-1.2.0/configure.ac 2007-03-29 13:28:35.000000000 +0200 +@@ -1517,6 +1517,7 @@ + AC_MSG_ERROR([tslib must be installed to build the tslib driver. See http://tslib.berlios.de/]) + fi + AC_DEFINE(TSLIB, 1, [Have tslib support]) ++ AC_DEFINE(TOUCHSCREEN, 1, [Have touchscreen support]) + fi + + # damage shadow extension glx (NOTYET) fb mi diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-xcalibrate.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-xcalibrate.patch new file mode 100644 index 00000000000..5a971002cda --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/enable-xcalibrate.patch @@ -0,0 +1,110 @@ +--- + Xext/Makefile.am | 6 ++++++ + configure.ac | 11 +++++++++-- + include/kdrive-config.h.in | 3 +++ + mi/miinitext.c | 6 ++++++ + 4 files changed, 24 insertions(+), 2 deletions(-) + +Index: xorg-server-1.3.0.0/mi/miinitext.c +=================================================================== +--- xorg-server-1.3.0.0.orig/mi/miinitext.c 2006-11-16 18:01:26.000000000 +0000 ++++ xorg-server-1.3.0.0/mi/miinitext.c 2008-01-11 13:45:57.000000000 +0000 +@@ -372,6 +372,9 @@ extern void ResExtensionInit(INITARGS); + #ifdef DMXEXT + extern void DMXExtensionInit(INITARGS); + #endif ++#ifdef XCALIBRATE ++extern void XCalibrateExtensionInit(INITARGS); ++#endif + #ifdef XEVIE + extern void XevieExtensionInit(INITARGS); + #endif +@@ -663,6 +666,9 @@ InitExtensions(argc, argv) + #ifdef DAMAGE + if (!noDamageExtension) DamageExtensionInit(); + #endif ++#ifdef XCALIBRATE ++ XCalibrateExtensionInit (); ++#endif + } + + void +Index: xorg-server-1.3.0.0/configure.ac +=================================================================== +--- xorg-server-1.3.0.0.orig/configure.ac 2008-01-11 13:45:57.000000000 +0000 ++++ xorg-server-1.3.0.0/configure.ac 2008-01-11 13:45:58.000000000 +0000 +@@ -421,6 +421,7 @@ AC_ARG_ENABLE(xf86vidmode, AS_HELP_ST + AC_ARG_ENABLE(xf86misc, AS_HELP_STRING([--disable-xf86misc], [Build XF86Misc extension (default: enabled)]), [XF86MISC=$enableval], [XF86MISC=yes]) + AC_ARG_ENABLE(xace, AS_HELP_STRING([--disable-xace], [Build X-ACE extension (default: enabled)]), [XACE=$enableval], [XACE=yes]) + AC_ARG_ENABLE(xcsecurity, AS_HELP_STRING([--disable-xcsecurity], [Build Security extension (default: enabled)]), [XCSECURITY=$enableval], [XCSECURITY=$XACE]) ++AC_ARG_ENABLE(xcalibrate, AS_HELP_STRING([--enable-xcalibrate], [Build XCalibrate extension (default: disabled)]), [XCALIBRATE=$enableval], [XCALIBRATE=no]) + AC_ARG_ENABLE(appgroup, AS_HELP_STRING([--disable-appgroup], [Build XC-APPGROUP extension (default: enabled)]), [APPGROUP=$enableval], [APPGROUP=$XCSECURITY]) + AC_ARG_ENABLE(xcalibrate, AS_HELP_STRING([--enable-xcalibrate], [Build XCalibrate extension (default: disabled)]), [XCALIBRATE=$enableval], [XCALIBRATE=no]) + AC_ARG_ENABLE(tslib, AS_HELP_STRING([--enable-tslib], [Build kdrive tslib touchscreen support (default: disabled)]), [TSLIB=$enableval], [TSLIB=no]) +@@ -653,6 +654,12 @@ if test "x$XCSECURITY" = xyes; then + AC_DEFINE(XCSECURITY, 1, [Build Security extension]) + fi + ++AM_CONDITIONAL(XCALIBRATE, [test "x$XCALIBRATE" = xyes]) ++if test "x$XCALIBRATE" = xyes; then ++ AC_DEFINE(XCALIBRATE, 1, [Build XCalibrate extension]) ++ REQUIRED_MODULES="$REQUIRED_MODULES xcalibrateproto" ++fi ++ + AM_CONDITIONAL(XEVIE, [test "x$XEVIE" = xyes]) + if test "x$XEVIE" = xyes; then + AC_DEFINE(XEVIE, 1, [Build XEvIE extension]) +@@ -1519,7 +1526,7 @@ if test "$KDRIVE" = yes; then + + # tslib... + if test "x$TSLIB" = xyes; then +- PKG_CHECK_MODULES([TSLIB], [tslib-0.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"]) ++ PKG_CHECK_MODULES([TSLIB], [tslib-1.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"]) + if test "x$HAVE_TSLIB" = xno; then + AC_MSG_ERROR([tslib must be installed to build the tslib driver. See http://tslib.berlios.de/]) + fi +@@ -1547,7 +1554,7 @@ if test "$KDRIVE" = yes; then + ;; + esac + KDRIVE_STUB_LIB='$(top_builddir)/hw/kdrive/src/libkdrivestubs.a' +- KDRIVE_LIBS="$DIX_LIB $KDRIVE_LIB $KDRIVE_OS_LIB $KDRIVE_PURE_LIBS $KDRIVE_STUB_LIB $TSLIB_LIBS" ++ KDRIVE_LIBS="$DIX_LIB $KDRIVE_LIB $KDRIVE_PURE_LIBS $KDRIVE_OS_LIB $KDRIVE_STUB_LIB $TSLIB_LIBS" + + # check if we can build Xephyr + PKG_CHECK_MODULES(XEPHYR, x11 xext xfont xau xdmcp, [xephyr="yes"], [xephyr="no"]) +Index: xorg-server-1.3.0.0/include/kdrive-config.h.in +=================================================================== +--- xorg-server-1.3.0.0.orig/include/kdrive-config.h.in 2006-11-16 18:01:26.000000000 +0000 ++++ xorg-server-1.3.0.0/include/kdrive-config.h.in 2008-01-11 13:45:57.000000000 +0000 +@@ -25,4 +25,7 @@ + /* Verbose debugging output hilarity */ + #undef DEBUG + ++/* Enable XCalibrate extension */ ++#undef XCALIBRATE ++ + #endif /* _KDRIVE_CONFIG_H_ */ +Index: xorg-server-1.3.0.0/Xext/Makefile.am +=================================================================== +--- xorg-server-1.3.0.0.orig/Xext/Makefile.am 2006-10-25 01:25:19.000000000 +0100 ++++ xorg-server-1.3.0.0/Xext/Makefile.am 2008-01-11 13:45:57.000000000 +0000 +@@ -91,6 +91,11 @@ BUILTIN_SRCS += $(XCALIBRATE_SRCS) + # XCalibrare needs tslib + endif + ++XCALIBRATE_SRCS = xcalibrate.c ++if XCALIBRATE ++BUILTIN_SRCS += $(XCALIBRATE_SRCS) ++endif ++ + # X EVent Interception Extension: allows accessibility helpers & composite + # managers to intercept events from input devices and transform as needed + # before the clients see them. +@@ -169,6 +174,7 @@ EXTRA_DIST = \ + $(XCSECURITY_SRCS) \ + $(XCALIBRATE_SRCS) \ + $(XINERAMA_SRCS) \ ++ $(XCALIBRATE_SRCS) \ + $(XEVIE_SRCS) \ + $(XPRINT_SRCS) \ + $(APPGROUP_SRCS) \ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fbdev_use_current.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fbdev_use_current.patch new file mode 100644 index 00000000000..dc957cc8259 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fbdev_use_current.patch @@ -0,0 +1,41 @@ +--- + hw/kdrive/fbdev/fbdev.c | 24 ++++++++++++++++-------- + 1 file changed, 16 insertions(+), 8 deletions(-) + +Index: xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/fbdev/fbdev.c 2008-01-11 14:40:16.000000000 +0000 ++++ xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2008-01-11 14:40:59.000000000 +0000 +@@ -182,16 +182,24 @@ fbdevScreenInitialize (KdScreenInfo *scr + screen->rate = 103; /* FIXME: should get proper value from fb driver */ + } + if (!screen->fb[0].depth) +- screen->fb[0].depth = 16; ++ { ++ if (k >= 0) ++ screen->fb[0].depth = var.bits_per_pixel; ++ else ++ screen->fb[0].depth = 16; ++ } + +- t = KdFindMode (screen, fbdevModeSupported); +- screen->rate = t->rate; +- screen->width = t->horizontal; +- screen->height = t->vertical; ++ if ((screen->width != var.xres) || (screen->height != var.yres)) ++ { ++ t = KdFindMode (screen, fbdevModeSupported); ++ screen->rate = t->rate; ++ screen->width = t->horizontal; ++ screen->height = t->vertical; + +- /* Now try setting the mode */ +- if (k < 0 || (t->horizontal != var.xres || t->vertical != var.yres)) +- fbdevConvertMonitorTiming (t, &var); ++ /* Now try setting the mode */ ++ if (k < 0 || (t->horizontal != var.xres || t->vertical != var.yres)) ++ fbdevConvertMonitorTiming (t, &var); ++ } + + var.activate = FB_ACTIVATE_NOW; + var.bits_per_pixel = screen->fb[0].depth; diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fix-newer-xorg-headers.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fix-newer-xorg-headers.patch new file mode 100644 index 00000000000..eb98fb82c78 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/fix-newer-xorg-headers.patch @@ -0,0 +1,18 @@ +--- + render/glyphstr.h | 1 + + 1 file changed, 1 insertion(+) + +--- xorg-server-1.3.0.0.orig/render/glyphstr.h ++++ xorg-server-1.3.0.0/render/glyphstr.h +@@ -23,10 +23,11 @@ + */ + + #ifndef _GLYPHSTR_H_ + #define _GLYPHSTR_H_ + ++#include <X11/X.h> + #include <X11/extensions/renderproto.h> + #include "picture.h" + #include "screenint.h" + #include "regionstr.h" + #include "miscstruct.h" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch new file mode 100644 index 00000000000..c160cd41dcf --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch @@ -0,0 +1,307 @@ +diff -u -r xorg-server-X11R7.1-1.1.0.orig/dix/window.c xorg-server-X11R7.1-1.1.0/dix/window.c +--- xorg-server-X11R7.1-1.1.0.orig/dix/window.c 2007-01-08 14:30:38.000000000 +0000 ++++ xorg-server-X11R7.1-1.1.0/dix/window.c 2007-01-16 17:16:19.000000000 +0000 +@@ -185,6 +185,8 @@ + _X_EXPORT int numSaveUndersViewable = 0; + _X_EXPORT int deltaSaveUndersViewable = 0; + ++char* RootPPM = NULL; ++ + #ifdef DEBUG + /****** + * PrintWindowTree +@@ -311,6 +313,115 @@ + #endif + } + ++static int ++get_int(FILE *fp) ++{ ++ int c = 0; ++ ++ while ((c = getc(fp)) != EOF) ++ { ++ if (isspace(c)) ++ continue; ++ ++ if (c == '#') ++ while (c = getc(fp)) ++ if (c == EOF) ++ return 0; ++ else if (c == '\n') ++ break; ++ ++ if (isdigit(c)) ++ { ++ int val = c - '0'; ++ while ((c = getc(fp)) && isdigit(c)) ++ val = (val * 10) + (c - '0'); ++ return val; ++ } ++ } ++ ++ return 0; ++} ++ ++static unsigned char* ++ppm_load (const char* path, int depth, int *width, int *height) ++{ ++ FILE *fp; ++ int max, n = 0, w, h, i, j, bytes_per_line; ++ unsigned char *data, *res, h1, h2; ++ ++ if (depth < 16 || depth > 32) ++ return NULL; ++ ++ if (depth > 16) ++ depth = 32; ++ ++ fp = fopen (path, "r"); ++ if (fp == NULL) ++ return FALSE; ++ ++ h1 = getc(fp); ++ h2 = getc(fp); ++ ++ /* magic is 'P6' for raw ppm */ ++ if (h1 != 'P' && h2 != '6') ++ goto fail; ++ ++ w = get_int(fp); ++ h = get_int(fp); ++ ++ if (w == 0 || h == 0) ++ goto fail; ++ ++ max = get_int(fp); ++ ++ if (max != 255) ++ goto fail; ++ ++ bytes_per_line = ((w * depth + 31) >> 5) << 2; ++ ++ res = data = malloc(bytes_per_line * h); ++ ++ for (i=0; i<h; i++) ++ { ++ for (j=0; j<w; j++) ++ { ++ unsigned char buf[3]; ++ fread(buf, 1, 3, fp); ++ ++ switch (depth) ++ { ++ case 24: ++ case 32: ++ *data = buf[2]; ++ *(data+1) = buf[1]; ++ *(data+2) = buf[0]; ++ data += 4; ++ break; ++ case 16: ++ default: ++ *(unsigned short*)data ++ = ((buf[0] >> 3) << 11) | ((buf[1] >> 2) << 5) | (buf[2] >> 3); ++ data += 2; ++ break; ++ } ++ } ++ data += (bytes_per_line - (w*(depth>>3))); ++ } ++ ++ data = res; ++ ++ *width = w; ++ *height = h; ++ ++ fclose(fp); ++ ++ return res; ++ ++ fail: ++ fclose(fp); ++ return NULL; ++} ++ + static void + MakeRootTile(WindowPtr pWin) + { +@@ -321,6 +432,36 @@ + register unsigned char *from, *to; + register int i, j; + ++ if (RootPPM != NULL) ++ { ++ int w, h; ++ unsigned char *data; ++ ++ if ((data = ppm_load (RootPPM, pScreen->rootDepth, &w, &h)) != NULL) ++ { ++ pWin->background.pixmap ++ = (*pScreen->CreatePixmap)(pScreen, w, h, pScreen->rootDepth); ++ ++ pWin->backgroundState = BackgroundPixmap; ++ pGC = GetScratchGC(pScreen->rootDepth, pScreen); ++ if (!pWin->background.pixmap || !pGC) ++ FatalError("could not create root tile"); ++ ++ ValidateGC((DrawablePtr)pWin->background.pixmap, pGC); ++ ++ (*pGC->ops->PutImage)((DrawablePtr)pWin->background.pixmap, ++ pGC, ++ pScreen->rootDepth, ++ 0, 0, w, h, 0, ZPixmap, (char *)data); ++ FreeScratchGC(pGC); ++ ++ free(data); ++ return; ++ } ++ else ++ ErrorF("Unable to load root window image."); ++ } ++ + pWin->background.pixmap = (*pScreen->CreatePixmap)(pScreen, 4, 4, + pScreen->rootDepth); + +@@ -357,6 +498,7 @@ + + } + ++ + WindowPtr + AllocateWindow(ScreenPtr pScreen) + { +diff -u -r xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/src/kdrive.c xorg-server-X11R7.1-1.1.0/hw/kdrive/src/kdrive.c +--- xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/src/kdrive.c 2007-01-08 14:30:38.000000000 +0000 ++++ xorg-server-X11R7.1-1.1.0/hw/kdrive/src/kdrive.c 2007-01-15 17:53:06.000000000 +0000 +@@ -58,6 +58,9 @@ + { 32, 32 } + }; + ++int ++ProcXFixesHideCursor (ClientPtr client) ; ++ + #define NUM_KD_DEPTHS (sizeof (kdDepths) / sizeof (kdDepths[0])) + + int kdScreenPrivateIndex; +@@ -84,6 +87,9 @@ + KdOsFuncs *kdOsFuncs; + extern WindowPtr *WindowTable; + ++extern Bool CursorInitiallyHidden; /* See Xfixes cursor.c */ ++extern char* RootPPM; /* dix/window.c */ ++ + void + KdSetRootClip (ScreenPtr pScreen, BOOL enable) + { +@@ -312,6 +318,7 @@ + KdSetRootClip (pScreen, TRUE); + if (pScreenPriv->card->cfuncs->dpms) + (*pScreenPriv->card->cfuncs->dpms) (pScreen, pScreenPriv->dpmsState); ++ + return TRUE; + } + +@@ -686,10 +693,14 @@ + ErrorF("-mouse path[,n] Filename of mouse device, n is number of buttons\n"); + ErrorF("-switchCmd Command to execute on vt switch\n"); + ErrorF("-nozap Don't terminate server on Ctrl+Alt+Backspace\n"); ++ ErrorF("-hide-cursor Start with cursor hidden\n"); ++ ErrorF("-root-ppm [path] Specify ppm file to use as root window background.\n"); + ErrorF("vtxx Use virtual terminal xx instead of the next available\n"); + #ifdef PSEUDO8 + p8UseMsg (); + #endif ++ ++ + } + + int +@@ -761,6 +772,19 @@ + kdSoftCursor = TRUE; + return 1; + } ++ if (!strcmp (argv[i], "-hide-cursor")) ++ { ++ CursorInitiallyHidden = TRUE; ++ return 1; ++ } ++ if (!strcmp (argv[i], "-root-ppm")) ++ { ++ if ((i+1) < argc) ++ RootPPM = argv[i+1]; ++ else ++ UseMsg (); ++ return 2; ++ } + if (!strcmp (argv[i], "-videoTest")) + { + kdVideoTest = TRUE; +diff -u -r xorg-server-X11R7.1-1.1.0.orig/xfixes/cursor.c xorg-server-X11R7.1-1.1.0/xfixes/cursor.c +--- xorg-server-X11R7.1-1.1.0.orig/xfixes/cursor.c 2007-01-08 14:30:38.000000000 +0000 ++++ xorg-server-X11R7.1-1.1.0/xfixes/cursor.c 2007-01-11 16:33:00.000000000 +0000 +@@ -59,9 +59,12 @@ + static RESTYPE CursorWindowType; + static int CursorScreenPrivateIndex = -1; + static int CursorGeneration; ++static Bool CursorGloballyHidden; + static CursorPtr CursorCurrent; + static CursorPtr pInvisibleCursor = NULL; + ++Bool CursorInitiallyHidden = FALSE; ++ + static void deleteCursorHideCountsForScreen (ScreenPtr pScreen); + + #define VERIFY_CURSOR(pCursor, cursor, client, access) { \ +@@ -130,7 +133,7 @@ + + Unwrap (cs, pScreen, DisplayCursor); + +- if (cs->pCursorHideCounts != NULL) { ++ if (cs->pCursorHideCounts != NULL || CursorGloballyHidden) { + ret = (*pScreen->DisplayCursor) (pScreen, pInvisibleCursor); + } else { + ret = (*pScreen->DisplayCursor) (pScreen, pCursor); +@@ -848,6 +851,12 @@ + return BadWindow; + } + ++ /* Is cursor set to be initially hidden ?, if so reset this ++ * flag as now visibility assumed under control of client. ++ */ ++ if (CursorGloballyHidden) ++ CursorGloballyHidden = FALSE; ++ + /* + * Has client hidden the cursor before on this screen? + * If so, just increment the count. +@@ -899,9 +908,19 @@ + return BadWindow; + } + ++ /* X was started with cursor hidden, therefore just reset our flag ++ * (returning to normal client control) and cause cursor to now be ++ * shown. ++ */ ++ if (CursorGloballyHidden == TRUE) ++ { ++ CursorGloballyHidden = FALSE; ++ return (client->noClientException); ++ } ++ + /* + * Has client hidden the cursor on this screen? +- * If not, generate an error. ++ * If so, generate an error. + */ + pChc = findCursorHideCount(client, pWin->drawable.pScreen); + if (pChc == NULL) { +@@ -1009,6 +1028,8 @@ + XFixesCursorInit (void) + { + int i; ++ ++ CursorGloballyHidden = CursorInitiallyHidden; + + if (CursorGeneration != serverGeneration) + { diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-evdev.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-evdev.patch new file mode 100644 index 00000000000..2dc22bf50ed --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-evdev.patch @@ -0,0 +1,515 @@ +# Kdrive evdev support patch, posted by Ander Conselvan de Oliveira at +# http://lists.freedesktop.org/archives/xorg/2005-December/011635.html +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/linux/evdev.c xserver/hw/kdrive/linux/evdev.c +--- xserver.original/hw/kdrive/linux/evdev.c 2005-12-16 10:36:05.000000000 -0200 ++++ xserver/hw/kdrive/linux/evdev.c 2005-12-16 10:40:51.077410192 -0200 +@@ -31,9 +31,11 @@ + #include <X11/X.h> + #include <X11/Xproto.h> + #include <X11/Xpoll.h> ++#include <X11/keysym.h> + #include "inputstr.h" + #include "scrnintstr.h" + #include "kdrive.h" ++#include "kkeymap.h" + + #define NUM_EVENTS 128 + #define ABS_UNSET -65535 +@@ -105,9 +107,10 @@ + { + KdMouseInfo *mi = closure; + Kevdev *ke = mi->driver; +- int i; ++ int i, j; + struct input_event events[NUM_EVENTS]; + int n; ++ int flags; + + n = read (evdevPort, &events, NUM_EVENTS * sizeof (struct input_event)); + if (n <= 0) +@@ -115,22 +118,64 @@ + n /= sizeof (struct input_event); + for (i = 0; i < n; i++) + { ++ flags = KD_MOUSE_DELTA | kdMouseInfo->buttonState; + switch (events[i].type) { + case EV_SYN: + break; + case EV_KEY: +- EvdevMotion (mi); +- ASSIGNBIT(ke->key,events[i].code, events[i].value); +- if (events[i].code < 0x100) +- ErrorF ("key %d %d\n", events[i].code, events[i].value); +- else +- ErrorF ("key 0x%x %d\n", events[i].code, events[i].value); ++ if (events[i].code >= BTN_MOUSE && events[i].code < BTN_JOYSTICK) { ++ switch (events[i].code) { ++ case BTN_LEFT: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_1; ++ else ++ flags &= ~KD_BUTTON_1; ++ break; ++ case BTN_MIDDLE: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_2; ++ else ++ flags &= ~KD_BUTTON_2; ++ break; ++ case BTN_RIGHT: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_3; ++ else ++ flags &= ~KD_BUTTON_3; ++ break; ++ default: ++ /* Unknow button */ ++ break; ++ } ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ } + break; + case EV_REL: +- ke->rel[events[i].code] += events[i].value; ++ if (events[i].code == REL_X) { ++ KdEnqueueMouseEvent (kdMouseInfo, flags, events[i].value, 0); ++ } ++ else if (events[i].code == REL_Y) { ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, events[i].value); ++ } ++ else if (events[i].code == REL_WHEEL) { ++ for (j = 0; j < abs (events[i].value); j++) { ++ if (events[i].value > 0) ++ flags |= KD_BUTTON_4; ++ else ++ flags |= KD_BUTTON_5; ++ ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ ++ if (events[i].value > 0) ++ flags &= ~KD_BUTTON_4; ++ else ++ flags &= ~KD_BUTTON_5; ++ ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ } /* events[i].code == REL_WHEEL */ ++ } + break; + case EV_ABS: +- ke->abs[events[i].code] = events[i].value; + break; + } + } +@@ -173,6 +218,12 @@ + fd = open (kdefaultEvdev[i], 2); + if (fd >= 0) + { ++ if (ioctl (fd, EVIOCGRAB, 1) < 0) ++ { ++ close (fd); ++ continue; ++ } ++ + mi->name = KdSaveString (kdefaultEvdev[i]); + break; + } +@@ -287,7 +338,319 @@ + EvdevFini, + }; + +-#if 0 ++/* Keyboard */ ++ ++int kbd_fd = -1; ++int EvdevInputType = 0; ++ ++KeySym evdevKeymap[(194 - 1 + 1) * 2] = { ++/* These are directly mapped from DOS scanset 0 */ ++/* 1 8 */ XK_Escape, NoSymbol, ++/* 2 9 */ XK_1, XK_exclam, ++/* 3 10 */ XK_2, XK_at, ++/* 4 11 */ XK_3, XK_numbersign, ++/* 5 12 */ XK_4, XK_dollar, ++/* 6 13 */ XK_5, XK_percent, ++/* 7 14 */ XK_6, XK_asciicircum, ++/* 8 15 */ XK_7, XK_ampersand, ++/* 9 16 */ XK_8, XK_asterisk, ++/* 10 17 */ XK_9, XK_parenleft, ++/* 11 18 */ XK_0, XK_parenright, ++/* 12 19 */ XK_minus, XK_underscore, ++/* 13 20 */ XK_equal, XK_plus, ++/* 14 21 */ XK_BackSpace, NoSymbol, ++/* 15 22 */ XK_Tab, NoSymbol, ++/* 16 23 */ XK_Q, NoSymbol, ++/* 17 24 */ XK_W, NoSymbol, ++/* 18 25 */ XK_E, NoSymbol, ++/* 19 26 */ XK_R, NoSymbol, ++/* 20 27 */ XK_T, NoSymbol, ++/* 21 28 */ XK_Y, NoSymbol, ++/* 22 29 */ XK_U, NoSymbol, ++/* 23 30 */ XK_I, NoSymbol, ++/* 24 31 */ XK_O, NoSymbol, ++/* 25 32 */ XK_P, NoSymbol, ++/* 26 33 */ XK_bracketleft, XK_braceleft, ++/* 27 34 */ XK_bracketright, XK_braceright, ++/* 28 35 */ XK_Return, NoSymbol, ++/* 29 36 */ XK_Control_L, NoSymbol, ++/* 30 37 */ XK_A, NoSymbol, ++/* 31 38 */ XK_S, NoSymbol, ++/* 32 39 */ XK_D, NoSymbol, ++/* 33 40 */ XK_F, NoSymbol, ++/* 34 41 */ XK_G, NoSymbol, ++/* 35 42 */ XK_H, NoSymbol, ++/* 36 43 */ XK_J, NoSymbol, ++/* 37 44 */ XK_K, NoSymbol, ++/* 38 45 */ XK_L, NoSymbol, ++/* 39 46 */ XK_semicolon, XK_colon, ++/* 40 47 */ XK_apostrophe, XK_quotedbl, ++/* 41 48 */ XK_grave, XK_asciitilde, ++/* 42 49 */ XK_Shift_L, NoSymbol, ++/* 43 50 */ XK_backslash, XK_bar, ++/* 44 51 */ XK_Z, NoSymbol, ++/* 45 52 */ XK_X, NoSymbol, ++/* 46 53 */ XK_C, NoSymbol, ++/* 47 54 */ XK_V, NoSymbol, ++/* 48 55 */ XK_B, NoSymbol, ++/* 49 56 */ XK_N, NoSymbol, ++/* 50 57 */ XK_M, NoSymbol, ++/* 51 58 */ XK_comma, XK_less, ++/* 52 59 */ XK_period, XK_greater, ++/* 53 60 */ XK_slash, XK_question, ++/* 54 61 */ XK_Shift_R, NoSymbol, ++/* 55 62 */ XK_KP_Multiply, NoSymbol, ++/* 56 63 */ XK_Alt_L, XK_Meta_L, ++/* 57 64 */ XK_space, NoSymbol, ++/* 58 65 */ XK_Caps_Lock, NoSymbol, ++/* 59 66 */ XK_F1, NoSymbol, ++/* 60 67 */ XK_F2, NoSymbol, ++/* 61 68 */ XK_F3, NoSymbol, ++/* 62 69 */ XK_F4, NoSymbol, ++/* 63 70 */ XK_F5, NoSymbol, ++/* 64 71 */ XK_F6, NoSymbol, ++/* 65 72 */ XK_F7, NoSymbol, ++/* 66 73 */ XK_F8, NoSymbol, ++/* 67 74 */ XK_F9, NoSymbol, ++/* 68 75 */ XK_F10, NoSymbol, ++/* 69 76 */ XK_Break, XK_Pause, ++/* 70 77 */ XK_Scroll_Lock, NoSymbol, ++/* 71 78 */ XK_KP_Home, XK_KP_7, ++/* 72 79 */ XK_KP_Up, XK_KP_8, ++/* 73 80 */ XK_KP_Page_Up, XK_KP_9, ++/* 74 81 */ XK_KP_Subtract, NoSymbol, ++/* 75 82 */ XK_KP_Left, XK_KP_4, ++/* 76 83 */ XK_KP_5, NoSymbol, ++/* 77 84 */ XK_KP_Right, XK_KP_6, ++/* 78 85 */ XK_KP_Add, NoSymbol, ++/* 79 86 */ XK_KP_End, XK_KP_1, ++/* 80 87 */ XK_KP_Down, XK_KP_2, ++/* 81 88 */ XK_KP_Page_Down, XK_KP_3, ++/* 82 89 */ XK_KP_Insert, XK_KP_0, ++/* 83 90 */ XK_KP_Delete, XK_KP_Decimal, ++/* 84 91 */ NoSymbol, NoSymbol, ++/* 85 92 */ NoSymbol, NoSymbol, ++/* 86 93 */ NoSymbol, NoSymbol, ++/* 87 94 */ XK_F11, NoSymbol, ++/* 88 95 */ XK_F12, NoSymbol, ++ ++/* These are remapped from the extended set (using ExtendMap) */ ++ ++/* 89 96 */ XK_Control_R, NoSymbol, ++/* 90 97 */ XK_KP_Enter, NoSymbol, ++/* 91 98 */ XK_KP_Divide, NoSymbol, ++/* 92 99 */ XK_Sys_Req, XK_Print, ++/* 93 100 */ XK_Alt_R, XK_Meta_R, ++/* 94 101 */ XK_Num_Lock, NoSymbol, ++/* 95 102 */ XK_Home, NoSymbol, ++/* 96 103 */ XK_Up, NoSymbol, ++/* 97 104 */ XK_Page_Up, NoSymbol, ++/* 98 105 */ XK_Left, NoSymbol, ++/* 99 106 */ XK_Right, NoSymbol, ++/* 100 107 */ XK_End, NoSymbol, ++/* 101 108 */ XK_Down, NoSymbol, ++/* 102 109 */ XK_Page_Down, NoSymbol, ++/* 103 110 */ XK_Insert, NoSymbol, ++/* 104 111 */ XK_Delete, NoSymbol, ++/* 105 112 */ XK_Super_L, NoSymbol, ++/* 106 113 */ XK_Super_R, NoSymbol, ++/* 107 114 */ XK_Menu, NoSymbol, ++/* 108 115 */ NoSymbol, NoSymbol, ++/* 109 116 */ NoSymbol, NoSymbol, ++/* 110 117 */ NoSymbol, NoSymbol, ++/* 111 118 */ NoSymbol, NoSymbol, ++/* 112 119 */ NoSymbol, NoSymbol, ++ ++/* 113 120 */ NoSymbol, NoSymbol, ++/* 114 121 */ NoSymbol, NoSymbol, ++/* 115 122 */ NoSymbol, NoSymbol, ++/* 116 123 */ NoSymbol, NoSymbol, ++/* 117 124 */ NoSymbol, NoSymbol, ++/* 118 125 */ NoSymbol, NoSymbol, ++/* 119 126 */ NoSymbol, NoSymbol, ++/* 120 127 */ NoSymbol, NoSymbol, ++/* 121 128 */ NoSymbol, NoSymbol, ++/* 122 129 */ NoSymbol, NoSymbol, ++/* 123 130 */ NoSymbol, NoSymbol, ++/* 124 131 */ NoSymbol, NoSymbol, ++/* 125 132 */ NoSymbol, NoSymbol, ++/* 126 133 */ NoSymbol, NoSymbol, ++/* 127 134 */ NoSymbol, NoSymbol, ++/* 128 135 */ NoSymbol, NoSymbol, ++/* 129 136 */ NoSymbol, NoSymbol, ++/* 130 137 */ NoSymbol, NoSymbol, ++/* 131 138 */ NoSymbol, NoSymbol, ++/* 132 139 */ NoSymbol, NoSymbol, ++/* 133 140 */ NoSymbol, NoSymbol, ++/* 134 141 */ NoSymbol, NoSymbol, ++/* 135 142 */ NoSymbol, NoSymbol, ++/* 136 143 */ NoSymbol, NoSymbol, ++/* 137 144 */ NoSymbol, NoSymbol, ++/* 138 145 */ NoSymbol, NoSymbol, ++/* 139 146 */ NoSymbol, NoSymbol, ++/* 140 147 */ NoSymbol, NoSymbol, ++/* 141 148 */ NoSymbol, NoSymbol, ++/* 142 149 */ NoSymbol, NoSymbol, ++/* 143 150 */ NoSymbol, NoSymbol, ++/* 144 151 */ NoSymbol, NoSymbol, ++/* 145 152 */ NoSymbol, NoSymbol, ++/* 146 153 */ NoSymbol, NoSymbol, ++/* 147 154 */ NoSymbol, NoSymbol, ++/* 148 155 */ NoSymbol, NoSymbol, ++/* 149 156 */ NoSymbol, NoSymbol, ++/* 150 157 */ NoSymbol, NoSymbol, ++/* 151 158 */ NoSymbol, NoSymbol, ++/* 152 159 */ NoSymbol, NoSymbol, ++/* 153 160 */ NoSymbol, NoSymbol, ++/* 154 161 */ NoSymbol, NoSymbol, ++/* 155 162 */ NoSymbol, NoSymbol, ++/* 156 163 */ NoSymbol, NoSymbol, ++/* 157 164 */ NoSymbol, NoSymbol, ++/* 158 165 */ NoSymbol, NoSymbol, ++/* 159 166 */ NoSymbol, NoSymbol, ++/* 160 167 */ NoSymbol, NoSymbol, ++/* 161 168 */ NoSymbol, NoSymbol, ++/* 162 169 */ NoSymbol, NoSymbol, ++/* 163 170 */ NoSymbol, NoSymbol, ++/* 164 171 */ NoSymbol, NoSymbol, ++/* 165 172 */ NoSymbol, NoSymbol, ++/* 166 173 */ NoSymbol, NoSymbol, ++/* 167 174 */ NoSymbol, NoSymbol, ++/* 168 175 */ NoSymbol, NoSymbol, ++/* 169 176 */ NoSymbol, NoSymbol, ++/* 170 177 */ NoSymbol, NoSymbol, ++/* 171 178 */ NoSymbol, NoSymbol, ++/* 172 179 */ NoSymbol, NoSymbol, ++/* 173 180 */ NoSymbol, NoSymbol, ++/* 174 181 */ NoSymbol, NoSymbol, ++/* 175 182 */ NoSymbol, NoSymbol, ++/* 176 183 */ NoSymbol, NoSymbol, ++/* 177 184 */ NoSymbol, NoSymbol, ++/* 178 185 */ NoSymbol, NoSymbol, ++/* 179 186 */ NoSymbol, NoSymbol, ++/* 180 187 */ NoSymbol, NoSymbol, ++/* 181 188 */ NoSymbol, NoSymbol, ++/* 182 189 */ NoSymbol, NoSymbol, ++/* 183 190 */ NoSymbol, NoSymbol, ++/* 184 191 */ NoSymbol, NoSymbol, ++/* 185 192 */ NoSymbol, NoSymbol, ++/* 186 193 */ NoSymbol, NoSymbol, ++/* 187 194 */ NoSymbol, NoSymbol, ++/* 188 195 */ NoSymbol, NoSymbol, ++/* 189 196 */ NoSymbol, NoSymbol, ++/* 190 197 */ NoSymbol, NoSymbol, ++/* 191 198 */ NoSymbol, NoSymbol, ++/* 192 199 */ NoSymbol, NoSymbol, ++/* 193 200 */ NoSymbol, NoSymbol, ++/* 194 201 */ NoSymbol, NoSymbol, ++}; ++ ++static void ++EvdevKbdRead (int fd, void *closure) ++{ ++ int i, n; ++ struct input_event events[NUM_EVENTS]; ++ ++ n = read (fd, &events, NUM_EVENTS * sizeof (struct input_event)); ++ if (n <= 0) ++ return; ++ ++ n /= sizeof (struct input_event); ++ ++ for (i = 0; i < n; i++) ++ { ++ if (events[i].type == EV_KEY) ++ KdEnqueueKeyboardEvent (events[i].code, !events[i].value); ++ } ++} ++ ++static void ++EvdevKbdLoad (void) ++{ ++ kdMinScanCode = 0; ++ kdMaxScanCode = 193; ++ kdKeymapWidth = 2; ++ memcpy (kdKeymap, evdevKeymap, sizeof (evdevKeymap)); ++} ++ ++static int ++EvdevKbdInit (void) ++{ ++ int fd, i; ++ ++ if (!EvdevInputType) ++ EvdevInputType = KdAllocInputType (); ++ ++ if (!kdKeyboard) ++ { ++ for (i = 0; i < NUM_DEFAULT_EVDEV; i++) ++ { ++ fd = open (kdefaultEvdev[i], 2); ++ if (fd >= 0) ++ { ++ kdKeyboard = KdSaveString (kdefaultEvdev[i]); ++ break; ++ } ++ } ++ } ++ else ++ { ++ fd = open (kdKeyboard, O_RDWR); ++ if (fd < 0) ++ return FALSE; ++ } ++ ++ if (ioctl (fd, EVIOCGRAB, 1) < 0) ++ { ++ close (fd); ++ return FALSE; ++ } ++ ++ if (!KdRegisterFd (EvdevInputType, fd, EvdevKbdRead, NULL)) ++ return FALSE; ++ ++ kbd_fd = fd; ++ return TRUE; ++} ++ ++static void ++EvdevKbdFini (void) ++{ ++} ++ ++static void ++EvdevKbdLeds (int leds) ++{ ++ struct input_event event; ++ ++ memset(&event, 0, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_CAPSL; ++ event.value = leds & (1 << 0) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_NUML; ++ event.value = leds & (1 << 1) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_SCROLLL; ++ event.value = leds & (1 << 2) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_COMPOSE; ++ event.value = leds & (1 << 3) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++} ++ ++static void ++EvdevKbdBell (int volume, int frequency, int duration) ++{ ++} ++ + KdKeyboardFuncs LinuxEvdevKeyboardFuncs = { + EvdevKbdLoad, + EvdevKbdInit, +@@ -296,4 +659,4 @@ + EvdevKbdFini, + 0, + }; +-#endif ++ +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kdrive.c xserver/hw/kdrive/src/kdrive.c +--- xserver.original/hw/kdrive/src/kdrive.c 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kdrive.c 2005-12-16 10:37:09.000000000 -0200 +@@ -73,6 +73,7 @@ + Bool kdEnabled; + int kdSubpixelOrder; + int kdVirtualTerminal = -1; ++char *kdKeyboard = 0; + Bool kdSwitchPending; + char *kdSwitchCmd; + DDXPointRec kdOrigin; +@@ -795,6 +796,14 @@ + UseMsg (); + return 2; + } ++ if (!strcmp (argv[i], "-keyboard")) ++ { ++ if ((i+1) < argc) ++ kdKeyboard = argv[i+1]; ++ else ++ UseMsg (); ++ return 2; ++ } + if (!strcmp (argv[i], "-rgba")) + { + if ((i+1) < argc) +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kdrive.h xserver/hw/kdrive/src/kdrive.h +--- xserver.original/hw/kdrive/src/kdrive.h 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kdrive.h 2005-12-16 10:37:09.000000000 -0200 +@@ -416,6 +416,7 @@ + extern Bool kdDisableZaphod; + extern Bool kdDontZap; + extern int kdVirtualTerminal; ++extern char *kdKeyboard; + extern char *kdSwitchCmd; + extern KdOsFuncs *kdOsFuncs; + +@@ -769,7 +770,7 @@ + ProcessInputEvents (void); + + extern KdMouseFuncs LinuxMouseFuncs; +-extern KdMouseFuncs LinuxEvdevFuncs; ++extern KdMouseFuncs LinuxEvdevMouseFuncs; + extern KdMouseFuncs Ps2MouseFuncs; + extern KdMouseFuncs BusMouseFuncs; + extern KdMouseFuncs MsMouseFuncs; +@@ -777,6 +778,7 @@ + extern KdMouseFuncs TsFuncs; + #endif + extern KdKeyboardFuncs LinuxKeyboardFuncs; ++extern KdKeyboardFuncs LinuxEvdevKeyboardFuncs; + extern KdOsFuncs LinuxFuncs; + + extern KdMouseFuncs VxWorksMouseFuncs; +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kinput.c xserver/hw/kdrive/src/kinput.c +--- xserver.original/hw/kdrive/src/kinput.c 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kinput.c 2005-12-16 10:37:09.000000000 -0200 +@@ -1300,6 +1300,7 @@ + xE.u.u.type = KeyPress; + xE.u.u.detail = key_code; + ++#ifndef XKB + switch (KEYCOL1(key_code)) + { + case XK_Num_Lock: +@@ -1313,6 +1314,7 @@ + else + xE.u.u.type = KeyPress; + } ++#endif + + /* + * Check pressed keys which are already down diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-use-evdev.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-use-evdev.patch new file mode 100644 index 00000000000..28d73256018 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/kdrive-use-evdev.patch @@ -0,0 +1,54 @@ +--- xserver/hw/kdrive/fbdev/fbinit.c~ 2006-01-31 17:09:33.000000000 +0100 ++++ xserver/hw/kdrive/fbdev/fbinit.c 2006-01-31 17:11:55.000000000 +0100 +@@ -28,6 +28,8 @@ + #endif + #include <fbdev.h> + ++extern int use_evdev; ++ + void + InitCard (char *name) + { +@@ -45,7 +47,10 @@ + void + InitInput (int argc, char **argv) + { +- KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs); ++ if (use_evdev) ++ KdInitInput (&LinuxEvdevMouseFuncs, &LinuxEvdevKeyboardFuncs); ++ else ++ KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs); + #ifdef TOUCHSCREEN + KdAddMouseDriver (&TsFuncs); + #endif +--- xserver/hw/kdrive/src/kdrive.c.orig 2006-01-31 17:13:28.000000000 +0100 ++++ xserver/hw/kdrive/src/kdrive.c 2006-01-31 17:15:28.000000000 +0100 +@@ -44,6 +44,8 @@ + #include "dpmsproc.h" + #endif + ++int use_evdev = 0; ++ + typedef struct _kdDepths { + CARD8 depth; + CARD8 bpp; +@@ -687,6 +689,7 @@ + ErrorF("-videoTest Start the server, pause momentarily and exit\n"); + ErrorF("-origin X,Y Locates the next screen in the the virtual screen (Xinerama)\n"); + ErrorF("-mouse path[,n] Filename of mouse device, n is number of buttons\n"); ++ ErrorF("-use-evdev Use Linux evdev input\n"); + ErrorF("-switchCmd Command to execute on vt switch\n"); + ErrorF("-nozap Don't terminate server on Ctrl+Alt+Backspace\n"); + ErrorF("vtxx Use virtual terminal xx instead of the next available\n"); +@@ -796,6 +799,11 @@ + UseMsg (); + return 2; + } ++ if (!strcmp (argv[i], "-use-evdev")) ++ { ++ use_evdev = 1; ++ return 1; ++ } + if (!strcmp (argv[i], "-keyboard")) + { + if ((i+1) < argc) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/optional-xkb.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/optional-xkb.patch new file mode 100644 index 00000000000..a580b500b72 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/optional-xkb.patch @@ -0,0 +1,58 @@ +Index: xorg-server-1.2.0/Makefile.am +=================================================================== +--- xorg-server-1.2.0.orig/Makefile.am 2007-01-23 06:39:15.000000000 +0100 ++++ xorg-server-1.2.0/Makefile.am 2007-03-28 20:26:19.000000000 +0200 +@@ -30,6 +30,10 @@ + XINPUT_DIR=Xi + endif + ++if XKB ++XKB_DIR=xkb ++endif ++ + if DBE + DBE_DIR=dbe + endif +@@ -46,7 +50,7 @@ + randr \ + render \ + $(XINPUT_DIR) \ +- xkb \ ++ $(XKB_DIR) \ + $(DBE_DIR) \ + $(MFB_DIR) \ + $(AFB_DIR) \ +Index: xorg-server-1.2.0/configure.ac +=================================================================== +--- xorg-server-1.2.0.orig/configure.ac 2007-01-23 06:39:15.000000000 +0100 ++++ xorg-server-1.2.0/configure.ac 2007-03-28 20:27:13.000000000 +0200 +@@ -428,6 +428,7 @@ + AC_ARG_ENABLE(dpms, AS_HELP_STRING([--disable-dpms], [Build DPMS extension (default: enabled)]), [DPMSExtension=$enableval], [DPMSExtension=yes]) + AC_ARG_ENABLE(xinput, AS_HELP_STRING([--disable-xinput], [Build XInput Extension (default: enabled)]), [XINPUT=$enableval], [XINPUT=yes]) + AC_ARG_ENABLE(xfree86-utils, AS_HELP_STRING([--enable-xfree86-utils], [Build xfree86 DDX utilities (default: enabled)]), [XF86UTILS=$enableval], [XF86UTILS=yes]) ++AC_ARG_ENABLE(xkb, AS_HELP_STRING([--disable-xkb], [Build XKB (default: enabled)]), [XKB=$enableval], [XKB=yes]) + + dnl DDXes. + AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) +@@ -754,12 +755,15 @@ + + AC_DEFINE(SHAPE, 1, [Support SHAPE extension]) + +-AC_DEFINE(XKB, 1, [Build XKB]) +-AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server]) +-AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default]) +-REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" +-XKB_LIB='$(top_builddir)/xkb/libxkb.la' +-XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la' ++AM_CONDITIONAL(XKB, [test "x$XKB" = xyes]) ++if test "x$XKB" = xyes; then ++ AC_DEFINE(XKB, 1, [Build XKB]) ++ AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server]) ++ AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default]) ++ REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" ++ XKB_LIB='$(top_builddir)/xkb/libxkb.la' ++ XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la' ++fi + + AC_CHECK_FUNC(strcasecmp, [], AC_DEFINE([NEED_STRCASECMP], 1, + [Do not have `strcasecmp'.])) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/report-correct-randr12.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/report-correct-randr12.patch new file mode 100644 index 00000000000..72c8a18adda --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/report-correct-randr12.patch @@ -0,0 +1,29 @@ +Server reports XRandR version provided by libxrandr instead of XRandR +version implemented. It confuses applications that execute XRandR +version dependent code (e. g. gtk+ >= 2.18.0). + +Index: xorg-server-1.3.0.0/randr/rrdispatch.c +=================================================================== +--- xorg-server-1.3.0.0.orig/randr/rrdispatch.c ++++ xorg-server-1.3.0.0/randr/rrdispatch.c +@@ -22,6 +22,9 @@ + + #include "randrstr.h" + ++#define SERVER_RANDR_MAJOR 1 ++#define SERVER_RANDR_MINOR 2 ++ + Bool + RRClientKnowsRates (ClientPtr pClient) + { +@@ -49,8 +52,8 @@ ProcRRQueryVersion (ClientPtr client) + * Report the current version; the current + * spec says they're all compatible after 1.0 + */ +- rep.majorVersion = RANDR_MAJOR; +- rep.minorVersion = RANDR_MINOR; ++ rep.majorVersion = SERVER_RANDR_MAJOR; ++ rep.minorVersion = SERVER_RANDR_MINOR; + if (client->swapped) { + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/scheduler.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/scheduler.patch new file mode 100644 index 00000000000..395bc7d5117 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/scheduler.patch @@ -0,0 +1,151 @@ +>From 48e4d08e99de41047c6b6fde5ba9d12787881c23 Mon Sep 17 00:00:00 2001 +From: root <root@benny.jf.intel.com> +Date: Sun, 28 Oct 2007 09:37:52 +0100 +Subject: [PATCH] The smart scheduler itimer currently always fires after each request + (which in turn causes the CPU to wake out of idle, burning precious power). + Rather than doing this, just stop the timer before going into the select() + portion of the WaitFor loop. It's a cheap system call, and it will only get + called if there's no more commands batched up from the active fd. + +This change also allows some of the functions to be simplified; setitimer() +will only fail if it's passed invalid data, and we don't do that... so make +it void and remove all the conditional code that deals with failure. + +The change also allows us to remove a few variables that were used for +housekeeping between the signal handler and the main loop. +--- + include/dixstruct.h | 6 ++---- + os/WaitFor.c | 11 +++-------- + os/utils.c | 28 +++------------------------- + 3 files changed, 8 insertions(+), 37 deletions(-) + +diff --git a/include/dixstruct.h b/include/dixstruct.h +index dd6347f..bed31dc 100644 +--- a/include/dixstruct.h ++++ b/include/dixstruct.h +@@ -150,11 +150,9 @@ extern long SmartScheduleTime; + extern long SmartScheduleInterval; + extern long SmartScheduleSlice; + extern long SmartScheduleMaxSlice; +-extern unsigned long SmartScheduleIdleCount; + extern Bool SmartScheduleDisable; +-extern Bool SmartScheduleIdle; +-extern Bool SmartScheduleTimerStopped; +-extern Bool SmartScheduleStartTimer(void); ++extern void SmartScheduleStartTimer(void); ++extern void SmartScheduleStopTimer(void); + #define SMART_MAX_PRIORITY (20) + #define SMART_MIN_PRIORITY (-20) + +diff --git a/os/WaitFor.c b/os/WaitFor.c +index ec1592c..7683477 100644 +--- a/os/WaitFor.c ++++ b/os/WaitFor.c +@@ -217,7 +217,8 @@ WaitForSomething(int *pClientsReady) + XFD_COPYSET(&AllSockets, &LastSelectMask); + #ifdef SMART_SCHEDULE + } +- SmartScheduleIdle = TRUE; ++ SmartScheduleStopTimer (); ++ + #endif + BlockHandler((pointer)&wt, (pointer)&LastSelectMask); + if (NewOutputPending) +@@ -237,13 +238,7 @@ WaitForSomething(int *pClientsReady) + selecterr = GetErrno(); + WakeupHandler(i, (pointer)&LastSelectMask); + #ifdef SMART_SCHEDULE +- if (i >= 0) +- { +- SmartScheduleIdle = FALSE; +- SmartScheduleIdleCount = 0; +- if (SmartScheduleTimerStopped) +- (void) SmartScheduleStartTimer (); +- } ++ SmartScheduleStartTimer (); + #endif + if (i <= 0) /* An error or timeout occurred */ + { +diff --git a/os/utils.c b/os/utils.c +index 31cb0af..6fc1f7d 100644 +--- a/os/utils.c ++++ b/os/utils.c +@@ -1513,10 +1513,6 @@ XNFstrdup(const char *s) + + #ifdef SMART_SCHEDULE + +-unsigned long SmartScheduleIdleCount; +-Bool SmartScheduleIdle; +-Bool SmartScheduleTimerStopped; +- + #ifdef SIGVTALRM + #define SMART_SCHEDULE_POSSIBLE + #endif +@@ -1526,7 +1522,7 @@ Bool SmartScheduleTimerStopped; + #define SMART_SCHEDULE_TIMER ITIMER_REAL + #endif + +-static void ++void + SmartScheduleStopTimer (void) + { + #ifdef SMART_SCHEDULE_POSSIBLE +@@ -1537,38 +1533,28 @@ SmartScheduleStopTimer (void) + timer.it_value.tv_sec = 0; + timer.it_value.tv_usec = 0; + (void) setitimer (ITIMER_REAL, &timer, 0); +- SmartScheduleTimerStopped = TRUE; + #endif + } + +-Bool ++void + SmartScheduleStartTimer (void) + { + #ifdef SMART_SCHEDULE_POSSIBLE + struct itimerval timer; + +- SmartScheduleTimerStopped = FALSE; + timer.it_interval.tv_sec = 0; + timer.it_interval.tv_usec = SmartScheduleInterval * 1000; + timer.it_value.tv_sec = 0; + timer.it_value.tv_usec = SmartScheduleInterval * 1000; +- return setitimer (ITIMER_REAL, &timer, 0) >= 0; ++ setitimer (ITIMER_REAL, &timer, 0); + #endif +- return FALSE; + } + + #ifdef SMART_SCHEDULE_POSSIBLE + static void + SmartScheduleTimer (int sig) + { +- int olderrno = errno; +- + SmartScheduleTime += SmartScheduleInterval; +- if (SmartScheduleIdle) +- { +- SmartScheduleStopTimer (); +- } +- errno = olderrno; + } + #endif + +@@ -1592,14 +1578,6 @@ SmartScheduleInit (void) + perror ("sigaction for smart scheduler"); + return FALSE; + } +- /* Set up the virtual timer */ +- if (!SmartScheduleStartTimer ()) +- { +- perror ("scheduling timer"); +- return FALSE; +- } +- /* stop the timer and wait for WaitForSomething to start it */ +- SmartScheduleStopTimer (); + return TRUE; + #else + return FALSE; +-- +1.5.3.4 + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/xcalibrate_coords.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/xcalibrate_coords.patch new file mode 100644 index 00000000000..e0cca5428b8 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.3.0.0/xcalibrate_coords.patch @@ -0,0 +1,122 @@ +--- + Xext/xcalibrate.c | 47 ++++++++++++++++++++++++++++++++++++++++++++++- + hw/kdrive/src/kdrive.h | 3 +++ + hw/kdrive/src/kinput.c | 12 ++++++++++++ + 3 files changed, 61 insertions(+), 1 deletion(-) + +Index: xorg-server-1.3.0.0/Xext/xcalibrate.c +=================================================================== +--- xorg-server-1.3.0.0.orig/Xext/xcalibrate.c 2007-06-29 17:30:03.000000000 +0100 ++++ xorg-server-1.3.0.0/Xext/xcalibrate.c 2007-06-30 14:04:40.000000000 +0100 +@@ -166,7 +166,6 @@ ProcXCalibrateSetRawMode (ClientPtr clie + return (client->noClientException); + } + +- + static int + SProcXCalibrateSetRawMode (ClientPtr client) + { +@@ -180,6 +179,47 @@ SProcXCalibrateSetRawMode (ClientPtr cli + return ProcXCalibrateSetRawMode(client); + } + ++static int ++ProcXCalibrateScreenToCoord (ClientPtr client) ++{ ++ REQUEST(xXCalibrateScreenToCoordReq); ++ xXCalibrateScreenToCoordReply rep; ++ ++ REQUEST_SIZE_MATCH (xXCalibrateScreenToCoordReq); ++ ++ memset (&rep, 0, sizeof (rep)); ++ rep.type = X_Reply; ++ rep.sequenceNumber = client->sequence; ++ rep.x = stuff->x; ++ rep.y = stuff->y; ++ ++ KdScreenToMouseCoords(&rep.x, &rep.y); ++ ++ if (client->swapped) ++ { ++ int n; ++ ++ swaps (&rep.x, n); ++ swaps (&rep.y, n); ++ } ++ WriteToClient(client, sizeof (rep), (char *) &rep); ++ return (client->noClientException); ++} ++ ++static int ++SProcXCalibrateScreenToCoord (ClientPtr client) ++{ ++ REQUEST(xXCalibrateScreenToCoordReq); ++ int n; ++ ++ REQUEST_SIZE_MATCH (xXCalibrateScreenToCoordReq); ++ ++ swaps(&stuff->x, n); ++ swaps(&stuff->y, n); ++ ++ return ProcXCalibrateScreenToCoord(client); ++} ++ + static void + XCalibrateResetProc (ExtensionEntry *extEntry) + { +@@ -194,6 +234,9 @@ ProcXCalibrateDispatch (ClientPtr client + return ProcXCalibrateQueryVersion(client); + case X_XCalibrateRawMode: + return ProcXCalibrateSetRawMode(client); ++ case X_XCalibrateScreenToCoord: ++ return ProcXCalibrateScreenToCoord(client); ++ + default: break; + } + +@@ -213,6 +256,8 @@ SProcXCalibrateDispatch (ClientPtr clien + return SProcXCalibrateQueryVersion(client); + case X_XCalibrateRawMode: + return SProcXCalibrateSetRawMode(client); ++ case X_XCalibrateScreenToCoord: ++ return SProcXCalibrateScreenToCoord(client); + + default: break; + } +Index: xorg-server-1.3.0.0/hw/kdrive/src/kdrive.h +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/src/kdrive.h 2007-06-30 13:43:45.000000000 +0100 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kdrive.h 2007-06-30 13:45:03.000000000 +0100 +@@ -746,6 +746,9 @@ void + KdSetMouseMatrix (KdMouseMatrix *matrix); + + void ++KdScreenToMouseCoords (int *x, int *y); ++ ++void + KdComputeMouseMatrix (KdMouseMatrix *matrix, Rotation randr, int width, int height); + + void +Index: xorg-server-1.3.0.0/hw/kdrive/src/kinput.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/src/kinput.c 2007-06-29 17:30:16.000000000 +0100 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kinput.c 2007-06-30 15:52:16.000000000 +0100 +@@ -381,6 +381,18 @@ KdSetMouseMatrix (KdMouseMatrix *matrix) + } + + void ++KdScreenToMouseCoords (int *x, int *y) ++{ ++ int (*m)[3] = kdMouseMatrix.matrix; ++ int div = m[0][1] * m[1][0] - m[1][1] * m[0][0]; ++ int sx = *x; ++ int sy = *y; ++ ++ *x = (m[0][1] * sy - m[0][1] * m[1][2] + m[1][1] * m[0][2] - m[1][1] * sx) / div; ++ *y = (m[1][0] * sx + m[0][0] * m[1][2] - m[1][0] * m[0][2] - m[0][0] * sy) / div; ++} ++ ++void + KdComputeMouseMatrix (KdMouseMatrix *m, Rotation randr, int width, int height) + { + int x_dir = 1, y_dir = 1; diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/crosscompile.patch new file mode 100644 index 00000000000..2341e40bca6 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/crosscompile.patch @@ -0,0 +1,19 @@ +Index: xorg-server-1.7.99.2/configure.ac +=================================================================== +--- xorg-server-1.7.99.2.orig/configure.ac 2010-01-29 16:38:49.000000000 +0000 ++++ xorg-server-1.7.99.2/configure.ac 2010-01-29 16:42:39.000000000 +0000 +@@ -503,14 +503,10 @@ + + dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d, + dnl otherwise uses standard subdirectories of FONTROOTDIR +-AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d], +- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'], +- [ + DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" + case $host_os in + darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; + esac +- ]) + AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), + [ FONTPATH="$withval" ], + [ FONTPATH="${DEFAULT_FONT_PATH}" ]) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/disable-apm.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/disable-apm.patch new file mode 100644 index 00000000000..bd8842721b2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/disable-apm.patch @@ -0,0 +1,20 @@ +--- xserver/hw/kdrive/linux/linux.c.orig 2005-04-23 15:56:13.988849232 +0000 ++++ xserver/hw/kdrive/linux/linux.c 2005-04-23 15:57:05.001094192 +0000 +@@ -342,7 +342,7 @@ + /* + * Open the APM driver + */ +- LinuxApmFd = open ("/dev/apm_bios", 2); ++ /*LinuxApmFd = open ("/dev/apm_bios", 2); + if (LinuxApmFd < 0 && errno == ENOENT) + LinuxApmFd = open ("/dev/misc/apm_bios", 2); + if (LinuxApmFd >= 0) +@@ -352,7 +352,7 @@ + RegisterBlockAndWakeupHandlers (LinuxApmBlock, LinuxApmWakeup, 0); + AddEnabledDevice (LinuxApmFd); + } +- ++ */ + /* + * now get the VT + */ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-builtin-fonts.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-builtin-fonts.patch new file mode 100644 index 00000000000..13a6c2c9545 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-builtin-fonts.patch @@ -0,0 +1,12 @@ +--- xorg-server-X11R7.1-1.1.0/dix/dixfonts.c.orig 2006-06-08 14:49:12.158684250 +0200 ++++ xorg-server-X11R7.1-1.1.0/dix/dixfonts.c 2006-06-08 14:49:52.493205000 +0200 +@@ -52,8 +52,8 @@ + /* $Xorg: dixfonts.c,v 1.4 2000/08/17 19:48:18 cpqbld Exp $ */ + + #define NEED_REPLIES + #ifdef HAVE_DIX_CONFIG_H +-#include <dix-config.h> ++#include <kdrive-config.h> + #endif + + #include <X11/X.h> diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-xcalibrate.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-xcalibrate.patch new file mode 100644 index 00000000000..9794e98cb07 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/enable-xcalibrate.patch @@ -0,0 +1,148 @@ +--- + Xext/Makefile.am | 6 ++++++ + configure.ac | 11 +++++++++-- + include/kdrive-config.h.in | 3 +++ + mi/miinitext.c | 6 ++++++ + 4 files changed, 24 insertions(+), 2 deletions(-) + +Index: xorg-server-1.7.99.2/mi/miinitext.c +=================================================================== +--- xorg-server-1.7.99.2.orig/mi/miinitext.c 2010-02-10 18:54:11.959086237 +0000 ++++ xorg-server-1.7.99.2/mi/miinitext.c 2010-02-10 18:54:12.429078513 +0000 +@@ -264,6 +264,9 @@ + #ifdef DMXEXT + extern void DMXExtensionInit(INITARGS); + #endif ++#ifdef XCALIBRATE ++extern void XCalibrateExtensionInit(INITARGS); ++#endif + #ifdef XFIXES + extern void XFixesExtensionInit(INITARGS); + #endif +@@ -493,6 +496,9 @@ + GlxPushProvider(&__glXDRISWRastProvider); + if (!noGlxExtension) GlxExtensionInit(); + #endif ++#ifdef XCALIBRATE ++ XCalibrateExtensionInit (); ++#endif + } + + #else /* XFree86LOADER */ +Index: xorg-server-1.7.99.2/configure.ac +=================================================================== +--- xorg-server-1.7.99.2.orig/configure.ac 2010-02-10 18:54:11.959086237 +0000 ++++ xorg-server-1.7.99.2/configure.ac 2010-02-11 11:49:50.710736962 +0000 +@@ -1985,7 +1985,7 @@ + fi + + +- PKG_CHECK_MODULES([TSLIB], [tslib-0.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"]) ++ PKG_CHECK_MODULES([TSLIB], [tslib-1.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"]) + if test "x$HAVE_TSLIB" = xno; then + AC_CHECK_LIB(ts, ts_open, [HAVE_TSLIB="yes"]) + fi +@@ -2039,7 +2039,7 @@ + KDRIVE_LOCAL_LIBS="$MAIN_LIB $DIX_LIB $KDRIVE_LIB $KDRIVE_STUB_LIB $CONFIG_LIB" + KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $FB_LIB $MI_LIB $KDRIVE_PURE_LIBS" + KDRIVE_LOCAL_LIBS="$KDRIVE_LOCAL_LIBS $KDRIVE_OS_LIB $OS_LIB" +- KDRIVE_LIBS="$TSLIB_LIBS $KDRIVE_LOCAL_LIBS $XSERVER_SYS_LIBS $GLX_SYS_LIBS $DLOPEN_LIBS" ++ KDRIVE_LIBS="$KDRIVE_LOCAL_LIBS $TSLIB_LIBS $XSERVER_SYS_LIBS $GLX_SYS_LIBS $DLOPEN_LIBS" + + AC_SUBST([XEPHYR_LIBS]) + AC_SUBST([XEPHYR_INCS]) +Index: xorg-server-1.7.99.2/include/kdrive-config.h.in +=================================================================== +--- xorg-server-1.7.99.2.orig/include/kdrive-config.h.in 2010-02-10 18:54:11.959086237 +0000 ++++ xorg-server-1.7.99.2/include/kdrive-config.h.in 2010-02-10 18:54:12.429078513 +0000 +@@ -28,4 +28,7 @@ + /* Have execinfo.h for backtrace(). */ + #undef HAVE_EXECINFO_H + ++/* Enable XCalibrate extension */ ++#undef XCALIBRATE ++ + #endif /* _KDRIVE_CONFIG_H_ */ +Index: xorg-server-1.7.99.2/hw/kdrive/linux/tslib.c +=================================================================== +--- xorg-server-1.7.99.2.orig/hw/kdrive/linux/tslib.c 2010-02-10 18:58:12.669078495 +0000 ++++ xorg-server-1.7.99.2/hw/kdrive/linux/tslib.c 2010-02-10 19:04:56.927828767 +0000 +@@ -50,12 +50,15 @@ + int fd; + int lastx, lasty; + struct tsdev *tsDev; +- void (*raw_event_hook)(int x, int y, int pressure, void *closure); +- void *raw_event_closure; + int phys_screen; + }; + + ++/* For XCalibrate extension */ ++void (*tslib_raw_event_hook)(int x, int y, int pressure, void *closure); ++void *tslib_raw_event_closure; ++ ++ + static void + TsRead (int fd, void *closure) + { +@@ -65,10 +68,10 @@ + long x = 0, y = 0; + unsigned long flags; + +- if (private->raw_event_hook) { ++ if (tslib_raw_event_hook) { + while (ts_read_raw(private->tsDev, &event, 1) == 1) +- private->raw_event_hook (event.x, event.y, event.pressure, +- private->raw_event_closure); ++ tslib_raw_event_hook (event.x, event.y, event.pressure, ++ tslib_raw_event_closure); + return; + } + +@@ -111,8 +114,8 @@ + { + struct TslibPrivate *private = pi->driverPrivate; + +- private->raw_event_hook = NULL; +- private->raw_event_closure = NULL; ++ tslib_raw_event_hook = NULL; ++ tslib_raw_event_closure = NULL; + if (!pi->path) { + pi->path = strdup("/dev/input/touchscreen0"); + ErrorF("[tslib/TslibEnable] no device path given, trying %s\n", pi->path); +Index: xorg-server-1.7.99.2/Xext/xcalibrate.c +=================================================================== +--- xorg-server-1.7.99.2.orig/Xext/xcalibrate.c 2010-02-10 18:59:24.097829840 +0000 ++++ xorg-server-1.7.99.2/Xext/xcalibrate.c 2010-02-11 11:51:00.930735731 +0000 +@@ -115,6 +115,7 @@ + + memset (&rep, 0, sizeof (rep)); + rep.type = X_Reply; ++ rep.length = 0; + rep.sequenceNumber = client->sequence; + + if (stuff->on) +@@ -158,6 +159,7 @@ + + swaps (&rep.sequenceNumber, n); + swaps (&rep.status, n); ++ swapl (&rep.length, n); + } + WriteToClient(client, sizeof (rep), (char *) &rep); + return (client->noClientException); +@@ -186,6 +188,7 @@ + + memset (&rep, 0, sizeof (rep)); + rep.type = X_Reply; ++ rep.length = 0; + rep.sequenceNumber = client->sequence; + rep.x = stuff->x; + rep.y = stuff->y; +@@ -198,6 +201,7 @@ + + swaps (&rep.x, n); + swaps (&rep.y, n); ++ swapl (&rep.length, n); + } + WriteToClient(client, sizeof (rep), (char *) &rep); + return (client->noClientException); diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/extra-kmodes.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/extra-kmodes.patch new file mode 100644 index 00000000000..14cf99055bf --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/extra-kmodes.patch @@ -0,0 +1,83 @@ +Add some extra video modes and change the default to VGA. + +--- + hw/kdrive/src/kmode.c | 41 +++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 39 insertions(+), 2 deletions(-) + +Index: xorg-server-1.3.0.0/hw/kdrive/src/kmode.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/src/kmode.c 2008-01-11 14:20:47.000000000 +0000 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2008-01-11 14:21:18.000000000 +0000 +@@ -32,6 +32,31 @@ const KdMonitorTiming kdMonitorTimings[ + /* H V Hz KHz */ + /* FP BP BLANK POLARITY */ + ++ /* Treo 650 */ ++ ++ { 320, 320, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 320, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ /* LifeDrive/T3/TX modes */ ++ ++ { 320, 480, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 480, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ + /* IPAQ modeline: + * + * Modeline "320x240" 5.7222 320 337 340 352 240 241 244 254" +@@ -41,6 +66,11 @@ const KdMonitorTiming kdMonitorTimings[ + 1, 11, 14, KdSyncNegative, + }, + ++ { 240, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ + /* Other VESA modes */ + { 640, 350, 85, 31500, /* VESA */ + 32, 96, 192, KdSyncPositive, /* 26.413 */ +@@ -76,10 +106,19 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 120, 176, KdSyncNegative, /* 37.861 */ + 1, 20, 24, KdSyncNegative, /* 72.809 */ + }, ++ /* DEFAULT */ ++#define MONITOR_TIMING_DEFAULT 13 + { 640, 480, 60, 25175, /* VESA */ + 16, 48, 160, KdSyncNegative, /* 31.469 */ + 10, 33, 45, KdSyncNegative, /* 59.940 */ + }, ++ ++ ++ { 480, 640, 60, 0, /* VESA */ ++ 0, 0, 0, KdSyncNegative, /* 31.469 */ ++ 0, 0, 0, KdSyncNegative, /* 59.940 */ ++ }, ++ + + /* 800x600 modes */ + { 800, 600, 85, 56250, /* VESA */ +@@ -90,8 +129,6 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 160, 256, KdSyncPositive, /* 46.875 */ + 1, 21, 25, KdSyncPositive, /* 75.000 */ + }, +- /* DEFAULT */ +-#define MONITOR_TIMING_DEFAULT 9 + { 800, 600, 72, 50000, /* VESA */ + 56, 64, 240, KdSyncPositive, /* 48.077 */ + 37, 23, 66, KdSyncPositive, /* 72.188 */ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fbdev_xrandr_ioctl.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fbdev_xrandr_ioctl.patch new file mode 100644 index 00000000000..a5c22a5efc0 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fbdev_xrandr_ioctl.patch @@ -0,0 +1,61 @@ +Index: xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:12.000000000 +0100 ++++ xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:46.000000000 +0100 +@@ -498,6 +498,7 @@ + KdScreenInfo *screen = pScreenPriv->screen; + FbdevScrPriv *scrpriv = screen->driver; + Bool wasEnabled = pScreenPriv->enabled; ++ FbdevPriv *priv = screen->card->driver; + FbdevScrPriv oldscr; + int oldwidth; + int oldheight; +@@ -525,11 +526,46 @@ + oldheight = screen->height; + oldmmwidth = pScreen->mmWidth; + oldmmheight = pScreen->mmHeight; +- ++ + /* + * Set new configuration + */ +- ++ ++ if (newwidth != oldwidth || newheight != oldheight) ++ { ++ struct fb_var_screeninfo var; ++ int k; ++ ++ k = ioctl (priv->fd, FBIOGET_VSCREENINFO, &var); ++ ++ if (k < 0) ++ { ++ ErrorF("Error with framebuffer ioctl FBIOGET_VSCREENINFO: %s", strerror (errno)); ++ return FALSE; ++ } ++ ++ var.xres = newwidth; ++ var.yres = newheight; ++ var.activate = FB_ACTIVATE_NOW; ++ ++ k = ioctl (priv->fd, FBIOPUT_VSCREENINFO, &var); ++ ++ if (k >= 0) ++ { ++ if ((k=ioctl(priv->fd, FBIOGET_FSCREENINFO, &priv->fix)) < 0) ++ { ++ perror("Error with framebuffer ioctl FIOGET_FSCREENINFO"); ++ close (priv->fd); ++ return FALSE; ++ } ++ if ((k=ioctl(priv->fd, FBIOGET_VSCREENINFO, &priv->var)) < 0) { ++ perror("Error framebuffer ioctl FIOGET_VSCREENINFO"); ++ close (priv->fd); ++ return FALSE; ++ } ++ } ++ } ++ + scrpriv->randr = KdAddRotation (screen->randr, randr); + + KdOffscreenSwapOut (screen->pScreen); diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fix-newer-xorg-headers.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fix-newer-xorg-headers.patch new file mode 100644 index 00000000000..eb98fb82c78 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/fix-newer-xorg-headers.patch @@ -0,0 +1,18 @@ +--- + render/glyphstr.h | 1 + + 1 file changed, 1 insertion(+) + +--- xorg-server-1.3.0.0.orig/render/glyphstr.h ++++ xorg-server-1.3.0.0/render/glyphstr.h +@@ -23,10 +23,11 @@ + */ + + #ifndef _GLYPHSTR_H_ + #define _GLYPHSTR_H_ + ++#include <X11/X.h> + #include <X11/extensions/renderproto.h> + #include "picture.h" + #include "screenint.h" + #include "regionstr.h" + #include "miscstruct.h" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/hide-cursor-and-ppm-root.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/hide-cursor-and-ppm-root.patch new file mode 100644 index 00000000000..73f30ee716d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/hide-cursor-and-ppm-root.patch @@ -0,0 +1,308 @@ +Index: xorg-server-1.7.99.2/dix/window.c +=================================================================== +--- xorg-server-1.7.99.2.orig/dix/window.c 2009-11-04 16:25:50.000000000 +0000 ++++ xorg-server-1.7.99.2/dix/window.c 2010-02-10 17:42:22.719078216 +0000 +@@ -179,6 +179,8 @@ + + #define SubStrSend(pWin,pParent) (StrSend(pWin) || SubSend(pParent)) + ++char* RootPPM = NULL; ++ + #ifdef DEBUG + /****** + * PrintWindowTree +@@ -304,6 +306,115 @@ + #endif + } + ++static int ++get_int(FILE *fp) ++{ ++ int c = 0; ++ ++ while ((c = getc(fp)) != EOF) ++ { ++ if (isspace(c)) ++ continue; ++ ++ if (c == '#') ++ while (c = getc(fp)) ++ if (c == EOF) ++ return 0; ++ else if (c == '\n') ++ break; ++ ++ if (isdigit(c)) ++ { ++ int val = c - '0'; ++ while ((c = getc(fp)) && isdigit(c)) ++ val = (val * 10) + (c - '0'); ++ return val; ++ } ++ } ++ ++ return 0; ++} ++ ++static unsigned char* ++ppm_load (const char* path, int depth, int *width, int *height) ++{ ++ FILE *fp; ++ int max, n = 0, w, h, i, j, bytes_per_line; ++ unsigned char *data, *res, h1, h2; ++ ++ if (depth < 16 || depth > 32) ++ return NULL; ++ ++ if (depth > 16) ++ depth = 32; ++ ++ fp = fopen (path, "r"); ++ if (fp == NULL) ++ return FALSE; ++ ++ h1 = getc(fp); ++ h2 = getc(fp); ++ ++ /* magic is 'P6' for raw ppm */ ++ if (h1 != 'P' && h2 != '6') ++ goto fail; ++ ++ w = get_int(fp); ++ h = get_int(fp); ++ ++ if (w == 0 || h == 0) ++ goto fail; ++ ++ max = get_int(fp); ++ ++ if (max != 255) ++ goto fail; ++ ++ bytes_per_line = ((w * depth + 31) >> 5) << 2; ++ ++ res = data = malloc(bytes_per_line * h); ++ ++ for (i=0; i<h; i++) ++ { ++ for (j=0; j<w; j++) ++ { ++ unsigned char buf[3]; ++ fread(buf, 1, 3, fp); ++ ++ switch (depth) ++ { ++ case 24: ++ case 32: ++ *data = buf[2]; ++ *(data+1) = buf[1]; ++ *(data+2) = buf[0]; ++ data += 4; ++ break; ++ case 16: ++ default: ++ *(unsigned short*)data ++ = ((buf[0] >> 3) << 11) | ((buf[1] >> 2) << 5) | (buf[2] >> 3); ++ data += 2; ++ break; ++ } ++ } ++ data += (bytes_per_line - (w*(depth>>3))); ++ } ++ ++ data = res; ++ ++ *width = w; ++ *height = h; ++ ++ fclose(fp); ++ ++ return res; ++ ++ fail: ++ fclose(fp); ++ return NULL; ++} ++ + static void + MakeRootTile(WindowPtr pWin) + { +@@ -314,6 +425,36 @@ + unsigned char *from, *to; + int i, j; + ++ if (RootPPM != NULL) ++ { ++ int w, h; ++ unsigned char *data; ++ ++ if ((data = ppm_load (RootPPM, pScreen->rootDepth, &w, &h)) != NULL) ++ { ++ pWin->background.pixmap ++ = (*pScreen->CreatePixmap)(pScreen, w, h, pScreen->rootDepth, 0); ++ ++ pWin->backgroundState = BackgroundPixmap; ++ pGC = GetScratchGC(pScreen->rootDepth, pScreen); ++ if (!pWin->background.pixmap || !pGC) ++ FatalError("could not create root tile"); ++ ++ ValidateGC((DrawablePtr)pWin->background.pixmap, pGC); ++ ++ (*pGC->ops->PutImage)((DrawablePtr)pWin->background.pixmap, ++ pGC, ++ pScreen->rootDepth, ++ 0, 0, w, h, 0, ZPixmap, (char *)data); ++ FreeScratchGC(pGC); ++ ++ free(data); ++ return; ++ } ++ else ++ ErrorF("Unable to load root window image."); ++ } ++ + pWin->background.pixmap = (*pScreen->CreatePixmap)(pScreen, 4, 4, + pScreen->rootDepth, 0); + +@@ -530,6 +671,7 @@ + } + + ++ + WindowPtr + RealChildHead(WindowPtr pWin) + { +Index: xorg-server-1.7.99.2/hw/kdrive/src/kdrive.c +=================================================================== +--- xorg-server-1.7.99.2.orig/hw/kdrive/src/kdrive.c 2010-02-10 17:36:36.000000000 +0000 ++++ xorg-server-1.7.99.2/hw/kdrive/src/kdrive.c 2010-02-10 17:43:07.797828099 +0000 +@@ -60,6 +60,9 @@ + { 32, 32 } + }; + ++int ++ProcXFixesHideCursor (ClientPtr client) ; ++ + #define NUM_KD_DEPTHS (sizeof (kdDepths) / sizeof (kdDepths[0])) + + #define KD_DEFAULT_BUTTONS 5 +@@ -92,6 +95,9 @@ + + KdOsFuncs *kdOsFuncs; + ++extern Bool CursorInitiallyHidden; /* See Xfixes cursor.c */ ++extern char* RootPPM; /* dix/window.c */ ++ + void + KdSetRootClip (ScreenPtr pScreen, BOOL enable) + { +@@ -275,6 +281,7 @@ + KdSetRootClip (pScreen, TRUE); + if (pScreenPriv->card->cfuncs->dpms) + (*pScreenPriv->card->cfuncs->dpms) (pScreen, pScreenPriv->dpmsState); ++ + return TRUE; + } + +@@ -553,6 +560,8 @@ + ErrorF("-switchCmd Command to execute on vt switch\n"); + ErrorF("-zap Terminate server on Ctrl+Alt+Backspace\n"); + ErrorF("vtxx Use virtual terminal xx instead of the next available\n"); ++ ErrorF("-hide-cursor Start with cursor hidden\n"); ++ ErrorF("-root-ppm [path] Specify ppm file to use as root window background.\n"); + } + + int +@@ -616,6 +625,19 @@ + kdSoftCursor = TRUE; + return 1; + } ++ if (!strcmp (argv[i], "-hide-cursor")) ++ { ++ CursorInitiallyHidden = TRUE; ++ return 1; ++ } ++ if (!strcmp (argv[i], "-root-ppm")) ++ { ++ if ((i+1) < argc) ++ RootPPM = argv[i+1]; ++ else ++ UseMsg (); ++ return 2; ++ } + if (!strcmp (argv[i], "-videoTest")) + { + kdVideoTest = TRUE; +Index: xorg-server-1.7.99.2/xfixes/cursor.c +=================================================================== +--- xorg-server-1.7.99.2.orig/xfixes/cursor.c 2009-12-19 01:43:53.000000000 +0000 ++++ xorg-server-1.7.99.2/xfixes/cursor.c 2010-02-10 17:45:02.089079491 +0000 +@@ -57,6 +57,7 @@ + static RESTYPE CursorClientType; + static RESTYPE CursorHideCountType; + static RESTYPE CursorWindowType; ++static Bool CursorGloballyHidden; + static CursorPtr CursorCurrent[MAXDEVICES]; + static CursorPtr pInvisibleCursor = NULL; + +@@ -65,6 +66,8 @@ + + static void deleteCursorHideCountsForScreen (ScreenPtr pScreen); + ++Bool CursorInitiallyHidden = FALSE; ++ + #define VERIFY_CURSOR(pCursor, cursor, client, access) \ + do { \ + int err; \ +@@ -150,7 +153,7 @@ + if (ConnectionInfo) + CursorVisible = EnableCursor; + +- if (cs->pCursorHideCounts != NULL || !CursorVisible) { ++ if (cs->pCursorHideCounts != NULL || !CursorVisible || CursorGloballyHidden) { + ret = ((*pScreen->RealizeCursor)(pDev, pScreen, pInvisibleCursor) && + (*pScreen->DisplayCursor) (pDev, pScreen, pInvisibleCursor)); + } else { +@@ -887,6 +890,12 @@ + return (ret == BadValue) ? BadWindow : ret; + } + ++ /* Is cursor set to be initially hidden ?, if so reset this ++ * flag as now visibility assumed under control of client. ++ */ ++ if (CursorGloballyHidden) ++ CursorGloballyHidden = FALSE; ++ + /* + * Has client hidden the cursor before on this screen? + * If so, just increment the count. +@@ -950,9 +959,19 @@ + return (rc == BadValue) ? BadWindow : rc; + } + ++ /* X was started with cursor hidden, therefore just reset our flag ++ * (returning to normal client control) and cause cursor to now be ++ * shown. ++ */ ++ if (CursorGloballyHidden == TRUE) ++ { ++ CursorGloballyHidden = FALSE; ++ return (client->noClientException); ++ } ++ + /* + * Has client hidden the cursor on this screen? +- * If not, generate an error. ++ * If so, generate an error. + */ + pChc = findCursorHideCount(client, pWin->drawable.pScreen); + if (pChc == NULL) { +@@ -1068,6 +1087,8 @@ + { + int i; + ++ CursorGloballyHidden = CursorInitiallyHidden; ++ + if (party_like_its_1989) + CursorVisible = EnableCursor; + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-evdev.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-evdev.patch new file mode 100644 index 00000000000..2dc22bf50ed --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-evdev.patch @@ -0,0 +1,515 @@ +# Kdrive evdev support patch, posted by Ander Conselvan de Oliveira at +# http://lists.freedesktop.org/archives/xorg/2005-December/011635.html +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/linux/evdev.c xserver/hw/kdrive/linux/evdev.c +--- xserver.original/hw/kdrive/linux/evdev.c 2005-12-16 10:36:05.000000000 -0200 ++++ xserver/hw/kdrive/linux/evdev.c 2005-12-16 10:40:51.077410192 -0200 +@@ -31,9 +31,11 @@ + #include <X11/X.h> + #include <X11/Xproto.h> + #include <X11/Xpoll.h> ++#include <X11/keysym.h> + #include "inputstr.h" + #include "scrnintstr.h" + #include "kdrive.h" ++#include "kkeymap.h" + + #define NUM_EVENTS 128 + #define ABS_UNSET -65535 +@@ -105,9 +107,10 @@ + { + KdMouseInfo *mi = closure; + Kevdev *ke = mi->driver; +- int i; ++ int i, j; + struct input_event events[NUM_EVENTS]; + int n; ++ int flags; + + n = read (evdevPort, &events, NUM_EVENTS * sizeof (struct input_event)); + if (n <= 0) +@@ -115,22 +118,64 @@ + n /= sizeof (struct input_event); + for (i = 0; i < n; i++) + { ++ flags = KD_MOUSE_DELTA | kdMouseInfo->buttonState; + switch (events[i].type) { + case EV_SYN: + break; + case EV_KEY: +- EvdevMotion (mi); +- ASSIGNBIT(ke->key,events[i].code, events[i].value); +- if (events[i].code < 0x100) +- ErrorF ("key %d %d\n", events[i].code, events[i].value); +- else +- ErrorF ("key 0x%x %d\n", events[i].code, events[i].value); ++ if (events[i].code >= BTN_MOUSE && events[i].code < BTN_JOYSTICK) { ++ switch (events[i].code) { ++ case BTN_LEFT: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_1; ++ else ++ flags &= ~KD_BUTTON_1; ++ break; ++ case BTN_MIDDLE: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_2; ++ else ++ flags &= ~KD_BUTTON_2; ++ break; ++ case BTN_RIGHT: ++ if (events[i].value == 1) ++ flags |= KD_BUTTON_3; ++ else ++ flags &= ~KD_BUTTON_3; ++ break; ++ default: ++ /* Unknow button */ ++ break; ++ } ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ } + break; + case EV_REL: +- ke->rel[events[i].code] += events[i].value; ++ if (events[i].code == REL_X) { ++ KdEnqueueMouseEvent (kdMouseInfo, flags, events[i].value, 0); ++ } ++ else if (events[i].code == REL_Y) { ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, events[i].value); ++ } ++ else if (events[i].code == REL_WHEEL) { ++ for (j = 0; j < abs (events[i].value); j++) { ++ if (events[i].value > 0) ++ flags |= KD_BUTTON_4; ++ else ++ flags |= KD_BUTTON_5; ++ ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ ++ if (events[i].value > 0) ++ flags &= ~KD_BUTTON_4; ++ else ++ flags &= ~KD_BUTTON_5; ++ ++ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0); ++ } /* events[i].code == REL_WHEEL */ ++ } + break; + case EV_ABS: +- ke->abs[events[i].code] = events[i].value; + break; + } + } +@@ -173,6 +218,12 @@ + fd = open (kdefaultEvdev[i], 2); + if (fd >= 0) + { ++ if (ioctl (fd, EVIOCGRAB, 1) < 0) ++ { ++ close (fd); ++ continue; ++ } ++ + mi->name = KdSaveString (kdefaultEvdev[i]); + break; + } +@@ -287,7 +338,319 @@ + EvdevFini, + }; + +-#if 0 ++/* Keyboard */ ++ ++int kbd_fd = -1; ++int EvdevInputType = 0; ++ ++KeySym evdevKeymap[(194 - 1 + 1) * 2] = { ++/* These are directly mapped from DOS scanset 0 */ ++/* 1 8 */ XK_Escape, NoSymbol, ++/* 2 9 */ XK_1, XK_exclam, ++/* 3 10 */ XK_2, XK_at, ++/* 4 11 */ XK_3, XK_numbersign, ++/* 5 12 */ XK_4, XK_dollar, ++/* 6 13 */ XK_5, XK_percent, ++/* 7 14 */ XK_6, XK_asciicircum, ++/* 8 15 */ XK_7, XK_ampersand, ++/* 9 16 */ XK_8, XK_asterisk, ++/* 10 17 */ XK_9, XK_parenleft, ++/* 11 18 */ XK_0, XK_parenright, ++/* 12 19 */ XK_minus, XK_underscore, ++/* 13 20 */ XK_equal, XK_plus, ++/* 14 21 */ XK_BackSpace, NoSymbol, ++/* 15 22 */ XK_Tab, NoSymbol, ++/* 16 23 */ XK_Q, NoSymbol, ++/* 17 24 */ XK_W, NoSymbol, ++/* 18 25 */ XK_E, NoSymbol, ++/* 19 26 */ XK_R, NoSymbol, ++/* 20 27 */ XK_T, NoSymbol, ++/* 21 28 */ XK_Y, NoSymbol, ++/* 22 29 */ XK_U, NoSymbol, ++/* 23 30 */ XK_I, NoSymbol, ++/* 24 31 */ XK_O, NoSymbol, ++/* 25 32 */ XK_P, NoSymbol, ++/* 26 33 */ XK_bracketleft, XK_braceleft, ++/* 27 34 */ XK_bracketright, XK_braceright, ++/* 28 35 */ XK_Return, NoSymbol, ++/* 29 36 */ XK_Control_L, NoSymbol, ++/* 30 37 */ XK_A, NoSymbol, ++/* 31 38 */ XK_S, NoSymbol, ++/* 32 39 */ XK_D, NoSymbol, ++/* 33 40 */ XK_F, NoSymbol, ++/* 34 41 */ XK_G, NoSymbol, ++/* 35 42 */ XK_H, NoSymbol, ++/* 36 43 */ XK_J, NoSymbol, ++/* 37 44 */ XK_K, NoSymbol, ++/* 38 45 */ XK_L, NoSymbol, ++/* 39 46 */ XK_semicolon, XK_colon, ++/* 40 47 */ XK_apostrophe, XK_quotedbl, ++/* 41 48 */ XK_grave, XK_asciitilde, ++/* 42 49 */ XK_Shift_L, NoSymbol, ++/* 43 50 */ XK_backslash, XK_bar, ++/* 44 51 */ XK_Z, NoSymbol, ++/* 45 52 */ XK_X, NoSymbol, ++/* 46 53 */ XK_C, NoSymbol, ++/* 47 54 */ XK_V, NoSymbol, ++/* 48 55 */ XK_B, NoSymbol, ++/* 49 56 */ XK_N, NoSymbol, ++/* 50 57 */ XK_M, NoSymbol, ++/* 51 58 */ XK_comma, XK_less, ++/* 52 59 */ XK_period, XK_greater, ++/* 53 60 */ XK_slash, XK_question, ++/* 54 61 */ XK_Shift_R, NoSymbol, ++/* 55 62 */ XK_KP_Multiply, NoSymbol, ++/* 56 63 */ XK_Alt_L, XK_Meta_L, ++/* 57 64 */ XK_space, NoSymbol, ++/* 58 65 */ XK_Caps_Lock, NoSymbol, ++/* 59 66 */ XK_F1, NoSymbol, ++/* 60 67 */ XK_F2, NoSymbol, ++/* 61 68 */ XK_F3, NoSymbol, ++/* 62 69 */ XK_F4, NoSymbol, ++/* 63 70 */ XK_F5, NoSymbol, ++/* 64 71 */ XK_F6, NoSymbol, ++/* 65 72 */ XK_F7, NoSymbol, ++/* 66 73 */ XK_F8, NoSymbol, ++/* 67 74 */ XK_F9, NoSymbol, ++/* 68 75 */ XK_F10, NoSymbol, ++/* 69 76 */ XK_Break, XK_Pause, ++/* 70 77 */ XK_Scroll_Lock, NoSymbol, ++/* 71 78 */ XK_KP_Home, XK_KP_7, ++/* 72 79 */ XK_KP_Up, XK_KP_8, ++/* 73 80 */ XK_KP_Page_Up, XK_KP_9, ++/* 74 81 */ XK_KP_Subtract, NoSymbol, ++/* 75 82 */ XK_KP_Left, XK_KP_4, ++/* 76 83 */ XK_KP_5, NoSymbol, ++/* 77 84 */ XK_KP_Right, XK_KP_6, ++/* 78 85 */ XK_KP_Add, NoSymbol, ++/* 79 86 */ XK_KP_End, XK_KP_1, ++/* 80 87 */ XK_KP_Down, XK_KP_2, ++/* 81 88 */ XK_KP_Page_Down, XK_KP_3, ++/* 82 89 */ XK_KP_Insert, XK_KP_0, ++/* 83 90 */ XK_KP_Delete, XK_KP_Decimal, ++/* 84 91 */ NoSymbol, NoSymbol, ++/* 85 92 */ NoSymbol, NoSymbol, ++/* 86 93 */ NoSymbol, NoSymbol, ++/* 87 94 */ XK_F11, NoSymbol, ++/* 88 95 */ XK_F12, NoSymbol, ++ ++/* These are remapped from the extended set (using ExtendMap) */ ++ ++/* 89 96 */ XK_Control_R, NoSymbol, ++/* 90 97 */ XK_KP_Enter, NoSymbol, ++/* 91 98 */ XK_KP_Divide, NoSymbol, ++/* 92 99 */ XK_Sys_Req, XK_Print, ++/* 93 100 */ XK_Alt_R, XK_Meta_R, ++/* 94 101 */ XK_Num_Lock, NoSymbol, ++/* 95 102 */ XK_Home, NoSymbol, ++/* 96 103 */ XK_Up, NoSymbol, ++/* 97 104 */ XK_Page_Up, NoSymbol, ++/* 98 105 */ XK_Left, NoSymbol, ++/* 99 106 */ XK_Right, NoSymbol, ++/* 100 107 */ XK_End, NoSymbol, ++/* 101 108 */ XK_Down, NoSymbol, ++/* 102 109 */ XK_Page_Down, NoSymbol, ++/* 103 110 */ XK_Insert, NoSymbol, ++/* 104 111 */ XK_Delete, NoSymbol, ++/* 105 112 */ XK_Super_L, NoSymbol, ++/* 106 113 */ XK_Super_R, NoSymbol, ++/* 107 114 */ XK_Menu, NoSymbol, ++/* 108 115 */ NoSymbol, NoSymbol, ++/* 109 116 */ NoSymbol, NoSymbol, ++/* 110 117 */ NoSymbol, NoSymbol, ++/* 111 118 */ NoSymbol, NoSymbol, ++/* 112 119 */ NoSymbol, NoSymbol, ++ ++/* 113 120 */ NoSymbol, NoSymbol, ++/* 114 121 */ NoSymbol, NoSymbol, ++/* 115 122 */ NoSymbol, NoSymbol, ++/* 116 123 */ NoSymbol, NoSymbol, ++/* 117 124 */ NoSymbol, NoSymbol, ++/* 118 125 */ NoSymbol, NoSymbol, ++/* 119 126 */ NoSymbol, NoSymbol, ++/* 120 127 */ NoSymbol, NoSymbol, ++/* 121 128 */ NoSymbol, NoSymbol, ++/* 122 129 */ NoSymbol, NoSymbol, ++/* 123 130 */ NoSymbol, NoSymbol, ++/* 124 131 */ NoSymbol, NoSymbol, ++/* 125 132 */ NoSymbol, NoSymbol, ++/* 126 133 */ NoSymbol, NoSymbol, ++/* 127 134 */ NoSymbol, NoSymbol, ++/* 128 135 */ NoSymbol, NoSymbol, ++/* 129 136 */ NoSymbol, NoSymbol, ++/* 130 137 */ NoSymbol, NoSymbol, ++/* 131 138 */ NoSymbol, NoSymbol, ++/* 132 139 */ NoSymbol, NoSymbol, ++/* 133 140 */ NoSymbol, NoSymbol, ++/* 134 141 */ NoSymbol, NoSymbol, ++/* 135 142 */ NoSymbol, NoSymbol, ++/* 136 143 */ NoSymbol, NoSymbol, ++/* 137 144 */ NoSymbol, NoSymbol, ++/* 138 145 */ NoSymbol, NoSymbol, ++/* 139 146 */ NoSymbol, NoSymbol, ++/* 140 147 */ NoSymbol, NoSymbol, ++/* 141 148 */ NoSymbol, NoSymbol, ++/* 142 149 */ NoSymbol, NoSymbol, ++/* 143 150 */ NoSymbol, NoSymbol, ++/* 144 151 */ NoSymbol, NoSymbol, ++/* 145 152 */ NoSymbol, NoSymbol, ++/* 146 153 */ NoSymbol, NoSymbol, ++/* 147 154 */ NoSymbol, NoSymbol, ++/* 148 155 */ NoSymbol, NoSymbol, ++/* 149 156 */ NoSymbol, NoSymbol, ++/* 150 157 */ NoSymbol, NoSymbol, ++/* 151 158 */ NoSymbol, NoSymbol, ++/* 152 159 */ NoSymbol, NoSymbol, ++/* 153 160 */ NoSymbol, NoSymbol, ++/* 154 161 */ NoSymbol, NoSymbol, ++/* 155 162 */ NoSymbol, NoSymbol, ++/* 156 163 */ NoSymbol, NoSymbol, ++/* 157 164 */ NoSymbol, NoSymbol, ++/* 158 165 */ NoSymbol, NoSymbol, ++/* 159 166 */ NoSymbol, NoSymbol, ++/* 160 167 */ NoSymbol, NoSymbol, ++/* 161 168 */ NoSymbol, NoSymbol, ++/* 162 169 */ NoSymbol, NoSymbol, ++/* 163 170 */ NoSymbol, NoSymbol, ++/* 164 171 */ NoSymbol, NoSymbol, ++/* 165 172 */ NoSymbol, NoSymbol, ++/* 166 173 */ NoSymbol, NoSymbol, ++/* 167 174 */ NoSymbol, NoSymbol, ++/* 168 175 */ NoSymbol, NoSymbol, ++/* 169 176 */ NoSymbol, NoSymbol, ++/* 170 177 */ NoSymbol, NoSymbol, ++/* 171 178 */ NoSymbol, NoSymbol, ++/* 172 179 */ NoSymbol, NoSymbol, ++/* 173 180 */ NoSymbol, NoSymbol, ++/* 174 181 */ NoSymbol, NoSymbol, ++/* 175 182 */ NoSymbol, NoSymbol, ++/* 176 183 */ NoSymbol, NoSymbol, ++/* 177 184 */ NoSymbol, NoSymbol, ++/* 178 185 */ NoSymbol, NoSymbol, ++/* 179 186 */ NoSymbol, NoSymbol, ++/* 180 187 */ NoSymbol, NoSymbol, ++/* 181 188 */ NoSymbol, NoSymbol, ++/* 182 189 */ NoSymbol, NoSymbol, ++/* 183 190 */ NoSymbol, NoSymbol, ++/* 184 191 */ NoSymbol, NoSymbol, ++/* 185 192 */ NoSymbol, NoSymbol, ++/* 186 193 */ NoSymbol, NoSymbol, ++/* 187 194 */ NoSymbol, NoSymbol, ++/* 188 195 */ NoSymbol, NoSymbol, ++/* 189 196 */ NoSymbol, NoSymbol, ++/* 190 197 */ NoSymbol, NoSymbol, ++/* 191 198 */ NoSymbol, NoSymbol, ++/* 192 199 */ NoSymbol, NoSymbol, ++/* 193 200 */ NoSymbol, NoSymbol, ++/* 194 201 */ NoSymbol, NoSymbol, ++}; ++ ++static void ++EvdevKbdRead (int fd, void *closure) ++{ ++ int i, n; ++ struct input_event events[NUM_EVENTS]; ++ ++ n = read (fd, &events, NUM_EVENTS * sizeof (struct input_event)); ++ if (n <= 0) ++ return; ++ ++ n /= sizeof (struct input_event); ++ ++ for (i = 0; i < n; i++) ++ { ++ if (events[i].type == EV_KEY) ++ KdEnqueueKeyboardEvent (events[i].code, !events[i].value); ++ } ++} ++ ++static void ++EvdevKbdLoad (void) ++{ ++ kdMinScanCode = 0; ++ kdMaxScanCode = 193; ++ kdKeymapWidth = 2; ++ memcpy (kdKeymap, evdevKeymap, sizeof (evdevKeymap)); ++} ++ ++static int ++EvdevKbdInit (void) ++{ ++ int fd, i; ++ ++ if (!EvdevInputType) ++ EvdevInputType = KdAllocInputType (); ++ ++ if (!kdKeyboard) ++ { ++ for (i = 0; i < NUM_DEFAULT_EVDEV; i++) ++ { ++ fd = open (kdefaultEvdev[i], 2); ++ if (fd >= 0) ++ { ++ kdKeyboard = KdSaveString (kdefaultEvdev[i]); ++ break; ++ } ++ } ++ } ++ else ++ { ++ fd = open (kdKeyboard, O_RDWR); ++ if (fd < 0) ++ return FALSE; ++ } ++ ++ if (ioctl (fd, EVIOCGRAB, 1) < 0) ++ { ++ close (fd); ++ return FALSE; ++ } ++ ++ if (!KdRegisterFd (EvdevInputType, fd, EvdevKbdRead, NULL)) ++ return FALSE; ++ ++ kbd_fd = fd; ++ return TRUE; ++} ++ ++static void ++EvdevKbdFini (void) ++{ ++} ++ ++static void ++EvdevKbdLeds (int leds) ++{ ++ struct input_event event; ++ ++ memset(&event, 0, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_CAPSL; ++ event.value = leds & (1 << 0) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_NUML; ++ event.value = leds & (1 << 1) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_SCROLLL; ++ event.value = leds & (1 << 2) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++ ++ event.type = EV_LED; ++ event.code = LED_COMPOSE; ++ event.value = leds & (1 << 3) ? 1 : 0; ++ write(kbd_fd, (char *) &event, sizeof(event)); ++} ++ ++static void ++EvdevKbdBell (int volume, int frequency, int duration) ++{ ++} ++ + KdKeyboardFuncs LinuxEvdevKeyboardFuncs = { + EvdevKbdLoad, + EvdevKbdInit, +@@ -296,4 +659,4 @@ + EvdevKbdFini, + 0, + }; +-#endif ++ +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kdrive.c xserver/hw/kdrive/src/kdrive.c +--- xserver.original/hw/kdrive/src/kdrive.c 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kdrive.c 2005-12-16 10:37:09.000000000 -0200 +@@ -73,6 +73,7 @@ + Bool kdEnabled; + int kdSubpixelOrder; + int kdVirtualTerminal = -1; ++char *kdKeyboard = 0; + Bool kdSwitchPending; + char *kdSwitchCmd; + DDXPointRec kdOrigin; +@@ -795,6 +796,14 @@ + UseMsg (); + return 2; + } ++ if (!strcmp (argv[i], "-keyboard")) ++ { ++ if ((i+1) < argc) ++ kdKeyboard = argv[i+1]; ++ else ++ UseMsg (); ++ return 2; ++ } + if (!strcmp (argv[i], "-rgba")) + { + if ((i+1) < argc) +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kdrive.h xserver/hw/kdrive/src/kdrive.h +--- xserver.original/hw/kdrive/src/kdrive.h 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kdrive.h 2005-12-16 10:37:09.000000000 -0200 +@@ -416,6 +416,7 @@ + extern Bool kdDisableZaphod; + extern Bool kdDontZap; + extern int kdVirtualTerminal; ++extern char *kdKeyboard; + extern char *kdSwitchCmd; + extern KdOsFuncs *kdOsFuncs; + +@@ -769,7 +770,7 @@ + ProcessInputEvents (void); + + extern KdMouseFuncs LinuxMouseFuncs; +-extern KdMouseFuncs LinuxEvdevFuncs; ++extern KdMouseFuncs LinuxEvdevMouseFuncs; + extern KdMouseFuncs Ps2MouseFuncs; + extern KdMouseFuncs BusMouseFuncs; + extern KdMouseFuncs MsMouseFuncs; +@@ -777,6 +778,7 @@ + extern KdMouseFuncs TsFuncs; + #endif + extern KdKeyboardFuncs LinuxKeyboardFuncs; ++extern KdKeyboardFuncs LinuxEvdevKeyboardFuncs; + extern KdOsFuncs LinuxFuncs; + + extern KdMouseFuncs VxWorksMouseFuncs; +diff -u -r --exclude=CVS --exclude=Makefile --exclude='*.o' --exclude=ephyr --exclude='*.Po' xserver.original/hw/kdrive/src/kinput.c xserver/hw/kdrive/src/kinput.c +--- xserver.original/hw/kdrive/src/kinput.c 2005-12-16 10:36:07.000000000 -0200 ++++ xserver/hw/kdrive/src/kinput.c 2005-12-16 10:37:09.000000000 -0200 +@@ -1300,6 +1300,7 @@ + xE.u.u.type = KeyPress; + xE.u.u.detail = key_code; + ++#ifndef XKB + switch (KEYCOL1(key_code)) + { + case XK_Num_Lock: +@@ -1313,6 +1314,7 @@ + else + xE.u.u.type = KeyPress; + } ++#endif + + /* + * Check pressed keys which are already down diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-use-evdev.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-use-evdev.patch new file mode 100644 index 00000000000..28d73256018 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/kdrive-use-evdev.patch @@ -0,0 +1,54 @@ +--- xserver/hw/kdrive/fbdev/fbinit.c~ 2006-01-31 17:09:33.000000000 +0100 ++++ xserver/hw/kdrive/fbdev/fbinit.c 2006-01-31 17:11:55.000000000 +0100 +@@ -28,6 +28,8 @@ + #endif + #include <fbdev.h> + ++extern int use_evdev; ++ + void + InitCard (char *name) + { +@@ -45,7 +47,10 @@ + void + InitInput (int argc, char **argv) + { +- KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs); ++ if (use_evdev) ++ KdInitInput (&LinuxEvdevMouseFuncs, &LinuxEvdevKeyboardFuncs); ++ else ++ KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs); + #ifdef TOUCHSCREEN + KdAddMouseDriver (&TsFuncs); + #endif +--- xserver/hw/kdrive/src/kdrive.c.orig 2006-01-31 17:13:28.000000000 +0100 ++++ xserver/hw/kdrive/src/kdrive.c 2006-01-31 17:15:28.000000000 +0100 +@@ -44,6 +44,8 @@ + #include "dpmsproc.h" + #endif + ++int use_evdev = 0; ++ + typedef struct _kdDepths { + CARD8 depth; + CARD8 bpp; +@@ -687,6 +689,7 @@ + ErrorF("-videoTest Start the server, pause momentarily and exit\n"); + ErrorF("-origin X,Y Locates the next screen in the the virtual screen (Xinerama)\n"); + ErrorF("-mouse path[,n] Filename of mouse device, n is number of buttons\n"); ++ ErrorF("-use-evdev Use Linux evdev input\n"); + ErrorF("-switchCmd Command to execute on vt switch\n"); + ErrorF("-nozap Don't terminate server on Ctrl+Alt+Backspace\n"); + ErrorF("vtxx Use virtual terminal xx instead of the next available\n"); +@@ -796,6 +799,11 @@ + UseMsg (); + return 2; + } ++ if (!strcmp (argv[i], "-use-evdev")) ++ { ++ use_evdev = 1; ++ return 1; ++ } + if (!strcmp (argv[i], "-keyboard")) + { + if ((i+1) < argc) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/keyboard-resume-workaround.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/keyboard-resume-workaround.patch new file mode 100644 index 00000000000..d614b547a8d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/keyboard-resume-workaround.patch @@ -0,0 +1,25 @@ +Index: xorg-server-1.4/hw/kdrive/linux/keyboard.c +=================================================================== +--- xorg-server-1.4.orig/hw/kdrive/linux/keyboard.c 2007-09-29 18:31:15.000000000 +0200 ++++ xorg-server-1.4/hw/kdrive/linux/keyboard.c 2007-09-29 18:33:02.000000000 +0200 +@@ -486,6 +486,8 @@ + ki->minScanCode = minKeyCode; + ki->maxScanCode = maxKeyCode; + #endif ++ ki->minScanCode = 0; ++ ki->maxScanCode = NR_KEYS; + } + + /* +@@ -743,11 +743,6 @@ + cfsetispeed(&nTty, 9600); + cfsetospeed(&nTty, 9600); + tcsetattr(fd, TCSANOW, &nTty); +- /* +- * Flush any pending keystrokes +- */ +- while ((n = read (fd, buf, sizeof (buf))) > 0) +- ; + KdRegisterFd (fd, LinuxKeyboardRead, ki); + return Success; + } diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/no-serial-probing.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/no-serial-probing.patch new file mode 100644 index 00000000000..35ccadaa8d5 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/no-serial-probing.patch @@ -0,0 +1,13 @@ +--- xserver/hw/kdrive/linux/mouse.c.orig 2004-05-13 14:25:51.000000000 -0700 ++++ xserver/hw/kdrive/linux/mouse.c 2005-09-22 12:20:47.000000000 -0700 +@@ -927,8 +927,10 @@ char *kdefaultMouse[] = { + "/dev/psaux", + "/dev/input/mice", + "/dev/adbmouse", ++#ifdef BREAK_MY_SERIAL_CONSOLE + "/dev/ttyS0", + "/dev/ttyS1", ++#endif + }; + + #define NUM_DEFAULT_MOUSE (sizeof (kdefaultMouse) / sizeof (kdefaultMouse[0])) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/nodolt.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/nodolt.patch new file mode 100644 index 00000000000..6b34032a39b --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/nodolt.patch @@ -0,0 +1,12 @@ +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2009-01-15 20:35:31.000000000 +0000 ++++ git/configure.ac 2009-01-15 20:35:38.000000000 +0000 +@@ -62,7 +62,6 @@ + AC_LIBTOOL_WIN32_DLL + AC_DISABLE_STATIC + AC_PROG_LIBTOOL +-DOLT + AC_PROG_MAKE_SET + PKG_PROG_PKG_CONFIG + AC_PROG_LEX diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/optional-xkb.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/optional-xkb.patch new file mode 100644 index 00000000000..a580b500b72 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.7.99.2/optional-xkb.patch @@ -0,0 +1,58 @@ +Index: xorg-server-1.2.0/Makefile.am +=================================================================== +--- xorg-server-1.2.0.orig/Makefile.am 2007-01-23 06:39:15.000000000 +0100 ++++ xorg-server-1.2.0/Makefile.am 2007-03-28 20:26:19.000000000 +0200 +@@ -30,6 +30,10 @@ + XINPUT_DIR=Xi + endif + ++if XKB ++XKB_DIR=xkb ++endif ++ + if DBE + DBE_DIR=dbe + endif +@@ -46,7 +50,7 @@ + randr \ + render \ + $(XINPUT_DIR) \ +- xkb \ ++ $(XKB_DIR) \ + $(DBE_DIR) \ + $(MFB_DIR) \ + $(AFB_DIR) \ +Index: xorg-server-1.2.0/configure.ac +=================================================================== +--- xorg-server-1.2.0.orig/configure.ac 2007-01-23 06:39:15.000000000 +0100 ++++ xorg-server-1.2.0/configure.ac 2007-03-28 20:27:13.000000000 +0200 +@@ -428,6 +428,7 @@ + AC_ARG_ENABLE(dpms, AS_HELP_STRING([--disable-dpms], [Build DPMS extension (default: enabled)]), [DPMSExtension=$enableval], [DPMSExtension=yes]) + AC_ARG_ENABLE(xinput, AS_HELP_STRING([--disable-xinput], [Build XInput Extension (default: enabled)]), [XINPUT=$enableval], [XINPUT=yes]) + AC_ARG_ENABLE(xfree86-utils, AS_HELP_STRING([--enable-xfree86-utils], [Build xfree86 DDX utilities (default: enabled)]), [XF86UTILS=$enableval], [XF86UTILS=yes]) ++AC_ARG_ENABLE(xkb, AS_HELP_STRING([--disable-xkb], [Build XKB (default: enabled)]), [XKB=$enableval], [XKB=yes]) + + dnl DDXes. + AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) +@@ -754,12 +755,15 @@ + + AC_DEFINE(SHAPE, 1, [Support SHAPE extension]) + +-AC_DEFINE(XKB, 1, [Build XKB]) +-AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server]) +-AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default]) +-REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" +-XKB_LIB='$(top_builddir)/xkb/libxkb.la' +-XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la' ++AM_CONDITIONAL(XKB, [test "x$XKB" = xyes]) ++if test "x$XKB" = xyes; then ++ AC_DEFINE(XKB, 1, [Build XKB]) ++ AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server]) ++ AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default]) ++ REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" ++ XKB_LIB='$(top_builddir)/xkb/libxkb.la' ++ XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la' ++fi + + AC_CHECK_FUNC(strcasecmp, [], AC_DEFINE([NEED_STRCASECMP], 1, + [Do not have `strcasecmp'.])) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive.inc b/meta/recipes-graphics/xorg-xserver/xserver-kdrive.inc new file mode 100644 index 00000000000..8c93127657d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive.inc @@ -0,0 +1,107 @@ +LICENSE = "MIT" +DEPENDS = "compositeproto damageproto fixesproto recordproto resourceproto scrnsaverproto xineramaproto videoproto xextproto xproto \ + libxau libxext libxdmcp libxfont libxrandr tslib virtual/libx11 xtrans bigreqsproto xcmiscproto" + +PROVIDES = "virtual/xserver" +PACKAGES =+ "xserver-kdrive-fbdev \ + xserver-kdrive-sdl \ + xserver-kdrive-fake \ + xserver-kdrive-xephyr \ + xserver-kdrive-epson \ + xserver-kdrive-ati \ + xserver-kdrive-chips \ + xserver-kdrive-i810 \ + xserver-kdrive-mach64 \ + xserver-kdrive-mga \ + xserver-kdrive-neomagic \ + xserver-kdrive-nvidia \ + xserver-kdrive-pm2 \ + xserver-kdrive-r128 \ + xserver-kdrive-smi \ + xserver-kdrive-vesa \ + xserver-kdrive-via \ + xserver-kdrive-w100 \ + " + +SECTION = "x11/base" +DESCRIPTION = "X server from freedesktop.org" +DESCRIPTION_xserver-kdrive-fbdev = "X server from freedesktop.org, supporting generic framebuffer devices" +DESCRIPTION_xserver-kdrive-fake = "Fake X server" +DESCRIPTION_xserver-kdrive-xephyr = "X server in an X window" +DESCRIPTION_xserver-kdrive-epson = "X server from freedesktop.org, supporting Epson S1D13806 devices" +DESCRIPTION_xserver-kdrive-sdl = "X server from freedesktop.org, SDL version" +DESCRIPTION_xserver-kdrive-w100 = "X server from freedesktop.org, supporting the ATI imageon w100 chipset" +DESCRIPTION_xserver-kdrive-ati = "X server from freedesktop.org, supporting ATI devices" +DESCRIPTION_xserver-kdrive-chips = "X server from freedesktop.org, supporting Chips chipsets" +DESCRIPTION_xserver-kdrive-i810 = "X server from freedesktop.org, supporting Intel chipsets" +DESCRIPTION_xserver-kdrive-imageon = "X server from freedesktop.org, supporting the ATI imageon 100 chipset" +DESCRIPTION_xserver-kdrive-mach64 = "X server from freedesktop.org, supporting mach64 chipsets" +DESCRIPTION_xserver-kdrive-mga = "X server from freedesktop.org, supporting mga chipsets" +DESCRIPTION_xserver-kdrive-neomagic = "X server from freedesktop.org, supporting neomagic chipsets" +DESCRIPTION_xserver-kdrive-nvidia = "X server from freedesktop.org, supporting nvidia devices" +DESCRIPTION_xserver-kdrive-pm2 = "X server from freedesktop.org, supporting Permedia2 chipsets" +DESCRIPTION_xserver-kdrive-r128 = "X server from freedesktop.org, supporting rage128 chipsets" +DESCRIPTION_xserver-kdrive-smi = "X server from freedesktop.org, supporting Silicon Motion devices" +DESCRIPTION_xserver-kdrive-vesa = "X server from freedesktop.org, supporting any card with a VESA, VGA or even EGA BIOS. x86 hardware only" +DESCRIPTION_xserver-kdrive-via = "X server from freedesktop.org, supporting VIA chipsets" + +FILES_${PN} += "${libdir}/xserver/SecurityPolicy" +ALLOW_EMPTY_${PN} = "1" + +FILES_xserver-kdrive-fbdev = "${bindir}/Xfbdev" +FILES_xserver-kdrive-fake = "${bindir}/Xfake" +FILES_xserver-kdrive-xephyr = "${bindir}/Xephyr" +FILES_xserver-kdrive-epson = "${bindir}/Xepson" +FILES_xserver-kdrive-sdl = "${bindir}/Xsdl" +FILES_xserver-kdrive-w100 = "${bindir}/Xw100" +FILES_xserver-kdrive-ati = "${bindir}/Xati" +FILES_xserver-kdrive-chips = "${bindir}/Xchips" +FILES_xserver-kdrive-i810 = "${bindir}/Xi810" +FILES_xserver-kdrive-imageon = "${bindir}/Ximageon" +FILES_xserver-kdrive-mach64 = "${bindir}/Xmach64" +FILES_xserver-kdrive-mga = "${bindir}/Xmga" +FILES_xserver-kdrive-neomagic = "${bindir}/Xneomagic" +FILES_xserver-kdrive-nvidia = "${bindir}/Xnvidia" +FILES_xserver-kdrive-pm2 = "${bindir}/Xpm2" +FILES_xserver-kdrive-r128 = "${bindir}/Xr128" +FILES_xserver-kdrive-smi = "${bindir}/Xsmi" +FILES_xserver-kdrive-vesa = "${bindir}/Xvesa" +FILES_xserver-kdrive-via = "${bindir}/Xvia" + +RDEPENDS_xserver-kdrive-fbdev = "${PN}" +RDEPENDS_xserver-kdrive-fake = "${PN}" +RDEPENDS_xserver-kdrive-xephyr = "${PN}" +RDEPENDS_xserver-kdrive-epson = "${PN}" +RDEPENDS_xserver-kdrive-sdl = "${PN}" +RDEPENDS_xserver-kdrive-w100 = "${PN}" +RDEPENDS_xserver-kdrive-ati = "${PN}" +RDEPENDS_xserver-kdrive-chips = "${PN}" +RDEPENDS_xserver-kdrive-i810 = "${PN}" +RDEPENDS_xserver-kdrive-mach64 = "${PN}" +RDEPENDS_xserver-kdrive-mga = "${PN}" +RDEPENDS_xserver-kdrive-neomagic = "${PN}" +RDEPENDS_xserver-kdrive-nvidia = "${PN}" +RDEPENDS_xserver-kdrive-pm2 = "${PN}" +RDEPENDS_xserver-kdrive-r128 = "${PN}" +RDEPENDS_xserver-kdrive-smi = "${PN}" +RDEPENDS_xserver-kdrive-vesa = "${PN}" +RDEPENDS_xserver-kdrive-via = "${PN}" + +inherit autotools pkgconfig + +ARM_INSTRUCTION_SET = "arm" + +EXTRA_OECONF = "--enable-composite --enable-kdrive \ + --disable-dga --disable-dri --disable-xinerama \ + --disable-xf86misc --disable-xf86vidmode \ + --disable-xorg --disable-xorgcfg \ + --disable-xkb --disable-xnest --disable-xvfb \ + --disable-xevie --disable-xprint --disable-xtrap \ + --disable-dmx \ + --with-default-font-path=built-ins \ + --enable-tslib --enable-xcalibrate \ + ac_cv_file__usr_share_X11_sgml_defs_ent=no" + +do_configure_prepend() { + sed -i -e 's/tslib-0.0/tslib-1.0/' ${S}/configure.ac +} diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-apm.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-apm.patch new file mode 100644 index 00000000000..bd8842721b2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-apm.patch @@ -0,0 +1,20 @@ +--- xserver/hw/kdrive/linux/linux.c.orig 2005-04-23 15:56:13.988849232 +0000 ++++ xserver/hw/kdrive/linux/linux.c 2005-04-23 15:57:05.001094192 +0000 +@@ -342,7 +342,7 @@ + /* + * Open the APM driver + */ +- LinuxApmFd = open ("/dev/apm_bios", 2); ++ /*LinuxApmFd = open ("/dev/apm_bios", 2); + if (LinuxApmFd < 0 && errno == ENOENT) + LinuxApmFd = open ("/dev/misc/apm_bios", 2); + if (LinuxApmFd >= 0) +@@ -352,7 +352,7 @@ + RegisterBlockAndWakeupHandlers (LinuxApmBlock, LinuxApmWakeup, 0); + AddEnabledDevice (LinuxApmFd); + } +- ++ */ + /* + * now get the VT + */ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-xf86-dga-xorgcfg.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-xf86-dga-xorgcfg.patch new file mode 100644 index 00000000000..ccc19139c8f --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/disable-xf86-dga-xorgcfg.patch @@ -0,0 +1,39 @@ +Index: xorg-server-1.3.0.0/configure.ac +=================================================================== +--- xorg-server-1.3.0.0.orig/configure.ac 2007-04-20 03:23:40.000000000 +0200 ++++ xorg-server-1.3.0.0/configure.ac 2007-05-09 16:51:34.000000000 +0200 +@@ -520,7 +520,11 @@ + XEXTXORG_LIB='$(top_builddir)/Xext/libXextbuiltin.la' + + dnl Core modules for most extensions, et al. ++if test "$KDRIVE" = yes; then ++REQUIRED_MODULES="[randrproto >= 1.2] renderproto [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto xextproto xproto xtrans xf86bigfontproto [scrnsaverproto >= 1.1] bigreqsproto resourceproto fontsproto inputproto [kbproto >= 1.0.3]" ++else + REQUIRED_MODULES="[randrproto >= 1.2] renderproto [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto xextproto xproto xtrans xf86miscproto xf86vidmodeproto xf86bigfontproto [scrnsaverproto >= 1.1] bigreqsproto resourceproto fontsproto inputproto xf86dgaproto [kbproto >= 1.0.3]" ++fi + REQUIRED_LIBS="xfont xau fontenc" + + AM_CONDITIONAL(XV, [test "x$XV" = xyes]) +@@ -1603,7 +1607,9 @@ + AC_SUBST(XKB_COMPILED_DIR) + + dnl and the rest of these are generic, so they're in config.h ++if test ! x"$KDRIVE" = xyes; then + AC_DEFINE(XFreeXDGA, 1, [Build XDGA support]) ++fi + AC_DEFINE(XResExtension, 1, [Build XRes extension]) + + AC_TRY_COMPILE([ +@@ -1616,10 +1622,12 @@ + + AC_DEFINE_DIR(PROJECTROOT, prefix, [Overall prefix]) + ++if test ! "x$KDRIVE" = xyes ; then + dnl xorgconfig CLI configuration utility + PKG_CHECK_MODULES([XORGCONFIG_DEP], [xkbfile x11]) + AC_SUBST(XORGCONFIG_DEP_CFLAGS) + AC_SUBST(XORGCONFIG_DEP_LIBS) ++fi + + dnl xorgcfg GUI configuration utility + AC_ARG_ENABLE(xorgcfg, AS_HELP_STRING([--enable-xorgcfg], diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive/extra-kmodes.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/extra-kmodes.patch new file mode 100644 index 00000000000..14cf99055bf --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/extra-kmodes.patch @@ -0,0 +1,83 @@ +Add some extra video modes and change the default to VGA. + +--- + hw/kdrive/src/kmode.c | 41 +++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 39 insertions(+), 2 deletions(-) + +Index: xorg-server-1.3.0.0/hw/kdrive/src/kmode.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/src/kmode.c 2008-01-11 14:20:47.000000000 +0000 ++++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2008-01-11 14:21:18.000000000 +0000 +@@ -32,6 +32,31 @@ const KdMonitorTiming kdMonitorTimings[ + /* H V Hz KHz */ + /* FP BP BLANK POLARITY */ + ++ /* Treo 650 */ ++ ++ { 320, 320, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 320, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ /* LifeDrive/T3/TX modes */ ++ ++ { 320, 480, 64, 16256, ++ 17, 12, 32, KdSyncNegative, ++ 1, 11, 14, KdSyncNegative, ++ }, ++ ++ { 480, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ ++ + /* IPAQ modeline: + * + * Modeline "320x240" 5.7222 320 337 340 352 240 241 244 254" +@@ -41,6 +66,11 @@ const KdMonitorTiming kdMonitorTimings[ + 1, 11, 14, KdSyncNegative, + }, + ++ { 240, 320, 64, 0, ++ 0, 0, 0, KdSyncNegative, ++ 0, 0, 0, KdSyncNegative, ++ }, ++ + /* Other VESA modes */ + { 640, 350, 85, 31500, /* VESA */ + 32, 96, 192, KdSyncPositive, /* 26.413 */ +@@ -76,10 +106,19 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 120, 176, KdSyncNegative, /* 37.861 */ + 1, 20, 24, KdSyncNegative, /* 72.809 */ + }, ++ /* DEFAULT */ ++#define MONITOR_TIMING_DEFAULT 13 + { 640, 480, 60, 25175, /* VESA */ + 16, 48, 160, KdSyncNegative, /* 31.469 */ + 10, 33, 45, KdSyncNegative, /* 59.940 */ + }, ++ ++ ++ { 480, 640, 60, 0, /* VESA */ ++ 0, 0, 0, KdSyncNegative, /* 31.469 */ ++ 0, 0, 0, KdSyncNegative, /* 59.940 */ ++ }, ++ + + /* 800x600 modes */ + { 800, 600, 85, 56250, /* VESA */ +@@ -90,8 +129,6 @@ const KdMonitorTiming kdMonitorTimings[ + 16, 160, 256, KdSyncPositive, /* 46.875 */ + 1, 21, 25, KdSyncPositive, /* 75.000 */ + }, +- /* DEFAULT */ +-#define MONITOR_TIMING_DEFAULT 9 + { 800, 600, 72, 50000, /* VESA */ + 56, 64, 240, KdSyncPositive, /* 48.077 */ + 37, 23, 66, KdSyncPositive, /* 72.188 */ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch new file mode 100644 index 00000000000..a5c22a5efc0 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/fbdev_xrandr_ioctl.patch @@ -0,0 +1,61 @@ +Index: xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c +=================================================================== +--- xorg-server-1.3.0.0.orig/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:12.000000000 +0100 ++++ xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2008-09-25 21:55:46.000000000 +0100 +@@ -498,6 +498,7 @@ + KdScreenInfo *screen = pScreenPriv->screen; + FbdevScrPriv *scrpriv = screen->driver; + Bool wasEnabled = pScreenPriv->enabled; ++ FbdevPriv *priv = screen->card->driver; + FbdevScrPriv oldscr; + int oldwidth; + int oldheight; +@@ -525,11 +526,46 @@ + oldheight = screen->height; + oldmmwidth = pScreen->mmWidth; + oldmmheight = pScreen->mmHeight; +- ++ + /* + * Set new configuration + */ +- ++ ++ if (newwidth != oldwidth || newheight != oldheight) ++ { ++ struct fb_var_screeninfo var; ++ int k; ++ ++ k = ioctl (priv->fd, FBIOGET_VSCREENINFO, &var); ++ ++ if (k < 0) ++ { ++ ErrorF("Error with framebuffer ioctl FBIOGET_VSCREENINFO: %s", strerror (errno)); ++ return FALSE; ++ } ++ ++ var.xres = newwidth; ++ var.yres = newheight; ++ var.activate = FB_ACTIVATE_NOW; ++ ++ k = ioctl (priv->fd, FBIOPUT_VSCREENINFO, &var); ++ ++ if (k >= 0) ++ { ++ if ((k=ioctl(priv->fd, FBIOGET_FSCREENINFO, &priv->fix)) < 0) ++ { ++ perror("Error with framebuffer ioctl FIOGET_FSCREENINFO"); ++ close (priv->fd); ++ return FALSE; ++ } ++ if ((k=ioctl(priv->fd, FBIOGET_VSCREENINFO, &priv->var)) < 0) { ++ perror("Error framebuffer ioctl FIOGET_VSCREENINFO"); ++ close (priv->fd); ++ return FALSE; ++ } ++ } ++ } ++ + scrpriv->randr = KdAddRotation (screen->randr, randr); + + KdOffscreenSwapOut (screen->pScreen); diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive/no-serial-probing.patch b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/no-serial-probing.patch new file mode 100644 index 00000000000..35ccadaa8d5 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive/no-serial-probing.patch @@ -0,0 +1,13 @@ +--- xserver/hw/kdrive/linux/mouse.c.orig 2004-05-13 14:25:51.000000000 -0700 ++++ xserver/hw/kdrive/linux/mouse.c 2005-09-22 12:20:47.000000000 -0700 +@@ -927,8 +927,10 @@ char *kdefaultMouse[] = { + "/dev/psaux", + "/dev/input/mice", + "/dev/adbmouse", ++#ifdef BREAK_MY_SERIAL_CONSOLE + "/dev/ttyS0", + "/dev/ttyS1", ++#endif + }; + + #define NUM_DEFAULT_MOUSE (sizeof (kdefaultMouse) / sizeof (kdefaultMouse[0])) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.7.99.2.bb b/meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.7.99.2.bb new file mode 100644 index 00000000000..7ca88e64e2e --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.7.99.2.bb @@ -0,0 +1,28 @@ +require xserver-kdrive.inc + +DEPENDS += "libxkbfile libxcalibrate font-util" + +RDEPENDS_${PN} += "xkeyboard-config" + +EXTRA_OECONF += "--disable-glx" + +PE = "1" +PR = "r25" + +SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \ + file://extra-kmodes.patch;patch=1 \ + file://disable-apm.patch;patch=1 \ + file://no-serial-probing.patch;patch=1 \ +# file://kdrive-evdev.patch;patch=1 \ +# file://kdrive-use-evdev.patch;patch=1 \ +# file://enable-builtin-fonts.patch;patch=1 \ +# file://optional-xkb.patch;patch=1 \ + file://keyboard-resume-workaround.patch;patch=1 \ + file://enable-xcalibrate.patch;patch=1 \ + file://hide-cursor-and-ppm-root.patch;patch=1 \ + file://fbdev_xrandr_ioctl.patch;patch=1 \ + file://fix-newer-xorg-headers.patch;patch=1 \ + file://crosscompile.patch;patch=1 \ + file://nodolt.patch;patch=1" + +S = "${WORKDIR}/xorg-server-${PV}" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc new file mode 100644 index 00000000000..cf69a1e1563 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc @@ -0,0 +1,33 @@ +DESCRIPTION = "The X.Org X server" +HOMEPAGE = "http://www.x.org" +SECTION = "x11/base" +LICENSE = "MIT-X" + +# xf86-*-* packages depend on an X server built with the xfree86 DDX +# so we have a virtual to represent that: +PROVIDES = "virtual/xserver-xf86" + +# Other packages tend to just care that there is *an* X server: +PROVIDES += "virtual/xserver" + +XORG_PN = "xorg-server" +SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig + +PACKAGES =+ "${PN}-utils" + +RDEPENDS_${PN} += "xserver-xf86-config xkeyboard-config" + +FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl" +FILES_${PN} = "${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/xserver/SecurityPolicy ${libdir}/xorg/modules/*.so ${libdir}/xorg/modules/*/*.so ${libdir}/xorg/modules/*/*/*.so /etc/X11 " +FILES_${PN}-doc += "${libdir}/X11/doc /usr/share/X11/xkb/compiled/README.compiled" + +FILES_${PN}-dbg += "${libdir}/xorg/modules/.debug \ + ${libdir}/xorg/modules/*/.debug \ + ${libdir}/xorg/modules/*/*/.debug \ + " + +SRC_URI += "file://macro_tweak.patch" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/igep0020/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/igep0020/xorg.conf new file mode 100644 index 00000000000..ae8a395a05e --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/igep0020/xorg.conf @@ -0,0 +1,47 @@ + +Section "Files" +EndSection + +Section "InputDevice" + Identifier "Generic Keyboard" + Driver "kbd" + Option "CoreKeyboard" + Option "XkbRules" "xorg" + Option "XkbModel" "pc105" + Option "XkbLayout" "us" +EndSection + +Section "InputDevice" + Identifier "Configured Mouse" + Driver "mouse" + Option "CorePointer" + Option "Device" "/dev/input/mice" + Option "Protocol" "ImPS/2" + Option "ZAxisMapping" "4 5" + Option "Emulate3Buttons" "true" +EndSection + +Section "Device" + Identifier "OMAPFB Graphics Controller" + Driver "omapfb" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "OMAPFB Graphics Controller" + Monitor "Generic Monitor" +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" + InputDevice "Generic Keyboard" + InputDevice "Configured Mouse" + Option "AllowEmptyInput" "no" +EndSection + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/netbook/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/netbook/xorg.conf new file mode 100644 index 00000000000..e18b9111991 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/netbook/xorg.conf @@ -0,0 +1,26 @@ +Section "Device" + Identifier "Intel Graphics Driver" + Driver "intel" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "Intel Graphics Driver" + Monitor "Generic Monitor" + DefaultDepth 24 +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" +EndSection + +Section "ServerFlags" + Option "DontZap" "0" + Option "AutoAddDevices" "False" +EndSection diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf new file mode 100644 index 00000000000..4216de7bdf3 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf @@ -0,0 +1,68 @@ + +Section "Files" +EndSection + +Section "InputDevice" + Identifier "Generic Keyboard" + Driver "kbd" + Option "CoreKeyboard" + Option "XkbRules" "xorg" + Option "XkbModel" "pc105" + Option "XkbLayout" "us" +EndSection + +Section "InputDevice" + Identifier "Configured Mouse" + Driver "vmmouse" + Option "CorePointer" + Option "Device" "/dev/input/mice" + Option "Protocol" "ImPS/2" + Option "ZAxisMapping" "4 5" + Option "Emulate3Buttons" "true" +EndSection + +Section "InputDevice" + Identifier "Qemu Tablet" + Driver "evdev" + Option "CorePointer" + Option "Device" "/dev/input/touchscreen0" + Option "USB" "on" +EndSection + +Section "Device" + Identifier "Graphics Controller" + Driver "vmware" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" + # 1024x600 59.85 Hz (CVT) hsync: 37.35 kHz; pclk: 49.00 MHz + Modeline "1024x600_60.00" 49.00 1024 1072 1168 1312 600 603 613 624 -hsync +vsync + # 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz + ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync + # 640x480 @ 72Hz (VESA) hsync: 37.9kHz + ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync + # 640x480 @ 75Hz (VESA) hsync: 37.5kHz + ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync + # 640x480 @ 85Hz (VESA) hsync: 43.3kHz + ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "Graphics Controller" + Monitor "Generic Monitor" + SubSection "Display" + Modes "640x480" + EndSubSection +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" + InputDevice "Generic Keyboard" + # InputDevice "Configured Mouse" + InputDevice "QEMU Tablet" + Option "AllowEmptyInput" "no" +EndSection diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf new file mode 100644 index 00000000000..4216de7bdf3 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf @@ -0,0 +1,68 @@ + +Section "Files" +EndSection + +Section "InputDevice" + Identifier "Generic Keyboard" + Driver "kbd" + Option "CoreKeyboard" + Option "XkbRules" "xorg" + Option "XkbModel" "pc105" + Option "XkbLayout" "us" +EndSection + +Section "InputDevice" + Identifier "Configured Mouse" + Driver "vmmouse" + Option "CorePointer" + Option "Device" "/dev/input/mice" + Option "Protocol" "ImPS/2" + Option "ZAxisMapping" "4 5" + Option "Emulate3Buttons" "true" +EndSection + +Section "InputDevice" + Identifier "Qemu Tablet" + Driver "evdev" + Option "CorePointer" + Option "Device" "/dev/input/touchscreen0" + Option "USB" "on" +EndSection + +Section "Device" + Identifier "Graphics Controller" + Driver "vmware" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" + # 1024x600 59.85 Hz (CVT) hsync: 37.35 kHz; pclk: 49.00 MHz + Modeline "1024x600_60.00" 49.00 1024 1072 1168 1312 600 603 613 624 -hsync +vsync + # 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz + ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync + # 640x480 @ 72Hz (VESA) hsync: 37.9kHz + ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync + # 640x480 @ 75Hz (VESA) hsync: 37.5kHz + ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync + # 640x480 @ 85Hz (VESA) hsync: 43.3kHz + ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "Graphics Controller" + Monitor "Generic Monitor" + SubSection "Display" + Modes "640x480" + EndSubSection +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" + InputDevice "Generic Keyboard" + # InputDevice "Configured Mouse" + InputDevice "QEMU Tablet" + Option "AllowEmptyInput" "no" +EndSection diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/xorg.conf new file mode 100644 index 00000000000..9c3d49019f2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/xorg.conf @@ -0,0 +1,26 @@ + +Section "Device" + Identifier "Intel Graphics Driver" + Driver "intel" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "Intel Graphics Driver" + Monitor "Generic Monitor" + DefaultDepth 24 +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" +EndSection + +Section "ServerFlags" + Option "DontZap" "0" +EndSection diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb new file mode 100644 index 00000000000..fc91285f27c --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "X.Org X server configuration file" +HOMEPAGE = "http://www.x.org" +SECTION = "x11/base" +LICENSE = "MIT-X" +PR = "r9" + +SRC_URI = "file://xorg.conf" + +CONFFILES_${PN} += "${sysconfdir}/X11/xorg.conf" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +do_install () { + install -d ${D}/${sysconfdir}/X11 + install -m 0644 ${WORKDIR}/xorg.conf ${D}/${sysconfdir}/X11/ +} + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc new file mode 100644 index 00000000000..db2d1266bb6 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc @@ -0,0 +1,37 @@ +require xserver-xf86-common.inc + +PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86rushproto xf86vidmodeproto xf86bigfontproto compositeproto recordproto resourceproto videoproto scrnsaverproto evieext trapproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto glproto" + +LIB_DEPS = "pixman virtual/libgl libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +RDEPENDS_${PN} += "hal xorg-minimal-fonts" + +FILES_${PN} += "${bindir}/Xorg " + +EXTRA_OECONF += "--disable-static \ + --disable-acfb \ + --disable-ccfb \ + --disable-mcfb \ + --disable-dga \ + --disable-xinerama \ + --disable-xf86misc \ + --disable-xorgcfg \ + --disable-record \ + --disable-dmx \ + --disable-xnest \ + --disable-xvfb \ + --enable-composite \ + --enable-glx-tls \ + --sysconfdir=/etc/X11 \ + --localstatedir=/var \ + --with-pic \ + --with-int10=x86emu \ + --with-fontdir=/usr/share/fonts/X11 \ + --with-xkb-output=/var/lib/xkb \ + ac_cv_file__usr_share_sgml_X11_defs_ent=no" + +# Due to mesa-dri +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch new file mode 100644 index 00000000000..b121bba6550 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch @@ -0,0 +1,358 @@ +From 0f70ba9d3412b17ac4e08e33e1be3c226c06ea54 Mon Sep 17 00:00:00 2001 +From: Yan Li <yan.i.li@intel.com> +Date: Tue, 12 May 2009 17:49:07 +0800 +Subject: [PATCH] XKB: cache xkbcomp output for fast start-up v5 for 1.6.1 +Organization: Intel + +xkbcomp outputs will be cached in files with hashed keymap as +names. This saves boot time for around 1s on commodity netbooks. + +Signed-off-by: Yan Li <yan.i.li@intel.com> +--- + configure.ac | 6 +- + xkb/README.compiled | 8 +- + xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++--------- + 3 files changed, 164 insertions(+), 42 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 4c4c797..7a5020a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -476,9 +476,9 @@ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [ + AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]), + [ XKBPATH="$withval" ], + [ XKBPATH="${datadir}/X11/xkb" ]) +-AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]), ++AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${localstatedir}/cache/xkb)]), + [ XKBOUTPUT="$withval" ], +- [ XKBOUTPUT="compiled" ]) ++ [ XKBOUTPUT="${localstatedir}/cache/xkb" ]) + AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH], + [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]), + [ SERVERCONFIG="$withval" ], +@@ -1757,7 +1757,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir, [Path to XKB bin dir]) + XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` + + if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then +- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT" ++ AC_MSG_ERROR([xkb-output must be an absolute path.]) + fi + + # XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed +diff --git a/xkb/README.compiled b/xkb/README.compiled +index 71caa2f..a4a2ae0 100644 +--- a/xkb/README.compiled ++++ b/xkb/README.compiled +@@ -4,10 +4,10 @@ current keymap and/or any scratch keymaps used by clients. The X server + or some other tool might destroy or replace the files in this directory, + so it is not a safe place to store compiled keymaps for long periods of + time. The default keymap for any server is usually stored in: +- X<num>-default.xkm +-where <num> is the display number of the server in question, which makes +-it possible for several servers *on the same host* to share the same +-directory. ++ server-<SHA1>.xkm ++ ++where <SHA1> is the SHA1 hash of keymap source, so that compiled ++keymap of different keymap sources are stored in different files. + + Unless the X server is modified, sharing this directory between servers on + different hosts could cause problems. +diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c +index 4d5dfb6..60a68af 100644 +--- a/xkb/ddxLoad.c ++++ b/xkb/ddxLoad.c +@@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. + #include <xkb-config.h> + #endif + ++#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ ++# include <sha1.h> ++#else /* Use OpenSSL's libcrypto */ ++# include <stddef.h> /* buggy openssl/sha.h wants size_t */ ++# include <openssl/sha.h> ++#endif + #include <stdio.h> + #include <ctype.h> + #define NEED_EVENTS 1 +@@ -46,24 +52,13 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. + #define XKBSRV_NEED_FILE_FUNCS + #include <xkbsrv.h> + #include <X11/extensions/XI.h> ++#include <errno.h> + #include "xkb.h" + + #if defined(CSRG_BASED) || defined(linux) || defined(__GNU__) + #include <paths.h> + #endif + +- /* +- * If XKM_OUTPUT_DIR specifies a path without a leading slash, it is +- * relative to the top-level XKB configuration directory. +- * Making the server write to a subdirectory of that directory +- * requires some work in the general case (install procedure +- * has to create links to /var or somesuch on many machines), +- * so we just compile into /usr/tmp for now. +- */ +-#ifndef XKM_OUTPUT_DIR +-#define XKM_OUTPUT_DIR "compiled/" +-#endif +- + #define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\"" + #define ERROR_PREFIX "\"> \"" + #define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\"" +@@ -179,6 +174,45 @@ OutputDirectory( + } + + static Bool ++Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH*2+1], const char * input) ++{ ++ int i; ++ unsigned char sha1[SHA_DIGEST_LENGTH]; ++ ++#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ ++ SHA1_CTX ctx; ++ ++ SHA1Init (&ctx); ++ SHA1Update (&ctx, input, strlen(input)); ++ SHA1Final (sha1, &ctx); ++#else /* Use OpenSSL's libcrypto */ ++ SHA_CTX ctx; ++ int success; ++ ++ success = SHA1_Init (&ctx); ++ if (! success) ++ return BadAlloc; ++ ++ success = SHA1_Update (&ctx, input, strlen(input)); ++ if (! success) ++ return BadAlloc; ++ ++ success = SHA1_Final (sha1, &ctx); ++ if (! success) ++ return BadAlloc; ++#endif ++ ++ /* convert sha1 to sha1_asc */ ++ for(i=0; i<SHA_DIGEST_LENGTH; ++i) { ++ sprintf(sha1Asc+i*2, "%02X", sha1[i]); ++ } ++ ++ return Success; ++} ++ ++/* call xkbcomp and compile XKB keymap, return xkm file name in ++ nameRtrn */ ++static Bool + XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + XkbComponentNamesPtr names, + unsigned want, +@@ -187,7 +221,11 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + int nameRtrnLen) + { + FILE * out; +- char *buf = NULL, keymap[PATH_MAX], xkm_output_dir[PATH_MAX]; ++ char * buf = NULL, xkmfile[PATH_MAX], xkm_output_dir[PATH_MAX]; ++ char * tmpXkmFile = NULL; ++ char * canonicalXkmFileName = NULL; ++ char sha1Asc[SHA_DIGEST_LENGTH*2+1], xkbKeyMapBuf[100*1024]; ++ int ret, result; + + const char *emptystring = ""; + const char *xkbbasedirflag = emptystring; +@@ -198,16 +236,70 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + /* WIN32 has no popen. The input must be stored in a file which is + used as input for xkbcomp. xkbcomp does not read from stdin. */ + char tmpname[PATH_MAX]; +- const char *xkmfile = tmpname; ++ const char *xkbfile = tmpname; + #else +- const char *xkmfile = "-"; ++ const char *xkbfile = "-"; + #endif + +- snprintf(keymap, sizeof(keymap), "server-%s", display); ++ /* Write keymap source (xkbfile) to memory buffer `xkbKeyMapBuf', ++ of which SHA1 is generated and used as result xkm file name */ ++ memset(xkbKeyMapBuf, 0, sizeof(xkbKeyMapBuf)); ++ out = fmemopen(xkbKeyMapBuf, sizeof(xkbKeyMapBuf), "w"); ++ if (NULL == out) { ++ ErrorF("[xkb] Open xkbKeyMapBuf for writing failed\n"); ++ return False; ++ } ++ ret = XkbWriteXKBKeymapForNames(out, names, xkb, want, need); ++ if (fclose(out) !=0) ++ { ++ ErrorF("[xkb] XkbWriteXKBKeymapForNames error, perhaps xkbKeyMapBuf is too small\n"); ++ return False; ++ } ++#ifdef DEBUG ++ if (xkbDebugFlags) { ++ ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); ++ fputs(xkbKeyMapBuf, stderr); ++ } ++#endif ++ if (!ret) { ++ ErrorF("[xkb] Generating XKB Keymap failed, giving up compiling keymap\n"); ++ return False; ++ } ++ ++ DebugF("[xkb] computing SHA1 of keymap\n"); ++ if (Success == Sha1Asc(sha1Asc, xkbKeyMapBuf)) { ++ snprintf(xkmfile, sizeof(xkmfile), "server-%s", sha1Asc); ++ } ++ else { ++ ErrorF("[xkb] Computing SHA1 of keymap failed, " ++ "using display name instead as xkm file name\n"); ++ snprintf(xkmfile, sizeof(xkmfile), "server-%s", display); ++ } + +- XkbEnsureSafeMapName(keymap); ++ XkbEnsureSafeMapName(xkmfile); + OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir)); + ++ /* set nameRtrn, fail if it's too small */ ++ if ((strlen(xkmfile)+1 > nameRtrnLen) && nameRtrn) { ++ ErrorF("[xkb] nameRtrn too small to hold xkmfile name\n"); ++ return False; ++ } ++ strncpy(nameRtrn, xkmfile, nameRtrnLen); ++ ++ /* if the xkm file already exists, reuse it */ ++ canonicalXkmFileName = Xprintf("%s%s.xkm", xkm_output_dir, xkmfile); ++ if (access(canonicalXkmFileName, R_OK) == 0) { ++ /* yes, we can reuse the old xkm file */ ++ LogMessage(X_INFO, "XKB: reuse xkmfile %s\n", canonicalXkmFileName); ++ result = True; ++ goto _ret; ++ } ++ LogMessage(X_INFO, "XKB: generating xkmfile %s\n", canonicalXkmFileName); ++ ++ /* continue to call xkbcomp to compile the keymap. to avoid race ++ condition, we compile it to a tmpfile then rename it to ++ xkmfile */ ++ + #ifdef WIN32 + strcpy(tmpname, Win32TempDir()); + strcat(tmpname, "\\xkb_XXXXXX"); +@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + } + } + ++ if ( (tmpXkmFile = tempnam(xkm_output_dir, NULL)) == NULL ) { ++ ErrorF("[xkb] Can't generate temp xkm file name"); ++ result = False; ++ goto _ret; ++ } ++ + buf = Xprintf("\"%s%sxkbcomp\" -w %d %s -xkm \"%s\" " +- "-em1 %s -emp %s -eml %s \"%s%s.xkm\"", ++ "-em1 %s -emp %s -eml %s \"%s\"", + xkbbindir, xkbbindirsep, + ( (xkbDebugFlags < 2) ? 1 : + ((xkbDebugFlags > 10) ? 10 : (int)xkbDebugFlags) ), +- xkbbasedirflag, xkmfile, ++ xkbbasedirflag, xkbfile, + PRE_ERROR_MSG, ERROR_PREFIX, POST_ERROR_MSG1, +- xkm_output_dir, keymap); ++ tmpXkmFile); + + if (xkbbasedirflag != emptystring) { + xfree(xkbbasedirflag); + } + ++ /* there's a potential race condition between calling tempnam() ++ and invoking xkbcomp to write the result file (potential temp ++ file name conflicts), but since xkbcomp is a standalone ++ program, we have to live with this */ ++ + #ifndef WIN32 + out= Popen(buf,"w"); + #else +@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + #endif + + if (out!=NULL) { +-#ifdef DEBUG +- if (xkbDebugFlags) { +- ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); +- XkbWriteXKBKeymapForNames(stderr,names,xkb,want,need); ++ /* write XKBKeyMapBuf to xkbcomp */ ++ if (EOF==fputs(xkbKeyMapBuf, out)) ++ { ++ ErrorF("[xkb] Sending keymap to xkbcomp failed\n"); ++ result = False; ++ goto _ret; + } +-#endif +- XkbWriteXKBKeymapForNames(out,names,xkb,want,need); + #ifndef WIN32 + if (Pclose(out)==0) + #else + if (fclose(out)==0 && System(buf) >= 0) + #endif + { ++ /* xkbcomp success */ + if (xkbDebugFlags) + DebugF("[xkb] xkb executes: %s\n",buf); +- if (nameRtrn) { +- strncpy(nameRtrn,keymap,nameRtrnLen); +- nameRtrn[nameRtrnLen-1]= '\0'; ++ ++ /* if canonicalXkmFileName already exists now, we simply ++ overwrite it, this is OK */ ++ ret = rename(tmpXkmFile, canonicalXkmFileName); ++ if (0 != ret) { ++ ErrorF("[xkb] Can't rename %s to %s, error: %s\n", ++ tmpXkmFile, canonicalXkmFileName, ++ strerror(errno)); ++ ++ /* in case of error, don't unlink tmpXkmFile, leave it ++ for debugging */ ++ ++ result = False; ++ goto _ret; + } +- if (buf != NULL) +- xfree (buf); +- return True; ++ ++ result = True; ++ goto _ret; + } + else +- LogMessage(X_ERROR, "Error compiling keymap (%s)\n", keymap); ++ LogMessage(X_ERROR, "Error compiling keymap (%s)\n", xkbfile); + #ifdef WIN32 + /* remove the temporary file */ + unlink(tmpname); +@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + } + if (nameRtrn) + nameRtrn[0]= '\0'; ++ result = False; ++ ++_ret: ++ if (tmpXkmFile) ++ free(tmpXkmFile); ++ if (canonicalXkmFileName) ++ xfree(canonicalXkmFileName); + if (buf != NULL) + xfree (buf); +- return False; ++ ++ return result; + } + + static FILE * +@@ -375,7 +498,6 @@ unsigned missing; + DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined); + } + fclose(file); +- (void) unlink (fileName); + return (need|want)&(~missing); + } + +-- +1.5.6.5 + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch new file mode 100644 index 00000000000..8b82de22232 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch @@ -0,0 +1,20 @@ +diff --git a/configure.ac b/configure.ac +index b3b752c..600500b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -523,13 +523,9 @@ dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d, + dnl otherwise uses standard subdirectories of FONTROOTDIR. When cross + dnl compiling, assume default font path uses standard FONTROOTDIR directories. + DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" +-if test "$cross_compiling" != yes; then +- AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d], +- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'], +- [case $host_os in ++ case $host_os in + darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; +- esac]) +-fi ++ esac + AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), + [ FONTPATH="$withval" ], + [ FONTPATH="${DEFAULT_FONT_PATH}" ]) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/doublefix.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/doublefix.patch new file mode 100644 index 00000000000..092a7129037 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/doublefix.patch @@ -0,0 +1,13 @@ +Index: xorg-server-1.6.0/hw/xfree86/common/Makefile.am +=================================================================== +--- xorg-server-1.6.0.orig/hw/xfree86/common/Makefile.am 2010-02-01 14:04:53.247789918 +0000 ++++ xorg-server-1.6.0/hw/xfree86/common/Makefile.am 2010-02-01 14:05:27.787817002 +0000 +@@ -46,7 +46,7 @@ + sdk_HEADERS = compiler.h fourcc.h xf86.h xf86Module.h xf86Opt.h \ + xf86PciInfo.h xf86Priv.h xf86Privstr.h xf86Resources.h \ + xf86cmap.h xf86fbman.h xf86str.h xf86RAC.h xf86Xinput.h xisb.h \ +- $(XVSDKINCS) xorgVersion.h \ ++ xorgVersion.h \ + xf86sbusBus.h xf86xv.h xf86xvmc.h xf86xvpriv.h + + DISTCLEANFILES = xf86Build.h diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/drmfix.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/drmfix.patch new file mode 100644 index 00000000000..a62a767f23a --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/drmfix.patch @@ -0,0 +1,13 @@ +Index: xorg-server-1.4/hw/xfree86/os-support/linux/Makefile.am +=================================================================== +--- xorg-server-1.4.orig/hw/xfree86/os-support/linux/Makefile.am 2007-08-23 21:04:53.000000000 +0200 ++++ xorg-server-1.4/hw/xfree86/os-support/linux/Makefile.am 2008-03-13 18:27:23.000000000 +0100 +@@ -41,7 +41,7 @@ + + AM_CFLAGS = -DUSESTDRES -DHAVE_SYSV_IPC $(DIX_CFLAGS) $(XORG_CFLAGS) $(PLATFORM_DEFINES) + +-INCLUDES = $(XORG_INCS) $(PLATFORM_INCLUDES) -I/usr/include/drm # FIXME this last part is crack ++INCLUDES = $(XORG_INCS) $(PLATFORM_INCLUDES) $(LIBDRM_CFLAGS) + + # FIXME: These need to be added to the build + LNX_EXTRA_SRCS = \ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros.patch new file mode 100644 index 00000000000..eed491b4d94 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros.patch @@ -0,0 +1,21 @@ +We need to insert the sysroot path into compiler commandlines for this +kind of variable use, otherwise we're looking into /usr/include/. + +RP - 26/11/09 + +Index: git/xorg-server.m4 +=================================================================== +--- git.orig/xorg-server.m4 2009-11-10 12:04:34.000000000 +0000 ++++ git/xorg-server.m4 2009-11-27 00:05:02.000000000 +0000 +@@ -28,9 +28,10 @@ + # Checks for the $1 define in xorg-server.h (from the sdk). If it + # is defined, then add $1 to $REQUIRED_MODULES. + ++m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$]) + AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ + SAVE_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -I`pkg-config --variable=sdkdir xorg-server`" ++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`pkg-config --variable=sdkdir xorg-server`" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include "xorg-server.h" + #if !defined $1 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch new file mode 100644 index 00000000000..94852f0dea1 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch @@ -0,0 +1,22 @@ +We need to insert the sysroot path into compiler commandlines for this +kind of variable use, otherwise we're looking into /usr/include/. + +RP - 26/11/09 + +Index: git/xorg-server.m4 +=================================================================== +--- git.orig/xorg-server.m4 2010-02-05 10:00:55.000000000 +0000 ++++ git/xorg-server.m4 2010-02-05 10:02:12.000000000 +0000 +@@ -28,10 +28,11 @@ + # Checks for the $1 define in xorg-server.h (from the sdk). If it + # is defined, then add $1 to $REQUIRED_MODULES. + ++m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$]) + AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ + AC_REQUIRE([PKG_PROG_PKG_CONFIG]) + SAVE_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" ++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include "xorg-server.h" + #if !defined $1 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch new file mode 100644 index 00000000000..565832eed8f --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch @@ -0,0 +1,13 @@ +Index: git/os/osdep.h +=================================================================== +--- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100 ++++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100 +@@ -92,7 +92,7 @@ + * like sysconf(_SC_OPEN_MAX) is not supported. + */ + +-#if OPEN_MAX <= 256 ++#if 0 + #define MAXSOCKS (OPEN_MAX - 1) + #else + #define MAXSOCKS 256 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/libdri-xinerama-symbol.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/libdri-xinerama-symbol.patch new file mode 100644 index 00000000000..db29da93ca2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/libdri-xinerama-symbol.patch @@ -0,0 +1,50 @@ +Index: xorg-server-1.5.0/hw/xfree86/dri/dri.c +=================================================================== +--- xorg-server-1.5.0.orig/hw/xfree86/dri/dri.c 2008-09-24 17:43:04.000000000 +0100 ++++ xorg-server-1.5.0/hw/xfree86/dri/dri.c 2008-09-24 17:46:38.000000000 +0100 +@@ -73,10 +73,6 @@ + + #define PCI_BUS_NO_DOMAIN(bus) ((bus) & 0xffu) + +-#if !defined(PANORAMIX) +-extern Bool noPanoramiXExtension; +-#endif +- + static int DRIEntPrivIndex = -1; + static DevPrivateKey DRIScreenPrivKey = &DRIScreenPrivKey; + static DevPrivateKey DRIWindowPrivKey = &DRIWindowPrivKey; +@@ -307,7 +303,6 @@ + drm_context_t * reserved; + int reserved_count; + int i; +- Bool xineramaInCore = FALSE; + DRIEntPrivPtr pDRIEntPriv; + ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + DRIContextFlags flags = 0; +@@ -320,20 +315,13 @@ + return FALSE; + } + +- /* +- * If Xinerama is on, don't allow DRI to initialise. It won't be usable +- * anyway. +- */ +- if (xf86LoaderCheckSymbol("noPanoramiXExtension")) +- xineramaInCore = TRUE; +- +- if (xineramaInCore) { +- if (!noPanoramiXExtension) { +- DRIDrvMsg(pScreen->myNum, X_WARNING, +- "Direct rendering is not supported when Xinerama is enabled\n"); +- return FALSE; +- } ++#if defined(PANORAMIX) ++ if (!noPanoramiXExtension) { ++ DRIDrvMsg(pScreen->myNum, X_WARNING, ++ "Direct rendering is not supported when Xinerama is enabled\n"); ++ return FALSE; + } ++#endif + + if (!DRIOpenDRMMaster(pScrn, pDRIInfo->SAREASize, + pDRIInfo->busIdString, diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch new file mode 100644 index 00000000000..cd408c7bc2f --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch @@ -0,0 +1,28 @@ +This is the revised version of files/macro_tweak.patch for +xorg-server 1.8.99.904. + +the files/macro_tweak.patch can not removed now since it is used by +xserver-kdrive-1.7.99.2 and xserver-xf86-lite_1.7.99.2. Once they +are all upgraded to 1.8.99.904, the the files/macro_tweak.patch +can be safely replace by this patch. + +Signed-off-by: Yu Ke <ke.yu@intel.com> + +diff --git a/xorg-server.m4 b/xorg-server.m4 +index bdecf62..040fdb8 100644 +--- a/xorg-server.m4 ++++ b/xorg-server.m4 +@@ -28,10 +28,12 @@ dnl + # Checks for the $1 define in xorg-server.h (from the sdk). If it + # is defined, then add $1 to $REQUIRED_MODULES. + ++m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR) ++ + AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ + AC_REQUIRE([PKG_PROG_PKG_CONFIG]) + SAVE_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" ++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include "xorg-server.h" + #if !defined $1 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/nodolt.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/nodolt.patch new file mode 100644 index 00000000000..6b34032a39b --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/nodolt.patch @@ -0,0 +1,12 @@ +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2009-01-15 20:35:31.000000000 +0000 ++++ git/configure.ac 2009-01-15 20:35:38.000000000 +0000 +@@ -62,7 +62,6 @@ + AC_LIBTOOL_WIN32_DLL + AC_DISABLE_STATIC + AC_PROG_LIBTOOL +-DOLT + AC_PROG_MAKE_SET + PKG_PROG_PKG_CONFIG + AC_PROG_LEX diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch new file mode 100755 index 00000000000..3d2fa1669a2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch @@ -0,0 +1,12 @@ +diff -urN xorg-server-1.5.99.1/hw/xfree86/dri2/dri2.c xorg-server-1.5.99.1.new/hw/xfree86/dri2/dri2.c +--- xorg-server-1.5.99.1/hw/xfree86/dri2/dri2.c 2008-09-01 03:26:37.000000000 +0800 ++++ xorg-server-1.5.99.1.new/hw/xfree86/dri2/dri2.c 2008-09-18 00:28:16.000000000 +0800 +@@ -39,7 +39,7 @@ + #include "scrnintstr.h" + #include "windowstr.h" + #include "dri2.h" +-#include <GL/internal/dri_sarea.h> ++//#include <GL/internal/dri_sarea.h> + + #include "xf86.h" + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch new file mode 100755 index 00000000000..7ff3658d0c7 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch @@ -0,0 +1,23 @@ +commit 67b9b3a77a8b86eef03af36a0f4be3a07411efee +Author: Eric Anholt <eric@anholt.net> +Date: Thu Sep 11 16:18:17 2008 -0700 + + Enable DRI2 build. + +diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am +index eff2c31..98d7ec8 100644 +--- a/hw/xfree86/Makefile.am ++++ b/hw/xfree86/Makefile.am +@@ -4,9 +4,9 @@ if DRI + DRI_SUBDIR = dri + endif + +-#if DRI2 +-#DRI2_SUBDIR = dri2 +-#endif ++if DRI2 ++DRI2_SUBDIR = dri2 ++endif + + if XF86UTILS + XF86UTILS_SUBDIR = utils diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-1.5.0-bg-none-root.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-1.5.0-bg-none-root.patch new file mode 100644 index 00000000000..ef53689bd00 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-1.5.0-bg-none-root.patch @@ -0,0 +1,156 @@ +From a3e15680da24cb8259f6a83dee0c930dab024290 Mon Sep 17 00:00:00 2001 +From: Kristian <krh@redhat.com> +Date: Fri, 15 Aug 2008 15:15:14 +1000 +Subject: [PATCH] Add nr for background=none root + +--- + dix/globals.c | 1 + + dix/window.c | 22 ++++++++++++---------- + hw/xfree86/common/xf86Init.c | 11 +++++++++++ + hw/xfree86/common/xf86str.h | 5 ++++- + include/opaque.h | 1 + + os/utils.c | 3 +++ + 6 files changed, 32 insertions(+), 11 deletions(-) + +diff --git a/dix/globals.c b/dix/globals.c +index 973dc43..dbd76bb 100644 +--- a/dix/globals.c ++++ b/dix/globals.c +@@ -141,6 +141,7 @@ FontPtr defaultFont; /* not declared in dix.h to avoid including font.h in + CursorPtr rootCursor; + Bool party_like_its_1989 = FALSE; + Bool whiteRoot = FALSE; ++Bool bgNoneRoot = FALSE; + + int cursorScreenDevPriv[MAXSCREENS]; + +diff --git a/dix/window.c b/dix/window.c +index c31fa87..8bb178d 100644 +--- a/dix/window.c ++++ b/dix/window.c +@@ -482,23 +482,24 @@ InitRootWindow(WindowPtr pWin) + pWin->cursorIsNone = FALSE; + pWin->optional->cursor = rootCursor; + rootCursor->refcnt++; +- ++ pWin->backingStore = defaultBackingStore; ++ pWin->forcedBS = (defaultBackingStore != NotUseful); + + if (party_like_its_1989) { + MakeRootTile(pWin); + backFlag |= CWBackPixmap; ++ pScreen->ChangeWindowAttributes(pWin, backFlag); ++ } else if (bgNoneRoot) { ++ /* nothing, handled in xf86CreateRootWindow */ + } else { + if (whiteRoot) + pWin->background.pixel = pScreen->whitePixel; + else + pWin->background.pixel = pScreen->blackPixel; + backFlag |= CWBackPixel; +- } + +- pWin->backingStore = defaultBackingStore; +- pWin->forcedBS = (defaultBackingStore != NotUseful); +- /* We SHOULD check for an error value here XXX */ +- (*pScreen->ChangeWindowAttributes)(pWin, backFlag); ++ pScreen->ChangeWindowAttributes(pWin, backFlag); ++ } + + MapWindow(pWin, serverClient); + } +diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c +index 236c00b..083a6ac 100644 +--- a/hw/xfree86/common/xf86Init.c ++++ b/hw/xfree86/common/xf86Init.c +@@ -79,6 +79,7 @@ + #ifdef RENDER + #include "picturestr.h" + #endif ++#include "xace.h" + + #include "globals.h" + +@@ -328,6 +329,7 @@ xf86CreateRootWindow(WindowPtr pWin) + int ret = TRUE; + int err = Success; + ScreenPtr pScreen = pWin->drawable.pScreen; ++ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + RootWinPropPtr pProp; + CreateWindowProcPtr CreateWindow = (CreateWindowProcPtr) + dixLookupPrivate(&pScreen->devPrivates, xf86CreateRootWindowKey); +@@ -381,6 +383,15 @@ xf86CreateRootWindow(WindowPtr pWin) + } + } + ++ if (bgNoneRoot && pScrn->canDoBGNoneRoot || 1) { ++ pWin->backgroundState = XaceBackgroundNoneState(pWin); ++ pWin->background.pixel = pScreen->whitePixel; ++ pScreen->ChangeWindowAttributes(pWin, CWBackPixmap | CWBorderPixel | CWCursor | CWBackingStore); ++ } else { ++ pWin->background.pixel = pScreen->blackPixel; ++ pScreen->ChangeWindowAttributes(pWin, CWBackPixel | CWBorderPixel | CWCursor | CWBackingStore); ++ } ++ + #ifdef DEBUG + ErrorF("xf86CreateRootWindow() returns %d\n", ret); + #endif +diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h +index 904c369..8c38f69 100644 +--- a/hw/xfree86/common/xf86str.h ++++ b/hw/xfree86/common/xf86str.h +@@ -531,7 +531,7 @@ typedef struct _confdrirec { + } confDRIRec, *confDRIPtr; + + /* These values should be adjusted when new fields are added to ScrnInfoRec */ +-#define NUM_RESERVED_INTS 16 ++#define NUM_RESERVED_INTS 15 + #define NUM_RESERVED_POINTERS 15 + #define NUM_RESERVED_FUNCS 11 + +@@ -959,6 +959,9 @@ typedef struct _ScrnInfoRec { + ClockRangesPtr clockRanges; + int adjustFlags; + ++ /* -nr support */ ++ int canDoBGNoneRoot; ++ + /* + * These can be used when the minor ABI version is incremented. + * The NUM_* parameters must be reduced appropriately to keep the +diff --git a/include/opaque.h b/include/opaque.h +index 07a0715..be1577b 100644 +--- a/include/opaque.h ++++ b/include/opaque.h +@@ -71,6 +71,7 @@ extern Bool defeatAccessControl; + extern long maxBigRequestSize; + extern Bool party_like_its_1989; + extern Bool whiteRoot; ++extern Bool bgNoneRoot; + + extern Bool CoreDump; + +diff --git a/os/utils.c b/os/utils.c +index b100949..c41b45b 100644 +--- a/os/utils.c ++++ b/os/utils.c +@@ -515,6 +515,7 @@ void UseMsg(void) + #endif + ErrorF("-nolisten string don't listen on protocol\n"); + ErrorF("-noreset don't reset after last client exists\n"); ++ ErrorF("-nr create root window with no background\n"); + ErrorF("-reset reset after last client exists\n"); + ErrorF("-p # screen-saver pattern duration (minutes)\n"); + ErrorF("-pn accept failure to listen on all ports\n"); +@@ -859,6 +860,8 @@ ProcessCommandLine(int argc, char *argv[]) + defaultBackingStore = WhenMapped; + else if ( strcmp( argv[i], "-wr") == 0) + whiteRoot = TRUE; ++ else if ( strcmp( argv[i], "-nr") == 0) ++ bgNoneRoot = TRUE; + else if ( strcmp( argv[i], "-maxbigreqsize") == 0) { + if(++i < argc) { + long reqSizeArg = atol(argv[i]); +-- +1.5.3.4 + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-DRI2Swapbuffer.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-DRI2Swapbuffer.patch new file mode 100644 index 00000000000..2754170d2f3 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-DRI2Swapbuffer.patch @@ -0,0 +1,179 @@ +diff --git a/glx/glxdri2.c b/glx/glxdri2.c +index 146ea82..3b5338b 100644 +--- a/glx/glxdri2.c ++++ b/glx/glxdri2.c +@@ -70,6 +70,7 @@ struct __GLXDRIscreen { + + const __DRIcoreExtension *core; + const __DRIdri2Extension *dri2; ++ const __DRI2flushExtension *flush; + const __DRIcopySubBufferExtension *copySubBuffer; + const __DRIswapControlExtension *swapControl; + const __DRItexBufferExtension *texBuffer; +@@ -135,10 +136,14 @@ __glXDRIdrawableCopySubBuffer(__GLXdrawable *drawable, + static GLboolean + __glXDRIdrawableSwapBuffers(__GLXdrawable *drawable) + { +- __GLXDRIdrawable *private = (__GLXDRIdrawable *) drawable; ++ __GLXDRIdrawable *priv = (__GLXDRIdrawable *) drawable; ++ __GLXDRIscreen *screen = priv->screen; ++ ++ if (!DRI2SwapBuffers(drawable->pDraw)) ++ return FALSE; + +- __glXDRIdrawableCopySubBuffer(drawable, 0, 0, +- private->width, private->height); ++ if (screen->flush->flushInvalidate) ++ (*screen->flush->flushInvalidate)(priv->driDrawable); + + return TRUE; + } +diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c +index 580383d..23e6467 100644 +--- a/hw/xfree86/dri2/dri2.c ++++ b/hw/xfree86/dri2/dri2.c +@@ -70,6 +70,7 @@ typedef struct _DRI2Screen { + DRI2CreateBufferProcPtr CreateBuffer; + DRI2DestroyBufferProcPtr DestroyBuffer; + DRI2CopyRegionProcPtr CopyRegion; ++ DRI2SwapBuffersProcPtr SwapBuffers; + + HandleExposuresProcPtr HandleExposures; + } DRI2ScreenRec, *DRI2ScreenPtr; +@@ -422,6 +423,49 @@ DRI2CopyRegion(DrawablePtr pDraw, RegionPtr pRegion, + return Success; + } + ++Bool ++DRI2SwapBuffers(DrawablePtr pDraw) ++{ ++ DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen); ++ DRI2DrawablePtr pPriv; ++ DRI2BufferPtr pDestBuffer, pSrcBuffer; ++ int i; ++ ++ pPriv = DRI2GetDrawable(pDraw); ++ if (pPriv == NULL) ++ return FALSE; ++ ++ pDestBuffer = NULL; ++ pSrcBuffer = NULL; ++ for (i = 0; i < pPriv->bufferCount; i++) ++ { ++ if (pPriv->buffers[i]->attachment == DRI2BufferFrontLeft) ++ pDestBuffer = (DRI2BufferPtr) pPriv->buffers[i]; ++ if (pPriv->buffers[i]->attachment == DRI2BufferBackLeft) ++ pSrcBuffer = (DRI2BufferPtr) pPriv->buffers[i]; ++ } ++ if (pSrcBuffer == NULL || pDestBuffer == NULL) ++ return FALSE; ++ ++ if (ds->SwapBuffers) { ++ if ((*ds->SwapBuffers)(pDraw, pDestBuffer, pSrcBuffer)) ++ return TRUE; ++ } ++ ++ BoxRec box; ++ RegionRec region; ++ ++ box.x1 = 0; ++ box.y1 = 0; ++ box.x2 = pDraw->width; ++ box.y2 = pDraw->height; ++ REGION_INIT(drawable->pDraw->pScreen, ®ion, &box, 0); ++ if (DRI2CopyRegion(pDraw, ®ion, DRI2BufferFrontLeft, DRI2BufferBackLeft) != Success) ++ return FALSE; ++ ++ return TRUE; ++} ++ + void + DRI2DestroyDrawable(DrawablePtr pDraw) + { +@@ -538,6 +582,9 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info) + } + ds->CopyRegion = info->CopyRegion; + ++ if (info->version >= 3) ++ ds->SwapBuffers = info->SwapBuffers; ++ + dixSetPrivate(&pScreen->devPrivates, dri2ScreenPrivateKey, ds); + + xf86DrvMsg(pScreen->myNum, X_INFO, "[DRI2] Setup complete\n"); +diff --git a/hw/xfree86/dri2/dri2.h b/hw/xfree86/dri2/dri2.h +index f369267..e2784dd 100644 +--- a/hw/xfree86/dri2/dri2.h ++++ b/hw/xfree86/dri2/dri2.h +@@ -67,6 +67,10 @@ typedef void (*DRI2CopyRegionProcPtr)(DrawablePtr pDraw, + DRI2BufferPtr pDestBuffer, + DRI2BufferPtr pSrcBuffer); + ++typedef Bool (*DRI2SwapBuffersProcPtr)(DrawablePtr pDraw, ++ DRI2BufferPtr pFrontBuffer, ++ DRI2BufferPtr pBackBuffer); ++ + typedef void (*DRI2WaitProcPtr)(WindowPtr pWin, + unsigned int sequence); + +@@ -90,6 +94,7 @@ typedef struct { + DRI2CreateBuffersProcPtr CreateBuffers; + DRI2DestroyBuffersProcPtr DestroyBuffers; + DRI2CopyRegionProcPtr CopyRegion; ++ DRI2SwapBuffersProcPtr SwapBuffers; + DRI2WaitProcPtr Wait; + + /** +@@ -153,4 +158,6 @@ extern _X_EXPORT DRI2Buffer2Ptr *DRI2GetBuffersWithFormat(DrawablePtr pDraw, + int *width, int *height, unsigned int *attachments, int count, + int *out_count); + ++extern _X_EXPORT Bool DRI2SwapBuffers(DrawablePtr pDraw); ++ + #endif +diff --git a/hw/xfree86/dri2/dri2ext.c b/hw/xfree86/dri2/dri2ext.c +index 3c06174..67b419b 100644 +--- a/hw/xfree86/dri2/dri2ext.c ++++ b/hw/xfree86/dri2/dri2ext.c +@@ -81,7 +81,7 @@ ProcDRI2QueryVersion(ClientPtr client) + rep.length = 0; + rep.sequenceNumber = client->sequence; + rep.majorVersion = 1; +- rep.minorVersion = 1; ++ rep.minorVersion = 2; + + if (client->swapped) { + swaps(&rep.sequenceNumber, n); +@@ -323,6 +323,24 @@ ProcDRI2CopyRegion(ClientPtr client) + } + + static int ++ProcDRI2SwapBuffers(ClientPtr client) ++{ ++ REQUEST(xDRI2SwapBuffersReq); ++ DrawablePtr pDrawable; ++ int status; ++ ++ REQUEST_SIZE_MATCH(xDRI2SwapBuffersReq); ++ ++ if (!validDrawable(client, stuff->drawable, &pDrawable, &status)) ++ return status; ++ ++ if (!DRI2SwapBuffers(pDrawable)) ++ return BadAlloc; ++ ++ return client->noClientException; ++} ++ ++static int + ProcDRI2Dispatch (ClientPtr client) + { + REQUEST(xReq); +@@ -350,6 +368,8 @@ ProcDRI2Dispatch (ClientPtr client) + return ProcDRI2CopyRegion(client); + case X_DRI2GetBuffersWithFormat: + return ProcDRI2GetBuffersWithFormat(client); ++ case X_DRI2SwapBuffers: ++ return ProcDRI2SwapBuffers(client); + default: + return BadRequest; + } diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch new file mode 100644 index 00000000000..efc85a42abe --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch @@ -0,0 +1,38 @@ +diff --git a/os/log.c b/os/log.c +index 0860847..2c46f1a 100644 +--- a/os/log.c ++++ b/os/log.c +@@ -255,6 +255,33 @@ LogVWrite(int verb, const char *f, va_list args) + static char tmpBuffer[1024]; + int len = 0; + ++ struct timeval time; ++ time_t tv_sec; ++ suseconds_t tv_usec; ++ static Bool first = TRUE; ++ static time_t start_tv_sec; ++ static suseconds_t start_usec; ++ int diff_sec, diff_usec; ++ ++ gettimeofday(&time, NULL); ++ tv_sec = time.tv_sec; ++ tv_usec = time.tv_usec; ++ if (first == TRUE) { ++ start_tv_sec = tv_sec; ++ start_usec = tv_usec; ++ first = FALSE; ++ } ++ diff_sec = (int)difftime(tv_sec, start_tv_sec); ++ diff_usec = (tv_usec - start_usec); ++ if (diff_usec < 0) { ++ diff_sec--; ++ diff_usec += 1000000; ++ } ++ sprintf(tmpBuffer, "[%d sec: %06d usec]", diff_sec , diff_usec); ++ len = strlen(tmpBuffer); ++ if (logFile) ++ fwrite(tmpBuffer, len, 1, logFile); ++ + /* + * Since a va_list can only be processed once, write the string to a + * buffer, and then write the buffer out to the appropriate output diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-no-root-2.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-no-root-2.patch new file mode 100644 index 00000000000..afc94dcc5cd --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/xserver-no-root-2.patch @@ -0,0 +1,105 @@ +diff --git a/hw/xfree86/os-support/linux/lnx_init.c b/hw/xfree86/os-support/linux/lnx_init.c
+index 7f40857..cf58c01 100644
+--- a/hw/xfree86/os-support/linux/lnx_init.c
++++ b/hw/xfree86/os-support/linux/lnx_init.c
+@@ -49,6 +49,7 @@ static Bool KeepTty = FALSE;
+ static int VTnum = -1;
+ static Bool VTSwitch = TRUE;
+ static Bool ShareVTs = FALSE;
++Bool NoHwAccess = FALSE;
+ static int activeVT = -1;
+
+ static int vtPermSave[4];
+@@ -80,9 +81,11 @@ saveVtPerms(void)
+ static void
+ restoreVtPerms(void)
+ {
+- /* Set the terminal permissions back to before we started. */
+- chown("/dev/tty0", vtPermSave[0], vtPermSave[1]);
+- chown(vtname, vtPermSave[2], vtPermSave[3]);
++ if (geteuid() == 0) {
++ /* Set the terminal permissions back to before we started. */
++ (void)chown("/dev/tty0", vtPermSave[0], vtPermSave[1]);
++ (void)chown(vtname, vtPermSave[2], vtPermSave[3]);
++ }
+ }
+
+ static void *console_handler;
+@@ -210,20 +213,22 @@ xf86OpenConsole(void)
+ xf86Msg(X_WARNING,
+ "xf86OpenConsole: Could not save ownership of VT\n");
+
+- /* change ownership of the vt */
+- if (chown(vtname, getuid(), getgid()) < 0)
+- xf86Msg(X_WARNING,"xf86OpenConsole: chown %s failed: %s\n",
+- vtname, strerror(errno));
+-
+- /*
+- * the current VT device we're running on is not "console", we want
+- * to grab all consoles too
+- *
+- * Why is this needed??
+- */
+- if (chown("/dev/tty0", getuid(), getgid()) < 0)
+- xf86Msg(X_WARNING,"xf86OpenConsole: chown /dev/tty0 failed: %s\n",
+- strerror(errno));
++ if (geteuid() == 0) {
++ /* change ownership of the vt */
++ if (chown(vtname, getuid(), getgid()) < 0)
++ xf86Msg(X_WARNING,"xf86OpenConsole: chown %s failed: %s\n",
++ vtname, strerror(errno));
++
++ /*
++ * the current VT device we're running on is not
++ * "console", we want to grab all consoles too
++ *
++ * Why is this needed??
++ */
++ if (chown("/dev/tty0", getuid(), getgid()) < 0)
++ xf86Msg(X_WARNING,"xf86OpenConsole: chown /dev/tty0 failed: %s\n",
++ strerror(errno));
++ }
+ }
+
+ /*
+@@ -433,6 +438,11 @@ xf86ProcessArgument(int argc, char *argv[], int i)
+ ShareVTs = TRUE;
+ return(1);
+ }
++ if (!strcmp(argv[i], "-nohwaccess"))
++ {
++ NoHwAccess = TRUE;
++ return(1);
++ }
+ if ((argv[i][0] == 'v') && (argv[i][1] == 't'))
+ {
+ if (sscanf(argv[i], "vt%2d", &VTnum) == 0)
+@@ -454,5 +464,6 @@ xf86UseMsg()
+ ErrorF("don't detach controlling tty (for debugging only)\n");
+ ErrorF("-novtswitch don't immediately switch to new VT\n");
+ ErrorF("-sharevts share VTs with another X server\n");
++ ErrorF("-nohwaccess don't access hardware ports directly\n");
+ return;
+ }
+diff --git a/hw/xfree86/os-support/linux/lnx_video.c b/hw/xfree86/os-support/linux/lnx_video.c
+index 688106a..34a845b 100644
+--- a/hw/xfree86/os-support/linux/lnx_video.c
++++ b/hw/xfree86/os-support/linux/lnx_video.c
+@@ -51,6 +51,7 @@
+ #define MAP_FAILED ((void *)-1)
+ #endif
+
++extern Bool NoHwAccess;
+ static Bool ExtendedEnabled = FALSE;
+
+ #ifdef __ia64__
+@@ -509,6 +510,9 @@ xf86EnableIO(void)
+ int fd;
+ unsigned int ioBase_phys;
+ #endif
++ /* Fake it... */
++ if (NoHwAccess)
++ return TRUE;
+
+ if (ExtendedEnabled)
+ return TRUE;
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.8.99.904.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.8.99.904.bb new file mode 100644 index 00000000000..98d79a1b281 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.8.99.904.bb @@ -0,0 +1,20 @@ +require xserver-xf86-dri-lite.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353" + +PROTO_DEPS += "xf86driproto dri2proto" + +DEPENDS += "font-util" + +PE = "1" +PR = "r1" + +SRC_URI += "file://nodolt.patch \ + file://crosscompile.patch" +# file://libdri-xinerama-symbol.patch;patch=1 \ +# file://xserver-boottime.patch;patch=1" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch" + +EXTRA_OECONF += "--enable-dri --enable-dri2" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb new file mode 100644 index 00000000000..4789f28f5fc --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb @@ -0,0 +1,31 @@ +require xserver-xf86-dri-lite.inc + +PE = "1" +PR = "r0" +PV = "1.7.99+git${SRCPV}" + +PROTO_DEPS += "xf86driproto dri2proto" + +DEPENDS += "font-util" + +RDEPENDS_${PN} += "xkeyboard-config" + +# file://cache-xkbcomp-output-for-fast-start-up.patch;patch=1 \ +# file://xserver-1.5.0-bg-none-root.patch;patch=1 \ +# file://xserver-no-root-2.patch;patch=1 \ +# file://xserver-boottime.patch;patch=1" +# file://xserver-DRI2Swapbuffer.patch;patch=1" + + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/xserver;protocol=git;branch=master \ + file://nodolt.patch;patch=1 \ + file://crosscompile.patch;patch=1 \ + file://fix_macros1.patch;patch=1" +# file://libdri-xinerama-symbol.patch;patch=1" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch;patch=1" + +EXTRA_OECONF += "--enable-dri --enable-dri2 --enable-dga" + +S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc new file mode 100644 index 00000000000..7150a2a466a --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc @@ -0,0 +1,34 @@ +require xserver-xf86-common.inc + +PROVIDES += "xserver-xf86-lite" + +PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86rushproto xf86vidmodeproto xf86bigfontproto compositeproto recordproto resourceproto videoproto scrnsaverproto evieext trapproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto glproto" + +LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +RDEPENDS_${PN} += "hal xorg-minimal-fonts" + +FILES_${PN} += "${bindir}/Xorg " + +EXTRA_OECONF += "--disable-static \ + --disable-acfb \ + --disable-ccfb \ + --disable-mcfb \ + --disable-dga \ + --disable-xinerama \ + --disable-xf86misc \ + --disable-xorgcfg \ + --disable-record \ + --disable-dmx \ + --disable-xnest \ + --disable-xvfb \ + --enable-composite \ + --disable-dri \ + --disable-glx \ + --sysconfdir=/etc/X11 \ + --localstatedir=/var \ + --with-fontdir=/usr/share/fonts/X11 \ + --with-xkb-output=/var/lib/xkb \ + ac_cv_file__usr_share_sgml_X11_defs_ent=no" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch new file mode 100644 index 00000000000..2341e40bca6 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch @@ -0,0 +1,19 @@ +Index: xorg-server-1.7.99.2/configure.ac +=================================================================== +--- xorg-server-1.7.99.2.orig/configure.ac 2010-01-29 16:38:49.000000000 +0000 ++++ xorg-server-1.7.99.2/configure.ac 2010-01-29 16:42:39.000000000 +0000 +@@ -503,14 +503,10 @@ + + dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d, + dnl otherwise uses standard subdirectories of FONTROOTDIR +-AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d], +- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'], +- [ + DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" + case $host_os in + darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; + esac +- ]) + AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), + [ FONTPATH="$withval" ], + [ FONTPATH="${DEFAULT_FONT_PATH}" ]) diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/drmfix.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/drmfix.patch new file mode 100644 index 00000000000..a62a767f23a --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/drmfix.patch @@ -0,0 +1,13 @@ +Index: xorg-server-1.4/hw/xfree86/os-support/linux/Makefile.am +=================================================================== +--- xorg-server-1.4.orig/hw/xfree86/os-support/linux/Makefile.am 2007-08-23 21:04:53.000000000 +0200 ++++ xorg-server-1.4/hw/xfree86/os-support/linux/Makefile.am 2008-03-13 18:27:23.000000000 +0100 +@@ -41,7 +41,7 @@ + + AM_CFLAGS = -DUSESTDRES -DHAVE_SYSV_IPC $(DIX_CFLAGS) $(XORG_CFLAGS) $(PLATFORM_DEFINES) + +-INCLUDES = $(XORG_INCS) $(PLATFORM_INCLUDES) -I/usr/include/drm # FIXME this last part is crack ++INCLUDES = $(XORG_INCS) $(PLATFORM_INCLUDES) $(LIBDRM_CFLAGS) + + # FIXME: These need to be added to the build + LNX_EXTRA_SRCS = \ diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch new file mode 100644 index 00000000000..565832eed8f --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch @@ -0,0 +1,13 @@ +Index: git/os/osdep.h +=================================================================== +--- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100 ++++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100 +@@ -92,7 +92,7 @@ + * like sysconf(_SC_OPEN_MAX) is not supported. + */ + +-#if OPEN_MAX <= 256 ++#if 0 + #define MAXSOCKS (OPEN_MAX - 1) + #else + #define MAXSOCKS 256 diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/libdri-xinerama-symbol.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/libdri-xinerama-symbol.patch new file mode 100644 index 00000000000..db29da93ca2 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/libdri-xinerama-symbol.patch @@ -0,0 +1,50 @@ +Index: xorg-server-1.5.0/hw/xfree86/dri/dri.c +=================================================================== +--- xorg-server-1.5.0.orig/hw/xfree86/dri/dri.c 2008-09-24 17:43:04.000000000 +0100 ++++ xorg-server-1.5.0/hw/xfree86/dri/dri.c 2008-09-24 17:46:38.000000000 +0100 +@@ -73,10 +73,6 @@ + + #define PCI_BUS_NO_DOMAIN(bus) ((bus) & 0xffu) + +-#if !defined(PANORAMIX) +-extern Bool noPanoramiXExtension; +-#endif +- + static int DRIEntPrivIndex = -1; + static DevPrivateKey DRIScreenPrivKey = &DRIScreenPrivKey; + static DevPrivateKey DRIWindowPrivKey = &DRIWindowPrivKey; +@@ -307,7 +303,6 @@ + drm_context_t * reserved; + int reserved_count; + int i; +- Bool xineramaInCore = FALSE; + DRIEntPrivPtr pDRIEntPriv; + ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + DRIContextFlags flags = 0; +@@ -320,20 +315,13 @@ + return FALSE; + } + +- /* +- * If Xinerama is on, don't allow DRI to initialise. It won't be usable +- * anyway. +- */ +- if (xf86LoaderCheckSymbol("noPanoramiXExtension")) +- xineramaInCore = TRUE; +- +- if (xineramaInCore) { +- if (!noPanoramiXExtension) { +- DRIDrvMsg(pScreen->myNum, X_WARNING, +- "Direct rendering is not supported when Xinerama is enabled\n"); +- return FALSE; +- } ++#if defined(PANORAMIX) ++ if (!noPanoramiXExtension) { ++ DRIDrvMsg(pScreen->myNum, X_WARNING, ++ "Direct rendering is not supported when Xinerama is enabled\n"); ++ return FALSE; + } ++#endif + + if (!DRIOpenDRMMaster(pScrn, pDRIInfo->SAREASize, + pDRIInfo->busIdString, diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/nodolt.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/nodolt.patch new file mode 100644 index 00000000000..6b34032a39b --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/nodolt.patch @@ -0,0 +1,12 @@ +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2009-01-15 20:35:31.000000000 +0000 ++++ git/configure.ac 2009-01-15 20:35:38.000000000 +0000 +@@ -62,7 +62,6 @@ + AC_LIBTOOL_WIN32_DLL + AC_DISABLE_STATIC + AC_PROG_LIBTOOL +-DOLT + AC_PROG_MAKE_SET + PKG_PROG_PKG_CONFIG + AC_PROG_LEX diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/revert_make_sys_c_use_unaligned_access_functions.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/revert_make_sys_c_use_unaligned_access_functions.patch new file mode 100644 index 00000000000..235b55153af --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/revert_make_sys_c_use_unaligned_access_functions.patch @@ -0,0 +1,256 @@ +From 74ab27f64a747ee45810f99cdc6e29b82cf8035e Mon Sep 17 00:00:00 2001 +From: Tiago Vignatti <tiago.vignatti@nokia.com> +Date: Mon, 28 Dec 2009 16:00:28 +0000 +Subject: Revert "Make sys.c use unaligned access functions provided in compiler." + +This reverts commit da923d0bc15e99a8ed1986bd6f5df37f7af7284b. + +Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com> +Signed-off-by: Keith Packard <keithp@keithp.com> +--- +diff --git a/hw/xfree86/x86emu/Makefile.am b/hw/xfree86/x86emu/Makefile.am +index e7368f5..df96977 100644 +--- a/hw/xfree86/x86emu/Makefile.am ++++ b/hw/xfree86/x86emu/Makefile.am +@@ -11,7 +11,7 @@ libx86emu_la_SOURCES = debug.c \ + sys.c \ + x86emu.h + +-INCLUDES = $(XORG_INCS) ++INCLUDES = + + AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS) + +diff --git a/hw/xfree86/x86emu/sys.c b/hw/xfree86/x86emu/sys.c +index 2ebf6f1..e15fb09 100644 +--- a/hw/xfree86/x86emu/sys.c ++++ b/hw/xfree86/x86emu/sys.c +@@ -48,13 +48,168 @@ + #ifndef NO_SYS_HEADERS + #include <string.h> + #endif +-#include "compiler.h" /* for unaligned access functions */ + /*------------------------- Global Variables ------------------------------*/ + + X86EMU_sysEnv _X86EMU_env; /* Global emulator machine state */ + X86EMU_intrFuncs _X86EMU_intrTab[256]; + + /*----------------------------- Implementation ----------------------------*/ ++#if defined(__alpha__) || defined(__alpha) ++/* to cope with broken egcs-1.1.2 :-(((( */ ++ ++#define ALPHA_UALOADS ++/* ++ * inline functions to do unaligned accesses ++ * from linux/include/asm-alpha/unaligned.h ++ */ ++ ++/* ++ * EGCS 1.1 knows about arbitrary unaligned loads. Define some ++ * packed structures to talk about such things with. ++ */ ++ ++#if defined(__GNUC__) ++struct __una_u64 { unsigned long x __attribute__((packed)); }; ++struct __una_u32 { unsigned int x __attribute__((packed)); }; ++struct __una_u16 { unsigned short x __attribute__((packed)); }; ++#endif ++ ++static __inline__ unsigned long ldq_u(unsigned long * r11) ++{ ++#if defined(__GNUC__) ++ const struct __una_u64 *ptr = (const struct __una_u64 *) r11; ++ return ptr->x; ++#else ++ unsigned long r1,r2; ++ __asm__("ldq_u %0,%3\n\t" ++ "ldq_u %1,%4\n\t" ++ "extql %0,%2,%0\n\t" ++ "extqh %1,%2,%1" ++ :"=&r" (r1), "=&r" (r2) ++ :"r" (r11), ++ "m" (*r11), ++ "m" (*(const unsigned long *)(7+(char *) r11))); ++ return r1 | r2; ++#endif ++} ++ ++static __inline__ unsigned long ldl_u(unsigned int * r11) ++{ ++#if defined(__GNUC__) ++ const struct __una_u32 *ptr = (const struct __una_u32 *) r11; ++ return ptr->x; ++#else ++ unsigned long r1,r2; ++ __asm__("ldq_u %0,%3\n\t" ++ "ldq_u %1,%4\n\t" ++ "extll %0,%2,%0\n\t" ++ "extlh %1,%2,%1" ++ :"=&r" (r1), "=&r" (r2) ++ :"r" (r11), ++ "m" (*r11), ++ "m" (*(const unsigned long *)(3+(char *) r11))); ++ return r1 | r2; ++#endif ++} ++ ++static __inline__ unsigned long ldw_u(unsigned short * r11) ++{ ++#if defined(__GNUC__) ++ const struct __una_u16 *ptr = (const struct __una_u16 *) r11; ++ return ptr->x; ++#else ++ unsigned long r1,r2; ++ __asm__("ldq_u %0,%3\n\t" ++ "ldq_u %1,%4\n\t" ++ "extwl %0,%2,%0\n\t" ++ "extwh %1,%2,%1" ++ :"=&r" (r1), "=&r" (r2) ++ :"r" (r11), ++ "m" (*r11), ++ "m" (*(const unsigned long *)(1+(char *) r11))); ++ return r1 | r2; ++#endif ++} ++ ++/* ++ * Elemental unaligned stores ++ */ ++ ++static __inline__ void stq_u(unsigned long r5, unsigned long * r11) ++{ ++#if defined(__GNUC__) ++ struct __una_u64 *ptr = (struct __una_u64 *) r11; ++ ptr->x = r5; ++#else ++ unsigned long r1,r2,r3,r4; ++ ++ __asm__("ldq_u %3,%1\n\t" ++ "ldq_u %2,%0\n\t" ++ "insqh %6,%7,%5\n\t" ++ "insql %6,%7,%4\n\t" ++ "mskqh %3,%7,%3\n\t" ++ "mskql %2,%7,%2\n\t" ++ "bis %3,%5,%3\n\t" ++ "bis %2,%4,%2\n\t" ++ "stq_u %3,%1\n\t" ++ "stq_u %2,%0" ++ :"=m" (*r11), ++ "=m" (*(unsigned long *)(7+(char *) r11)), ++ "=&r" (r1), "=&r" (r2), "=&r" (r3), "=&r" (r4) ++ :"r" (r5), "r" (r11)); ++#endif ++} ++ ++static __inline__ void stl_u(unsigned long r5, unsigned int * r11) ++{ ++#if defined(__GNUC__) ++ struct __una_u32 *ptr = (struct __una_u32 *) r11; ++ ptr->x = r5; ++#else ++ unsigned long r1,r2,r3,r4; ++ ++ __asm__("ldq_u %3,%1\n\t" ++ "ldq_u %2,%0\n\t" ++ "inslh %6,%7,%5\n\t" ++ "insll %6,%7,%4\n\t" ++ "msklh %3,%7,%3\n\t" ++ "mskll %2,%7,%2\n\t" ++ "bis %3,%5,%3\n\t" ++ "bis %2,%4,%2\n\t" ++ "stq_u %3,%1\n\t" ++ "stq_u %2,%0" ++ :"=m" (*r11), ++ "=m" (*(unsigned long *)(3+(char *) r11)), ++ "=&r" (r1), "=&r" (r2), "=&r" (r3), "=&r" (r4) ++ :"r" (r5), "r" (r11)); ++#endif ++} ++ ++static __inline__ void stw_u(unsigned long r5, unsigned short * r11) ++{ ++#if defined(__GNUC__) ++ struct __una_u16 *ptr = (struct __una_u16 *) r11; ++ ptr->x = r5; ++#else ++ unsigned long r1,r2,r3,r4; ++ ++ __asm__("ldq_u %3,%1\n\t" ++ "ldq_u %2,%0\n\t" ++ "inswh %6,%7,%5\n\t" ++ "inswl %6,%7,%4\n\t" ++ "mskwh %3,%7,%3\n\t" ++ "mskwl %2,%7,%2\n\t" ++ "bis %3,%5,%3\n\t" ++ "bis %2,%4,%2\n\t" ++ "stq_u %3,%1\n\t" ++ "stq_u %2,%0" ++ :"=m" (*r11), ++ "=m" (*(unsigned long *)(1+(char *) r11)), ++ "=&r" (r1), "=&r" (r2), "=&r" (r3), "=&r" (r4) ++ :"r" (r5), "r" (r11)); ++#endif ++} ++#endif + + /**************************************************************************** + PARAMETERS: +@@ -107,7 +262,13 @@ u16 X86API rdw( + } + else + #endif ++#if defined(ALPHA_UALOADS) + val = ldw_u((u16*)(M.mem_base + addr)); ++#elif defined(IA64_UALOADS) ++ val = uldw((u16*)(M.mem_base + addr)); ++#else ++ val = *(u16*)(M.mem_base + addr); ++#endif + DB( if (DEBUG_MEM_TRACE()) + printk("%#08x 2 -> %#x\n", addr, val);) + return val; +@@ -140,7 +301,13 @@ u32 X86API rdl( + } + else + #endif ++#if defined(ALPHA_UALOADS) + val = ldl_u((u32*)(M.mem_base + addr)); ++#elif defined(IA64_UALOADS) ++ val = uldl((u32*)(M.mem_base + addr)); ++#else ++ val = *(u32*)(M.mem_base + addr); ++#endif + DB( if (DEBUG_MEM_TRACE()) + printk("%#08x 4 -> %#x\n", addr, val);) + return val; +@@ -192,7 +359,13 @@ DB( if (DEBUG_MEM_TRACE()) + } + else + #endif ++#if defined(ALPHA_UALOADS) + stw_u(val,(u16*)(M.mem_base + addr)); ++#elif defined(IA64_UALOADS) ++ ustw(val,(u16*)(M.mem_base + addr)); ++#else ++ *(u16*)(M.mem_base + addr) = val; ++#endif + } + + /**************************************************************************** +@@ -222,7 +395,13 @@ DB( if (DEBUG_MEM_TRACE()) + } + else + #endif ++#if defined(ALPHA_UALOADS) + stl_u(val,(u32*)(M.mem_base + addr)); ++#elif defined(IA64_UALOADS) ++ ustl(val,(u32*)(M.mem_base + addr)); ++#else ++ *(u32*)(M.mem_base + addr) = val; ++#endif + } + + /**************************************************************************** +-- +cgit v0.8.3-6-g21f6 + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.7.99.2.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.7.99.2.bb new file mode 100644 index 00000000000..5ef23019adc --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.7.99.2.bb @@ -0,0 +1,12 @@ +require xserver-xf86-lite.inc + +PR = "r1" + +DEPENDS += "font-util" + +SRC_URI += "file://nodolt.patch;patch=1 \ + file://crosscompile.patch;patch=1" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch;patch=1 \ + file://revert_make_sys_c_use_unaligned_access_functions.patch;patch=1" diff --git a/meta/recipes-graphics/xtscal/xtscal/30xTs_Calibrate.sh b/meta/recipes-graphics/xtscal/xtscal/30xTs_Calibrate.sh new file mode 100644 index 00000000000..ee55784548e --- /dev/null +++ b/meta/recipes-graphics/xtscal/xtscal/30xTs_Calibrate.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +. /etc/formfactor/config + +if [ "$HAVE_TOUCHSCREEN" = "1" ]; then + while [ ! -z $TSLIB_TSDEVICE ] && [ ! -f /etc/pointercal ] + do + /usr/bin/xtscal + done +fi diff --git a/meta/recipes-graphics/xtscal/xtscal/change-cross.patch b/meta/recipes-graphics/xtscal/xtscal/change-cross.patch new file mode 100644 index 00000000000..3ecd36bb5e8 --- /dev/null +++ b/meta/recipes-graphics/xtscal/xtscal/change-cross.patch @@ -0,0 +1,16 @@ +--- tmp/main.c.orig 2007-01-02 15:39:54.000000000 +0000 ++++ tmp/main.c 2007-01-02 15:39:54.000000000 +0000 +@@ -131,9 +131,10 @@ + { + XRenderFillRectangles (dpy, PictOpSrc, pict, &rect_color, rectangles, 2); + +- XFillArc (dpy, crosshair_w, crosshair_gc, (CROSSHAIR_SIZE / 2) - (WIDTH / 2) - 1, +- (CROSSHAIR_SIZE / 2) - (WIDTH / 2) - 1, +- WIDTH + 1, WIDTH + 1, 0, 360 * 64); ++ XFillRectangle (dpy, crosshair_w, crosshair_gc, ++ (CROSSHAIR_SIZE / 2) - (WIDTH / 2), ++ (CROSSHAIR_SIZE / 2) - (WIDTH / 2), ++ WIDTH, WIDTH); + } + + void diff --git a/meta/recipes-graphics/xtscal/xtscal/cleanup.patch b/meta/recipes-graphics/xtscal/xtscal/cleanup.patch new file mode 100644 index 00000000000..ce674edef61 --- /dev/null +++ b/meta/recipes-graphics/xtscal/xtscal/cleanup.patch @@ -0,0 +1,619 @@ +--- + Makefile.am | 9 -- + configure.ac | 3 + gpe-dist.am | 12 --- + h3600_ts.h | 216 ----------------------------------------------------------- + main.c | 210 ++------------------------------------------------------- + xtscal.in | 19 ----- + 6 files changed, 14 insertions(+), 455 deletions(-) + +Index: xtscal-0.6.3/xtscal.in +=================================================================== +--- xtscal-0.6.3.orig/xtscal.in 2004-09-10 20:10:36.000000000 +0100 ++++ /dev/null 1970-01-01 00:00:00.000000000 +0000 +@@ -1,19 +0,0 @@ +-#!/bin/sh +- +-module_id() { +- # Get model name +- echo `grep "^Hardware" /proc/cpuinfo | sed -e "s/.*: *//" | tr a-z A-Z` +-} +- +-case `module_id` in +- "HP IPAQ H3100" | "HP IPAQ H3800" ) +- ARGS="-rotate 90" ;; +- "HP IPAQ H3600" | "HP IPAQ H3700" | "HP IPAQ H3900" | *COLLIE | *POODLE) +- ARGS="-rotate 270" ;; +- # H2200: works without rotation +-esac +- +-# the things we do for autoconf +-prefix=@prefix@ +-exec_prefix=@exec_prefix@ +-exec @libexecdir@/xtscal.bin $ARGS $* +Index: xtscal-0.6.3/main.c +=================================================================== +--- xtscal-0.6.3.orig/main.c 2007-07-01 01:12:52.000000000 +0100 ++++ xtscal-0.6.3/main.c 2007-07-01 01:12:55.000000000 +0100 +@@ -22,12 +22,10 @@ + #include <X11/Xlib.h> + + #include <X11/extensions/Xrender.h> +-#include <X11/extensions/Xrandr.h> + #include <X11/Xft/Xft.h> + #include <X11/extensions/xcalibrate.h> + #include <X11/keysym.h> + +-#include "h3600_ts.h" + #include "calibrate.h" + + Display *dpy; +@@ -45,15 +43,11 @@ XftColor xftcol; + XftDraw *xftdraw; + XftFont *xftfont; + int screen_x, screen_y; +-int ts_fd; + int samples; + Pixmap bg_pixmap; + int flag_debug; +-int rotation = 0; + int error_base, event_base; + +-int using_xcalibrate; +- + int moving; + + #define CROSSHAIR_SIZE 25 +@@ -63,7 +57,6 @@ int moving; + #define ENOUGH 5 + #define MAX_SAMPLES 40 + +-#define RAW_DEVICE "/dev/h3600_tsraw" + #define FONTNAME "sans-10" + + struct point +@@ -287,12 +280,8 @@ sort_by_y (const void* a, const void *b) + void + set_calibration (calibration *cal) + { +- TS_CAL tc; +- int xtrans, ytrans, xscale, yscale, xyscale, yxscale; + calibration ocal = *cal; + +- if (using_xcalibrate) +- { + FILE *fp; + if (flag_debug) + printf ("constants are: %d %d %d %d %d %d %d\n", cal->a[1], cal->a[2], cal->a[0], cal->a[4], cal->a[5], cal->a[3], cal->a[6]); +@@ -304,29 +293,6 @@ set_calibration (calibration *cal) + } + fprintf (fp, "%d %d %d %d %d %d %d\n", cal->a[1], cal->a[2], cal->a[0], cal->a[4], cal->a[5], cal->a[3], cal->a[6]); + fclose (fp); +- return; +- } +- +- xtrans = cal->a[0] / cal->a[6]; +- ytrans = cal->a[3] / cal->a[6]; +- xscale = cal->a[1] * 256 / cal->a[6]; +- yscale = cal->a[5] * 256 / cal->a[6]; +- xyscale = cal->a[2] * 256 / cal->a[6]; +- yxscale = cal->a[4] * 256 / cal->a[6]; +- +- tc.xtrans = xtrans; +- tc.ytrans = ytrans; +- tc.xscale = xscale; +- tc.yscale = yscale; +- tc.xyswap = 0; +- +- printf ("%d %d %d %d %d\n", tc.xscale, tc.xtrans, tc.yscale, tc.ytrans, tc.xyswap); +- +- if (ioctl (ts_fd, TS_SET_CAL, (void *)&tc) != 0) +- { +- perror ("TS_SET_CAL"); +- exit (1); +- } + } + + void +@@ -398,80 +364,13 @@ handle_ts_event (int x, int y, int press + } + + void +-read_ts (void) +-{ +- TS_EVENT ts_ev; +- int r; +- +- r = read (ts_fd, &ts_ev, sizeof (ts_ev)); +- if (r == sizeof (ts_ev)) +- handle_ts_event (ts_ev.x, ts_ev.y, ts_ev.pressure); +-} +- +-void +-do_cal (char **args) +-{ +- TS_CAL tc; +- +- tc.xscale = atoi (args[0]); +- tc.xtrans = atoi (args[1]); +- tc.yscale = atoi (args[2]); +- tc.ytrans = atoi (args[3]); +- tc.xyswap = atoi (args[4]); +- +- if (flag_debug) +- fprintf (stderr, "setting: %d %d %d %d %d\n", +- tc.xtrans, tc.ytrans, tc.xscale, tc.yscale, tc.xyswap); +- +- if (ioctl (ts_fd, TS_SET_CAL, (void *)&tc) != 0) +- { +- perror ("TS_SET_CAL"); +- exit (1); +- } +- +- exit (0); +-} +- +-void +-show_cal (void) +-{ +- TS_CAL tc; +- +- if (ioctl (ts_fd, TS_GET_CAL, (void *)&tc) != 0) +- { +- perror ("TS_GET_CAL"); +- exit (1); +- } +- +- printf ("%d %d %d %d %d\n", tc.xscale, tc.xtrans, tc.yscale, tc.ytrans, tc.xyswap); +-} +- +-void + usage (const char *name) + { +- fprintf (stderr, "usage: %s -view\n", name); +- fprintf (stderr, " %s [-rotate <0 | 90 | 180 | 270>]\n", name); +- fprintf (stderr, " %s -cal <xs> <xt> <ys> <yt> <xyswap>\n", name); +- ++ fprintf (stderr, "usage: %s [-debug]\n", name); + exit (1); + } + + int +-xrr_supported (void) +-{ +- int xrr_event_base, xrr_error_base; +- int xrr_major, xrr_minor; +- +- if (XRRQueryExtension (dpy, &xrr_event_base, &xrr_error_base) == False +- || XRRQueryVersion (dpy, &xrr_major, &xrr_minor) == 0 +- || xrr_major != 1 +- || xrr_minor < 1) +- return 0; +- +- return 1; +-} +- +-int + main (int argc, char *argv[]) + { + XSetWindowAttributes attributes; +@@ -480,31 +379,11 @@ main (int argc, char *argv[]) + int max_fd; + GC bg_gc; + int i; +- int have_xrandr; + + for (i = 1; i < argc; i++) + { +- if (!strcmp (argv[i], "-view")) +- { +- show_cal (); +- exit (0); +- } +- else if (!strcmp (argv[i], "-debug")) ++ if (!strcmp (argv[i], "-debug")) + flag_debug = 1; +- else if (!strcmp (argv[i], "-cal")) +- { +- if (argc > (i + 5)) +- do_cal (argv + i + 1); +- else +- usage (argv[0]); +- } +- else if (!strcmp (argv[i], "-rotate")) +- { +- if (argc > (i + 1)) +- rotation = atoi (argv[++i]); +- else +- usage (argv[0]); +- } + else + usage (argv[0]); + } +@@ -531,48 +410,11 @@ main (int argc, char *argv[]) + fprintf (stderr, "failed to set raw mode: error %d\n", r); + exit (1); + } +- +- using_xcalibrate = 1; +- } +- +- have_xrandr = xrr_supported (); +- if (have_xrandr) +- { +- XRRScreenConfiguration *rr_screen; +- Rotation current_rotation; +- +- if (flag_debug) +- fprintf (stderr, "XRANDR is supported\n"); +- +- rr_screen = XRRGetScreenInfo (dpy, RootWindow (dpy, screen)); +- +- XRRRotations (dpy, screen, ¤t_rotation); +- +- XRRFreeScreenConfigInfo (rr_screen); +- +- if (flag_debug) +- fprintf (stderr, "Current RANDR rotation is %d\n", current_rotation); +- +- switch (current_rotation) +- { +- case RR_Rotate_270: +- rotation += 90; +- case RR_Rotate_180: +- rotation += 90; +- case RR_Rotate_90: +- rotation += 90; +- rotation %= 360; +- case RR_Rotate_0: +- break; +- default: +- fprintf (stderr, "Unknown RANDR rotation: %d\n", current_rotation); +- break; +- } + } + else + { +- if (flag_debug) +- fprintf (stderr, "XRANDR not supported\n"); ++ perror ("XCALIBRATE extension missing"); ++ exit (1); + } + + attributes.override_redirect = flag_debug ? False : True; +@@ -666,45 +508,17 @@ main (int argc, char *argv[]) + + for (i = 0; i < NR_POINTS; i++) + { +- switch (rotation) +- { +- case 0: +- cal.xfb[i] = cal.xscr[i]; +- cal.yfb[i] = cal.yscr[i]; +- break; +- case 90: +- cal.xfb[i] = cal.yscr[i]; +- cal.yfb[i] = screen_x - cal.xscr[i]; +- break; +- case 180: +- cal.xfb[i] = screen_x - cal.xscr[i]; +- cal.yfb[i] = screen_y - cal.yscr[i]; +- break; +- case 270: +- cal.xfb[i] = screen_y - cal.yscr[i]; +- cal.yfb[i] = cal.xscr[i]; +- break; +- } ++ cal.xfb[i] = cal.xscr[i]; ++ cal.yfb[i] = cal.yscr[i]; ++ XCalibrateScreenToCoord (dpy, &cal.xfb[i], &cal.yfb[i]); + + if (flag_debug) +- printf ("rotation %d: (%d,%d) -> (%d,%d)\n", rotation, ++ printf ("rotation conversion: (%d,%d) -> (%d,%d)\n", + cal.xscr[i], cal.yscr[i], cal.xfb[i], cal.yfb[i]); + } + + next_event (); + +- if (!using_xcalibrate) +- { +- ts_fd = open (RAW_DEVICE, O_RDONLY); +- if (ts_fd < 0) +- { +- perror (RAW_DEVICE); +- exit (1); +- } +- } +- +- max_fd = (xfd > ts_fd) ? xfd : ts_fd; +- + for (;;) + { + fd_set fds; +@@ -713,12 +527,8 @@ main (int argc, char *argv[]) + + FD_ZERO (&fds); + FD_SET (xfd, &fds); +- if (ts_fd != -1) +- FD_SET (ts_fd, &fds); + +- select (max_fd + 1, &fds, NULL, NULL, NULL); +- +- if (ts_fd != -1 && FD_ISSET (ts_fd, &fds)) +- read_ts (); ++ select (xfd + 1, &fds, NULL, NULL, NULL); + } + } ++ +Index: xtscal-0.6.3/configure.ac +=================================================================== +--- xtscal-0.6.3.orig/configure.ac 2004-09-10 20:11:12.000000000 +0100 ++++ xtscal-0.6.3/configure.ac 2007-07-01 01:12:55.000000000 +0100 +@@ -9,8 +9,7 @@ AM_INIT_AUTOMAKE([foreign dist-bzip2]) + # Checks for programs. + AC_PROG_CC + +-PKG_CHECK_MODULES(XTSCAL, x11 xft xext xrandr xcalibrate) ++PKG_CHECK_MODULES(XTSCAL, x11 xft xext xcalibrate) + + AC_CONFIG_FILES([Makefile]) +-AC_CONFIG_FILES([xtscal]) + AC_OUTPUT +Index: xtscal-0.6.3/gpe-dist.am +=================================================================== +--- xtscal-0.6.3.orig/gpe-dist.am 2004-06-02 23:07:13.000000000 +0100 ++++ /dev/null 1970-01-01 00:00:00.000000000 +0000 +@@ -1,12 +0,0 @@ +-CVSTAG := $(shell echo $(PACKAGE)-$(VERSION) | tr [a-z.] [A-Z_]) +- +-dist-upload: dist +- scp $(PACKAGE)-$(VERSION).tar.bz2 $(USER)@handhelds.org:/home/ftp/pub/projects/gpe/source/ +- +-tag: +- cvs tag $(CVSTAG) +- +-retag: +- cvs tag -F $(CVSTAG) +- +-source: tag dist-upload +Index: xtscal-0.6.3/h3600_ts.h +=================================================================== +--- xtscal-0.6.3.orig/h3600_ts.h 2003-07-05 17:27:10.000000000 +0100 ++++ /dev/null 1970-01-01 00:00:00.000000000 +0000 +@@ -1,216 +0,0 @@ +-/* +-* +-* Driver for the H3600 Touch Screen and other Atmel controlled devices. +-* +-* Copyright 2000 Compaq Computer Corporation. +-* +-* Use consistent with the GNU GPL is permitted, +-* provided that this copyright notice is +-* preserved in its entirety in all copies and derived works. +-* +-* COMPAQ COMPUTER CORPORATION MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, +-* AS TO THE USEFULNESS OR CORRECTNESS OF THIS CODE OR ITS +-* FITNESS FOR ANY PARTICULAR PURPOSE. +-* +-* Author: Charles Flynn. +-* +-*/ +- +- +-#ifndef __H3600_TS_H__ +-#define __H3600_TS_H__ +- +-#include <linux/ioctl.h> +- +-enum h3600_ts_minor_devices { +- TS_MINOR = 0, +- TSRAW_MINOR = 1, +- KEY_MINOR = 2 +-}; +- +-typedef struct h3600_ts_calibration { +- int xscale; +- int xtrans; +- int yscale; +- int ytrans; +- int xyswap; +-} TS_CAL; +- +-typedef struct h3600_ts_event { +- unsigned short pressure; +- unsigned short x; +- unsigned short y; +- unsigned short pad; +-} TS_EVENT; +- +-/* Deprecated - do not use */ +-typedef struct h3600_ts_return { +- unsigned short pressure; +- unsigned short x; +- unsigned short y; +- unsigned short pad; +-} TS_RET; +- +-enum power_button_mode { +- PBM_SUSPEND = 0, +- PBM_GENERATE_KEYPRESS = 1 +-}; +- +- +-/* ++++++++++++++ +++++++++++++++++++++++++++++++++++++ */ +- +-typedef struct therm_dev { +- short data; +-} THERM_DEV; +- +-#define H3600_BATT_CHEM_ALKALINE 0x01 +-#define H3600_BATT_CHEM_NICD 0x02 +-#define H3600_BATT_CHEM_NIMH 0x03 +-#define H3600_BATT_CHEM_LION 0x04 +-#define H3600_BATT_CHEM_LIPOLY 0x05 +-#define H3600_BATT_CHEM_NOT_INSTALLED 0x06 +-#define H3600_BATT_CHEM_UNKNOWN 0xff +- +-/* These should match the apm_bios.h definitions */ +-#define H3600_AC_STATUS_AC_OFFLINE 0x00 +-#define H3600_AC_STATUS_AC_ONLINE 0x01 +-#define H3600_AC_STATUS_AC_BACKUP 0x02 /* What does this mean? */ +-#define H3600_AC_STATUS_AC_UNKNOWN 0xff +- +-/* These bitfields are rarely "or'd" together */ +-#define H3600_BATT_STATUS_HIGH 0x01 +-#define H3600_BATT_STATUS_LOW 0x02 +-#define H3600_BATT_STATUS_CRITICAL 0x04 +-#define H3600_BATT_STATUS_CHARGING 0x08 +-#define H3600_BATT_STATUS_CHARGE_MAIN 0x10 +-#define H3600_BATT_STATUS_DEAD 0x20 /* Battery will not charge */ +-#define H3600_BATT_NOT_INSTALLED 0x20 /* For expansion pack batteries */ +-#define H3600_BATT_STATUS_FULL 0x40 /* Battery fully charged (and connected to AC) */ +-#define H3600_BATT_STATUS_NOBATT 0x80 +-#define H3600_BATT_STATUS_UNKNOWN 0xff +- +-struct battery_data { +- unsigned char chemistry; +- unsigned char status; +- unsigned short voltage; /* Voltage for battery #0; unknown for battery #1 */ +- unsigned short percentage; /* Percentage of full charge */ +- unsigned short life; /* Life remaining in minutes */ +-}; +- +-struct h3600_battery { +- unsigned char ac_status; +- unsigned char battery_count; /* How many batteries we have */ +- struct battery_data battery[2]; +-}; +- +-/* -------- EEPROM and SPI Interfaces ---------------*/ +- +-#define EEPROM_RD_BUFSIZ 6 /* EEPROM reads are 16 bits */ +-#define EEPROM_WR_BUFSIZ 5 /* Allow room for 8bit 'addr' field in buffer*/ +-#define SPI_RD_BUFSIZ 16 /* SPI reads are 8 bits */ +-#define SPI_WR_BUFSIZ 7 +- +-/* The EEPROM is where internal programs are stored on the Amtel. +- You probably don't want to read or write these values */ +- +-typedef struct h3600_eeprom_read_request { +- unsigned char addr; /* 8bit Address Offset 0-255 */ +- unsigned char len; /* Number of 16bit words to read 0-128 */ +- unsigned short buff[EEPROM_RD_BUFSIZ]; +-} EEPROM_READ; +- +-typedef struct h3600_eeprom_write_request { +- unsigned char len; /* used only to compute the number of bytes to send */ +- unsigned char addr; /* 0-128 */ +- unsigned short buff[EEPROM_WR_BUFSIZ]; +-} EEPROM_WRITE; +- +-/* The SPI bus connects to EEPROMs located on sleeves plugged into +- the iPAQ. You may want to read these values */ +- +-typedef struct h3600_spi_read_request { +- unsigned short addr; /* 16bit Address Offset 0-128 */ +- unsigned char len; /* Number of bytes to read */ +- unsigned char buff[SPI_RD_BUFSIZ]; +-} SPI_READ; +- +-#define SPI_READ_STATUS_BYTE 0xffff /* Use this address to read the status byte */ +- +-typedef struct h3600_spi_write_request { +- unsigned short len; /* used only to compute the number of bytes to send */ +- unsigned short addr; /* this 16bit address accesses a single byte */ +- unsigned char buff[SPI_WR_BUFSIZ]; +-} SPI_WRITE; +- +- +-/* -------- end of EEPROM and SPI Interfaces ---------------*/ +- +-/* User space structures for IOCTL calls */ +- +-typedef struct h3600_ts_version { +- unsigned char host_version[8]; /* ascii "x.yy" */ +- unsigned char pack_version[8]; /* ascii "x.yy" */ +- unsigned char boot_type; /* TODO ?? */ +-} VER_RET; +- +-typedef struct h3600_ts_led { +- unsigned char OffOnBlink; /* 0=off 1=on 2=Blink */ +- unsigned char TotalTime; /* Units of 5 seconds */ +- unsigned char OnTime; /* units of 100m/s */ +- unsigned char OffTime; /* units of 100m/s */ +-} LED_IN; +- +-enum flite_mode { +- FLITE_MODE1 = 1, +- FLITE_AUTO_MODE = 1, /* for reference only */ +- FLITE_MANUAL_MODE = 2, /* Use this normally? */ +- FLITE_GET_LIGHT_SENSOR = 3 /* Returns light reading in "brightness" field */ +-}; +-enum flite_pwr { +- FLITE_PWR_OFF = 0, +- FLITE_PWR_ON = 1 +-}; +- +-typedef struct h3600_ts_flite { +- unsigned char mode; +- unsigned char pwr; +- unsigned char brightness; +-} FLITE_IN; +- +-/*************************** Updated "universal" structures *******************/ +- +-/* Sets backlight for both H3100 and H3600 models - technically "frontlight" for H3600 */ +-struct h3600_ts_backlight { +- enum flite_pwr power; /* 0 = off, 1 = on */ +- unsigned char brightness; /* 0 - 255 */ +-}; +- +-struct h3600_ts_contrast { /* Only useful on H3100 model */ +- unsigned char contrast; /* 0 - 255 */ +-}; +- +-/* IOCTL cmds user or kernel space */ +- +-/* Use 'f' as magic number */ +-#define IOC_H3600_TS_MAGIC 'f' +- +-/* TODO: Some of these IOWR values are just plain wrong */ +-#define GET_VERSION _IOR(IOC_H3600_TS_MAGIC, 1, struct h3600_ts_version ) +-#define READ_EEPROM _IOWR(IOC_H3600_TS_MAGIC, 2, struct h3600_eeprom_read_request) +-#define WRITE_EEPROM _IOWR(IOC_H3600_TS_MAGIC, 3, struct h3600_eeprom_write_request) +-#define GET_THERMAL _IOR(IOC_H3600_TS_MAGIC, 4, struct therm_dev) +-#define LED_ON _IOW(IOC_H3600_TS_MAGIC, 5, struct h3600_ts_led) +-#define GET_BATTERY_STATUS _IOR(IOC_H3600_TS_MAGIC, 6, struct h3600_battery) +-#define FLITE_ON _IOW(IOC_H3600_TS_MAGIC, 7, struct h3600_ts_flite) +-#define READ_SPI _IOWR(IOC_H3600_TS_MAGIC, 8, struct h3600_spi_read_request) +-#define WRITE_SPI _IOWR(IOC_H3600_TS_MAGIC, 9, struct h3600_spi_write_request) +-#define TS_GET_CAL _IOR(IOC_H3600_TS_MAGIC, 10, struct h3600_ts_calibration) +-#define TS_SET_CAL _IOW(IOC_H3600_TS_MAGIC, 11, struct h3600_ts_calibration) +- +-/* New IOCTL interfaces - defined to be more user friendly */ +-#define TS_GET_BACKLIGHT _IOR(IOC_H3600_TS_MAGIC, 20, struct h3600_ts_backlight) +-#define TS_SET_BACKLIGHT _IOW(IOC_H3600_TS_MAGIC, 20, struct h3600_ts_backlight) +-#define TS_GET_CONTRAST _IOR(IOC_H3600_TS_MAGIC, 21, struct h3600_ts_contrast) +-#define TS_SET_CONTRAST _IOW(IOC_H3600_TS_MAGIC, 21, struct h3600_ts_contrast) +- +-#endif +Index: xtscal-0.6.3/Makefile.am +=================================================================== +--- xtscal-0.6.3.orig/Makefile.am 2004-06-02 23:07:13.000000000 +0100 ++++ xtscal-0.6.3/Makefile.am 2007-07-02 12:51:02.000000000 +0100 +@@ -1,11 +1,8 @@ +-libexec_PROGRAMS = xtscal.bin +-bin_SCRIPTS = xtscal ++bin_PROGRAMS = xtscal + +-xtscal_bin_SOURCES = main.c calibrate.c calibrate.h h3600_ts.h ++xtscal_SOURCES = main.c calibrate.c calibrate.h + +-xtscal_bin_LDADD = @XTSCAL_LIBS@ ++xtscal_LDADD = @XTSCAL_LIBS@ + + INCLUDES = @XTSCAL_CFLAGS@ -DNR_POINTS=5 + +-include gpe-dist.am +- diff --git a/meta/recipes-graphics/xtscal/xtscal_0.6.3.bb b/meta/recipes-graphics/xtscal/xtscal_0.6.3.bb new file mode 100644 index 00000000000..565393d0623 --- /dev/null +++ b/meta/recipes-graphics/xtscal/xtscal_0.6.3.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Touchscreen calibration utility" +HOMEPAGE = "http://gpe.linuxtogo.org" +BUGTRACKER = "http://bugs.linuxtogo.org" +LICENSE = "GPLv2 & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://main.c;endline=10;md5=8721bcb08ae9f24e5fe4c82941873c87" + +SECTION = "x11/base" + +DEPENDS = "virtual/libx11 libxft libxcalibrate" + +PR = "r12" + +SRC_URI = "${GPE_MIRROR}/xtscal-${PV}.tar.bz2 \ + file://change-cross.patch;patch=1 \ + file://cleanup.patch;patch=1 \ + file://30xTs_Calibrate.sh" + +inherit autotools + +do_install_append() { + install -d ${D}${sysconfdir}/X11/Xsession.d/ + install -m 0755 ${WORKDIR}/30xTs_Calibrate.sh ${D}${sysconfdir}/X11/Xsession.d/ +} |