I have a recipe that should be copying a runlevel script into /etc/init.d and creating a symbolic link to it from /etc/rc5 However the do_install function does not appear to be being called.
Below the structure of my layer. The problem bb file is init-wifi.bb at the bottom of the tree. The other recipes with bbappends work fine.
.
├── conf
│ └── layer.conf
├── recipes-connectivity
│ ├── alsa
│ │ ├── alsa-lib
│ │ └── alsa-lib_1.0.29.bbappend
│ └── wpa-supplicant
│ ├── wpa-supplicant
│ │ ├── wpa_supplicant.conf
│ │ └── wpa_supplicant.conf-sane
│ └── wpa-supplicant_2.4.bbappend
├── recipes-core
│ ├── base-files
│ │ ├── base-files
│ │ │ └── profile
│ │ └── base-files_%.bbappend
│ └── init-ifupdown
│ ├── init-ifupdown-1.0
│ │ └── interfaces
│ └── init-ifupdown_1.0.bbappend
└── recipes-my
└── init-wifi
├── files
│ └── wifi_start.sh
└── init-wifi.bb
Below is the init-wifi.bb recipe:
SUMMARY = "x"
LICENSE = "CLOSED"
#PR = "r0"
SRC_URI += "file://wifi_start.sh"
#INITSCRIPT_NAME = "wifi_start.sh"
#INITSCRIPT_PARAMS = "defaults 90"
do_install() {
install -d ${D}${sysconfdir}/init.d
install -d ${D}${sysconfdir}/rcS.d
install -d ${D}${sysconfdir}/rc1.d
install -d ${D}${sysconfdir}/rc2.d
install -d ${D}${sysconfdir}/rc3.d
install -d ${D}${sysconfdir}/rc4.d
install -d ${D}${sysconfdir}/rc5.d
install -m 0755 ${WORKDIR}/wifi_start.sh ${D}${sysconfdir}/init.d/
ln -sf ${D}${syscondir}/init.d/wifi_start.sh {D}${sysconfdir}/rc5.d/S90wifi_start.sh
}
If I introduce errors to the bb file outside the do_install function I get errors wen invoking bitbake, so I know my recipe file is being found and parsed. However If i introduce errors inside the do_install function it is not being called. Additionally I don't see the script being installed into the work or image directories (after removing intentional debugging errors).
If I force bitbake to run the recipe with 'bitbake -c install init-wifi', it will install the files "work/image" directories:
tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/initwifi/0.0-r0/image/etc/init.d/wifi_start.sh
tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/initwifi/0.0-r0/wifi_start.sh
However when my image is built and installed on my module, the script and links are not there.
Been struggling with this for a couple of days and searches haven't produced much help either.
Any ideas?
Thanks!