summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRod Whitby <rod@whitby.id.au>2007-02-15 04:38:52 +0000
committerRod Whitby <rod@whitby.id.au>2007-02-15 04:38:52 +0000
commit81b217518bd5049e4c6697d47f1600aab8639e56 (patch)
treeedd0430724a1d81c2bb27d2ca5e6ad02db31be2d
parent3d7e7c742cfee803d94dfaea8c1cff48b5ad67f9 (diff)
slugos, unslung: Moved unslung image building into unslung-image, and split nslu2, nas100d and dsmg600 image building out into classes so they can be reused with multiple distros (like SlugOS and Angstrom)
-rw-r--r--classes/dsmg600-image.bbclass19
-rw-r--r--classes/nas100d-image.bbclass19
-rw-r--r--classes/nslu2-image.bbclass20
-rw-r--r--classes/nslu2-jffs2-image.bbclass18
-rw-r--r--classes/nslu2-ramdisk-image.bbclass18
-rw-r--r--conf/distro/unslung.conf2
-rw-r--r--packages/images/slugos-image.bb66
-rw-r--r--packages/images/unslung-image.bb17
8 files changed, 77 insertions, 102 deletions
diff --git a/classes/dsmg600-image.bbclass b/classes/dsmg600-image.bbclass
new file mode 100644
index 0000000000..6920fe5dbd
--- /dev/null
+++ b/classes/dsmg600-image.bbclass
@@ -0,0 +1,19 @@
+dsmg600_pack_image () {
+ install -d ${DEPLOY_DIR_IMAGE}/firmupgrade
+ install -m 0755 ${DEPLOY_DIR_IMAGE}/zImage-dsmg600${SITEINFO_ENDIANESS} \
+ ${DEPLOY_DIR_IMAGE}/firmupgrade/ip-ramdisk
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
+ ${DEPLOY_DIR_IMAGE}/firmupgrade/rootfs.gz
+ touch ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
+ chmod 0644 ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
+ echo "hwid=1.0.1" >${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "model=dsm-g600" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "vendor=dlink" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ chmod 0744 ${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ tar -c -f ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-dsmg600.bin \
+ -C ${DEPLOY_DIR_IMAGE} firmupgrade
+ rm -rf ${DEPLOY_DIR_IMAGE}/firmupgrade
+}
+
+IMAGE_POSTPROCESS_COMMAND += "dsmg600_pack_image; "
diff --git a/classes/nas100d-image.bbclass b/classes/nas100d-image.bbclass
new file mode 100644
index 0000000000..0d48ebd476
--- /dev/null
+++ b/classes/nas100d-image.bbclass
@@ -0,0 +1,19 @@
+nas100d_pack_image () {
+ install -d ${DEPLOY_DIR_IMAGE}/firmupgrade
+ install -m 0755 ${DEPLOY_DIR_IMAGE}/zImage-nas100d${SITEINFO_ENDIANESS} \
+ ${DEPLOY_DIR_IMAGE}/firmupgrade/ip-ramdisk
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
+ ${DEPLOY_DIR_IMAGE}/firmupgrade/rootfs.gz
+ touch ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
+ chmod 0644 ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
+ echo "hwid=1.0.1" >${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "model=koala" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "vendor=iomega" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ echo "" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ chmod 0744 ${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
+ tar -c -f ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-nas100d.bin \
+ -C ${DEPLOY_DIR_IMAGE} firmupgrade
+ rm -rf ${DEPLOY_DIR_IMAGE}/firmupgrade
+}
+
+IMAGE_POSTPROCESS_COMMAND += "nas100d_pack_image; "
diff --git a/classes/nslu2-image.bbclass b/classes/nslu2-image.bbclass
new file mode 100644
index 0000000000..e1af34fa57
--- /dev/null
+++ b/classes/nslu2-image.bbclass
@@ -0,0 +1,20 @@
+nslu2_pack_image () {
+ install -d ${DEPLOY_DIR_IMAGE}/slug
+ install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \
+ ${STAGING_LIBDIR}/nslu2-binaries/Trailer \
+ ${STAGING_LIBDIR}/nslu2-binaries/SysConf \
+ ${DEPLOY_DIR_IMAGE}/slug/
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-nslu2${SITEINFO_ENDIANESS} \
+ ${DEPLOY_DIR_IMAGE}/slug/vmlinuz
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
+ ${DEPLOY_DIR_IMAGE}/slug/flashdisk.jffs2
+ install -m 0644 ${STAGING_FIRMWARE_DIR}/NPE-B ${DEPLOY_DIR_IMAGE}/slug/
+ cd ${DEPLOY_DIR_IMAGE}/slug
+ slugimage -p -b RedBoot -s SysConf -k vmlinuz \
+ -r Ramdisk:1,Flashdisk:flashdisk.jffs2 -m NPE-B -t Trailer \
+ -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-nslu2.bin
+ rm -rf ${DEPLOY_DIR_IMAGE}/slug
+}
+
+EXTRA_IMAGEDEPENDS += 'slugimage-native nslu2-linksys-firmware ixp4xx-npe upslug2-native'
+IMAGE_POSTPROCESS_COMMAND += "nslu2_pack_image; "
diff --git a/classes/nslu2-jffs2-image.bbclass b/classes/nslu2-jffs2-image.bbclass
deleted file mode 100644
index 56ad0f0659..0000000000
--- a/classes/nslu2-jffs2-image.bbclass
+++ /dev/null
@@ -1,18 +0,0 @@
-NSLU2_SLUGIMAGE_ARGS ?= ""
-
-nslu2_pack_image () {
- install -d ${DEPLOY_DIR_IMAGE}/slug
- install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \
- ${STAGING_LIBDIR}/nslu2-binaries/Trailer \
- ${STAGING_LIBDIR}/nslu2-binaries/SysConf \
- ${DEPLOY_DIR_IMAGE}/slug/
- install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-${IMAGE_BASENAME} ${DEPLOY_DIR_IMAGE}/slug/vmlinuz
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${DEPLOY_DIR_IMAGE}/slug/flashdisk.jffs2
- cd ${DEPLOY_DIR_IMAGE}/slug
- slugimage -p -b RedBoot -s SysConf -r Ramdisk:1,Flashdisk:flashdisk.jffs2 -t Trailer \
- -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.flashdisk.img ${NSLU2_SLUGIMAGE_ARGS}
- rm -rf ${DEPLOY_DIR_IMAGE}/slug
-}
-
-EXTRA_IMAGEDEPENDS += 'slugimage-native nslu2-linksys-firmware'
-IMAGE_POSTPROCESS_COMMAND += "nslu2_pack_image; "
diff --git a/classes/nslu2-ramdisk-image.bbclass b/classes/nslu2-ramdisk-image.bbclass
deleted file mode 100644
index 0b545854fd..0000000000
--- a/classes/nslu2-ramdisk-image.bbclass
+++ /dev/null
@@ -1,18 +0,0 @@
-NSLU2_SLUGIMAGE_ARGS ?= ""
-
-nslu2_pack_image () {
- install -d ${DEPLOY_DIR_IMAGE}/slug
- install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \
- ${STAGING_LIBDIR}/nslu2-binaries/Trailer \
- ${STAGING_LIBDIR}/nslu2-binaries/SysConf \
- ${DEPLOY_DIR_IMAGE}/slug/
- install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-${IMAGE_BASENAME} ${DEPLOY_DIR_IMAGE}/slug/vmlinuz
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2.gz ${DEPLOY_DIR_IMAGE}/slug/ramdisk.ext2.gz
- cd ${DEPLOY_DIR_IMAGE}/slug
- slugimage -p -b RedBoot -s SysConf -r Ramdisk:ramdisk.ext2.gz -t Trailer \
- -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ramdisk.img ${NSLU2_SLUGIMAGE_ARGS}
- rm -rf ${DEPLOY_DIR_IMAGE}/slug
-}
-
-EXTRA_IMAGEDEPENDS += 'slugimage-native nslu2-linksys-firmware'
-IMAGE_POSTPROCESS_COMMAND += "nslu2_pack_image; "
diff --git a/conf/distro/unslung.conf b/conf/distro/unslung.conf
index 407a0bb203..de64aa8d2b 100644
--- a/conf/distro/unslung.conf
+++ b/conf/distro/unslung.conf
@@ -29,7 +29,7 @@ PACKAGE_EXTRA_ARCHS += "nslu2"
# in unslung
FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2"
-INHERIT += " package_ipk nslu2-jffs2-image"
+INHERIT += " package_ipk"
IMAGE_FSTYPES = "jffs2"
UNSLUNG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-unslung.txt')}"
diff --git a/packages/images/slugos-image.bb b/packages/images/slugos-image.bb
index 5ec1187c94..3a275b189e 100644
--- a/packages/images/slugos-image.bb
+++ b/packages/images/slugos-image.bb
@@ -38,68 +38,4 @@ RDEPENDS = "task-slugos ${SLUGOS_EXTRA_INSTALL}"
PACKAGE_INSTALL = "${RDEPENDS}"
-inherit image
-
-#NOTE: you do not actually need the boot loader in normal use because it is
-# *not* overwritten by a standard upslug upgrade, so you can make an image with
-# just non-LinkSys software which can be flashed into the NSLU2. Because
-# LinkSys have made "EraseAll" available, however, (this does overwrite RedBoot)
-# it is a bad idea to produce flash images without a valid RedBoot - that allows
-# an innocent user upgrade attempt to instantly brick the NSLU2.
-
-IMAGE_POSTPROCESS_COMMAND += "slugos_pack_image;"
-EXTRA_IMAGEDEPENDS += "slugimage-native nslu2-linksys-firmware ixp4xx-npe upslug2-native"
-NSLU2_SLUGIMAGE_ARGS ?= ""
-
-slugos_pack_image() {
- install -d ${DEPLOY_DIR_IMAGE}/slug
- install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \
- ${STAGING_LIBDIR}/nslu2-binaries/Trailer \
- ${STAGING_LIBDIR}/nslu2-binaries/SysConf \
- ${DEPLOY_DIR_IMAGE}/slug/
- install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-nslu2${SITEINFO_ENDIANESS} \
- ${DEPLOY_DIR_IMAGE}/slug/vmlinuz
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
- ${DEPLOY_DIR_IMAGE}/slug/flashdisk.jffs2
- install -m 0644 ${STAGING_FIRMWARE_DIR}/NPE-B ${DEPLOY_DIR_IMAGE}/slug/
- cd ${DEPLOY_DIR_IMAGE}/slug
- slugimage -p -b RedBoot -s SysConf -k vmlinuz \
- -r Ramdisk:1,Flashdisk:flashdisk.jffs2 -m NPE-B -t Trailer \
- -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-nslu2.bin \
- ${NSLU2_SLUGIMAGE_ARGS}
- rm -rf ${DEPLOY_DIR_IMAGE}/slug
-
- # Create an image for the DSM-G600 as well
- install -d ${DEPLOY_DIR_IMAGE}/firmupgrade
- install -m 0755 ${DEPLOY_DIR_IMAGE}/zImage-dsmg600${SITEINFO_ENDIANESS} \
- ${DEPLOY_DIR_IMAGE}/firmupgrade/ip-ramdisk
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
- ${DEPLOY_DIR_IMAGE}/firmupgrade/rootfs.gz
- touch ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
- chmod 0644 ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
- echo "hwid=1.0.1" >${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "model=dsm-g600" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "vendor=dlink" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- chmod 0744 ${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- tar -c -f ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-dsmg600.bin \
- -C ${DEPLOY_DIR_IMAGE} firmupgrade
- rm -rf ${DEPLOY_DIR_IMAGE}/firmupgrade
-
- # Create an image for the NAS 100d as well
- install -d ${DEPLOY_DIR_IMAGE}/firmupgrade
- install -m 0755 ${DEPLOY_DIR_IMAGE}/zImage-nas100d${SITEINFO_ENDIANESS} \
- ${DEPLOY_DIR_IMAGE}/firmupgrade/ip-ramdisk
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
- ${DEPLOY_DIR_IMAGE}/firmupgrade/rootfs.gz
- touch ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
- chmod 0644 ${DEPLOY_DIR_IMAGE}/firmupgrade/usr.cramfs
- echo "hwid=1.0.1" >${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "model=koala" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "vendor=iomega" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- echo "" >>${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- chmod 0744 ${DEPLOY_DIR_IMAGE}/firmupgrade/version.msg
- tar -c -f ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-nas100d.bin \
- -C ${DEPLOY_DIR_IMAGE} firmupgrade
- rm -rf ${DEPLOY_DIR_IMAGE}/firmupgrade
-}
+inherit image nslu2-image dsmg600-image nas100d-image
diff --git a/packages/images/unslung-image.bb b/packages/images/unslung-image.bb
index b56f007523..897fb131c1 100644
--- a/packages/images/unslung-image.bb
+++ b/packages/images/unslung-image.bb
@@ -120,3 +120,20 @@ unslung_clean_image () {
# #### End of Hack!
}
+
+nslu2_pack_image () {
+ install -d ${DEPLOY_DIR_IMAGE}/slug
+ install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \
+ ${STAGING_LIBDIR}/nslu2-binaries/Trailer \
+ ${STAGING_LIBDIR}/nslu2-binaries/SysConf \
+ ${DEPLOY_DIR_IMAGE}/slug/
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-${IMAGE_BASENAME} ${DEPLOY_DIR_IMAGE}/slug/vmlinuz
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${DEPLOY_DIR_IMAGE}/slug/flashdisk.jffs2
+ cd ${DEPLOY_DIR_IMAGE}/slug
+ slugimage -p -b RedBoot -s SysConf -r Ramdisk:1,Flashdisk:flashdisk.jffs2 -t Trailer \
+ -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.flashdisk.img
+ rm -rf ${DEPLOY_DIR_IMAGE}/slug
+}
+
+EXTRA_IMAGEDEPENDS += 'slugimage-native nslu2-linksys-firmware'
+IMAGE_POSTPROCESS_COMMAND += "nslu2_pack_image; "