blob: f9fda0aedc1cbe1da6361cfcfddfc0eac8590514 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
LICENSE = MIT
PR = "r7"
IMAGE_BASENAME = "unslung"
IMAGE_LINGUAS = ""
USE_DEVFS = "1"
DEPENDS = "unslung-kernel unslung-rootfs \
glibc slingbox ipkg wget cpio findutils portmap-unslung \
devio \
${UNSLUNG_EXTRA_DEPENDS}"
IPKG_INSTALL = "unslung-rootfs \
libc6-unslung slingbox ipkg wget cpio findutils portmap-unslung \
devio \
${UNSLUNG_EXTRA_INSTALL}"
IMAGE_PREPROCESS_COMMAND += "unslung_clean_image; "
inherit image_ipk
# Note that anything in this function must be repeatable without having to rebuild the rootfs
unslung_clean_image () {
# Remove the patches
rm -rf ${IMAGE_ROOTFS}/patches
# Remove the kernel image
rm -rf ${IMAGE_ROOTFS}/boot
# Remove info from the local feed used to build the image
rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/lists/*
rm -f ${IMAGE_ROOTFS}/${sysconfdir}/version
# Tidy up some thing which are in the wrong place
mv ${IMAGE_ROOTFS}${libdir}/libipkg* ${IMAGE_ROOTFS}/lib/
# Remove the /lib/*.dat files cause they are too big
rm -f ${IMAGE_ROOTFS}/lib/*.dat
# Remove the ipkg symlink - unsling puts it back in
rm -f ${IMAGE_ROOTFS}${bindir}/ipkg
# Hack out the modutils stuff - it's too hard to make it work
rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/update-modules.postinst
rm -rf ${IMAGE_ROOTFS}/etc/rcS.d
echo "#!/bin/sh" > ${IMAGE_ROOTFS}/usr/sbin/update-modules
echo "exit 0" >> ${IMAGE_ROOTFS}/usr/sbin/update-modules
chmod ugo+x ${IMAGE_ROOTFS}/usr/sbin/update-modules
echo "#!/bin/sh" > ${IMAGE_ROOTFS}/sbin/depmod
echo "exit 0" >> ${IMAGE_ROOTFS}/sbin/depmod
chmod ugo+x ${IMAGE_ROOTFS}/sbin/depmod
}
python () {
# Don't build unslung images unless we're targeting an nslu2
mach = bb.data.getVar("MACHINE", d, 1)
if mach != 'nslu2':
raise bb.parse.SkipPackage("Unslung only builds for the Linksys NSLU2")
}
|