Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | SUMMARY = "Package of environment files for SDK" |
| 2 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \ |
| 3 | file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" |
| 4 | LICENSE = "MIT" |
| 5 | PR = "r8" |
| 6 | |
| 7 | EXCLUDE_FROM_WORLD = "1" |
| 8 | |
| 9 | MODIFYTOS = "0" |
| 10 | |
| 11 | REAL_MULTIMACH_TARGET_SYS = "${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}" |
| 12 | |
| 13 | inherit toolchain-scripts |
| 14 | TOOLCHAIN_NEED_CONFIGSITE_CACHE_append = " zlib" |
| 15 | |
| 16 | SDK_DIR = "${WORKDIR}/sdk" |
| 17 | SDK_OUTPUT = "${SDK_DIR}/image" |
| 18 | SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}" |
| 19 | |
| 20 | inherit cross-canadian |
| 21 | |
| 22 | do_generate_content[cleandirs] = "${SDK_OUTPUT}" |
| 23 | do_generate_content[dirs] = "${SDK_OUTPUT}/${SDKPATH}" |
| 24 | python do_generate_content() { |
| 25 | # Handle multilibs in the SDK environment, siteconfig, etc files... |
| 26 | localdata = bb.data.createCopy(d) |
| 27 | |
| 28 | # make sure we only use the WORKDIR value from 'd', or it can change |
| 29 | localdata.setVar('WORKDIR', d.getVar('WORKDIR', True)) |
| 30 | |
| 31 | # make sure we only use the SDKTARGETSYSROOT value from 'd' |
| 32 | localdata.setVar('SDKTARGETSYSROOT', d.getVar('SDKTARGETSYSROOT', True)) |
| 33 | localdata.setVar('libdir', d.getVar('target_libdir', False)) |
| 34 | |
| 35 | # Process DEFAULTTUNE |
| 36 | bb.build.exec_func("create_sdk_files", localdata) |
| 37 | |
| 38 | variants = d.getVar("MULTILIB_VARIANTS", True) or "" |
| 39 | for item in variants.split(): |
| 40 | # Load overrides from 'd' to avoid having to reset the value... |
| 41 | overrides = d.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item |
| 42 | localdata.setVar("OVERRIDES", overrides) |
| 43 | localdata.setVar("MLPREFIX", item + "-") |
| 44 | bb.data.update_data(localdata) |
| 45 | bb.build.exec_func("create_sdk_files", localdata) |
| 46 | } |
| 47 | addtask generate_content before do_install after do_compile |
| 48 | |
| 49 | create_sdk_files() { |
| 50 | # Setup site file for external use |
| 51 | toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS} |
| 52 | |
| 53 | toolchain_create_sdk_env_script ${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS} |
| 54 | |
| 55 | # Add version information |
| 56 | toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${REAL_MULTIMACH_TARGET_SYS} |
| 57 | } |
| 58 | |
| 59 | do_install() { |
| 60 | install -d ${D}/${SDKPATH} |
| 61 | install -m 0644 -t ${D}/${SDKPATH} ${SDK_OUTPUT}/${SDKPATH}/* |
| 62 | } |
| 63 | |
| 64 | PN = "meta-environment-${MACHINE}" |
| 65 | PACKAGES = "${PN}" |
| 66 | FILES_${PN}= " \ |
| 67 | ${SDKPATH}/* \ |
| 68 | " |
| 69 | |
| 70 | do_fetch[noexec] = "1" |
| 71 | do_unpack[noexec] = "1" |
| 72 | do_patch[noexec] = "1" |
| 73 | do_configure[noexec] = "1" |
| 74 | do_compile[noexec] = "1" |
| 75 | do_populate_sysroot[noexec] = "1" |