aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-core/cacao
diff options
context:
space:
mode:
authorHugo Vasconcelos Saldanha <hugo.saldanha@aker.com.br>2015-03-31 13:39:59 -0300
committerOtavio Salvador <otavio@ossystems.com.br>2015-03-31 13:48:09 -0300
commit6d8dc1af442559380b2e247984961ba6609b6052 (patch)
tree8980fd07a7c82c4c4da6056e4ac52893d26ed4b9 /recipes-core/cacao
parent458f78f923d0a8bbfb4e2b98c708a3d9acd70949 (diff)
downloadmeta-java-6d8dc1af442559380b2e247984961ba6609b6052.tar.gz
meta-java-6d8dc1af442559380b2e247984961ba6609b6052.tar.bz2
meta-java-6d8dc1af442559380b2e247984961ba6609b6052.zip
cacao: fix problem with internal garbage collector
Cacao uses an internal version of bdwgc that was being installed (headers, libs, etc.) together with the JVM, unnecessarily conflicting with original bdwgc package. A patch from Gentoo is applied so the system's bdwgc is used instead. Signed-off-by: Hugo Vasconcelos Saldanha <hugo.saldanha@aker.com.br> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'recipes-core/cacao')
-rw-r--r--recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch60
-rw-r--r--recipes-core/cacao/cacao_1.6.1.bb8
2 files changed, 64 insertions, 4 deletions
diff --git a/recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch b/recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch
new file mode 100644
index 0000000..c30f5be
--- /dev/null
+++ b/recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch
@@ -0,0 +1,60 @@
+cacao: use system's boehm garbage collector
+
+This is a Gentoo's patch [1] to force the use of system's bdwgc.
+
+Cacao was installing an internal version of bdwgc which conflicts
+with the system's version.
+
+[1] https://gitweb.gentoo.org/proj/java.git/plain/dev-java/cacao/files/system-boehm-gc.patch
+
+Upstream-Status: Inappropriate [not author]
+
+Signed-off-by: Hugo Vasconcelos Saldanha <hugo.saldanha@aker.com.br>
+
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
++++ b/configure.ac
+@@ -691,6 +691,8 @@
+
+ AC_CHECK_ENABLE_PIC_ASM
+
++PKG_CHECK_MODULES([BOEHM], bdw-gc,,AC_MSG_ERROR[boehm-gc not found])
++
+ dnl Define version numbers.
+ AC_VERSION_DETAIL
+ AC_VERSION_CONFIG
+@@ -793,12 +795,6 @@
+ )
+
+
+-dnl We only build the shared library objects but we use it as
+-dnl noinst_LTLIBRARIES.
+-ac_configure_args="$ac_configure_args --disable-static"
+-AC_CONFIG_SUBDIRS(src/mm/boehm-gc)
+-
+-
+ AC_OUTPUT
+
+
+diff --git a/src/mm/Makefile.am b/src/mm/Makefile.am
+--- a/src/mm/Makefile.am
++++ b/src/mm/Makefile.am
+@@ -35,14 +35,13 @@
+ endif
+
+ if ENABLE_GC_BOEHM
+-SUBDIRS = \
+- boehm-gc
+-
+ GC_FILE = \
+ gc-boehm.cpp
+
+-GC_LIB = \
+- $(top_builddir)/src/mm/boehm-gc/libgc.la
++AM_CPPFLAGS += $(BOEHM_CFLAGS)
++
++GC_LIB = $(BOEHM_LIBS)
++
+ endif
+
+ if ENABLE_GC_CACAO
diff --git a/recipes-core/cacao/cacao_1.6.1.bb b/recipes-core/cacao/cacao_1.6.1.bb
index 9f07946..65aaf93 100644
--- a/recipes-core/cacao/cacao_1.6.1.bb
+++ b/recipes-core/cacao/cacao_1.6.1.bb
@@ -4,14 +4,14 @@ LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
SECTION = "interpreters"
-DEPENDS_class-native = "zlib-native libtool-native ecj-initial-native fastjar-native classpath-native"
+DEPENDS_class-native = "zlib-native libtool-native ecj-initial-native fastjar-native classpath-native bdwgc-native"
PROVIDES_class-native = "virtual/java-native"
-DEPENDS = "zlib libtool classpath virtual/javac-native"
-DEPENDS_${PN} = "classpath"
+DEPENDS = "zlib libtool classpath virtual/javac-native bdwgc"
RPROVIDES_${PN} = "java2-runtime"
-SRC_URI = "http://www.complang.tuwien.ac.at/cacaojvm/download/cacao-${PV}/cacao-${PV}.tar.xz"
+SRC_URI = "http://www.complang.tuwien.ac.at/cacaojvm/download/cacao-${PV}/cacao-${PV}.tar.xz \
+ file://system-boehm-gc.patch"
SRC_URI[md5sum] = "2c18478404afd1cffdd15ad1e9d85a57"
SRC_URI[sha256sum] = "eecc8bd1b528a028f43d9d1d0c06b97855bbf1d40e03826d911ebbc0b6971e12"