1*4882a593Smuzhiyun# 2*4882a593Smuzhiyun# Creates a root filesystem out of IPKs 3*4882a593Smuzhiyun# 4*4882a593Smuzhiyun# This rootfs can be mounted via root-nfs or it can be put into an cramfs/jffs etc. 5*4882a593Smuzhiyun# See image.bbclass for a usage of this. 6*4882a593Smuzhiyun# 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunEXTRAOPKGCONFIG ?= "" 9*4882a593SmuzhiyunROOTFS_PKGMANAGE = "opkg ${EXTRAOPKGCONFIG}" 10*4882a593Smuzhiyun 11*4882a593Smuzhiyundo_rootfs[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot" 12*4882a593Smuzhiyundo_populate_sdk[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot" 13*4882a593Smuzhiyundo_rootfs[recrdeptask] += "do_package_write_ipk do_package_qa" 14*4882a593Smuzhiyundo_rootfs[vardeps] += "PACKAGE_FEED_URIS PACKAGE_FEED_BASE_PATHS PACKAGE_FEED_ARCHS" 15*4882a593Smuzhiyun 16*4882a593Smuzhiyundo_rootfs[lockfiles] += "${WORKDIR}/ipk.lock" 17*4882a593Smuzhiyundo_populate_sdk[lockfiles] += "${WORKDIR}/sdk-ipk.lock" 18*4882a593Smuzhiyundo_populate_sdk_ext[lockfiles] += "${WORKDIR}/sdk-ipk.lock" 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunOPKG_PREPROCESS_COMMANDS = "" 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunOPKG_POSTPROCESS_COMMANDS = "" 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunOPKGLIBDIR ??= "${localstatedir}/lib" 25*4882a593Smuzhiyun 26*4882a593SmuzhiyunMULTILIBRE_ALLOW_REP = "${OPKGLIBDIR}/opkg|/usr/lib/opkg" 27*4882a593Smuzhiyun 28*4882a593Smuzhiyunpython () { 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun if d.getVar('BUILD_IMAGES_FROM_FEEDS'): 31*4882a593Smuzhiyun flags = d.getVarFlag('do_rootfs', 'recrdeptask') 32*4882a593Smuzhiyun flags = flags.replace("do_package_write_ipk", "") 33*4882a593Smuzhiyun flags = flags.replace("do_deploy", "") 34*4882a593Smuzhiyun flags = flags.replace("do_populate_sysroot", "") 35*4882a593Smuzhiyun d.setVarFlag('do_rootfs', 'recrdeptask', flags) 36*4882a593Smuzhiyun d.setVar('OPKG_PREPROCESS_COMMANDS', "") 37*4882a593Smuzhiyun d.setVar('OPKG_POSTPROCESS_COMMANDS', '') 38*4882a593Smuzhiyun} 39