[oe-commits] org.oe.dev cacaoh-native: Small cleanup in include file.

thebohemian commit openembedded-commits at lists.openembedded.org
Wed Jan 16 20:29:19 UTC 2008


cacaoh-native: Small cleanup in include file.
cacao: Added N800 quirk and a patch to fix AttachCurrentThread behavior.

Author: thebohemian at openembedded.org
Branch: org.openembedded.dev
Revision: 776a345f052c5352efa0a810830a321456747f8a
ViewMTN: http://monotone.openembedded.org/revision/info/776a345f052c5352efa0a810830a321456747f8a
Files:
1
packages/cacao/cacao_0.98+hg20071001.bb
packages/cacao/cacaoh-native.inc
packages/cacao/files/cacao-0.98+hg-attachthread.patch
Diffs:

#
# mt diff -r7be93ec190abd097c5467d4e78bd0e244dfb1a14 -r776a345f052c5352efa0a810830a321456747f8a
#
# 
# 
# patch "packages/cacao/cacao_0.98+hg20071001.bb"
#  from [d618915c42d4979c7f29cc99c5014d3bc2d99c50]
#    to [ab5bff912c3f54f9c37573994562c9a793c71e6f]
# 
# patch "packages/cacao/cacaoh-native.inc"
#  from [b5ccb2775f6560095089e77316fc173dd4abc9c5]
#    to [21cb933b74df6d2ac41c9593d5df8f193f74b51a]
# 
# patch "packages/cacao/files/cacao-0.98+hg-attachthread.patch"
#  from [8c2c1d3d004946d41425dd8ce6e7c4602fa41437]
#    to [4aaacaa58d869f91cd245871bcad90a6ec0c72c1]
# 
============================================================
--- packages/cacao/cacao_0.98+hg20071001.bb	d618915c42d4979c7f29cc99c5014d3bc2d99c50
+++ packages/cacao/cacao_0.98+hg20071001.bb	ab5bff912c3f54f9c37573994562c9a793c71e6f
@@ -1,6 +1,6 @@ require cacao.inc
 require cacao.inc
 
-PR = "r5"
+PR = "r6"
 
 SRC_URI = "\
         http://jalimo.evolvis.org/repository/sources/cacao-${PV}.tar.bz2;md5sum=9ff10c929bd0cbf15909107c1aff7518 \
@@ -14,3 +14,9 @@ EXTRA_OECONF += "\
     --enable-annotations \
 		"
 
+# Quirks for Nokia N800:
+# - with mfloat-abi=softfp the runtime fails to run anything
+# - without --enable-softfloat it cannot find files within Jars
+TARGET_CC_ARCH_nokia800 = "-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=soft"
+
+EXTRA_OECONF_append_nokia800 = "--enable-softfloat"
============================================================
--- packages/cacao/cacaoh-native.inc	b5ccb2775f6560095089e77316fc173dd4abc9c5
+++ packages/cacao/cacaoh-native.inc	21cb933b74df6d2ac41c9593d5df8f193f74b51a
@@ -8,8 +8,7 @@ PR = "r1"
 
 PR = "r1"
 
