Merge branch 'vuplus-1.6' of 192.168.102.66:/var/ikseong/repo/openembedded into test_0921
[vuplus_openembedded] / recipes / dreambox / dreambox-secondstage.bb
1 DESCRIPTION = "Dreambox second stage bootloader"
2 SECTION = "base"
3 PRIORITY = "required"
4 MAINTAINER = "Felix Domke <tmbinc@elitedvb.net>"
5 PV = "84"
6 PV_dm7025 = "83"
7 PV_dm7020 = "35"
8 PV_dm600pvr = "66"
9 PV_dm500plus = "66"
10 PR = "r0"
11
12 RDEPENDS_${PN} = "dreambox-bootlogo (>= 7.0)"
13
14 SRC_URI = "http://sources.dreamboxupdate.com/download/7020/secondstage-${MACHINE}-${PV}.bin"
15
16 WRITENFI = "writenfi-mipsel-2.6.18-r2"
17
18 SECONDSTAGE_UPDATE_SRC = "http://sources.dreamboxupdate.com/download/7020/secondstage-${MACHINE}-${PV}.nfi \
19         http://sources.dreamboxupdate.com/download/7020/${WRITENFI}"
20
21 SRC_URI_append_mipsel = " ${SECONDSTAGE_UPDATE_SRC}"
22
23 S = "${WORKDIR}"
24
25 do_stage() {
26         install -d ${STAGING_LIBDIR}/dreambox-secondstage
27         gzip -c ${S}/secondstage-${MACHINE}-${PV}.bin > ${STAGING_LIBDIR}/dreambox-secondstage/main.bin.gz
28 }
29
30 # secondstage >= 81 is already compressed
31 do_stage_mipsel() {
32         install -d ${STAGING_LIBDIR}/dreambox-secondstage
33         cp ${S}/secondstage-${MACHINE}-${PV}.bin ${STAGING_LIBDIR}/dreambox-secondstage/main.bin.gz
34 }
35
36 do_install_mipsel() {
37         install -d ${D}/tmp
38         install ${WORKDIR}/secondstage-${MACHINE}-${PV}.nfi ${D}/tmp/secondstage.nfi
39         install -m 0755 ${WORKDIR}/${WRITENFI} ${D}/tmp/writenfi
40 }
41
42 FILES_${PN} = "/tmp"
43 PACKAGE_ARCH := "${MACHINE_ARCH}"
44
45 pkg_postinst() {
46         if [ -d /proc/stb ]; then
47                 if [ -f /tmp/writenfi ]; then
48                         if [ "$(cat /proc/stb/info/model)" = "dm8000" ]; then
49                                 /tmp/writenfi /tmp/secondstage.nfi;
50                                 rm /tmp/writenfi /tmp/secondstage.nfi;
51                         else
52                                 #hack for broken mtd layer in linux kernel 2.6.18-r13.0
53                                 mv /tmp/writenfi /usr/bin/writenfi;
54                                 mv /tmp/secondstage.nfi /usr/bin/secondstage.nfi;
55                                 echo "#!/bin/sh" > /etc/rcS.d/S05UpdateSecondstage;
56                                 echo "/usr/bin/writenfi /usr/bin/secondstage.nfi || /bin/true" > /etc/rcS.d/S05UpdateSecondstage;
57                                 echo "rm -f /usr/bin/writenfi /usr/bin/secondstage.nfi /etc/rcS.d/S05UpdateSecondstage" >> /etc/rcS.d/S05UpdateSecondstage;
58                                 chmod ugo+x /etc/rcS.d/S05UpdateSecondstage;
59                         fi
60                 fi
61         fi
62 }