diff options
author | Marko Lindqvist <cazfi74@gmail.com> | 2012-12-14 13:43:36 +0200 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2012-12-18 23:48:21 -0800 |
commit | 3d03eb7430849d7bd709e70a300efeb4a88cdb20 (patch) | |
tree | ef39e193dceeddb740005631e6a3f1f57ce881d1 /meta/recipes-devtools/guile/guile_2.0.7.bb | |
parent | 1f51f2066c5a6f1cff50c4e78ee3ada3c5398d82 (diff) | |
download | openembedded-core-3d03eb7430849d7bd709e70a300efeb4a88cdb20.tar.gz openembedded-core-3d03eb7430849d7bd709e70a300efeb4a88cdb20.tar.bz2 openembedded-core-3d03eb7430849d7bd709e70a300efeb4a88cdb20.zip |
guile: update to upstream version 2.0.7
change-install-data-hook-to-install-exec-hook-in-gui.patch is now
part of upstream.
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-devtools/guile/guile_2.0.7.bb')
-rw-r--r-- | meta/recipes-devtools/guile/guile_2.0.7.bb | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/meta/recipes-devtools/guile/guile_2.0.7.bb b/meta/recipes-devtools/guile/guile_2.0.7.bb new file mode 100644 index 0000000000..7f3316a893 --- /dev/null +++ b/meta/recipes-devtools/guile/guile_2.0.7.bb @@ -0,0 +1,102 @@ +SUMMARY = "Guile is the GNU Ubiquitous Intelligent Language for Extensions." +DESCRIPTION = "Guile is the GNU Ubiquitous Intelligent Language for Extensions,\ + the official extension language for the GNU operating system.\ + Guile is a library designed to help programmers create flexible applications.\ + Using Guile in an application allows the application's functionality to be\ + extended by users or other programmers with plug-ins, modules, or scripts.\ + Guile provides what might be described as 'practical software freedom,'\ + making it possible for users to customize an application to meet their\ + needs without digging into the application's internals." + +HOMEPAGE = "http://www.gnu.org/software/guile/" +SECTION = "devel" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "${GNU_MIRROR}/guile/guile-${PV}.tar.xz \ + file://debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch \ + file://debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch \ + file://opensuse/guile-64bit.patch \ + file://guile_2.0.6_fix_sed_error.patch \ + file://arm_endianness.patch \ + " + +# file://debian/0001-Change-guile-to-guile-X.Y-for-info-pages.patch +# file://opensuse/guile-turn-off-gc-test.patch + +SRC_URI[md5sum] = "30ff9e94663a2e2098b52f8ce9d050b9" +SRC_URI[sha256sum] = "6f278fa699685382ae51ba8bfad5840959e0af6414f3ad803d61131567bfa338" + +PR = "r0" + +inherit autotools gettext +BBCLASSEXTEND = "native" + +DEPENDS = "libunistring bdwgc gmp libtool libffi" +# add guile-native only to the target recipe's DEPENDS +DEPENDS += "${@['guile-native libatomics-ops', ''][d.getVar('PN', True) != 'guile']}" + +EXTRA_OECONF += "${@['--without-libltdl-prefix --without-libgmp-prefix', ''][bb.data.inherits_class('native',d)]}" + +do_configure_prepend() { + mkdir -p po +} + +export GUILE_FOR_BUILD="${BUILD_SYS}-guile" + +do_compile_append() { + # just for target recipe + if [ "${PN}" = "guile" ] + then + sed -i -e s:${STAGING_DIR_TARGET}::g \ + -e s:/${TARGET_SYS}::g \ + -e s:-L/usr/lib::g \ + -e s:-isystem/usr/include::g \ + -e s:,/usr/lib:,\$\{libdir\}:g \ + meta/guile-2.0.pc + fi +} + +do_install_append_class-native() { + install -m 0755 ${D}${bindir}/guile ${D}${bindir}/${HOST_SYS}-guile + + create_wrapper ${D}/${bindir}/guile \ + GUILE_LOAD_PATH=${STAGING_DATADIR_NATIVE}/guile/2.0 \ + GUILE_LOAD_COMPILED_PATH=${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache + create_wrapper ${D}${bindir}/${HOST_SYS}-guile \ + GUILE_LOAD_PATH=${STAGING_DATADIR_NATIVE}/guile/2.0 \ + GUILE_LOAD_COMPILED_PATH=${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache +} + +SYSROOT_PREPROCESS_FUNCS = "guile_cross_config" + +guile_cross_config() { + # this is only for target recipe + if [ "${PN}" = "guile" ] + then + # Create guile-config returning target values instead of native values + install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS} + echo '#!'`which ${BUILD_SYS}-guile`$' \\\n--no-auto-compile -e main -s\n!#\n(define %guile-build-info '\'\( \ + > guile-config.cross + sed -n -e 's:^[ \t]*{[ \t]*": (:' \ + -e 's:",[ \t]*": . ":' \ + -e 's:" *}, *\\:"):' \ + -e 's:^.*cachedir.*$::' \ + -e '/^ (/p' \ + < libguile/libpath.h >> guile-config.cross + echo '))' >> guile-config.cross + cat meta/guile-config >> guile-config.cross + install guile-config.cross ${STAGING_BINDIR_CROSS}/guile-config + fi +} + +# Guile needs the compiled files to be newer than the source, and it won't +# auto-compile into the prefix even if it can write there, so touch them here as +# sysroot is managed. +SSTATEPOSTINSTFUNCS += "guile_sstate_postinst" +guile_sstate_postinst() { + if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ] + then + find ${STAGING_DIR_TARGET}/${libdir}/guile/2.0/ccache -type f | xargs touch + fi +} |