blob: cd789de3c013b40aa7b92904560da3179d754e2d [file] [log] [blame]
Andrew Geisslerc926e172021-05-07 16:11:35 -05001require glib.inc
2
3PE = "1"
4
5SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
6
7SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
8 file://run-ptest \
9 file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \
10 file://Enable-more-tests-while-cross-compiling.patch \
11 file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \
12 file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \
13 file://0001-Do-not-ignore-return-value-of-write.patch \
14 file://0010-Do-not-hardcode-python-path-into-various-tools.patch \
15 file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \
16 file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
17 file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
18 file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
19 file://0001-gio-tests-codegen.py-bump-timeout-to-100-seconds.patch \
Andrew Geissler5f350902021-07-23 13:09:54 -040020 file://time-test.patch \
Andrew Geisslerc926e172021-05-07 16:11:35 -050021 "
Patrick Williams213cb262021-08-07 19:21:33 -050022SRC_URI:append:class-native = " file://relocate-modules.patch"
Andrew Geisslerc926e172021-05-07 16:11:35 -050023
Andrew Geisslerd159c7f2021-09-02 21:05:58 -050024SRC_URI[sha256sum] = "62fd061d08a75492617e625a73e2c05e259f831acbb8e1f8b9c81f23f7993a3b"
Andrew Geisslerc926e172021-05-07 16:11:35 -050025
26# Find any meson cross files in FILESPATH that are relevant for the current
27# build (using siteinfo) and add them to EXTRA_OEMESON.
28inherit siteinfo
29def find_meson_cross_files(d):
30 if bb.data.inherits_class('native', d):
31 return ""
32
33 thisdir = os.path.normpath(d.getVar("THISDIR"))
34 import collections
35 sitedata = siteinfo_data(d)
36 # filename -> found
37 files = collections.OrderedDict()
38 for path in d.getVar("FILESPATH").split(":"):
39 for element in sitedata:
40 filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
41 sanitized_path = filename.replace(thisdir, "${THISDIR}")
42 if sanitized_path == filename:
43 if os.path.exists(filename):
44 bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
45 continue
46 files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
47
48 items = ["--cross-file=" + k for k,v in files.items() if v]
49 d.appendVar("EXTRA_OEMESON", " " + " ".join(items))
50 items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()]
51 d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items))
52
53python () {
54 find_meson_cross_files(d)
55}