summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/swig/swig_4.2.1.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/swig/swig_4.2.1.bb')
-rw-r--r--meta/recipes-devtools/swig/swig_4.2.1.bb44
1 files changed, 41 insertions, 3 deletions
diff --git a/meta/recipes-devtools/swig/swig_4.2.1.bb b/meta/recipes-devtools/swig/swig_4.2.1.bb
index 4b438a7298..b564be9b36 100644
--- a/meta/recipes-devtools/swig/swig_4.2.1.bb
+++ b/meta/recipes-devtools/swig/swig_4.2.1.bb
@@ -1,7 +1,45 @@
1require ${BPN}.inc 1SUMMARY = "SWIG - Simplified Wrapper and Interface Generator"
2DESCRIPTION = "SWIG is a compiler that makes it easy to integrate C and C++ \
3code with other languages including Perl, Tcl, Ruby, Python, Java, Guile, \
4Mzscheme, Chicken, OCaml, Pike, and C#."
5HOMEPAGE = "http://swig.sourceforge.net/"
6LICENSE = "BSD-3-Clause & GPL-3.0-only"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=e7807a6282784a7dde4c846626b08fc6 \
8 file://LICENSE-GPL;md5=d32239bcb673463ab874e80d47fae504 \
9 file://LICENSE-UNIVERSITIES;md5=8ce9dcc8f7c994de4a408b205c72ba08"
2 10
3SRC_URI += "file://0001-Use-proc-self-exe-for-swig-swiglib-on-non-Win32-plat.patch \ 11SECTION = "devel"
4 file://0001-configure-use-pkg-config-for-pcre-detection.patch \ 12
13DEPENDS = "libpcre2 bison-native"
14
15SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
5 file://determinism.patch \ 16 file://determinism.patch \
6 " 17 "
7SRC_URI[sha256sum] = "fa045354e2d048b2cddc69579e4256245d4676894858fcf0bab2290ecf59b7d8" 18SRC_URI[sha256sum] = "fa045354e2d048b2cddc69579e4256245d4676894858fcf0bab2290ecf59b7d8"
19UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/swig/files/swig/"
20UPSTREAM_CHECK_REGEX = "swig-(?P<pver>\d+(\.\d+)+)"
21
22inherit cmake pkgconfig
23
24BBCLASSEXTEND = "native nativesdk"
25
26do_install:append:class-nativesdk() {
27 cd ${D}${bindir}
28 ln -s swig swig2.0
29}
30
31def swiglib_relpath(d):
32 swiglib = d.getVar('datadir') + "/" + d.getVar('BPN') + "/" + d.getVar('PV')
33 return os.path.relpath(swiglib, d.getVar('bindir'))
34
35do_install:append:class-native() {
36 create_wrapper ${D}${bindir}/swig SWIG_LIB='`dirname $''realpath`'/${@swiglib_relpath(d)}
37}
38
39PACKAGE_PREPROCESS_FUNCS += "src_package_preprocess"
40src_package_preprocess () {
41 # Trim build paths from comments and defines in generated sources to ensure reproducibility
42 sed -i -e "s,${WORKDIR},,g" \
43 -e "s,YY_YY_.*_CPARSE_PARSER_H_INCLUDED,YY_YY_CPARSE_PARSER_H_INCLUDED,g" \
44 ${B}/Source/CParse/parser.*
45}