diff options
Diffstat (limited to 'meta/recipes-devtools/guile/guile_2.0.5.bb')
| -rw-r--r-- | meta/recipes-devtools/guile/guile_2.0.5.bb | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/meta/recipes-devtools/guile/guile_2.0.5.bb b/meta/recipes-devtools/guile/guile_2.0.5.bb new file mode 100644 index 0000000000..db75863d34 --- /dev/null +++ b/meta/recipes-devtools/guile/guile_2.0.5.bb | |||
| @@ -0,0 +1,90 @@ | |||
| 1 | SUMMARY = "Guile is the GNU Ubiquitous Intelligent Language for Extensions." | ||
| 2 | DESCRIPTION = "Guile is the GNU Ubiquitous Intelligent Language for Extensions,\ | ||
| 3 | the official extension language for the GNU operating system.\ | ||
| 4 | Guile is a library designed to help programmers create flexible applications.\ | ||
| 5 | Using Guile in an application allows the application's functionality to be\ | ||
| 6 | extended by users or other programmers with plug-ins, modules, or scripts.\ | ||
| 7 | Guile provides what might be described as 'practical software freedom,'\ | ||
| 8 | making it possible for users to customize an application to meet their\ | ||
| 9 | needs without digging into the application's internals." | ||
| 10 | |||
| 11 | HOMEPAGE = "http://www.gnu.org/software/guile/" | ||
| 12 | SECTION = "devel" | ||
| 13 | LICENSE = "GPLv3" | ||
| 14 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
| 15 | |||
| 16 | SRC_URI = "${GNU_MIRROR}/guile/guile-${PV}.tar.gz \ | ||
| 17 | file://debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch \ | ||
| 18 | file://debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch \ | ||
| 19 | file://opensuse/guile-64bit.patch \ | ||
| 20 | file://guile_2.0.5_fix_sed_error.patch \ | ||
| 21 | " | ||
| 22 | |||
| 23 | # file://debian/0001-Change-guile-to-guile-X.Y-for-info-pages.patch | ||
| 24 | # file://opensuse/guile-turn-off-gc-test.patch | ||
| 25 | |||
| 26 | SRC_URI[md5sum] = "bcf70d54b44c99cb9acd3f63c5486b4b" | ||
| 27 | SRC_URI[sha256sum] = "2a026ea6cdbc51ca71bcd9787839debfa45ac5db1e26dc00b30ca9b128b10956" | ||
| 28 | |||
| 29 | PR = "r0" | ||
| 30 | |||
| 31 | inherit autotools gettext | ||
| 32 | BBCLASSEXTEND = "native" | ||
| 33 | |||
| 34 | DEPENDS = "libunistring bdwgc gmp libtool libffi" | ||
| 35 | # add guile-native only to the target recipe's DEPENDS | ||
| 36 | DEPENDS += "${@['guile-native', ''][d.getVar('PN', True) != 'guile']}" | ||
| 37 | |||
| 38 | EXTRA_OECONF += "${@['--without-libltdl-prefix --without-libgmp-prefix', ''][bb.data.inherits_class('native',d)]}" | ||
| 39 | |||
| 40 | do_configure_prepend() { | ||
| 41 | mkdir -p po | ||
| 42 | } | ||
| 43 | |||
| 44 | export GUILE_FOR_BUILD="${BUILD_SYS}-guile" | ||
| 45 | |||
| 46 | do_compile_append() { | ||
| 47 | # just for target recipe | ||
| 48 | if [ "${PN}" == "guile" ] | ||
| 49 | then | ||
| 50 | sed -i -e s:${STAGING_DIR_TARGET}::g \ | ||
| 51 | -e s:/${TARGET_SYS}::g \ | ||
| 52 | -e s:-L/usr/lib::g \ | ||
| 53 | -e s:-isystem/usr/include::g \ | ||
| 54 | -e s:,/usr/lib:,\$\{libdir\}:g \ | ||
| 55 | meta/guile-2.0.pc | ||
| 56 | fi | ||
| 57 | } | ||
| 58 | |||
| 59 | do_install_append_virtclass-native() { | ||
| 60 | install -m 0755 ${D}${bindir}/guile ${D}${bindir}/${HOST_SYS}-guile | ||
| 61 | |||
| 62 | create_wrapper ${D}/${bindir}/guile \ | ||
| 63 | GUILE_LOAD_PATH=${STAGING_DATADIR_NATIVE}/guile/2.0 \ | ||
| 64 | GUILE_LOAD_COMPILED_PATH=${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache | ||
| 65 | create_wrapper ${D}${bindir}/${HOST_SYS}-guile | ||
| 66 | GUILE_LOAD_PATH=${STAGING_DATADIR_NATIVE}/guile/2.0 \ | ||
| 67 | GUILE_LOAD_COMPILED_PATH=${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache | ||
| 68 | } | ||
| 69 | |||
| 70 | SYSROOT_PREPROCESS_FUNCS = "guile_cross_config" | ||
| 71 | |||
| 72 | guile_cross_config() { | ||
| 73 | # this is only for target recipe | ||
| 74 | if [ "${PN}" == "guile" ] | ||
| 75 | then | ||
| 76 | # Create guile-config returning target values instead of native values | ||
| 77 | install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS} | ||
| 78 | echo '#!'`which ${BUILD_SYS}-guile`$' \\\n--no-auto-compile -e main -s\n!#\n(define %guile-build-info '\'\( \ | ||
| 79 | > guile-config.cross | ||
| 80 | sed -n -e 's:^[ \t]*{[ \t]*": (:' \ | ||
| 81 | -e 's:",[ \t]*": . ":' \ | ||
| 82 | -e 's:" *}, *\\:"):' \ | ||
| 83 | -e 's:^.*cachedir.*$::' \ | ||
| 84 | -e '/^ (/p' \ | ||
| 85 | < libguile/libpath.h >> guile-config.cross | ||
| 86 | echo '))' >> guile-config.cross | ||
| 87 | cat meta/guile-config >> guile-config.cross | ||
| 88 | install guile-config.cross ${STAGING_BINDIR_CROSS}/guile-config | ||
| 89 | fi | ||
| 90 | } | ||