-inherit autotools
-inherit native
+inherit autotools native
 
 EXTRA_OECONF = " \
     --with-classpath-includedir=${STAGING_INCDIR}/classpath \
============================================================
--- packages/cacao/files/cacao-0.98+hg-attachthread.patch	8c2c1d3d004946d41425dd8ce6e7c4602fa41437
+++ packages/cacao/files/cacao-0.98+hg-attachthread.patch	4aaacaa58d869f91cd245871bcad90a6ec0c72c1
@@ -1,12 +1,89 @@
-diff -r d8fe2c3ba284 src/threads/native/threads.c
---- a/src/threads/native/threads.c	Sun Dec 30 17:43:35 2007 +0100
-+++ b/src/threads/native/threads.c	Wed Jan 02 16:41:57 2008 +0100
-@@ -1432,6 +1432,8 @@ bool threads_attach_current_thread(JavaV
+# Makes the JNI function AttachCurrentThread work properly.
+
+Index: cacao-0.98+hg20071001/src/mm/boehm-gc/include/gc.h
+===================================================================
+--- cacao-0.98+hg20071001.orig/src/mm/boehm-gc/include/gc.h	2008-01-15 14:45:41.000000000 +0100
++++ cacao-0.98+hg20071001/src/mm/boehm-gc/include/gc.h	2008-01-15 14:46:30.000000000 +0100
+@@ -905,6 +905,8 @@
+ 					/* in returned list.		*/
+ extern void GC_thr_init GC_PROTO((void));/* Needed for Solaris/X86	*/
  
- 	threads_thread_set_object(thread, (java_handle_t *) t);
++extern void GC_thr_init_foreign GC_PROTO((void));/* Needed for Solaris/X86	*/
++
+ #endif /* THREADS && !SRC_M3 */
  
-+  threads_set_current_threadobject(thread);
+ #if defined(GC_WIN32_THREADS) && !defined(__CYGWIN32__) && !defined(__CYGWIN__)
+Index: cacao-0.98+hg20071001/src/mm/boehm-gc/pthread_support.c
+===================================================================
+--- cacao-0.98+hg20071001.orig/src/mm/boehm-gc/pthread_support.c	2008-01-15 14:45:41.000000000 +0100
++++ cacao-0.98+hg20071001/src/mm/boehm-gc/pthread_support.c	2008-01-15 14:46:30.000000000 +0100
+@@ -864,6 +864,27 @@
+ }
+ #endif	/* GC_NETBSD_THREADS */
+ 
++void GC_thr_init_foreign()
++{
++#   ifndef GC_DARWIN_THREADS
++  int dummy;
++#   endif
++	GC_thread t;
++	LOCK();
 +
++  /* Add the initial thread, so we can stop it.	*/
++  t = GC_new_thread(pthread_self());
++#     ifdef GC_DARWIN_THREADS
++  t -> stop_info.mach_thread = mach_thread_self();
++#     else
++  t -> stop_info.stack_ptr = (ptr_t)(&dummy);
++#     endif
++  t -> flags = DETACHED;
++
++	UNLOCK();
++
++}
++
+ /* We hold the allocation lock.	*/
+ void GC_thr_init()
+ {
+Index: cacao-0.98+hg20071001/src/mm/boehm.c
+===================================================================
+--- cacao-0.98+hg20071001.orig/src/mm/boehm.c	2008-01-15 14:45:41.000000000 +0100
++++ cacao-0.98+hg20071001/src/mm/boehm.c	2008-01-15 14:46:30.000000000 +0100
+@@ -108,6 +108,10 @@
+ 		GC_expand_hp(heapstartsize - heapcurrentsize);
+ }
+ 
++void gc_init_foreign()
++{
++	GC_thr_init_foreign();
++}
+ 
+ static void gc_ignore_warnings(char *msg, GC_word arg)
+ {
+Index: cacao-0.98+hg20071001/src/mm/gc-common.h
+===================================================================
+--- cacao-0.98+hg20071001.orig/src/mm/gc-common.h	2008-01-15 14:45:41.000000000 +0100
++++ cacao-0.98+hg20071001/src/mm/gc-common.h	2008-01-15 14:46:30.000000000 +0100
+@@ -74,6 +74,7 @@
+ void  gc_finalize_all(void);
+ void *gc_out_of_memory(size_t bytes_requested);
+ 
++void	gc_init_foreign();
+ 
+ /* inlined functions **********************************************************/
+ 
+Index: cacao-0.98+hg20071001/src/threads/native/threads.c
+===================================================================
+--- cacao-0.98+hg20071001.orig/src/threads/native/threads.c	2008-01-15 14:45:41.000000000 +0100
++++ cacao-0.98+hg20071001/src/threads/native/threads.c	2008-01-15 16:01:22.000000000 +0100
+@@ -1392,7 +1392,10 @@
+ 
  	/* thread is completely initialized */
  
++	gc_init_foreign();
++
  	threads_thread_state_runnable(thread);
++	threads_set_current_threadobject(thread);
+ 
+ 	DEBUGTHREADS("attaching", thread);
+ 






More information about the Openembedded-commits mailing list