mirror of
https://git.yoctoproject.org/poky
synced 2026-03-28 19:02:22 +01:00
SDKs are constructed in a similar manner to images, and the contents can
be influenced by a number of different factors, thus tracking the
contents of produced SDKs when buildhistory is enabled can help detect
the same kinds of issues as with images.
This required adding POPULATE_SDK_POST_HOST_COMMAND and
SDK_POSTPROCESS_COMMAND variables so that data collection functions can
be injected at the appropriate points in the SDK construction process,
as well as moving the list_installed_packages and
rootfs_list_installed_depends functions from the rootfs_{rpm,ipk,deb} to
the package_{rpm,ipk,deb} classes so they can also be called during
do_populate_sdk as well as do_rootfs.
Implements [YOCTO #3964].
(From OE-Core rev: c3736064483d4840e38cb1b8c13d2dd3a26b36aa)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
59 lines
1.9 KiB
Plaintext
59 lines
1.9 KiB
Plaintext
do_populate_sdk[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot"
|
|
do_populate_sdk[recrdeptask] += "do_package_write_ipk"
|
|
|
|
do_populate_sdk[lockfiles] += "${WORKDIR}/ipk.lock"
|
|
|
|
populate_sdk_ipk() {
|
|
|
|
rm -f ${IPKGCONF_TARGET}
|
|
touch ${IPKGCONF_TARGET}
|
|
rm -f ${IPKGCONF_SDK}
|
|
touch ${IPKGCONF_SDK}
|
|
|
|
package_update_index_ipk
|
|
package_generate_ipkg_conf
|
|
|
|
export INSTALL_PACKAGES_LINGUAS_IPK=""
|
|
export INSTALL_TASK_IPK="populate_sdk"
|
|
|
|
#install target
|
|
export INSTALL_ROOTFS_IPK="${SDK_OUTPUT}/${SDKTARGETSYSROOT}"
|
|
export INSTALL_CONF_IPK="${IPKGCONF_TARGET}"
|
|
export INSTALL_PACKAGES_IPK="${TOOLCHAIN_TARGET_TASK}"
|
|
export INSTALL_PACKAGES_ATTEMPTONLY_IPK="${TOOLCHAIN_TARGET_TASK_ATTEMPTONLY}"
|
|
|
|
export D=${INSTALL_ROOTFS_IPK}
|
|
export OFFLINE_ROOT=${INSTALL_ROOTFS_IPK}
|
|
export IPKG_OFFLINE_ROOT=${INSTALL_ROOTFS_IPK}
|
|
export OPKG_OFFLINE_ROOT=${IPKG_OFFLINE_ROOT}
|
|
export INTERCEPT_DIR=${WORKDIR}/intercept_scripts
|
|
export NATIVE_ROOT=${STAGING_DIR_NATIVE}
|
|
|
|
package_install_internal_ipk
|
|
|
|
${POPULATE_SDK_POST_TARGET_COMMAND}
|
|
|
|
#install host
|
|
export INSTALL_ROOTFS_IPK="${SDK_OUTPUT}"
|
|
export INSTALL_CONF_IPK="${IPKGCONF_SDK}"
|
|
export INSTALL_PACKAGES_IPK="${TOOLCHAIN_HOST_TASK}"
|
|
export INSTALL_PACKAGES_ATTEMPTONLY_IPK="${TOOLCHAIN_HOST_TASK_ATTEMPTONLY}"
|
|
|
|
package_install_internal_ipk
|
|
|
|
${POPULATE_SDK_POST_HOST_COMMAND}
|
|
|
|
#post clean up
|
|
install -d ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/${sysconfdir}
|
|
install -m 0644 ${IPKGCONF_TARGET} ${IPKGCONF_SDK} ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/${sysconfdir}/
|
|
|
|
install -d ${SDK_OUTPUT}/${SDKPATHNATIVE}/${sysconfdir}
|
|
install -m 0644 ${IPKGCONF_SDK} ${SDK_OUTPUT}/${SDKPATHNATIVE}/${sysconfdir}/
|
|
|
|
install -d ${SDK_OUTPUT}/${SDKPATHNATIVE}${localstatedir_nativesdk}/lib/opkg
|
|
mv ${SDK_OUTPUT}/var/lib/opkg/* ${SDK_OUTPUT}/${SDKPATHNATIVE}${localstatedir_nativesdk}/lib/opkg/
|
|
rm -Rf ${SDK_OUTPUT}/var
|
|
|
|
populate_sdk_log_check populate_sdk
|
|
}
|