meta-toolchain.bb: introduce modify_opkg_conf
authorJohn Lee <john_lee@openmoko.org>
Mon, 22 Dec 2008 07:14:09 +0000 (15:14 +0800)
committerJohn Lee <john_lee@openmoko.org>
Mon, 12 Jan 2009 05:58:49 +0000 (13:58 +0800)
By modifying the opkg config files in the toolchain, the toolchain can
expend itself by installing packages from the repository.  The default
is to use DISTRO_FEED_URI.

packages/meta/meta-toolchain.bb

index 2a59ba2..3ce2a31 100644 (file)
@@ -34,6 +34,24 @@ TOOLCHAIN_OUTPUTNAME ?= "${DISTRO}-${DISTRO_VERSION}-${FEED_ARCH}-${TARGET_OS}-$
 
 RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
 
+TOOLCHAIN_FEED_URI ?= "${DISTRO_FEED_URI}"
+
+modify_opkg_conf () {
+        OUTPUT_OPKGCONF_TARGET="${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/${layout_sysconfdir}/opkg.conf"
+        OUTPUT_OPKGCONF_HOST="${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/${layout_sysconfdir}/opkg-sdk.conf"
+        OUTPUT_OPKGCONF_SDK="${SDK_OUTPUT}/${sysconfdir}/opkg-sdk.conf"
+        rm ${OUTPUT_OPKGCONF_TARGET}
+        rm ${OUTPUT_OPKGCONF_HOST}
+        rm ${OUTPUT_OPKGCONF_SDK}
+        opkgarchs="${PACKAGE_ARCHS}"
+        priority=1
+        for arch in ${opkgarchs}; do
+                echo "arch ${arch} ${priority}" >> ${OUTPUT_OPKGCONF_TARGET};
+                echo "src/gz ${arch} ${TOOLCHAIN_FEED_URI}/${arch}" >> ${OUTPUT_OPKGCONF_TARGET};
+                priority=$(expr ${priority} + 5);
+        done
+}
+
 do_populate_sdk() {
        rm -rf ${SDK_OUTPUT}
        mkdir -p ${SDK_OUTPUT}
@@ -134,6 +152,8 @@ do_populate_sdk() {
        echo 'Metadata Revision: ${METADATA_REVISION}' >> $versionfile
        echo 'Timestamp: ${DATETIME}' >> $versionfile
 
+       modify_opkg_conf
+
        # Package it up
        mkdir -p ${SDK_DEPLOY}
        cd ${SDK_OUTPUT}