blob: 7f3b9463efa400c25b602bcd0305ab95d11bf0e7 [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001
Patrick Williams213cb262021-08-07 19:21:33 -05002baselib = "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05003
4MULTILIB_VARIANTS = "${@extend_variants(d,'MULTILIBS','multilib')}"
Patrick Williamsf1e5d692016-03-30 15:21:19 -05005MULTILIB_SAVE_VARNAME = "DEFAULTTUNE TARGET_ARCH TARGET_SYS TARGET_VENDOR"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05006
7MULTILIBS ??= "multilib:lib32"
8
Brad Bishop6e60e8b2018-02-01 10:27:11 -05009STAGING_DIR_HOST = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
10STAGING_DIR_TARGET = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
11RECIPE_SYSROOT = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
Patrick Williams213cb262021-08-07 19:21:33 -050012RECIPE_SYSROOT:class-native = "${WORKDIR}/recipe-sysroot"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050013
Andrew Geisslereff27472021-10-29 15:35:00 -050014PSEUDO_IGNORE_PATHS .= ",${WORKDIR}/${MLPREFIX}recipe-sysroot"
15
Patrick Williamsc124f4f2015-09-15 14:41:29 -050016INHERIT += "multilib_global"
17
Patrick Williams213cb262021-08-07 19:21:33 -050018BBCLASSEXTEND:append = " ${MULTILIBS}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050019
20MULTILIB_GLOBAL_VARIANTS ?= "lib32 lib64 libx32"
21
Patrick Williams213cb262021-08-07 19:21:33 -050022OPKG_ARGS:append = " --force-maintainer --force-overwrite"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050023
24# When multilib is enabled, allarch recipes will be installed into the MACHINE
25# sysroot, not MLPREFIXMACHINE. This means that anything using pkg-config to
26# find an allarch pkgconfig file will fail as the PKG_CONFIG_PATH only looks
27# inside the multilib sysroot. Fix this by explicitly adding the MACHINE's
28# architecture-independent pkgconfig location to PKG_CONFIG_PATH.
Brad Bishop6e60e8b2018-02-01 10:27:11 -050029PKG_CONFIG_PATH .= ":${WORKDIR}/recipe-sysroot/${datadir}/pkgconfig"
30PKG_CONFIG_PATH[vardepsexclude] = "datadir WORKDIR"
31PKG_CONFIG_PATH[vardepvalueexclude] = ":${WORKDIR}/recipe-sysroot/${datadir}/pkgconfig"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080032
33# These recipes don't need multilib variants, the ${BPN} PROVDES/RPROVDES
34# ${MLPREFIX}${BPN}
Andrew Geissler635e0e42020-08-21 15:58:33 -050035NON_MULTILIB_RECIPES = "grub grub-efi make-mod-scripts ovmf u-boot"