summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig1
-rw-r--r--packages/linux/linux-handhelds-2.6-2.6.21/linux-2.6.git-9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a.patch144
-rw-r--r--packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb4
-rw-r--r--packages/swt/files/swt-hildon.patch159
-rw-r--r--packages/swt/swt3.4-gtk-hildon_3.3+3.4M3.bb4
-rw-r--r--packages/swt/swt3.4-gtk-hildon_3.3+3.4M5.bb7
-rw-r--r--packages/swt/swt3.4-gtk_3.3+3.4M5.bb12
-rw-r--r--packages/xorg-lib/libx11_1.1.1.bb13
8 files changed, 321 insertions, 23 deletions
diff --git a/packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig b/packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig
index da93637bd6..d752bc8c37 100644
--- a/packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig
+++ b/packages/linux/linux-handhelds-2.6-2.6.21/h3900/defconfig
@@ -1434,3 +1434,4 @@ CONFIG_ZLIB_DEFLATE=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
+CONFIG_ATAGS_PROC=y
diff --git a/packages/linux/linux-handhelds-2.6-2.6.21/linux-2.6.git-9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a.patch b/packages/linux/linux-handhelds-2.6-2.6.21/linux-2.6.git-9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a.patch
new file mode 100644
index 0000000000..f3c27d33a8
--- /dev/null
+++ b/packages/linux/linux-handhelds-2.6-2.6.21/linux-2.6.git-9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a.patch
@@ -0,0 +1,144 @@
+From: Bill Gatliff <bgat@billgatliff.com>
+Date: Thu, 31 May 2007 21:02:22 +0000 (+0100)
+Subject: [ARM] 4423/1: add ATAGS support
+X-Git-Tag: v2.6.23-rc1~1101^2^7~5
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a
+
+[ARM] 4423/1: add ATAGS support
+
+Examines the ATAGS pointer (r2) at boot, and interprets
+a nonzero value as a reference to an ATAGS structure. A
+suitable ATAGS structure replaces the kernel's command line.
+
+Signed-off-by: Bill Gatliff <bgat@billgatliff.com>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+---
+
+diff --git a/arch/arm/kernel/head-common.S b/arch/arm/kernel/head-common.S
+index a52da0d..024a9cf 100644
+--- a/arch/arm/kernel/head-common.S
++++ b/arch/arm/kernel/head-common.S
+@@ -20,7 +20,8 @@ __switch_data:
+ .long _end @ r7
+ .long processor_id @ r4
+ .long __machine_arch_type @ r5
+- .long cr_alignment @ r6
++ .long __atags_pointer @ r6
++ .long cr_alignment @ r7
+ .long init_thread_union + THREAD_START_SP @ sp
+
+ /*
+@@ -29,6 +30,7 @@ __switch_data:
+ *
+ * r0 = cp#15 control register
+ * r1 = machine ID
++ * r2 = atags pointer
+ * r9 = processor ID
+ */
+ .type __mmap_switched, %function
+@@ -47,11 +49,12 @@ __mmap_switched:
+ strcc fp, [r6],#4
+ bcc 1b
+
+- ldmia r3, {r4, r5, r6, sp}
++ ldmia r3, {r4, r5, r6, r7, sp}
+ str r9, [r4] @ Save processor ID
+ str r1, [r5] @ Save machine type
++ str r2, [r6] @ Save atags pointer
+ bic r4, r0, #CR_A @ Clear 'A' bit
+- stmia r6, {r0, r4} @ Save control register values
++ stmia r7, {r0, r4} @ Save control register values
+ b start_kernel
+
+ /*
+@@ -215,3 +218,34 @@ ENTRY(lookup_machine_type)
+ bl __lookup_machine_type
+ mov r0, r5
+ ldmfd sp!, {r4 - r6, pc}
++
++/* Determine validity of the r2 atags pointer. The heuristic requires
++ * that the pointer be aligned, in the first 16k of physical RAM and
++ * that the ATAG_CORE marker is first and present. Future revisions
++ * of this function may be more lenient with the physical address and
++ * may also be able to move the ATAGS block if necessary.
++ *
++ * r8 = machinfo
++ *
++ * Returns:
++ * r2 either valid atags pointer, or zero
++ * r5, r6 corrupted
++ */
++
++ .type __vet_atags, %function
++__vet_atags:
++ tst r2, #0x3 @ aligned?
++ bne 1f
++
++ ldr r5, [r2, #0] @ is first tag ATAG_CORE?
++ subs r5, r5, #ATAG_CORE_SIZE
++ bne 1f
++ ldr r5, [r2, #4]
++ ldr r6, =ATAG_CORE
++ cmp r5, r6
++ bne 1f
++
++ mov pc, lr @ atag pointer is ok
++
++1: mov r2, #0
++ mov pc, lr
+diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
+index 41f98b4..7898cbc 100644
+--- a/arch/arm/kernel/head.S
++++ b/arch/arm/kernel/head.S
+@@ -29,6 +29,10 @@
+ #define KERNEL_RAM_VADDR (PAGE_OFFSET + TEXT_OFFSET)
+ #define KERNEL_RAM_PADDR (PHYS_OFFSET + TEXT_OFFSET)
+
++#define ATAG_CORE 0x54410001
++#define ATAG_CORE_SIZE ((2*4 + 3*4) >> 2)
++
++
+ /*
+ * swapper_pg_dir is the virtual address of the initial page table.
+ * We place the page tables 16K below KERNEL_RAM_VADDR. Therefore, we must
+@@ -61,7 +65,7 @@
+ *
+ * This is normally called from the decompressor code. The requirements
+ * are: MMU = off, D-cache = off, I-cache = dont care, r0 = 0,
+- * r1 = machine nr.
++ * r1 = machine nr, r2 = atags pointer.
+ *
+ * This code is mostly position independent, so if you link the kernel at
+ * 0xc0008000, you call this at __pa(0xc0008000).
+@@ -85,6 +89,7 @@ ENTRY(stext)
+ bl __lookup_machine_type @ r5=machinfo
+ movs r8, r5 @ invalid machine (r5=0)?
+ beq __error_a @ yes, error 'a'
++ bl __vet_atags
+ bl __create_page_tables
+
+ /*
+diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
+index 650eac1..5be2e98 100644
+--- a/arch/arm/kernel/setup.c
++++ b/arch/arm/kernel/setup.c
+@@ -63,6 +63,8 @@ unsigned int processor_id;
+ unsigned int __machine_arch_type;
+ EXPORT_SYMBOL(__machine_arch_type);
+
++unsigned int __atags_pointer __initdata;
++
+ unsigned int system_rev;
+ EXPORT_SYMBOL(system_rev);
+
+@@ -780,7 +782,9 @@ void __init setup_arch(char **cmdline_p)
+ if (mdesc->soft_reboot)
+ reboot_setup("s");
+
+- if (mdesc->boot_params)
++ if (__atags_pointer)
++ tags = phys_to_virt(__atags_pointer);
++ else if (mdesc->boot_params)
+ tags = phys_to_virt(mdesc->boot_params);
+
+ /*
diff --git a/packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb b/packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb
index ec822284cf..b45d3e0987 100644
--- a/packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb
+++ b/packages/linux/linux-handhelds-2.6_2.6.21-hh20.bb
@@ -1,7 +1,7 @@
SECTION = "kernel"
DESCRIPTION = "handhelds.org Linux kernel 2.6 for PocketPCs and other consumer handheld devices."
LICENSE = "GPL"
-PR = "r11"
+PR = "r12"
DEFAULT_PREFERENCE = "-1"
@@ -10,6 +10,8 @@ DEFAULT_PREFERENCE = "-1"
FILESPATH = "${FILE_DIRNAME}/linux-handhelds-2.6-2.6.21/${MACHINE}:${FILE_DIRNAME}/linux-handhelds-2.6-2.6.21"
SRC_URI = "${HANDHELDS_CVS};module=linux/kernel26;tag=${@'K' + bb.data.getVar('PV',d,1).replace('.', '-')} \
+ file://linux-2.6.git-9d20fdd58e74d4d26dc5216efaaa0f800c23dd3a.patch;patch=1 \
+ http://www.rpsys.net/openzaurus/patches/archive/export_atags-r0a.patch;patch=1 \
file://defconfig"
require linux-handhelds-2.6.inc
diff --git a/packages/swt/files/swt-hildon.patch b/packages/swt/files/swt-hildon.patch
index 728dd3070c..5f095e08fc 100644
--- a/packages/swt/files/swt-hildon.patch
+++ b/packages/swt/files/swt-hildon.patch
@@ -1,15 +1,15 @@
-Index: swt-hildon/swt-source/make_linux.mak
+Index: swt/swt-source/make_linux.mak
===================================================================
---- swt-hildon.orig/swt-source/make_linux.mak 2008-01-08 09:35:29.000000000 +0100
-+++ swt-hildon/swt-source/make_linux.mak 2008-01-08 11:35:01.000000000 +0100
+--- swt.orig/swt-source/make_linux.mak 2007-06-20 12:01:22.000000000 +0200
++++ swt/swt-source/make_linux.mak 2008-02-14 11:32:49.000000000 +0100
@@ -45,8 +45,8 @@
CAIROLIBS = `pkg-config --libs-only-L cairo` -lcairo
# Do not use pkg-config to get libs because it includes unnecessary dependencies (i.e. pangoxft-1.0)
-GTKCFLAGS = `pkg-config --cflags gtk+-2.0`
-GTKLIBS = `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L/usr/X11R6/lib $(XLIB64) -lXtst
-+GTKCFLAGS = `pkg-config --cflags gtk+-2.0 hildon-1`
-+GTKLIBS = -lhildon-1 `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L/usr/X11R6/lib $(XLIB64) -lXtst
++GTKCFLAGS = `pkg-config --cflags gtk+-2.0 hildon-1 hildon-fm-2`
++GTKLIBS = -lhildon-1 -lhildonfm `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L/usr/X11R6/lib $(XLIB64) -lXtst
CDE_LIBS = -L$(CDE_HOME)/lib -R$(CDE_HOME)/lib -lXt -lX11 -lDtSvc
@@ -31,10 +31,10 @@ Index: swt-hildon/swt-source/make_linux.mak
-fPIC \
${SWT_PTR_CFLAGS}
LIBS = -shared -fPIC
-Index: swt-hildon/swt-source/os.c
+Index: swt/swt-source/os.c
===================================================================
---- swt-hildon.orig/swt-source/os.c 2008-01-08 09:35:29.000000000 +0100
-+++ swt-hildon/swt-source/os.c 2008-01-08 09:37:00.000000000 +0100
+--- swt.orig/swt-source/os.c 2007-10-30 16:24:28.000000000 +0100
++++ swt/swt-source/os.c 2008-02-14 09:32:49.000000000 +0100
@@ -17,6 +17,9 @@
#include "os_structs.h"
#include "os_stats.h"
@@ -80,7 +80,7 @@ Index: swt-hildon/swt-source/os.c
OS_NATIVE_EXIT(env, that, _1gtk_1menu_1bar_1new_FUNC);
return rc;
}
-@@ -15464,8 +15479,22 @@
+@@ -15464,8 +15479,23 @@
(JNIEnv *env, jclass that, jint arg0)
{
jint rc = 0;
@@ -95,6 +95,7 @@ Index: swt-hildon/swt-source/os.c
+ p = hildon_program_get_instance();
+ w = hildon_window_new();
+ hildon_program_add_window(p, HILDON_WINDOW(w));
++/* gtk_window_fullscreen(GTK_WINDOW(w));*/
+/*
+ }
+ else
@@ -104,10 +105,10 @@ Index: swt-hildon/swt-source/os.c
OS_NATIVE_EXIT(env, that, _1gtk_1window_1new_FUNC);
return rc;
}
-Index: swt-hildon/swt-source/org/eclipse/swt/widgets/Menu.java
+Index: swt/swt-source/org/eclipse/swt/widgets/Menu.java
===================================================================
---- swt-hildon.orig/swt-source/org/eclipse/swt/widgets/Menu.java 2008-01-08 09:34:55.000000000 +0100
-+++ swt-hildon/swt-source/org/eclipse/swt/widgets/Menu.java 2008-01-08 09:36:01.000000000 +0100
+--- swt.orig/swt-source/org/eclipse/swt/widgets/Menu.java 2007-05-31 18:03:50.000000000 +0200
++++ swt/swt-source/org/eclipse/swt/widgets/Menu.java 2008-02-14 09:05:04.000000000 +0100
@@ -259,9 +259,17 @@
if ((style & SWT.BAR) != 0) {
handle = OS.gtk_menu_bar_new ();
@@ -126,3 +127,137 @@ Index: swt-hildon/swt-source/org/eclipse/swt/widgets/Menu.java
} else {
handle = OS.gtk_menu_new ();
if (handle == 0) error (SWT.ERROR_NO_HANDLES);
+Index: swt/swt-source/org/eclipse/swt/internal/gtk/OS.java
+===================================================================
+--- swt.orig/swt-source/org/eclipse/swt/internal/gtk/OS.java 2007-10-30 16:06:36.000000000 +0100
++++ swt/swt-source/org/eclipse/swt/internal/gtk/OS.java 2008-02-14 09:05:04.000000000 +0100
+@@ -471,6 +471,11 @@
+ public static final byte[] window_state_event = ascii("window-state-event");
+
+ /** Properties */
++ /* Maemo hildon specific - border added due to toolbar */
++ public static final byte[] toolbar_borders = ascii("toolbar-borders");
++ /* Maemo hildon specific - border added due to skin graphics area */
++ public static final byte[] borders = ascii("borders");
++
+ public static final byte[] active = ascii("active");
+ public static final byte[] background_gdk = ascii("background-gdk");
+ public static final byte[] button_relief = ascii("button-relief");
+Index: swt/swt-source/org/eclipse/swt/widgets/Shell.java
+===================================================================
+--- swt.orig/swt-source/org/eclipse/swt/widgets/Shell.java 2007-11-01 11:31:12.000000000 +0100
++++ swt/swt-source/org/eclipse/swt/widgets/Shell.java 2008-02-14 10:51:37.000000000 +0100
+@@ -1028,6 +1028,14 @@
+ int /*long*/ gtk_size_allocate (int /*long*/ widget, int /*long*/ allocation) {
+ int width = OS.GTK_WIDGET_WIDTH (shellHandle);
+ int height = OS.GTK_WIDGET_HEIGHT (shellHandle);
++
++ if (!fullScreen)
++ {
++ GtkBorder b = getMaemoBorder(false);
++ width -= (b.left + b.right);
++ height -= (b.top + b.bottom);
++ }
++
+ if (!resized || oldWidth != width || oldHeight != height) {
+ oldWidth = width;
+ oldHeight = height;
+@@ -1384,14 +1392,53 @@
+ if ((state & FOREIGN_HANDLE) != 0) return;
+ Monitor monitor = getMonitor ();
+ Rectangle rect = monitor.getClientArea ();
++/*
+ int width = rect.width * 5 / 8;
+ int height = rect.height * 5 / 8;
++*/
++
++ int width = rect.width;
++ int height = rect.height;
++
++ // Instead of some arbitrary defaults we can use the complete "application
++ // area" on the maemo platform.
++ if (!fullScreen)
++ {
++ GtkBorder b = getMaemoBorder(false);
++ width -= (b.left + b.right);
++ height -= (b.top + b.bottom);
++ }
++
+ if ((style & SWT.RESIZE) != 0) {
+ OS.gtk_window_resize (shellHandle, width, height);
+ }
+ resizeBounds (width, height, false);
+ }
+
++/**
++ * Retrieves the "borders" or "toolbar-borders" property
++ * from the Shell.
++ *
++ * That is neccessary to calculate correct Shell sizes on
++ * the Maemo platform.
++ *
++ */
++private GtkBorder getMaemoBorder(boolean wantToolbarBorder)
++{
++ GtkBorder b = new GtkBorder();
++
++ int /*long*/ [] result = new int /*long*/[1];
++ OS.gtk_widget_style_get(shellHandle,
++ (wantToolbarBorder ? OS.toolbar_borders
++ : OS.borders),
++ result, 0);
++
++ if (result[0] != 0)
++ OS.memmove(b, result[0], GtkBorder.sizeof);
++
++ return b;
++}
++
+ public void setMaximized (boolean maximized) {
+ checkWidget();
+ super.setMaximized (maximized);
+Index: swt/swt-source/os_custom.c
+===================================================================
+--- swt.orig/swt-source/os_custom.c 2007-05-31 18:04:22.000000000 +0200
++++ swt/swt-source/os_custom.c 2008-02-14 13:55:49.000000000 +0100
+@@ -13,6 +13,8 @@
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
++#include <hildon/hildon-file-chooser-dialog.h>
++
+ #include "swt.h"
+ #include "os_structs.h"
+ #include "os_stats.h"
+@@ -41,11 +43,22 @@
+ {
+ jbyte *lparg0=NULL;
+ SWT_PTR rc = 0;
++ GtkWidget *widget = NULL;
+ OS_NATIVE_ENTER(env, that, _1gtk_1file_1chooser_1dialog_1new_FUNC);
+ if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
+ /*
+ rc = (SWT_PTR)gtk_file_chooser_dialog_new(lparg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
+ */
++ /* Remaining arguments are thrown away as they cannot be used for the
++ * HildonFileChooserDialog anyways.
++ */
++ widget = (SWT_PTR) hildon_file_chooser_dialog_new(arg1, (GtkFileChooserAction) arg2);
++ gtk_window_set_title(GTK_WINDOW(widget), (const gchar *) lparg0);
++
++ rc = (SWT_PTR) widget;
++#if 0
++// The code is not supposed to run on AMD64.
++
+ {
+ static int initialized = 0;
+ static void *handle = NULL;
+@@ -70,6 +83,8 @@
+ rc = (SWT_PTR)(*fptr)(lparg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
+ }
+ }
++#endif
++
+ fail:
+ if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
+ OS_NATIVE_EXIT(env, that, _1gtk_1file_1chooser_1dialog_1new_FUNC);
diff --git a/packages/swt/swt3.4-gtk-hildon_3.3+3.4M3.bb b/packages/swt/swt3.4-gtk-hildon_3.3+3.4M3.bb
index 628dcdd810..d3dfe4d216 100644
--- a/packages/swt/swt3.4-gtk-hildon_3.3+3.4M3.bb
+++ b/packages/swt/swt3.4-gtk-hildon_3.3+3.4M3.bb
@@ -1,7 +1,7 @@
require swt3.4-gtk_${PV}.bb
-PR = "r1"
+PR = "r2"
-DEPENDS += "hildon-1"
+DEPENDS += "libhildon libhildonfm"
SRC_URI += "file://swt-hildon.patch;patch=1;pnum=2"
diff --git a/packages/swt/swt3.4-gtk-hildon_3.3+3.4M5.bb b/packages/swt/swt3.4-gtk-hildon_3.3+3.4M5.bb
new file mode 100644
index 0000000000..17d85b46f3
--- /dev/null
+++ b/packages/swt/swt3.4-gtk-hildon_3.3+3.4M5.bb
@@ -0,0 +1,7 @@
+require swt3.4-gtk_${PV}.bb
+
+PR = "r0"
+
+DEPENDS += "libhildon libhildonfm"
+
+SRC_URI += "file://swt-hildon.patch;patch=1;pnum=2"
diff --git a/packages/swt/swt3.4-gtk_3.3+3.4M5.bb b/packages/swt/swt3.4-gtk_3.3+3.4M5.bb
new file mode 100644
index 0000000000..4035d083f7
--- /dev/null
+++ b/packages/swt/swt3.4-gtk_3.3+3.4M5.bb
@@ -0,0 +1,12 @@
+require swt-gtk.inc
+
+SRC_URI = "http://ftp.wh2.tu-dresden.de/pub/mirrors/eclipse/eclipse/downloads/drops/S-3.4M5-200802071530/swt-3.4M5-gtk-linux-x86.zip \
+ file://Makefile"
+
+# A number which is used by SWT to mark the shared libraries.
+SWTVERSION = "3428"
+SWT_API_VERSION = "3.4"
+
+PROVIDES = "swt3.4-gtk"
+
+RCONFLICTS = "libswt3.3-gtk-java"
diff --git a/packages/xorg-lib/libx11_1.1.1.bb b/packages/xorg-lib/libx11_1.1.1.bb
index 7ac5b58345..5b1e304d51 100644
--- a/packages/xorg-lib/libx11_1.1.1.bb
+++ b/packages/xorg-lib/libx11_1.1.1.bb
@@ -1,23 +1,18 @@
require xorg-lib-common.inc
PE = "1"
-PR = "r4"
+PR = "r5"
DESCRIPTION = "Base X libs."
-
DEPENDS += " bigreqsproto xproto xextproto xtrans libxau xcmiscproto \
- libxcb libxdmcp xf86bigfontproto kbproto inputproto"
+ libxdmcp xf86bigfontproto kbproto inputproto"
PROVIDES = "virtual/libx11"
XORG_PN = "libX11"
-PACKAGES =+ "libx11-xcb"
+EXTRA_OECONF += "--without-xcb"
SRC_URI += " file://ruutf8.patch;patch=1"
-FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${libdir}/X11/Xcms.txt"
-FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
-FILES_${PN}-xcb = "${libdir}/libX11-xcb.so.*"
-
do_compile() {
(
unset CC LD CXX CCLD CFLAGS CPPFLAGS LDFLAGS CXXFLAGS
@@ -27,3 +22,5 @@ do_compile() {
oe_runmake
}
+FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${libdir}/X11/Xcms.txt"
+FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"