123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- SUMMARY = "Package of environment files for SDK"
- LICENSE = "MIT"
- PR = "r8"
- EXCLUDE_FROM_WORLD = "1"
- MODIFYTOS = "0"
- REAL_MULTIMACH_TARGET_SYS = "${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
- inherit toolchain-scripts
- TOOLCHAIN_NEED_CONFIGSITE_CACHE_append = " zlib"
- # Need to expand here before cross-candian changes HOST_ARCH -> SDK_ARCH
- TOOLCHAIN_CONFIGSITE_NOCACHE := "${TOOLCHAIN_CONFIGSITE_NOCACHE}"
- SDK_DIR = "${WORKDIR}/sdk"
- SDK_OUTPUT = "${SDK_DIR}/image"
- SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}"
- inherit cross-canadian
- do_generate_content[cleandirs] = "${SDK_OUTPUT}"
- do_generate_content[dirs] = "${SDK_OUTPUT}/${SDKPATH}"
- # Need to ensure we have the virtual mappings and site files for all multtilib variants
- do_generate_content[depends] = "${@oe.utils.build_depends_string(all_multilib_tune_values(d, 'TOOLCHAIN_NEED_CONFIGSITE_CACHE'), 'do_populate_sysroot')}"
- python do_generate_content() {
- # Handle multilibs in the SDK environment, siteconfig, etc files...
- localdata = bb.data.createCopy(d)
- # make sure we only use the WORKDIR value from 'd', or it can change
- localdata.setVar('WORKDIR', d.getVar('WORKDIR'))
- # make sure we only use the SDKTARGETSYSROOT value from 'd'
- localdata.setVar('SDKTARGETSYSROOT', d.getVar('SDKTARGETSYSROOT'))
- localdata.setVar('libdir', d.getVar('target_libdir', False))
- # Process DEFAULTTUNE
- bb.build.exec_func("create_sdk_files", localdata)
- variants = d.getVar("MULTILIB_VARIANTS") or ""
- for item in variants.split():
- # Load overrides from 'd' to avoid having to reset the value...
- overrides = d.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
- localdata.setVar("OVERRIDES", overrides)
- localdata.setVar("MLPREFIX", item + "-")
- bb.build.exec_func("create_sdk_files", localdata)
- }
- addtask generate_content before do_install after do_compile
- create_sdk_files() {
- # Setup site file for external use
- toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS}
- toolchain_create_sdk_env_script ${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
- # Add version information
- toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${REAL_MULTIMACH_TARGET_SYS}
- toolchain_create_post_relocate_script ${SDK_OUTPUT}/${SDKPATH}/post-relocate-setup.sh ${SDKPATH}
- }
- do_install() {
- install -d ${D}/${SDKPATH}
- install -m 0644 -t ${D}/${SDKPATH} ${SDK_OUTPUT}/${SDKPATH}/*
- }
- PN = "meta-environment-${MACHINE}"
- PACKAGES = "${PN}"
- FILES_${PN}= " \
- ${SDKPATH}/* \
- "
- deltask do_fetch
- deltask do_unpack
- deltask do_patch
- deltask do_configure
- deltask do_compile
- deltask do_populate_sysroot
|