diff options
25 files changed, 355 insertions, 97 deletions
diff --git a/conf/distro/include/angstrom-2008-preferred-versions.inc b/conf/distro/include/angstrom-2008-preferred-versions.inc index 29024964c4..54f1c6667c 100644 --- a/conf/distro/include/angstrom-2008-preferred-versions.inc +++ b/conf/distro/include/angstrom-2008-preferred-versions.inc @@ -1,22 +1,24 @@ PREFERRED_VERSION_automake-native = "1.10" PREFERRED_VERSION_busybox = "1.9.2" -PREFERRED_VERSION_cairo = "1.6.4" +PREFERRED_VERSION_cairo = "1.7.6" PREFERRED_VERSION_dbus = "1.2.1" PREFERRED_VERSION_dropbear = "0.51" PREFERRED_VERSION_fontconfig = "2.4.1" PREFERRED_VERSION_glib-2.0 = "2.18.1" PREFERRED_VERSION_glib-2.0-native = "2.18.0" +PREFERRED_VERSION_glibmm = "2.18.0" PREFERRED_VERSION_glproto = "1.4.9" PREFERRED_VERSION_gst-pulse = "0.9.7" PREFERRED_VERSION_gtk+ = "2.14.2" +PREFERRED_VERSION_gtkmm = "2.14.1" PREFERRED_VERSION_inputproto = "1.4.4" PREFERRED_VERSION_libsdl-x11 = "1.2.11" PREFERRED_VERSION_libtool = "2.2.4" PREFERRED_VERSION_libtool-native = "2.2.4" PREFERRED_VERSION_libtool-cross = "2.2.4" PREFERRED_VERSION_libtool-sdk = "2.2.4" -PREFERRED_VERSION_pango = "1.20.5" -PREFERRED_VERSION_pixman = "0.11.8" +PREFERRED_VERSION_pango = "1.22.0" +PREFERRED_VERSION_pixman = "0.12.0" PREFERRED_VERSION_pkgconfig = "0.23" PREFERRED_VERSION_pkgconfig-native = "0.23" PREFERRED_VERSION_pulseaudio = "0.9.10" diff --git a/packages/cairo/cairo_1.7.6.bb b/packages/cairo/cairo_1.7.6.bb new file mode 100644 index 0000000000..b90c2631d5 --- /dev/null +++ b/packages/cairo/cairo_1.7.6.bb @@ -0,0 +1,9 @@ +require cairo.inc + +DEFAULT_PREFERENCE = "-1" + +SRC_URI = "http://cairographics.org/snapshots/cairo-${PV}.tar.gz \ +# file://configure_fix.patch;patch=1 \ + " + + diff --git a/packages/glibmm/glibmm_2.18.0.bb b/packages/glibmm/glibmm_2.18.0.bb new file mode 100644 index 0000000000..90a053fb36 --- /dev/null +++ b/packages/glibmm/glibmm_2.18.0.bb @@ -0,0 +1 @@ +require glibmm.inc diff --git a/packages/gnome/epiphany_2.24.0.bb b/packages/gnome/epiphany_2.24.0.bb new file mode 100644 index 0000000000..d2d45475b7 --- /dev/null +++ b/packages/gnome/epiphany_2.24.0.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "GNOME default webbrowser" +DEPENDS = "libsoup-2.4 gnome-desktop gnome-vfs libgnomeui webkit-gtk iso-codes startup-notification" +RDEPENDS = "gnome-vfs-plugin-http" + +inherit gnome + + +EXTRA_OECONF = "--with-engine=webkit --with-distributor-name=${DISTRO}" + +do_configure_prepend() { + touch ${S}/gnome-doc-utils.make + sed -i -e s:help::g Makefile.am +} + +FILES_${PN} += "${datadir}/icons ${datadir}/dbus-1" + + diff --git a/packages/gnome/gconf-editor_2.24.0.bb b/packages/gnome/gconf-editor_2.24.0.bb new file mode 100644 index 0000000000..88b515c7e9 --- /dev/null +++ b/packages/gnome/gconf-editor_2.24.0.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "Editor for the gnome registry" +LICENSE = "GPLv2" +DEPENDS = "gnome-doc-utils gconf-dbus" + +inherit gnome gconf + +do_configure_prepend() { + sed -i -e s:docs::g ${S}/Makefile.am +} + +FILES_${PN} += "${datadir}/icons" diff --git a/packages/gnome/gnome-desktop_2.24.0.bb b/packages/gnome/gnome-desktop_2.24.0.bb new file mode 100644 index 0000000000..4460c5ad92 --- /dev/null +++ b/packages/gnome/gnome-desktop_2.24.0.bb @@ -0,0 +1,8 @@ +require gnome-desktop.inc + +inherit gnome pkgconfig + +DEPENDS += "gnome-doc-utils gnome-vfs" + +SRC_URI += "file://scrollkeeper.patch;patch=1 \ + file://no-desktop-docs.patch;patch=1;pnum=0" diff --git a/packages/gnome/gnome-icon-theme_2.24.0.bb b/packages/gnome/gnome-icon-theme_2.24.0.bb new file mode 100644 index 0000000000..d5e7f29b69 --- /dev/null +++ b/packages/gnome/gnome-icon-theme_2.24.0.bb @@ -0,0 +1,13 @@ +LICENSE = "GPL" +SECTION = "x11/gnome" +DEPENDS = "icon-naming-utils-native glib-2.0 intltool-native" +RDEPENDS = "hicolor-icon-theme" +RRECOMMENDS = "librsvg-gtk" + +FILES_${PN} += "${datadir}/*" + +EXTRA_OECONF = "--disable-hicolor-check" + +inherit gnome + +PACKAGE_ARCH = "all" diff --git a/packages/gnome/gnome-menus_2.24.0.bb b/packages/gnome/gnome-menus_2.24.0.bb new file mode 100644 index 0000000000..5837e7fed2 --- /dev/null +++ b/packages/gnome/gnome-menus_2.24.0.bb @@ -0,0 +1,15 @@ +DEPENDS = "python gnome-vfs libxml2 gconf popt gtk+" +LICENSE = "GPL" + +inherit gnome pkgconfig + +do_stage() { +autotools_stage_all +} + +PACKAGES += "${PN}-python" +FILES_${PN} += "${datadir}/desktop-directories/" +FILES_${PN}-python = "${libdir}/python*" +FILES_${PN}-dbg += "${libdir}/python*/site-packages/*/.debug \ + ${libdir}/python*/site-packages/.debug" + diff --git a/packages/gnome/gnome-system-monitor_2.24.0.bb b/packages/gnome/gnome-system-monitor_2.24.0.bb new file mode 100644 index 0000000000..0e27be5ffe --- /dev/null +++ b/packages/gnome/gnome-system-monitor_2.24.0.bb @@ -0,0 +1,24 @@ +LICENSE = "GPLv2" +DEPENDS = "libgtop gtkmm glibmm libnotify libgnomeui gnome-panel gnome-doc-utils libwnck gtk+ gnome-keyring libglade hal dbus-glib " + +inherit gnome + +do_configure_prepend() { + sed -i -e s:help::g ${S}/Makefile.am +} + + +PACKAGES =+ "${PN}-applets" + +FILES_${PN}-applets = "${bindir}/*applet* \ + ${libdir}/bonobo/servers \ + ${datadir}/gnome-2.0/ui" + +FILES_${PN} += "${datadir}/icons \ + ${datadir}/dbus-1 \ + ${datadir}/gnome/autostart \ + " + +FILE_{PN}-doc += "${datadir}/omf \ + ${datadir}/gnome/help " + diff --git a/packages/gnome/gnome-themes_2.24.0.bb b/packages/gnome/gnome-themes_2.24.0.bb new file mode 100644 index 0000000000..1b45ab4d05 --- /dev/null +++ b/packages/gnome/gnome-themes_2.24.0.bb @@ -0,0 +1,31 @@ +LICENSE = "GPL" +SECTION = "x11/gnome" +DEPENDS = "gtk-engines icon-naming-utils-native glib-2.0 intltool-native" +RDEPENDS = "gnome-icon-theme" + +EXTRA_OECONF = "--enable-all-themes --disable-hicolor-check" + +inherit gnome + +PACKAGE_ARCH = "all" + +PACKAGES =+ " gtk-engine-crux gtk-engine-hc gtk-engine-lighthouseblue gtk-engine-mist gtk-engine-thinice" +FILES_gtk-engine-crux = "${libdir}/gtk-2.0/*/engines/libcrux-engine.so" +FILES_gtk-engine-hc = "${libdir}/gtk-2.0/*/engines/libhcengine.so" +FILES_gtk-engine-lighthouseblue = "${libdir}/gtk-2.0/*/engines/liblighthouseblue.so" +FILES_gtk-engine-mist = "${libdir}/gtk-2.0/*/engines/libmist.so" +FILES_gtk-engine-thinice = "${libdir}/gtk-2.0/*/engines/libthinice.so" + +PACKAGES =+ " gnome-theme-crux gnome-theme-grand-canyon gnome-theme-highcontrast gnome-theme-highcontrastinverse gnome-theme-highcontrastlargeprint gnome-theme-highcontrastlargeprintinverse gnome-theme-largeprint gnome-theme-lighthouseblue gnome-theme-mist gnome-theme-traditional" +FILES_gnome-theme-crux = "${datadir}/themes/Crux ${datadir}/icons/Crux" +FILES_gnome-theme-grand-canyon = "${datadir}/themes/Grand-Canyon ${datadir}/icons/Grand-Canyon" +FILES_gnome-theme-highcontrast = "${datadir}/themes/HighContrast ${datadir}/icons/HighContrast" +FILES_gnome-theme-highcontrastinverse = "${datadir}/themes/HighContrastInverse ${datadir}/icons/HighContrastInverse" +FILES_gnome-theme-highcontrastlargeprint = "${datadir}/themes/HighContrastLargePrint ${datadir}/icons/HighContrastLargePrint" +FILES_gnome-theme-highcontrastlargeprintinverse = "${datadir}/themes/HighContrastLargePrintInverse ${datadir}/icons/HighContrastLargePrintInverse" +FILES_gnome-theme-largeprint = "${datadir}/themes/LargePrint ${datadir}/icons/LargePrint" +FILES_gnome-theme-lighthouseblue = "${datadir}/themes/LighthouseBlue ${datadir}/icons/LighthouseBlue" +FILES_gnome-theme-mist = "${datadir}/themes/Mist ${datadir}/icons/Mist" +FILES_gnome-theme-traditional = "${datadir}/themes/Traditional ${datadir}/icons/Traditional" + +FILES_${PN} += "${datadir}/themes ${datadir}/icons" diff --git a/packages/gnome/libgnome_2.24.0.bb b/packages/gnome/libgnome_2.24.0.bb new file mode 100644 index 0000000000..549cda2855 --- /dev/null +++ b/packages/gnome/libgnome_2.24.0.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "Gnome application programming libraries" +LICENSE = "GPL" +SECTION = "x11/gnome/libs" +PR = "r0" + +inherit gnome lib_package + +DEPENDS = "gconf-native gnome-vfs libbonobo esound" + +EXTRA_OECONF = "--disable-gtk-doc" + +FILES_${PN} += "${libdir}/bonobo/servers ${libdir}/bonobo/monikers/*.so \ + ${datadir}/gnome-background-properties ${datadir}/pixmaps" +FILES_${PN}-dev += "${libdir}/bonobo/monikers/*a" +FILES_${PN}-dbg += "${libdir}/bonobo/monikers/.debug" + +do_stage() { + autotools_stage_all +} diff --git a/packages/gnome/libgnomeprint_2.18.5.bb b/packages/gnome/libgnomeprint_2.18.5.bb new file mode 100644 index 0000000000..899ded9c6d --- /dev/null +++ b/packages/gnome/libgnomeprint_2.18.5.bb @@ -0,0 +1,13 @@ +LICENSE = "GPL" +SECTION = "x11/gnome/libs" + +DEPENDS = "libxml2 libgnomecups glib-2.0 pango libart-lgpl fontconfig popt gnome-common" + +inherit flow-lossage pkgconfig gnome + +FILES_${PN}-dbg += "${libdir}/libgnomeprint/${PV}/modules/transports/.debug \ + ${libdir}/libgnomeprint/${PV}/modules/.debug ${libdir}/libgnomeprint/${PV}/modules/*/.debug" + +do_stage() { + autotools_stage_all +} diff --git a/packages/gnome/libgnomeprintui_2.18.3.bb b/packages/gnome/libgnomeprintui_2.18.3.bb new file mode 100644 index 0000000000..7c6d289e3a --- /dev/null +++ b/packages/gnome/libgnomeprintui_2.18.3.bb @@ -0,0 +1,11 @@ +LICENSE = "GPL" +SECTION = "x11/gnome/libs" +DEPENDS = "libgnomeprint gtk+ libgnomecanvas gnome-icon-theme gnome-common" + +inherit gnome pkgconfig + +EXTRA_OECONF = "use_local_libgnomeprint_la=no" + +do_stage() { + autotools_stage_all +} diff --git a/packages/gnome/libgnomeui_2.24.0.bb b/packages/gnome/libgnomeui_2.24.0.bb new file mode 100644 index 0000000000..6cde2362d2 --- /dev/null +++ b/packages/gnome/libgnomeui_2.24.0.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "GNOME User Interface Library" +LICENSE = "GPL" +SECTION = "x11/gnome/libs" +DEPENDS = "libgnome libgnomecanvas libbonoboui gnome-keyring" + +inherit gnome + +FILES_${PN} += "${libdir}/gtk-2.0/*/filesystems/lib*.so \ + ${libdir}/libglade/*/lib*.so \ + ${datadir}/pixmaps/gnome-about-logo.png" +FILES_${PN}-dev += "${libdir}/gtk-2.0/*/filesystems/*.la ${libdir}/gtk-2.0/*/filesystems/*.a ${libdir}/libglade/*/*.la ${libdir}/libglade/*/*.a" +FILES_${PN}-dbg += "${libdir}/gtk-2.0/*/filesystems/.debug/ ${libdir}/libglade/*/.debug/" + +SRC_URI += "file://gnome-stock-pixbufs.h file://no-pixbuf-csource.patch;patch=1" + +EXTRA_OECONF = "--disable-gtk-doc" + +do_configure_prepend() { + install -m 0644 ${WORKDIR}/gnome-stock-pixbufs.h ${S}/libgnomeui/pixmaps/gnome-stock-pixbufs.h +} + +do_stage() { + autotools_stage_all +} diff --git a/packages/gnome/libgtop_2.24.0.bb b/packages/gnome/libgtop_2.24.0.bb new file mode 100644 index 0000000000..02d1d9405c --- /dev/null +++ b/packages/gnome/libgtop_2.24.0.bb @@ -0,0 +1,10 @@ +LICENSE = "LGPL" +DEPENDS = "glib-2.0" + +inherit gnome lib_package + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} diff --git a/packages/gnome/libwnck_2.24.0.bb b/packages/gnome/libwnck_2.24.0.bb new file mode 100644 index 0000000000..b176493b93 --- /dev/null +++ b/packages/gnome/libwnck_2.24.0.bb @@ -0,0 +1,10 @@ +DESCRIPTION = "Window navigation construction toolkit" +LICENSE = "LGPL" +SECTION = "x11/libs" +DEPENDS = "gtk+ gdk-pixbuf-csource-native" + +inherit gnome + +do_stage() { + autotools_stage_all +} diff --git a/packages/gtkmm/gtkmm_2.14.1.bb b/packages/gtkmm/gtkmm_2.14.1.bb new file mode 100644 index 0000000000..e3def49b5b --- /dev/null +++ b/packages/gtkmm/gtkmm_2.14.1.bb @@ -0,0 +1,11 @@ +require gtkmm.inc + +DEPENDS += "pangomm" + +PR = "r0" + +# Hack! Remove once gtkmm likes libtool 2x +do_cconfigure() { + gnu-configize + oe_runconf +} diff --git a/packages/icon-naming-utils/icon-naming-utils-native_0.8.7.bb b/packages/icon-naming-utils/icon-naming-utils-native_0.8.7.bb new file mode 100644 index 0000000000..e7ef65f342 --- /dev/null +++ b/packages/icon-naming-utils/icon-naming-utils-native_0.8.7.bb @@ -0,0 +1,8 @@ +LICENSE = "GPLv2" +DEPENDS = "libxml-simple-perl-native" + +SRC_URI = "http://tango.freedesktop.org/releases/icon-naming-utils-${PV}.tar.gz" + +S = "${WORKDIR}/icon-naming-utils-${PV}" + +inherit autotools native diff --git a/packages/pango/pango-1.22.0/.mtn2git_empty b/packages/pango/pango-1.22.0/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/pango/pango-1.22.0/.mtn2git_empty diff --git a/packages/pango/pango-1.22.0/no-tests.patch b/packages/pango/pango-1.22.0/no-tests.patch new file mode 100644 index 0000000000..dafcb20c3b --- /dev/null +++ b/packages/pango/pango-1.22.0/no-tests.patch @@ -0,0 +1,10 @@ +--- /tmp/Makefile.am 2007-03-01 13:29:37.000000000 +0100 ++++ pango-1.16.0/Makefile.am 2007-03-01 13:29:52.545251000 +0100 +@@ -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/packages/pango/pango_1.22.0.bb b/packages/pango/pango_1.22.0.bb new file mode 100644 index 0000000000..639e094cc0 --- /dev/null +++ b/packages/pango/pango_1.22.0.bb @@ -0,0 +1,4 @@ +require pango.inc +PR = "r2" + + diff --git a/packages/pango/pangomm_2.14.0.bb b/packages/pango/pangomm_2.14.0.bb new file mode 100644 index 0000000000..2f8d1f713e --- /dev/null +++ b/packages/pango/pangomm_2.14.0.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "C++ bindings for the pango library." +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "LGPL" +DEPENDS = "cairomm glib-2.0 libsigc++-2.0" +SHRT_VER = "${@bb.data.getVar('PV',d,1).split('.')[0]}.${@bb.data.getVar('PV',d,1).split('.')[1]}" + +SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/pangomm/${SHRT_VER}/pangomm-${PV}.tar.bz2" + +inherit autotools flow-lossage + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${libdir}/*/include/" + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage () { + autotools_stage_all +} diff --git a/packages/xorg-lib/pixman/pixman-arm.patch b/packages/xorg-lib/pixman/pixman-arm.patch index b9280edf10..91dda03b7c 100644 --- a/packages/xorg-lib/pixman/pixman-arm.patch +++ b/packages/xorg-lib/pixman/pixman-arm.patch @@ -1,8 +1,14 @@ -diff --git a/configure.ac b/configure.ac -index 702bed0..59e0d99 100644 +From: Jeff Muizelaar <jmuizelaar@mozilla.com> +Date: Wed, 17 Sep 2008 19:53:20 +0000 (-0400) +Subject: Add support for ARMv6 SIMD fastpaths. +X-Git-Url: http://gitweb.freedesktop.org/?p=pixman.git;a=commitdiff;h=d0b181f347ef4720d130beee3f03196afbd28aba + +Add support for ARMv6 SIMD fastpaths. +--- + --- a/configure.ac +++ b/configure.ac -@@ -301,6 +301,44 @@ AC_SUBST(VMX_CFLAGS) +@@ -277,6 +277,44 @@ AC_SUBST(VMX_CFLAGS) AM_CONDITIONAL(USE_VMX, test $have_vmx_intrinsics = yes) @@ -47,12 +53,10 @@ index 702bed0..59e0d99 100644 AC_ARG_ENABLE(gtk, [AC_HELP_STRING([--enable-gtk], [enable tests using GTK+ [default=auto]])], -diff --git a/pixman/Makefile.am b/pixman/Makefile.am -index 4f046f1..2cad71a 100644 --- a/pixman/Makefile.am +++ b/pixman/Makefile.am -@@ -77,3 +77,16 @@ libpixman_sse_la_LIBADD = $(DEP_LIBS) - libpixman_1_la_LIBADD += libpixman-sse.la +@@ -79,3 +79,15 @@ libpixman_sse2_la_LIBADD = $(DEP_LIBS) + libpixman_1_la_LIBADD += libpixman-sse2.la endif +# arm code @@ -60,22 +64,18 @@ index 4f046f1..2cad71a 100644 +noinst_LTLIBRARIES += libpixman-arm.la +libpixman_arm_la_SOURCES = \ + pixman-arm.c \ -+ pixman-arm.h \ -+ pixman-combine32.h ++ pixman-arm.h +libpixman_arm_la_CFLAGS = $(DEP_CFLAGS) $(ARM_CFLAGS) +libpixman_arm_la_LIBADD = $(DEP_LIBS) +libpixman_1_la_LIBADD += libpixman-arm.la +endif + + -diff --git a/pixman/pixman-arm.c b/pixman/pixman-arm.c -new file mode 100644 -index 0000000..5ea65cb --- /dev/null +++ b/pixman/pixman-arm.c -@@ -0,0 +1,433 @@ +@@ -0,0 +1,409 @@ +/* -+ * Copyright © 2008 Mozilla Corporation ++ * Copyright © 2008 Mozilla Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that @@ -104,7 +104,6 @@ index 0000000..5ea65cb +#endif + +#include "pixman-arm.h" -+#include "pixman-combine32.h" + +void +fbCompositeSrcAdd_8000x8000arm (pixman_op_t op, @@ -125,7 +124,6 @@ index 0000000..5ea65cb + int dstStride, srcStride; + uint16_t w; + uint8_t s, d; -+ uint16_t t; + + fbComposeGetStart (pSrc, xSrc, ySrc, uint8_t, srcStride, srcLine, 1); + fbComposeGetStart (pDst, xDst, yDst, uint8_t, dstStride, dstLine, 1); @@ -142,10 +140,8 @@ index 0000000..5ea65cb + { + s = *src; + d = *dst; -+ t = d + s; -+ /* s = t | (0 - (t >> 8)); */ -+ asm("usat %0, #8, %1" : "=r"(s) : "r"(t)); -+ *dst = s; ++ asm("uqadd8 %0, %1, %2" : "+r"(d) : "r"(s)); ++ *dst = d; + + dst++; + src++; @@ -164,10 +160,8 @@ index 0000000..5ea65cb + { + s = *src; + d = *dst; -+ t = d + s; -+ /* s = t | (0 - (t >> 8)); */ -+ asm("usat %0, #8, %1" : "=r"(s) : "r"(t)); -+ *dst = s; ++ asm("uqadd8 %0, %1, %2" : "+r"(d) : "r"(s)); ++ *dst = d; + + dst++; + src++; @@ -195,8 +189,8 @@ index 0000000..5ea65cb + uint32_t *srcLine, *src; + int dstStride, srcStride; + uint16_t w; -+ uint32_t component_mask = 0xff00ff; + uint32_t component_half = 0x800080; ++ uint32_t upper_component_mask = 0xff00ff00; + uint32_t alpha_mask = 0xff; + + fbComposeGetStart (pDst, xDst, yDst, uint32_t, dstStride, dstLine, 1); @@ -235,24 +229,19 @@ index 0000000..5ea65cb + /* = 255 - alpha */ + "sub r8, %[alpha_mask], r5, lsr #24\n\t" +#endif -+ "and r6, %[component_mask], r4\n\t" -+ "and r7, %[component_mask], r4, lsr #8\n\t" ++ "uxtb16 r6, r4\n\t" ++ "uxtb16 r7, r4, ror #8\n\t" + + /* multiply by 257 and divide by 65536 */ + "mla r6, r6, r8, %[component_half]\n\t" + "mla r7, r7, r8, %[component_half]\n\t" + -+ "and r8, %[component_mask], r6, lsr #8\n\t" -+ "and r9, %[component_mask], r7, lsr #8\n\t" -+ -+ "add r6, r6, r8\n\t" -+ "add r7, r7, r9\n\t" ++ "uxtab16 r6, r6, r6, ror #8\n\t" ++ "uxtab16 r7, r7, r7, ror #8\n\t" + -+ "and r6, %[component_mask], r6, lsr #8\n\t" -+ "and r7, %[component_mask], r7, lsr #8\n\t" -+ -+ /* recombine */ -+ "orr r6, r6, r7, lsl #8\n\t" ++ /* recombine the 0xff00ff00 bytes of r6 and r7 */ ++ "and r7, %[upper_component_mask]\n\t" ++ "uxtab16 r6, r7, r6, ror #8\n\t" + + "uqadd8 r5, r6, r5\n\t" + @@ -266,9 +255,9 @@ index 0000000..5ea65cb + "bne 1b\n\t" + "2:\n\t" + : [w] "+r" (w), [dest] "+r" (dst), [src] "+r" (src) -+ : [component_half] "r" (component_half), [component_mask] "r" (component_mask), ++ : [component_half] "r" (component_half), [upper_component_mask] "r" (upper_component_mask), + [alpha_mask] "r" (alpha_mask) -+ : "r4", "r5", "r6", "r7", "r8", "r9", "cc", "memory" ++ : "r4", "r5", "r6", "r7", "r8", "cc", "memory" + ); + } +} @@ -292,7 +281,6 @@ index 0000000..5ea65cb + uint32_t mask; + int dstStride, srcStride; + uint16_t w; -+ uint32_t component_mask = 0xff00ff; + uint32_t component_half = 0x800080; + uint32_t alpha_mask = 0xff; + @@ -327,27 +315,24 @@ index 0000000..5ea65cb +#endif + "ldr r4, [%[dest]] \n\t" + -+ "and r6, %[component_mask], r5\n\t" -+ "and r7, %[component_mask], r5, lsr #8\n\t" ++ "uxtb16 r6, r5\n\t" ++ "uxtb16 r7, r5, ror #8\n\t" + + /* multiply by alpha (r8) then by 257 and divide by 65536 */ + "mla r6, r6, %[mask_alpha], %[component_half]\n\t" + "mla r7, r7, %[mask_alpha], %[component_half]\n\t" + -+ "and r8, %[component_mask], r6, lsr #8\n\t" -+ "and r9, %[component_mask], r7, lsr #8\n\t" -+ -+ "add r6, r6, r8\n\t" -+ "add r7, r7, r9\n\t" ++ "uxtab16 r6, r6, r6, ror #8\n\t" ++ "uxtab16 r7, r7, r7, ror #8\n\t" + -+ "and r6, %[component_mask], r6, lsr #8\n\t" -+ "and r7, %[component_mask], r7, lsr #8\n\t" ++ "uxtb16 r6, r6, ror #8\n\t" ++ "uxtb16 r7, r7, ror #8\n\t" + + /* recombine */ + "orr r5, r6, r7, lsl #8\n\t" + -+ "and r6, %[component_mask], r4\n\t" -+ "and r7, %[component_mask], r4, lsr #8\n\t" ++ "uxtb16 r6, r4\n\t" ++ "uxtb16 r7, r4, ror #8\n\t" + + /* 255 - alpha */ + "sub r8, %[alpha_mask], r5, lsr #24\n\t" @@ -356,14 +341,11 @@ index 0000000..5ea65cb + "mla r6, r6, r8, %[component_half]\n\t" + "mla r7, r7, r8, %[component_half]\n\t" + -+ "and r8, %[component_mask], r6, lsr #8\n\t" -+ "and r9, %[component_mask], r7, lsr #8\n\t" ++ "uxtab16 r6, r6, r6, ror #8\n\t" ++ "uxtab16 r7, r7, r7, ror #8\n\t" + -+ "add r6, r6, r8\n\t" -+ "add r7, r7, r9\n\t" -+ -+ "and r6, %[component_mask], r6, lsr #8\n\t" -+ "and r7, %[component_mask], r7, lsr #8\n\t" ++ "uxtb16 r6, r6, ror #8\n\t" ++ "uxtb16 r7, r7, ror #8\n\t" + + /* recombine */ + "orr r6, r6, r7, lsl #8\n\t" @@ -380,7 +362,7 @@ index 0000000..5ea65cb + "bne 1b\n\t" + "2:\n\t" + : [w] "+r" (w), [dest] "+r" (dst), [src] "+r" (src) -+ : [component_half] "r" (component_half), [component_mask] "r" (component_mask), [mask_alpha] "r" (mask), ++ : [component_half] "r" (component_half), [mask_alpha] "r" (mask), + [alpha_mask] "r" (alpha_mask) + : "r4", "r5", "r6", "r7", "r8", "r9", "cc", "memory" + ); @@ -453,20 +435,17 @@ index 0000000..5ea65cb + "mla r6, %[src_lo], r5, %[component_half]\n\t" + "mla r7, %[src_hi], r5, %[component_half]\n\t" + -+ "and r8, %[component_mask], r6, lsr #8\n\t" -+ "and r5, %[component_mask], r7, lsr #8\n\t" -+ -+ "add r6, r6, r8\n\t" -+ "add r7, r7, r5\n\t" ++ "uxtab16 r6, r6, r6, ror #8\n\t" ++ "uxtab16 r7, r7, r7, ror #8\n\t" + -+ "and r6, %[component_mask], r6, lsr #8\n\t" -+ "and r7, %[component_mask], r7, lsr #8\n\t" ++ "uxtb16 r6, r6, ror #8\n\t" ++ "uxtb16 r7, r7, ror #8\n\t" + + /* recombine */ + "orr r5, r6, r7, lsl #8\n\t" + -+ "and r6, %[component_mask], r4\n\t" -+ "and r7, %[component_mask], r4, lsr #8\n\t" ++ "uxtb16 r6, r4\n\t" ++ "uxtb16 r7, r4, ror #8\n\t" + + /* we could simplify this to use 'sub' if we were + * willing to give up a register for alpha_mask */ @@ -477,14 +456,11 @@ index 0000000..5ea65cb + "mla r6, r6, r8, %[component_half]\n\t" + "mla r7, r7, r8, %[component_half]\n\t" + -+ "and r8, %[component_mask], r6, lsr #8\n\t" -+ "and r4, %[component_mask], r7, lsr #8\n\t" ++ "uxtab16 r6, r6, r6, ror #8\n\t" ++ "uxtab16 r7, r7, r7, ror #8\n\t" + -+ "add r6, r6, r8\n\t" -+ "add r7, r7, r4\n\t" -+ -+ "and r6, %[component_mask], r6, lsr #8\n\t" -+ "and r7, %[component_mask], r7, lsr #8\n\t" ++ "uxtb16 r6, r6, ror #8\n\t" ++ "uxtb16 r7, r7, ror #8\n\t" + + /* recombine */ + "orr r6, r6, r7, lsl #8\n\t" @@ -501,20 +477,17 @@ index 0000000..5ea65cb + "bne 1b\n\t" + "2:\n\t" + : [w] "+r" (w), [dest] "+r" (dst), [src] "+r" (src), [mask] "+r" (mask) -+ : [component_half] "r" (component_half), [component_mask] "r" (component_mask), ++ : [component_half] "r" (component_half), + [src_hi] "r" (src_hi), [src_lo] "r" (src_lo) + : "r4", "r5", "r6", "r7", "r8", "cc", "memory" + ); + } +} -diff --git a/pixman/pixman-arm.h b/pixman/pixman-arm.h -new file mode 100644 -index 0000000..258054a --- /dev/null +++ b/pixman/pixman-arm.h @@ -0,0 +1,94 @@ +/* -+ * Copyright © 2008 Mozilla Corporation ++ * Copyright © 2008 Mozilla Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that @@ -607,19 +580,17 @@ index 0000000..258054a + + +#endif /* USE_ARM */ -diff --git a/pixman/pixman-pict.c b/pixman/pixman-pict.c -index b918219..e59e904 100644 --- a/pixman/pixman-pict.c +++ b/pixman/pixman-pict.c @@ -34,6 +34,7 @@ #include "pixman-mmx.h" #include "pixman-vmx.h" - #include "pixman-sse.h" + #include "pixman-sse2.h" +#include "pixman-arm.h" #include "pixman-combine32.h" #ifdef __GNUC__ -@@ -1479,6 +1480,26 @@ static const FastPathInfo vmx_fast_paths[] = +@@ -1479,6 +1480,26 @@ static const FastPathInfo vmx_fast_paths }; #endif @@ -646,12 +617,12 @@ index b918219..e59e904 100644 static const FastPathInfo c_fast_paths[] = { -@@ -1829,6 +1850,12 @@ pixman_image_composite (pixman_op_t op, +@@ -1829,6 +1850,12 @@ pixman_image_composite (pixman_op_t if (!info && pixman_have_vmx()) info = get_fast_path (vmx_fast_paths, op, pSrc, pMask, pDst, pixbuf); #endif -+#ifdef USE_ARM + ++#ifdef USE_ARM + if (!info && pixman_have_arm()) + info = get_fast_path (arm_fast_paths, op, pSrc, pMask, pDst, pixbuf); +#endif diff --git a/packages/xorg-lib/pixman/pixman-x888-565.patch b/packages/xorg-lib/pixman/pixman-x888-565.patch index a458e045b8..a3fa331710 100644 --- a/packages/xorg-lib/pixman/pixman-x888-565.patch +++ b/packages/xorg-lib/pixman/pixman-x888-565.patch @@ -1,14 +1,14 @@ -commit 8507756d8868b8d8c7a149bd2427a04262638156 -Author: Vladimir Vukicevic <vladimir@slide.(none)> -Date: Sat Sep 6 17:46:52 2008 -0700 +From: Vladimir Vukicevic <vladimir@slide.(none)> +Date: Wed, 17 Sep 2008 20:01:31 +0000 (-0400) +Subject: Add SRC x888x0565 C fast path +X-Git-Url: http://gitweb.freedesktop.org/?p=pixman.git;a=commitdiff;h=7180230d4d87c55dfef1e17a0cc3b125d45aa3a0 - Add SRC x888x0565 C fast path +Add SRC x888x0565 C fast path +--- -diff --git a/pixman/pixman-pict.c b/pixman/pixman-pict.c -index eeefa33..b5fb0ff 100644 --- a/pixman/pixman-pict.c +++ b/pixman/pixman-pict.c -@@ -759,6 +759,46 @@ fbCompositeSrc_8888x0565 (pixman_op_t op, +@@ -759,6 +759,46 @@ fbCompositeSrc_8888x0565 (pixman_op_t op } } @@ -55,7 +55,7 @@ index eeefa33..b5fb0ff 100644 void fbCompositeSrcAdd_8000x8000 (pixman_op_t op, pixman_image_t * pSrc, -@@ -1568,6 +1608,10 @@ static const FastPathInfo c_fast_paths[] = +@@ -1568,6 +1608,10 @@ static const FastPathInfo c_fast_paths[] { PIXMAN_OP_SRC, PIXMAN_r5g6b5, PIXMAN_null, PIXMAN_r5g6b5, fbCompositeSrcSrc_nxn, 0 }, { PIXMAN_OP_SRC, PIXMAN_b5g6r5, PIXMAN_null, PIXMAN_b5g6r5, fbCompositeSrcSrc_nxn, 0 }, #endif diff --git a/packages/xorg-lib/pixman_0.12.0.bb b/packages/xorg-lib/pixman_0.12.0.bb new file mode 100644 index 0000000000..5d43adba30 --- /dev/null +++ b/packages/xorg-lib/pixman_0.12.0.bb @@ -0,0 +1,17 @@ +SECTION = "libs" +PRIORITY = "optional" +DESCRIPTION = "Low-level pixel manipulation library." +LICENSE = "X11" + +SRC_URI = "http://cairographics.org/releases/pixman-${PV}.tar.gz \ + file://pixman-arm.patch;patch=1 \ + file://pixman-x888-565.patch;patch=1 \ + " + +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" +do_stage () { + autotools_stage_all +} + |