From e3a04fb1ebe7d86cc2714667de587fbe6535ce63 Mon Sep 17 00:00:00 2001 From: Richard Leitner Date: Tue, 18 Jun 2019 17:09:04 +0200 Subject: cacao: update to latest staging tip 2d6f6c14daf9 Signed-off-by: Richard Leitner --- ...cacao-1.6.1-do-not-rely-on-absolute-paths.patch | 41 -------------- .../cacao/cacao-1.6.1/system-boehm-gc.patch | 60 -------------------- ...cacao-1.6.1-do-not-rely-on-absolute-paths.patch | 41 ++++++++++++++ .../cacao/cacao-2d6f6c14daf9/system-boehm-gc.patch | 60 ++++++++++++++++++++ recipes-core/cacao/cacao_1.6.1.bb | 65 --------------------- recipes-core/cacao/cacao_2d6f6c14daf9.bb | 66 ++++++++++++++++++++++ 6 files changed, 167 insertions(+), 166 deletions(-) delete mode 100644 recipes-core/cacao/cacao-1.6.1/cacao-1.6.1-do-not-rely-on-absolute-paths.patch delete mode 100644 recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch create mode 100644 recipes-core/cacao/cacao-2d6f6c14daf9/cacao-1.6.1-do-not-rely-on-absolute-paths.patch create mode 100644 recipes-core/cacao/cacao-2d6f6c14daf9/system-boehm-gc.patch delete mode 100644 recipes-core/cacao/cacao_1.6.1.bb create mode 100644 recipes-core/cacao/cacao_2d6f6c14daf9.bb (limited to 'recipes-core') diff --git a/recipes-core/cacao/cacao-1.6.1/cacao-1.6.1-do-not-rely-on-absolute-paths.patch b/recipes-core/cacao/cacao-1.6.1/cacao-1.6.1-do-not-rely-on-absolute-paths.patch deleted file mode 100644 index 2b046cf..0000000 --- a/recipes-core/cacao/cacao-1.6.1/cacao-1.6.1-do-not-rely-on-absolute-paths.patch +++ /dev/null @@ -1,41 +0,0 @@ -java.in: Do not use hardcode paths - -Cacao uses hardcoded paths to various files, if these paths are not -provided. This causes issues when sharing sstate with otherwise -identical workers, if build time paths are not identical. - -Signed-off-by: Erkka Kääriä - -Upstream-Status: Inappropriate [Yocto-specific fixes] - ---- - cacao-1.6.1/src/scripts/java.in | 16 ++++++++++++++-- - 1 file changed, 14 insertions(+), 2 deletions(-) - -diff --git cacao-1.6.1/src/scripts/java.in cacao-1.6.1/src/scripts/java.in -index 0790f02..2118de7 100644 ---- cacao-1.6.1/src/scripts/java.in -+++ cacao-1.6.1/src/scripts/java.in -@@ -22,5 +22,17 @@ - ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - ## 02110-1301, USA. - --IFS="" --exec $(dirname ${0})/cacao ${1+"$@"} -+SH_DIR=`dirname "$0"` -+CURRENT_DIR=`cd "${SH_DIR}" && pwd` -+ -+# if this shell script is invoked through symlink, we get invalid paths. As getting the real path to this file is -+# very painful using only /bin/sh, python is used instead. -+PYTHON_STR="import os; print os.path.dirname(os.path.realpath(os.readlink(\"${CURRENT_DIR}/java\"))) if os.path.islink(\"${CURRENT_DIR}/java\") else \"${CURRENT_DIR}\"" -+REAL_DIR=`python -c "${PYTHON_STR}"` -+ -+PARENT_DIR=`dirname ${REAL_DIR}` -+ -+export BOOTCLASSPATH="${PARENT_DIR}/share/cacao/vm.zip:${PARENT_DIR}/share/classpath/glibj.zip" -+LIBRARY_PATH="-Djava.library.path=${PARENT_DIR}/lib/classpath" -+exec ${REAL_DIR}/cacao ${LIBRARY_PATH} ${1+"$@"} -+ --- -2.7.4 - 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 deleted file mode 100644 index c30f5be..0000000 --- a/recipes-core/cacao/cacao-1.6.1/system-boehm-gc.patch +++ /dev/null @@ -1,60 +0,0 @@ -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 - -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-2d6f6c14daf9/cacao-1.6.1-do-not-rely-on-absolute-paths.patch b/recipes-core/cacao/cacao-2d6f6c14daf9/cacao-1.6.1-do-not-rely-on-absolute-paths.patch new file mode 100644 index 0000000..2b046cf --- /dev/null +++ b/recipes-core/cacao/cacao-2d6f6c14daf9/cacao-1.6.1-do-not-rely-on-absolute-paths.patch @@ -0,0 +1,41 @@ +java.in: Do not use hardcode paths + +Cacao uses hardcoded paths to various files, if these paths are not +provided. This causes issues when sharing sstate with otherwise +identical workers, if build time paths are not identical. + +Signed-off-by: Erkka Kääriä + +Upstream-Status: Inappropriate [Yocto-specific fixes] + +--- + cacao-1.6.1/src/scripts/java.in | 16 ++++++++++++++-- + 1 file changed, 14 insertions(+), 2 deletions(-) + +diff --git cacao-1.6.1/src/scripts/java.in cacao-1.6.1/src/scripts/java.in +index 0790f02..2118de7 100644 +--- cacao-1.6.1/src/scripts/java.in ++++ cacao-1.6.1/src/scripts/java.in +@@ -22,5 +22,17 @@ + ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + ## 02110-1301, USA. + +-IFS="" +-exec $(dirname ${0})/cacao ${1+"$@"} ++SH_DIR=`dirname "$0"` ++CURRENT_DIR=`cd "${SH_DIR}" && pwd` ++ ++# if this shell script is invoked through symlink, we get invalid paths. As getting the real path to this file is ++# very painful using only /bin/sh, python is used instead. ++PYTHON_STR="import os; print os.path.dirname(os.path.realpath(os.readlink(\"${CURRENT_DIR}/java\"))) if os.path.islink(\"${CURRENT_DIR}/java\") else \"${CURRENT_DIR}\"" ++REAL_DIR=`python -c "${PYTHON_STR}"` ++ ++PARENT_DIR=`dirname ${REAL_DIR}` ++ ++export BOOTCLASSPATH="${PARENT_DIR}/share/cacao/vm.zip:${PARENT_DIR}/share/classpath/glibj.zip" ++LIBRARY_PATH="-Djava.library.path=${PARENT_DIR}/lib/classpath" ++exec ${REAL_DIR}/cacao ${LIBRARY_PATH} ${1+"$@"} ++ +-- +2.7.4 + diff --git a/recipes-core/cacao/cacao-2d6f6c14daf9/system-boehm-gc.patch b/recipes-core/cacao/cacao-2d6f6c14daf9/system-boehm-gc.patch new file mode 100644 index 0000000..c30f5be --- /dev/null +++ b/recipes-core/cacao/cacao-2d6f6c14daf9/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 + +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 deleted file mode 100644 index 1074ff5..0000000 --- a/recipes-core/cacao/cacao_1.6.1.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "CacaoVM for use as OpenEmbedded's Java VM" -HOMEPAGE = "http://www.cacaojvm.org/" -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-initial-native classpath-native bdwgc-native virtual/java-initial-native" -PROVIDES_class-native = "virtual/java-native" - -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 \ - file://system-boehm-gc.patch \ - file://cacao-1.6.1-do-not-rely-on-absolute-paths.patch \ -" - -SRC_URI[md5sum] = "2c18478404afd1cffdd15ad1e9d85a57" -SRC_URI[sha256sum] = "eecc8bd1b528a028f43d9d1d0c06b97855bbf1d40e03826d911ebbc0b6971e12" - -inherit java autotools-brokensep update-alternatives pkgconfig distro_features_check - -REQUIRED_DISTRO_FEATURES = "x11" -REQUIRED_DISTRO_FEATURES_class-native := "" - -EXTRA_OECONF_class-native = "\ - --enable-debug \ - --with-vm-zip=${datadir}/cacao/vm.zip \ - --with-java-runtime-library-classes=${datadir}/classpath/glibj.zip \ - --with-java-runtime-library-libdir=${libdir_jni}:${libdir} \ - --with-jni_md_h=${includedir}/classpath \ - --with-jni_h=${includedir}/classpath \ - --disable-test-dependency-checks \ - --disable-libjvm \ -" - -CACHED_CONFIGUREVARS_class-native += "ac_cv_prog_JAVAC=${STAGING_BINDIR_NATIVE}/ecj-initial" - -EXTRA_OECONF = "\ - --with-vm-zip=${datadir}/cacao/vm.zip \ - --disable-libjvm \ - --with-build-java-runtime-library-classes=${STAGING_DATADIR}/classpath/glibj.zip \ - --with-jni_h=${STAGING_INCDIR}/classpath \ - --with-jni_md_h=${STAGING_INCDIR}/classpath \ - --with-java-runtime-library-classes=${datadir}/classpath/glibj.zip \ - --with-java-runtime-library-libdir=${libdir_jni}:${libdir} \ - --disable-test-dependency-checks \ -" - -do_configure_prepend () { - # upgrade m4 macros in source tree - libtoolize --force --copy --install - rm -f src/mm/boehm-gc/ltmain.sh - mkdir -p src/mm/boehm-gc/m4 -} - -do_install_append_class-target() { - rm ${D}/${bindir}/java -} - -FILES_${PN} = "${bindir}/${PN} ${libdir}/cacao/lib*.so ${libdir}/lib*.so* ${datadir}/${PN}" -FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/.debug/lib*.so*" -FILES_${PN}-doc += "${datadir}/gc" - -BBCLASSEXTEND = "native" diff --git a/recipes-core/cacao/cacao_2d6f6c14daf9.bb b/recipes-core/cacao/cacao_2d6f6c14daf9.bb new file mode 100644 index 0000000..91a03fc --- /dev/null +++ b/recipes-core/cacao/cacao_2d6f6c14daf9.bb @@ -0,0 +1,66 @@ +SUMMARY = "CacaoVM for use as OpenEmbedded's Java VM" +HOMEPAGE = "http://www.cacaojvm.org/" +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-initial-native classpath-native bdwgc-native virtual/java-initial-native" +PROVIDES_class-native = "virtual/java-native" + +DEPENDS = "zlib libtool classpath virtual/javac-native bdwgc" +RPROVIDES_${PN} = "java2-runtime" + +SRC_URI = "https://bitbucket.org/cacaovm/cacao-staging/get/${PV}.zip \ + file://system-boehm-gc.patch \ + file://cacao-1.6.1-do-not-rely-on-absolute-paths.patch \ +" +S = "${WORKDIR}/cacaovm-cacao-staging-${PV}" + +SRC_URI[md5sum] = "5157d0bb9eb1332f7a6b6186eaac01aa" +SRC_URI[sha256sum] = "34b51d660d69c2a83225fd75eab5e1fac002fb5974cb4a74b7478baf923a76cd" + +inherit java autotools-brokensep update-alternatives pkgconfig distro_features_check + +REQUIRED_DISTRO_FEATURES = "x11" +REQUIRED_DISTRO_FEATURES_class-native := "" + +EXTRA_OECONF_class-native = "\ + --enable-debug \ + --with-vm-zip=${datadir}/cacao/vm.zip \ + --with-java-runtime-library-classes=${datadir}/classpath/glibj.zip \ + --with-java-runtime-library-libdir=${libdir_jni}:${libdir} \ + --with-jni_md_h=${includedir}/classpath \ + --with-jni_h=${includedir}/classpath \ + --disable-test-dependency-checks \ + --disable-libjvm \ +" + +CACHED_CONFIGUREVARS_class-native += "ac_cv_prog_JAVAC=${STAGING_BINDIR_NATIVE}/ecj-initial" + +EXTRA_OECONF = "\ + --with-vm-zip=${datadir}/cacao/vm.zip \ + --disable-libjvm \ + --with-build-java-runtime-library-classes=${STAGING_DATADIR}/classpath/glibj.zip \ + --with-jni_h=${STAGING_INCDIR}/classpath \ + --with-jni_md_h=${STAGING_INCDIR}/classpath \ + --with-java-runtime-library-classes=${datadir}/classpath/glibj.zip \ + --with-java-runtime-library-libdir=${libdir_jni}:${libdir} \ + --disable-test-dependency-checks \ +" + +do_configure_prepend () { + # upgrade m4 macros in source tree + libtoolize --force --copy --install + rm -f src/mm/boehm-gc/ltmain.sh + mkdir -p src/mm/boehm-gc/m4 +} + +do_install_append_class-target() { + rm ${D}/${bindir}/java +} + +FILES_${PN} = "${bindir}/${PN} ${libdir}/cacao/lib*.so ${libdir}/lib*.so* ${datadir}/${PN}" +FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/.debug/lib*.so*" +FILES_${PN}-doc += "${datadir}/gc" + +BBCLASSEXTEND = "native" -- cgit v1.2.3-54-g00ecf