1 DESCRIPTION = "Linux kernel for Dreambox DM7025"
8 DEPENDS = "zlib-native"
10 # note, the rX in the filename is *NOT* the packet revision - it's the patch revision.
11 SRC_URI += "ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2 \
12 file://dm7025_defconfig \
13 http://sources.dreamboxupdate.com/download/kernel-patches/linuxmips-${KV}-dream-r6.patch.bz2;patch=1;pnum=1 \
14 http://sources.dreamboxupdate.com/download/kernel-patches/linux-${KV}-update_dvbapi-r1.patch.bz2;patch=1;pnum=1 \
15 http://dreamboxupdate.com/download/kernel-patches/linux-2.6.12-dvb-multipid-r4.patch.bz2;patch=1;pnum=1 \
16 http://dreamboxupdate.com/download/kernel-patches/linux-2.6.12-dvb-core-fix-several-locking-problems.patch.bz2;patch=1;pnum=1 \
17 http://dreamboxupdate.com/download/kernel-patches/linux-2.6.12-dvbapi-pilot-rolloff-extension-r0.patch.bz2;patch=1;pnum=1 \
18 http://sources.dreamboxupdate.com/download/kernel-patches/linux-2.6.12-update-wireless.patch.bz2;patch=1;pnum=1 \
20 http://squashfs-lzma.org/dl/sqlzma3.2-r2b.tar.bz2 \
21 http://dreamboxupdate.com/download/kernel-patches/sqlzma2k-3.2-r2-2.6.12.6.patch.bz2 \
22 http://dreamboxupdate.com/download/patches/fix_lzma_squashfs_makefiles_for_oe-r2.patch.bz2 \
23 ${SOURCEFORGE_MIRROR}/squashfs/squashfs3.2-r2.tar.gz \
24 ${SOURCEFORGE_MIRROR}/sevenzip/lzma443.tar.bz2 \
25 file://${WORKDIR}/squashfs-lzma/kernel-patches/linux-2.6.12/squashfs3.2-patch;pnum=1;patch=1 "
27 S = "${WORKDIR}/linux-${PV}"
31 FILES_kernel-image = "/boot/vmlinux.gz /boot/autoexec.bat"
34 KERNEL_IMAGETYPE = "vmlinux"
35 KERNEL_OUTPUT = "vmlinux"
36 KERNEL_OBJECT_SUFFIX = "ko"
38 addtask munge after do_unpack before do_patch
41 if [ -d ${WORKDIR}/squashfs3.2-r2 ]; then
42 mv ${WORKDIR}/squashfs3.2-r2/* ${WORKDIR}
43 rm -R ${WORKDIR}/squashfs3.2-r2
44 for i in sqlzma1-443.patch sqlzma2u-3.2-r2.patch fix_lzma_squashfs_makefiles_for_oe-r2.patch;
47 patch -d ${WORKDIR} -p1 < ${WORKDIR}/$i
52 install -d ${WORKDIR}/squashfs-lzma
53 for i in `find -maxdepth 1 | grep -v linux | xargs`;
61 "./dm7025_defconfig");;
62 *)mv $i ${WORKDIR}/squashfs-lzma;;
68 do_compile_prepend () {
69 if [ -f ${S}/.patched ];
71 patch -R -d ${S} -p1 < ${WORKDIR}/squashfs-lzma/sqlzma2k-3.2-r2-2.6.12.6.patch
76 do_compile_append () {
77 patch -d ${S} -p1 < ${WORKDIR}/squashfs-lzma/sqlzma2k-3.2-r2-2.6.12.6.patch
79 oe_runmake -C ${WORKDIR}/squashfs-lzma KDir=${S} BUILD_CC="${CC}" BUILD_CXX="${CXX}" BUILD_LD="${LD}" BUILD_AR="${AR}" BUILD_LDFLAGS="${TARGET_LDFLAGS}" BUILD_CFLAGS="${TARGET_CFLAGS}" BUILD_CXXFLAGS="${TARGET_CXXFLAGS}"
80 for i in mksquashfs unsquashfs;
82 mv ${WORKDIR}/squashfs-lzma/squashfs-tools/$i ${WORKDIR}/squashfs-lzma/squashfs-tools/$i-${ARCH}
84 oe_runmake -C ${WORKDIR}/squashfs-lzma KDir=${S} clean
85 oe_runmake -C ${WORKDIR}/squashfs-lzma KDir=${S}
86 patch -R -d ${S} -p1 < ${WORKDIR}/squashfs-lzma/sqlzma2k-3.2-r2-2.6.12.6.patch
90 do_configure_prepend () {
91 if [ "${@bb.data.getVar('DISTRO_VERSION', d, 1)}" == "1.4.0" ];
93 cat ${WORKDIR}/dm7025_defconfig | grep -v "CONFIG_CMDLINE" > ${S}/.config
94 echo "CONFIG_CMDLINE=\"console=null root=/dev/mtdblock3 rootfstype=jffs2 rw\"" >> ${S}/.config
96 oe_machinstall -m 0644 ${WORKDIR}/dm7025_defconfig ${S}/.config
101 do_install_append () {
103 install -m 0755 vmlinux ${D}/boot/vmlinux
104 echo "/flash/bootlogo.elf" > ${D}/boot/autoexec.bat
105 gzip ${D}/boot/vmlinux
106 echo "/flash/vmlinux.gz" >> ${D}/boot/autoexec.bat
107 for i in sqlzma.ko unlzma.ko;
109 install -m 0644 ${WORKDIR}/squashfs-lzma/C/7zip/Compress/LZMA_C/kmod/$i ${D}/lib/modules/2.6.12.6/kernel/fs/squashfs
111 install -d ${D}/usr/bin
112 for i in mksquashfs unsquashfs;
114 install ${WORKDIR}/squashfs-lzma/squashfs-tools/$i-${ARCH} ${D}/usr/bin/$i
118 PACKAGES_append = " unsquashfs mksquashfs"
119 FILES_mksquashfs = "/usr/bin/mksquashfs"
120 FILES_unsquashfs = "/usr/bin/unsquashfs"
123 install ${WORKDIR}/squashfs-lzma/C/7zip/Compress/LZMA_Alone/lzma ${STAGING_BINDIR}
124 install ${WORKDIR}/squashfs-lzma/C/7zip/Compress/LZMA_C/lzmadec ${STAGING_BINDIR}
125 install ${WORKDIR}/squashfs-lzma/squashfs-tools/mksquashfs ${STAGING_BINDIR}
126 install ${WORKDIR}/squashfs-lzma/squashfs-tools/unsquashfs ${STAGING_BINDIR}
129 pkg_preinst_kernel-image () {
130 [ -d /proc/stb ] && mount -o rw,remount /boot
133 pkg_postinst_kernel-image () {
134 [ -d /proc/stb ] && mount -o ro,remount /boot
137 pkg_prerm_kernel-image () {
138 [ -d /proc/stb ] && mount -o rw,remount /boot
141 pkg_postrm_kernel-image () {
142 [ -d /proc/stb ] && mount -o ro,remount /boot