* [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master
@ 2011-05-09 7:29 Stefan Schmidt
2011-05-09 7:29 ` [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch Stefan Schmidt
` (7 more replies)
0 siblings, 8 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:29 UTC (permalink / raw)
To: openembedded-devel
From: Stefan Schmidt <stefan@buglabs.net>
Hello.
Another pull request for openjdk related fixes. They have been in master for
quite some time now and we tested them heavily at Buglabs. They improve the
openjdk build situation a lot making it more robust and eliminating random
failures.
The patch from myself is for the 2011.03 release only as it covers a merge
failure I introduced with my last pull request.
Please pull.
Pull URL: git://github.com/Stefan-Schmidt/openembedded
Branch: for-2011.03
Browse: https://github.com/Stefan-Schmidt/openembedded/tree/for-2011.03
Thanks,
Stefan Schmidt <stefan@buglabs.net>
---
Henning (1):
ecj-bootstrap: try 5 times to compile the classes
Henning Heinold (5):
llvm: merge native recipe into the normal recipe
ecj: for ecj-initial 512 mb heapsize is okay for ecj-bootstrap we
need 1024
inetlib: move to proper place
icedtea6-native: add libxext-native to the dependencies
cacao-native: add fix for vm-shutdown and multiple threads are
involved
Stefan Schmidt (1):
icedtea6-native_1.7.10: Remove reference to deleted patch.
recipes/cacao/cacao-native_hg.bb | 6 +-
recipes/cacao/files/cacao-shutdownguard.patch | 180 ++++++++++++++++++++
.../inetlib-1.1.1/datadir_java.patch | 0
recipes/{classpath => classpathx}/inetlib_1.1.1.bb | 0
recipes/ecj/ecj-bootstrap-native.bb | 2 +-
recipes/ecj/ecj-initial.bb | 6 +-
recipes/ecj/files/ecj-initial.in | 1 +
recipes/ecj/files/ecj.in | 14 ++-
recipes/icedtea/icedtea6-native.inc | 5 +-
recipes/icedtea/icedtea6-native_1.7.10.bb | 1 -
recipes/llvm/llvm-native.inc | 33 ----
recipes/llvm/llvm.inc | 70 ++++++---
recipes/llvm/llvm2.7-native_2.7.bb | 12 --
recipes/llvm/llvm2.7_2.7.bb | 5 +-
14 files changed, 256 insertions(+), 79 deletions(-)
create mode 100644 recipes/cacao/files/cacao-shutdownguard.patch
rename recipes/{classpath => classpathx}/inetlib-1.1.1/datadir_java.patch (100%)
rename recipes/{classpath => classpathx}/inetlib_1.1.1.bb (100%)
create mode 100755 recipes/ecj/files/ecj-initial.in
delete mode 100644 recipes/llvm/llvm-native.inc
delete mode 100644 recipes/llvm/llvm2.7-native_2.7.bb
--
1.7.5.1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch.
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
@ 2011-05-09 7:29 ` Stefan Schmidt
2011-05-09 8:56 ` Paul Menzel
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 2/7] llvm: merge native recipe into the normal recipe Stefan Schmidt
` (6 subsequent siblings)
7 siblings, 1 reply; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:29 UTC (permalink / raw)
To: openembedded-devel
From: Stefan Schmidt <stefan@buglabs.net>
During my cherry-pick of Henning's patch from master I somehow b0rked the commit
by loosing this hunk that also deletes the reference to the deleted patch file.
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/icedtea/icedtea6-native_1.7.10.bb | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/recipes/icedtea/icedtea6-native_1.7.10.bb b/recipes/icedtea/icedtea6-native_1.7.10.bb
index c55e197..77c6232 100644
--- a/recipes/icedtea/icedtea6-native_1.7.10.bb
+++ b/recipes/icedtea/icedtea6-native_1.7.10.bb
@@ -33,5 +33,4 @@ export DISTRIBUTION_PATCHES = "\
patches/icedtea-hotspot-make-arch-sane-for-x86.patch \
patches/icedtea-jdk-sane-x86-arch.patch \
patches/icedtea-unbreak-float.patch \
- patches/icedtea-jdk-build-sizer-32-on-amd64.patch \
"
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 2/7] llvm: merge native recipe into the normal recipe
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
2011-05-09 7:29 ` [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 3/7] ecj: for ecj-initial 512 mb heapsize is okay for ecj-bootstrap we need 1024 Stefan Schmidt
` (5 subsequent siblings)
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning Heinold <h.heinold@tarent.de>
* use BBCLASSEXTENDED = "native"
* remove do_stage
* bump PR
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/llvm/llvm-native.inc | 33 -----------------
recipes/llvm/llvm.inc | 70 +++++++++++++++++++++++++-----------
recipes/llvm/llvm2.7-native_2.7.bb | 12 ------
recipes/llvm/llvm2.7_2.7.bb | 5 +--
4 files changed, 51 insertions(+), 69 deletions(-)
delete mode 100644 recipes/llvm/llvm-native.inc
delete mode 100644 recipes/llvm/llvm2.7-native_2.7.bb
diff --git a/recipes/llvm/llvm-native.inc b/recipes/llvm/llvm-native.inc
deleted file mode 100644
index b3cb7a6..0000000
--- a/recipes/llvm/llvm-native.inc
+++ /dev/null
@@ -1,33 +0,0 @@
-require llvm.inc
-
-DEPENDS = "llvm-common-native cmake-native binutils-cross perl-native"
-
-inherit native
-
-# the difference to the non-native build is that we do not need
-# to declare the location of the tblgen executable.
-EXTRA_OECMAKE = "\
- -DLLVM_TARGETS_TO_BUILD=${LLVM_ARCH} \
- -DCMAKE_LINKER:FILEPATH=${LD} \
- -DCMAKE_AR:FILEPATH=${AR} \
- -DCMAKE_OBJCOPY:FILEPATH=${OBJCOPY} \
- -DCMAKE_OBJDUMP:FILEPATH=${OBJDUMP} \
- -DCMAKE_RANLIB:FILEPATH=${RANLIB} \
- -DCMAKE_STRIP:FILEPATH=${STRIP} \
- -DNM_PATH:FILEPATH=${NM} \
-"
-
-PACKAGES = ""
-
-PACKAGES_DYNAMIC = ""
-
-do_stage() {
- cd ${OECMAKE_BUILDPATH}
-
- llvm_stage
-
- install -d ${STAGING_BINDIR}
- install -m 0755 bin/llvm-config${LLVM_RELEASE} ${STAGING_BINDIR}
-}
-
-
diff --git a/recipes/llvm/llvm.inc b/recipes/llvm/llvm.inc
index b53af6e..8f85857 100644
--- a/recipes/llvm/llvm.inc
+++ b/recipes/llvm/llvm.inc
@@ -20,12 +20,16 @@
DESCRIPTION = "The Low Level Virtual Machine"
HOMEPAGE = "http://llvm.org"
+BBCLASSEXTEND = "native"
+
DEPENDS = "llvm-common llvm${LLVM_RELEASE}-native"
+DEPENDS_virtclass-native = "llvm-common-native cmake-native perl-native"
+
# 3-clause BSD-like
LICENSE = "University of Illinois/NCSA Open Source License"
-SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.tar.gz"
+SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.tgz"
S = "${WORKDIR}/llvm-${PV}"
@@ -63,12 +67,30 @@ EXTRA_OECMAKE = "\
# We need to reset this to avoid breakage as we build out of tree
TOOLCHAIN_OPTIONS = ""
-PACKAGES = "${PN} ${PN}-dev ${PN}-dbg ${PN}-doc"
+PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-dev ${PN}"
PACKAGES_DYNAMIC = "llvm-*"
+
+# the difference to the non-native build is that we do not need
+# to declare the location of the tblgen executable.
+EXTRA_OECMAKE_virtclass-native = "\
+ -DLLVM_TARGETS_TO_BUILD=${LLVM_ARCH} \
+ -DCMAKE_LINKER:FILEPATH=${LD} \
+ -DCMAKE_AR:FILEPATH=${AR} \
+ -DCMAKE_OBJCOPY:FILEPATH=${OBJCOPY} \
+ -DCMAKE_OBJDUMP:FILEPATH=${OBJDUMP} \
+ -DCMAKE_RANLIB:FILEPATH=${RANLIB} \
+ -DCMAKE_STRIP:FILEPATH=${STRIP} \
+ -DNM_PATH:FILEPATH=${NM} \
+"
+
+PACKAGES_virtclass-native = ""
+
+PACKAGES_DYNAMIC_virtclass-native = ""
+
python populate_packages_prepend () {
- libllvm_libdir = bb.data.expand('${libdir}/', d)
+ libllvm_libdir = bb.data.expand('${libdir}/llvm${LLVM_RELEASE}', d)
do_split_packages(d, libllvm_libdir, '^lib(.*)\.so$', 'libllvm-%s', 'Split package for %s', allow_dirs=True)
}
@@ -76,32 +98,37 @@ python populate_packages_prepend () {
FILES_${PN} = ""
ALLOW_EMPTY_${PN} = "1"
-FILES_${PN}-dev = "${includedir} ${bindir}/* ${libdir}/LLVMHello.so"
+FILES_${PN}-dbg += "${libdir}/llvm${LLVM_RELEASE}/.debug ${bindir}/llvm${LLVM_RELEASE}/.debug"
+
+FILES_${PN}-dev = "${includedir} ${bindir}/* ${libdir}/llvm${LLVM_RELEASE}/LLVMHello.so"
-llvm_stage() {
+do_install() {
# Install into a private directory to be able to reorganize the files.
- oe_runmake DESTDIR=${WORKDIR}/llvm-install install
+
+ cd ${OECMAKE_BUILDPATH}
+
+ oe_runmake DESTDIR=${WORKDIR}/llvm-install install
# Create our custom target directories
- install -d ${STAGING_BINDIR}/llvm${LLVM_RELEASE}
- install -d ${STAGING_INCDIR}/llvm${LLVM_RELEASE}
- install -d ${STAGING_LIBDIR}/llvm${LLVM_RELEASE}
+ install -d ${D}${bindir}/llvm${LLVM_RELEASE}
+ install -d ${D}${includedir}/llvm${LLVM_RELEASE}
+ install -d ${D}${libdir}/llvm${LLVM_RELEASE}
# Move headers into their own directory
cp -R ${WORKDIR}/llvm-install/${prefix}/include/llvm \
- ${STAGING_INCDIR}/llvm${LLVM_RELEASE}/
+ ${D}${includedir}/llvm${LLVM_RELEASE}/
cp -R ${WORKDIR}/llvm-install/${prefix}/include/llvm-c \
- ${STAGING_INCDIR}/llvm${LLVM_RELEASE}/
+ ${D}${includedir}/llvm${LLVM_RELEASE}/
find ${WORKDIR}/llvm-install/${prefix}/lib -name "*" -maxdepth 1 -exec \
- install {} ${STAGING_LIBDIR}/llvm${LLVM_RELEASE} \;
+ install {} ${D}${libdir}/llvm${LLVM_RELEASE} \;
# I dont know another way out. Binaries are installed into a special subdir
find ${WORKDIR}/llvm-install/${prefix}/bin -name "*" -maxdepth 1 -exec \
- install {} ${STAGING_BINDIR}/llvm${LLVM_RELEASE} \;
+ install {} ${D}${bindir}/llvm${LLVM_RELEASE} \;
# LLVM does not install this by default.
- install bin/tblgen ${STAGING_BINDIR}/llvm${LLVM_RELEASE}
+ install bin/tblgen ${D}${bindir}/llvm${LLVM_RELEASE}
# Fix the paths in the config script to make it find the binaries and
# library files. Doing so allows 3rd party configure scripts working
@@ -112,14 +139,15 @@ llvm_stage() {
-e's!my.*BINDIR.*!my $BINDIR = "${STAGING_BINDIR}/llvm${LLVM_RELEASE}";!' \
bin/llvm-config > bin/llvm-config${LLVM_RELEASE}
}
+
+do_install_append_virtclass-native() {
+ install -d ${D}${bindir}
+ install -m 0755 bin/llvm-config${LLVM_RELEASE} ${D}${bindir}
+}
-do_stage() {
- cd ${OECMAKE_BUILDPATH}
-
- llvm_stage
-
- install -d ${STAGING_BINDIR_CROSS}
- install -m 0755 bin/llvm-config${LLVM_RELEASE} ${STAGING_BINDIR_CROSS}
+do_install_append() {
+ install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/
+ install -m 0755 bin/llvm-config${LLVM_RELEASE} ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}
}
# Retrieve the target in a way that is compatible to the arch
diff --git a/recipes/llvm/llvm2.7-native_2.7.bb b/recipes/llvm/llvm2.7-native_2.7.bb
deleted file mode 100644
index e438702..0000000
--- a/recipes/llvm/llvm2.7-native_2.7.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require llvm-native.inc
-
-PR = "r0"
-
-SRC_URI = "\
- http://llvm.org/releases/${PV}/llvm-${PV}.tgz \
-"
-
-LLVM_RELEASE = "2.7"
-
-SRC_URI[md5sum] = "ac322661f20e7d6c810b1869f886ad9b"
-SRC_URI[sha256sum] = "99664bdc8503a306038166af33f28eb426d99e297575a59d74a1a0dcbddbbca5"
diff --git a/recipes/llvm/llvm2.7_2.7.bb b/recipes/llvm/llvm2.7_2.7.bb
index ef2da43..4353622 100644
--- a/recipes/llvm/llvm2.7_2.7.bb
+++ b/recipes/llvm/llvm2.7_2.7.bb
@@ -1,14 +1,13 @@
require llvm.inc
-PR = "r8"
+PR = "r9"
DEPENDS = "llvm-common llvm2.7-native"
# Force arm mode for armv4t until http://llvm.org/bugs/show_bug.cgi?id=6065 is resolved somehow
ARM_INSTRUCTION_SET_armv4t = "ARM"
-SRC_URI = "\
- http://llvm.org/releases/${PV}/llvm-${PV}.tgz \
+SRC_URI += "\
file://arm_ppc.patch \
file://r97745-llvmPR6480.patch \
file://r104558-VFPmisc.patch \
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 3/7] ecj: for ecj-initial 512 mb heapsize is okay for ecj-bootstrap we need 1024
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
2011-05-09 7:29 ` [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 2/7] llvm: merge native recipe into the normal recipe Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 4/7] ecj-bootstrap: try 5 times to compile the classes Stefan Schmidt
` (4 subsequent siblings)
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning Heinold <h.heinold@tarent.de>
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/ecj/ecj-bootstrap-native.bb | 2 +-
recipes/ecj/ecj-initial.bb | 6 +++---
recipes/ecj/files/ecj-initial.in | 1 +
recipes/ecj/files/ecj.in | 2 +-
4 files changed, 6 insertions(+), 5 deletions(-)
create mode 100755 recipes/ecj/files/ecj-initial.in
diff --git a/recipes/ecj/ecj-bootstrap-native.bb b/recipes/ecj/ecj-bootstrap-native.bb
index 594b08c..bdb9797 100644
--- a/recipes/ecj/ecj-bootstrap-native.bb
+++ b/recipes/ecj/ecj-bootstrap-native.bb
@@ -17,7 +17,7 @@ SRC_URI = "file://ecj.in"
S = "${WORKDIR}"
-PR = "r2"
+PR = "r3"
JAR = "ecj-bootstrap.jar"
diff --git a/recipes/ecj/ecj-initial.bb b/recipes/ecj/ecj-initial.bb
index 8ddbc7c..1809cd6 100644
--- a/recipes/ecj/ecj-initial.bb
+++ b/recipes/ecj/ecj-initial.bb
@@ -9,9 +9,9 @@ LICENSE = "EPL"
DEPENDS = "libecj-bootstrap"
-PR = "r1"
+PR = "r2"
-SRC_URI = "file://ecj.in"
+SRC_URI = "file://ecj-initial.in"
NATIVE_INSTALL_WORKS = "1"
@@ -26,7 +26,7 @@ do_compile() {
echo "#!/bin/sh" > ecj-initial
echo "ECJ_JAR=${STAGING_DATADIR}/java/${JAR}" >> ecj-initial
echo "RUNTIME=java-initial" >> ecj-initial
- cat ecj.in >> ecj-initial
+ cat ecj-initial.in >> ecj-initial
}
do_install() {
diff --git a/recipes/ecj/files/ecj-initial.in b/recipes/ecj/files/ecj-initial.in
new file mode 100755
index 0000000..2099991
--- /dev/null
+++ b/recipes/ecj/files/ecj-initial.in
@@ -0,0 +1 @@
+${RUNTIME} -Xmx512m -cp ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main ${1+"$@"}
diff --git a/recipes/ecj/files/ecj.in b/recipes/ecj/files/ecj.in
index 2099991..2cff259 100755
--- a/recipes/ecj/files/ecj.in
+++ b/recipes/ecj/files/ecj.in
@@ -1 +1 @@
-${RUNTIME} -Xmx512m -cp ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main ${1+"$@"}
+${RUNTIME} -Xmx1024m -cp ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main ${1+"$@"}
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 4/7] ecj-bootstrap: try 5 times to compile the classes
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
` (2 preceding siblings ...)
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 3/7] ecj: for ecj-initial 512 mb heapsize is okay for ecj-bootstrap we need 1024 Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 5/7] inetlib: move to proper place Stefan Schmidt
` (3 subsequent siblings)
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning <h.heinold@tarent.de>
* that is an easy fix to workaround the aborts and
segfaults of cacao and jamvm
* bump PR
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/ecj/ecj-bootstrap-native.bb | 2 +-
recipes/ecj/files/ecj.in | 14 +++++++++++++-
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/recipes/ecj/ecj-bootstrap-native.bb b/recipes/ecj/ecj-bootstrap-native.bb
index bdb9797..a11ba74 100644
--- a/recipes/ecj/ecj-bootstrap-native.bb
+++ b/recipes/ecj/ecj-bootstrap-native.bb
@@ -17,7 +17,7 @@ SRC_URI = "file://ecj.in"
S = "${WORKDIR}"
-PR = "r3"
+PR = "r4"
JAR = "ecj-bootstrap.jar"
diff --git a/recipes/ecj/files/ecj.in b/recipes/ecj/files/ecj.in
index 2cff259..0fd4a65 100755
--- a/recipes/ecj/files/ecj.in
+++ b/recipes/ecj/files/ecj.in
@@ -1 +1,13 @@
-${RUNTIME} -Xmx1024m -cp ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main ${1+"$@"}
+ARGS=${1+"$@"}
+COUNT=5
+END=0
+
+while test "${COUNT}" -gt "${END}"
+do
+ ${RUNTIME} -Xmx1024m -cp ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main ${ARGS}
+ if test "${?}" -eq "${END}"
+ then
+ break
+ fi
+ COUNT=$(($COUNT-1))
+done
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 5/7] inetlib: move to proper place
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
` (3 preceding siblings ...)
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 4/7] ecj-bootstrap: try 5 times to compile the classes Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 6/7] icedtea6-native: add libxext-native to the dependencies Stefan Schmidt
` (2 subsequent siblings)
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning Heinold <h.heinold@tarent.de>
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
.../inetlib-1.1.1/datadir_java.patch | 0
recipes/{classpath => classpathx}/inetlib_1.1.1.bb | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename recipes/{classpath => classpathx}/inetlib-1.1.1/datadir_java.patch (100%)
rename recipes/{classpath => classpathx}/inetlib_1.1.1.bb (100%)
diff --git a/recipes/classpath/inetlib-1.1.1/datadir_java.patch b/recipes/classpathx/inetlib-1.1.1/datadir_java.patch
similarity index 100%
rename from recipes/classpath/inetlib-1.1.1/datadir_java.patch
rename to recipes/classpathx/inetlib-1.1.1/datadir_java.patch
diff --git a/recipes/classpath/inetlib_1.1.1.bb b/recipes/classpathx/inetlib_1.1.1.bb
similarity index 100%
rename from recipes/classpath/inetlib_1.1.1.bb
rename to recipes/classpathx/inetlib_1.1.1.bb
--
1.7.5.1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 6/7] icedtea6-native: add libxext-native to the dependencies
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
` (4 preceding siblings ...)
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 5/7] inetlib: move to proper place Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 7/7] cacao-native: add fix for vm-shutdown and multiple threads are involved Stefan Schmidt
2011-05-11 22:16 ` [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Tom Rini
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning Heinold <h.heinold@tarent.de>
* bump PR
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/icedtea/icedtea6-native.inc | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/recipes/icedtea/icedtea6-native.inc b/recipes/icedtea/icedtea6-native.inc
index 39ecdad..06da7c0 100644
--- a/recipes/icedtea/icedtea6-native.inc
+++ b/recipes/icedtea/icedtea6-native.inc
@@ -1,12 +1,13 @@
DESCRIPTION = "Harness to build the source code from OpenJDK using Free Software build tools"
HOMEPAGE = "http://icedtea.classpath.org"
LICENSE = "GPL with Classpath Exception"
-INC_PR = "r3"
+INC_PR = "r4"
DEPENDS = "virtual/javac-native classpath-tools-native \
virtual/java-native classpath-native \
xalan-j-native xerces-j-native rhino-native \
- ant-native libx11-native xproto-native libxt-native \
+ ant-native \
+ libx11-native xproto-native libxt-native libxext-native \
freetype-native zlib-native giflib-native jpeg-native \
zip-native \
"
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2011.03-maintenance 7/7] cacao-native: add fix for vm-shutdown and multiple threads are involved
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
` (5 preceding siblings ...)
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 6/7] icedtea6-native: add libxext-native to the dependencies Stefan Schmidt
@ 2011-05-09 7:30 ` Stefan Schmidt
2011-05-11 22:16 ` [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Tom Rini
7 siblings, 0 replies; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 7:30 UTC (permalink / raw)
To: openembedded-devel
From: Henning Heinold <h.heinold@tarent.de>
* bump PR
Signed-off-by: Stefan Schmidt <stefan@buglabs.net>
---
recipes/cacao/cacao-native_hg.bb | 6 +-
recipes/cacao/files/cacao-shutdownguard.patch | 180 +++++++++++++++++++++++++
2 files changed, 184 insertions(+), 2 deletions(-)
create mode 100644 recipes/cacao/files/cacao-shutdownguard.patch
diff --git a/recipes/cacao/cacao-native_hg.bb b/recipes/cacao/cacao-native_hg.bb
index 82f56eb..dc35ce8 100644
--- a/recipes/cacao/cacao-native_hg.bb
+++ b/recipes/cacao/cacao-native_hg.bb
@@ -1,9 +1,11 @@
require cacao-native.inc
PV = "1.1.0+hgr${SRCPV}"
-PR = "r3"
+PR = "r4"
SRCREV = "c7bf150bfa46"
-SRC_URI = "hg://mips.complang.tuwien.ac.at/hg/;module=cacao;rev=${SRCREV}"
+SRC_URI = "hg://mips.complang.tuwien.ac.at/hg/;module=cacao;rev=${SRCREV} \
+ file://cacao-shutdownguard.patch \
+ "
S = "${WORKDIR}/cacao"
diff --git a/recipes/cacao/files/cacao-shutdownguard.patch b/recipes/cacao/files/cacao-shutdownguard.patch
new file mode 100644
index 0000000..b89170c
--- /dev/null
+++ b/recipes/cacao/files/cacao-shutdownguard.patch
@@ -0,0 +1,180 @@
+diff -r c7bf150bfa46 src/threads/posix/mutex-posix.hpp
+--- a/src/threads/posix/mutex-posix.hpp Fri Mar 11 23:35:56 2011 +0100
++++ b/src/threads/posix/mutex-posix.hpp Fri Apr 01 16:16:07 2011 +0200
+@@ -53,6 +53,9 @@
+
+ inline void lock();
+ inline void unlock();
++
++private:
++ void abort(int, const char*);
+ };
+
+ #else
+@@ -66,7 +69,6 @@
+ // Includes.
+ #include "vm/os.hpp"
+
+-
+ #ifdef __cplusplus
+
+ /**
+@@ -77,19 +79,19 @@
+ int result = pthread_mutexattr_init(&_attr);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::Mutex(): pthread_mutexattr_init failed");
++ abort(result, "Mutex::Mutex(): pthread_mutexattr_init failed");
+ }
+
+ result = pthread_mutexattr_settype(&_attr, PTHREAD_MUTEX_RECURSIVE);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::Mutex(): pthread_mutexattr_settype failed");
++ abort(result, "Mutex::Mutex(): pthread_mutexattr_settype failed");
+ }
+
+ result = pthread_mutex_init(&_mutex, &_attr);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::Mutex(): pthread_mutex_init failed");
++ abort(result, "Mutex::Mutex(): pthread_mutex_init failed");
+ }
+ }
+
+@@ -102,13 +104,13 @@
+ int result = pthread_mutexattr_destroy(&_attr);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::~Mutex(): pthread_mutexattr_destroy failed");
++ abort(result, "Mutex::~Mutex(): pthread_mutexattr_destroy failed");
+ }
+
+ result = pthread_mutex_destroy(&_mutex);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::~Mutex(): pthread_mutex_destroy failed");
++ abort(result, "Mutex::~Mutex(): pthread_mutex_destroy failed");
+ }
+ }
+
+@@ -127,7 +129,7 @@
+ int result = pthread_mutex_lock(&_mutex);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::lock(): pthread_mutex_lock failed");
++ abort(result, "Mutex::lock(): pthread_mutex_lock failed");
+ }
+ }
+
+@@ -141,10 +143,11 @@
+ int result = pthread_mutex_unlock(&_mutex);
+
+ if (result != 0) {
+- os::abort_errnum(result, "Mutex::unlock: pthread_mutex_unlock failed");
++ abort(result, "Mutex::unlock: pthread_mutex_unlock failed");
+ }
+ }
+
++
+ #else
+
+ // This structure must have the same layout as the class above.
+diff -r c7bf150bfa46 src/threads/posix/thread-posix.cpp
+--- a/src/threads/posix/thread-posix.cpp Fri Mar 11 23:35:56 2011 +0100
++++ b/src/threads/posix/thread-posix.cpp Fri Apr 01 16:16:07 2011 +0200
+@@ -74,6 +74,23 @@
+ #include "vm/string.hpp"
+ #include "vm/vm.hpp"
+
++/**
++ * Handle the case that a mutex related pthread function failed.
++ *
++ * During normal execution of the VM it will make it abort. However if the
++ * VM is in its last stages of shutting down (where nothing pthread related works
++ * anymore), it will silently end the calling thread.
++ */
++void Mutex::abort(int errnum, const char* text)
++{
++ if (VM::get_current()->is_shutdown())
++ {
++ pthread_exit(NULL);
++ }
++
++ os::abort_errnum(errnum, text);
++}
++
+ #if defined(ENABLE_STATISTICS)
+ # include "vm/statistics.h"
+ #endif
+diff -r c7bf150bfa46 src/vm/vm.cpp
+--- a/src/vm/vm.cpp Fri Mar 11 23:35:56 2011 +0100
++++ b/src/vm/vm.cpp Fri Apr 01 16:16:07 2011 +0200
+@@ -52,6 +52,7 @@
+
+ #include "native/vm/nativevm.hpp"
+
++#include "threads/atomic.hpp"
+ #include "threads/lock.hpp"
+ #include "threads/thread.hpp"
+
+@@ -1585,6 +1586,22 @@
+ return true;
+ }
+
++/**
++ * Checks whether a shutdown process has to be guarded.
++ *
++ * Returning true means the caller must not continue
++ * doing any shutdown operations.
++ */
++bool VM::shutdown_guard()
++{
++ return Atomic::generic_compare_and_swap(&_shuttingdown, 0, 1) == 1;
++}
++
++bool VM::is_shutdown()
++{
++ Atomic::generic_memory_barrier();
++ return _shuttingdown == 1;
++}
+
+ /* vm_run **********************************************************************
+
+@@ -1865,6 +1882,15 @@
+
+ void vm_shutdown(s4 status)
+ {
++ log_println("vm_shutdown");
++
++ if (VM::get_current()->shutdown_guard())
++ {
++ /* Shutdown in progress by another thread already.
++ Silently not do it another time. */
++ return;
++ }
++
+ if (opt_verbose
+ #if defined(ENABLE_STATISTICS)
+ || opt_getcompilingtime || opt_stat
+diff -r c7bf150bfa46 src/vm/vm.hpp
+--- a/src/vm/vm.hpp Fri Mar 11 23:35:56 2011 +0100
++++ b/src/vm/vm.hpp Fri Apr 01 16:16:07 2011 +0200
+@@ -64,6 +64,7 @@
+ bool _initializing;
+ bool _created;
+ bool _exiting;
++ uint32_t _shuttingdown;
+ int64_t _starttime;
+ int64_t _inittime;
+
+@@ -104,6 +105,9 @@
+ int64_t get_starttime() { return _starttime; }
+ int64_t get_inittime() { return _inittime; }
+
++ bool shutdown_guard();
++ bool is_shutdown();
++
+ Properties& get_properties () { return _properties; }
+ Recompiler& get_recompiler () { return _recompiler; } // REMOVEME
+ #if defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
--
1.7.5.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch.
2011-05-09 7:29 ` [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch Stefan Schmidt
@ 2011-05-09 8:56 ` Paul Menzel
2011-05-09 9:13 ` Stefan Schmidt
0 siblings, 1 reply; 12+ messages in thread
From: Paul Menzel @ 2011-05-09 8:56 UTC (permalink / raw)
To: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 467 bytes --]
Dear Stefan,
Am Montag, den 09.05.2011, 09:29 +0200 schrieb Stefan Schmidt:
> From: Stefan Schmidt <stefan@buglabs.net>
>
> During my cherry-pick of Henning's patch from master I somehow b0rked the commit
> by loosing this hunk that also deletes the reference to the deleted patch file.
why is not it possible to fix the borked commit using `git rebase` or
just squash this patch and Hennings and resend the pull request?
[…]
Thanks,
Paul
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch.
2011-05-09 8:56 ` Paul Menzel
@ 2011-05-09 9:13 ` Stefan Schmidt
2011-05-09 9:25 ` Paul Menzel
0 siblings, 1 reply; 12+ messages in thread
From: Stefan Schmidt @ 2011-05-09 9:13 UTC (permalink / raw)
To: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 943 bytes --]
Hello.
On Mon, 2011-05-09 at 10:56, Paul Menzel wrote:
>
> Am Montag, den 09.05.2011, 09:29 +0200 schrieb Stefan Schmidt:
> > From: Stefan Schmidt <stefan@buglabs.net>
> >
> > During my cherry-pick of Henning's patch from master I somehow b0rked the commit
> > by loosing this hunk that also deletes the reference to the deleted patch file.
>
> why is not it possible to fix the borked commit using `git rebase` or
> just squash this patch and Hennings and resend the pull request?
Because the broken commit was in my _last_ pull request which already
is pulled into the 2011.03 maintenance branch.
As this is a public branch we can't rebase it and thus I'm going with
an incremental fix. Hope that clears it up. Maybe the changelog should
have been more clear that I meant an old commit already sitting in the
tree.
Normally I squash and rebase a lot on non-public or temp branches. :)
regards
Stefan Schmidt
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 258 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch.
2011-05-09 9:13 ` Stefan Schmidt
@ 2011-05-09 9:25 ` Paul Menzel
0 siblings, 0 replies; 12+ messages in thread
From: Paul Menzel @ 2011-05-09 9:25 UTC (permalink / raw)
To: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 1175 bytes --]
Dear Stefan,
Am Montag, den 09.05.2011, 11:13 +0200 schrieb Stefan Schmidt:
> On Mon, 2011-05-09 at 10:56, Paul Menzel wrote:
> >
> > Am Montag, den 09.05.2011, 09:29 +0200 schrieb Stefan Schmidt:
> > > From: Stefan Schmidt <stefan@buglabs.net>
> > >
> > > During my cherry-pick of Henning's patch from master I somehow b0rked the commit
> > > by loosing this hunk that also deletes the reference to the deleted patch file.
> >
> > why is not it possible to fix the borked commit using `git rebase` or
> > just squash this patch and Hennings and resend the pull request?
>
> Because the broken commit was in my _last_ pull request which already
> is pulled into the 2011.03 maintenance branch.
>
> As this is a public branch we can't rebase it and thus I'm going with
> an incremental fix. Hope that clears it up. Maybe the changelog should
> have been more clear that I meant an old commit already sitting in the
> tree.
thank you for the clarification. I guess the commit id of the borked
commit would be handy too.
> Normally I squash and rebase a lot on non-public or temp branches. :)
It is a great feature!
Thanks,
Paul
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
` (6 preceding siblings ...)
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 7/7] cacao-native: add fix for vm-shutdown and multiple threads are involved Stefan Schmidt
@ 2011-05-11 22:16 ` Tom Rini
7 siblings, 0 replies; 12+ messages in thread
From: Tom Rini @ 2011-05-11 22:16 UTC (permalink / raw)
To: openembedded-devel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 05/09/2011 12:29 AM, Stefan Schmidt wrote:
> From: Stefan Schmidt <stefan@buglabs.net>
>
> Hello.
>
> Another pull request for openjdk related fixes. They have been in master for
> quite some time now and we tested them heavily at Buglabs. They improve the
> openjdk build situation a lot making it more robust and eliminating random
> failures.
>
> The patch from myself is for the 2011.03 release only as it covers a merge
> failure I introduced with my last pull request.
Sorry for the delay, this has been applied now. Thanks!
- --
Tom Rini
Mentor Graphics Corporation
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEcBAEBAgAGBQJNywrDAAoJEI4NMjfc3nJx6nMIAKNH8EaQlc6qxcdMmrmGufec
ktz8a7EODHHQSvwOhLl8x+BTtds8jQBTd79xD4tJSQxf6XJMd3ZnaEeBBYtJF0VK
CCnIm5AItoaFOP5OdxsCF5+0DiuifdQA86k4q+R2wkAt58VP14oII95D1YGwYvwj
YHmc9ryMwo8+vFDDrQWveEOKdndkJVVLdlKt7a8NWQygNu5Obt131OvJFvgQKnCQ
Dr6ZPkn8E+73AlKINU/fjhfjwUiCszvWErpeUoH6aght5RLWp8pxLC8wTqoPw7RI
F3nlH0Hjd5RAIlhdvTPWnpS45IYEjg7e/HQiN8lPOsd37XFqnMJzJuauMARtB34=
=Z432
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2011-05-11 22:19 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-09 7:29 [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Stefan Schmidt
2011-05-09 7:29 ` [PATCH 2011.03-maintenance 1/7] icedtea6-native_1.7.10: Remove reference to deleted patch Stefan Schmidt
2011-05-09 8:56 ` Paul Menzel
2011-05-09 9:13 ` Stefan Schmidt
2011-05-09 9:25 ` Paul Menzel
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 2/7] llvm: merge native recipe into the normal recipe Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 3/7] ecj: for ecj-initial 512 mb heapsize is okay for ecj-bootstrap we need 1024 Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 4/7] ecj-bootstrap: try 5 times to compile the classes Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 5/7] inetlib: move to proper place Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 6/7] icedtea6-native: add libxext-native to the dependencies Stefan Schmidt
2011-05-09 7:30 ` [PATCH 2011.03-maintenance 7/7] cacao-native: add fix for vm-shutdown and multiple threads are involved Stefan Schmidt
2011-05-11 22:16 ` [PATCH 2011.03-maintenance 0/7] Openjdk fixes from master Tom Rini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.