1*4882a593Smuzhiyun 2*4882a593Smuzhiyunbaselib = "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}" 3*4882a593Smuzhiyun 4*4882a593SmuzhiyunMULTILIB_VARIANTS = "${@extend_variants(d,'MULTILIBS','multilib')}" 5*4882a593SmuzhiyunMULTILIB_SAVE_VARNAME = "DEFAULTTUNE TARGET_ARCH TARGET_SYS TARGET_VENDOR" 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunMULTILIBS ??= "multilib:lib32" 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunSTAGING_DIR_HOST = "${WORKDIR}/${MLPREFIX}recipe-sysroot" 10*4882a593SmuzhiyunSTAGING_DIR_TARGET = "${WORKDIR}/${MLPREFIX}recipe-sysroot" 11*4882a593SmuzhiyunRECIPE_SYSROOT = "${WORKDIR}/${MLPREFIX}recipe-sysroot" 12*4882a593SmuzhiyunRECIPE_SYSROOT:class-native = "${WORKDIR}/recipe-sysroot" 13*4882a593Smuzhiyun 14*4882a593SmuzhiyunPSEUDO_IGNORE_PATHS .= ",${WORKDIR}/${MLPREFIX}recipe-sysroot" 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunINHERIT += "multilib_global" 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunBBCLASSEXTEND:append = " ${MULTILIBS}" 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunMULTILIB_GLOBAL_VARIANTS ?= "lib32 lib64 libx32" 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunOPKG_ARGS:append = " --force-maintainer --force-overwrite" 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun# When multilib is enabled, allarch recipes will be installed into the MACHINE 25*4882a593Smuzhiyun# sysroot, not MLPREFIXMACHINE. This means that anything using pkg-config to 26*4882a593Smuzhiyun# find an allarch pkgconfig file will fail as the PKG_CONFIG_PATH only looks 27*4882a593Smuzhiyun# inside the multilib sysroot. Fix this by explicitly adding the MACHINE's 28*4882a593Smuzhiyun# architecture-independent pkgconfig location to PKG_CONFIG_PATH. 29*4882a593SmuzhiyunPKG_CONFIG_PATH .= ":${WORKDIR}/recipe-sysroot/${datadir}/pkgconfig" 30*4882a593SmuzhiyunPKG_CONFIG_PATH[vardepsexclude] = "datadir WORKDIR" 31*4882a593SmuzhiyunPKG_CONFIG_PATH[vardepvalueexclude] = ":${WORKDIR}/recipe-sysroot/${datadir}/pkgconfig" 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun# These recipes don't need multilib variants, the ${BPN} PROVDES/RPROVDES 34*4882a593Smuzhiyun# ${MLPREFIX}${BPN} 35*4882a593SmuzhiyunNON_MULTILIB_RECIPES = "grub grub-efi make-mod-scripts ovmf u-boot" 36