From 2779c3bf0acee52ed9709aa09eb5788df27b9739 Mon Sep 17 00:00:00 2001 From: John Klug Date: Mon, 14 Jan 2019 12:09:48 -0600 Subject: Fix for kernel rebuild issue with mtac header files. --- recipes-bsp/multitech/mts-io.inc | 55 ++++++++++------------------------------ 1 file changed, 14 insertions(+), 41 deletions(-) (limited to 'recipes-bsp/multitech/mts-io.inc') diff --git a/recipes-bsp/multitech/mts-io.inc b/recipes-bsp/multitech/mts-io.inc index c59a72e..1ffdb5b 100644 --- a/recipes-bsp/multitech/mts-io.inc +++ b/recipes-bsp/multitech/mts-io.inc @@ -60,41 +60,33 @@ FILES_${PN}-noarch += "${sbindir}/mts-io-sysfs" FILES_${PN}-noarch_append_mtcap += "${sbindir}/lora-led-updater" FILES_${PN}-util += "${sbindir}/mts-util-lora2-reset" FILES_${PN}-util-dbg += "/usr/src /usr/sbin/.debug" -FILES_${PN}-dev += "/usr/include/linux/mts_eeprom.h /usr/include/linux/mts_io.h" +FILES_${PN}-dev += "${includedir}/linux ${includedir}/mts-kernel-headers" INITSCRIPT_NAME = "mts-io" INITSCRIPT_PARAMS = "start 39 S ." PARALLEL_MAKE = "" -L1 = "${STAGING_KERNEL_DIR}/include/linux/" - -# Bitbake/Yocto automatically installs in to L2. -L2 = "${STAGING_INCDIR}/linux/" - -L3 = "${D}/usr/include/linux/" fakeroot do_install () { make DESTDIR=${D} install install -m 0755 -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/extra # use cp instead of install so the driver doesn't get stripped cp ${S}/io-module/mts_io.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/extra - install -d ${L3} - - echo "STAGING_KERNEL_DIR is ${STAGING_KERNEL_DIR}" - echo "STAGING_INCDIR is ${STAGING_INCDIR}" - echo "D/usr/include/linux/ is ${D}/usr/include/linux/" - - install -m 0644 ${S}/io-module/mts_io.h ${L1} - # install -m 0644 ${S}/io-module/mts_io.h ${L2} - install -m 0644 ${S}/io-module/mts_io.h ${L3} - install -m 0644 ${S}/io-module/mts_eeprom.h ${L1} - # install -m 0644 ${S}/io-module/mts_eeprom.h ${L2} - install -m 0644 ${S}/io-module/mts_eeprom.h ${L3} + # install headers for kernel modules + install -d ${D}${includedir}/mts-kernel-headers/linux + install -m 0644 ${S}/io-module/mts_io.h ${D}${includedir}/mts-kernel-headers/linux + install -m 0644 ${S}/io-module/mts_eeprom.h ${D}${includedir}/mts-kernel-headers/linux + install -m 0644 ${S}/io-module/at91gpio.h ${D}${includedir}/mts-kernel-headers/linux - install -m 0644 ${S}/io-module/at91gpio.h ${L1} - # install -m 0644 ${S}/io-module/mts_eeprom.h ${L2} - install -m 0644 ${S}/io-module/at91gpio.h ${L3} + # install same headers for userspace applications + # Note this dupication can be avoided by adding the following into the recipes + # CFLAGS += ${STAGING_INCDIR}/mts-kernel-headers + # + install -d ${D}${includedir}/linux + install -m 0644 ${S}/io-module/mts_io.h ${D}${includedir}/linux + install -m 0644 ${S}/io-module/mts_eeprom.h ${D}${includedir}/linux + install -m 0644 ${S}/io-module/at91gpio.h ${D}${includedir}/linux install -d ${D}${sysconfdir}/init.d install -m 0755 ${WORKDIR}/mts-io.init ${D}${sysconfdir}/init.d/mts-io @@ -117,22 +109,3 @@ fakeroot do_install_append_mtcap() { install -m 0755 ${WORKDIR}/mts-io.mtcap.init ${D}${sysconfdir}/init.d/mts-io install -m 0755 ${WORKDIR}/lora-led-updater ${D}${sbindir}/lora-led-updater } - -# Yocto seems to insist on Python for this function -# This function is to make debugging easier, so the package -# can be built a 2nd time. -fakeroot do_cleansstate_prepend() { - L1 = d.getVar("L1",True) - L2 = d.getVar("L2",True) - bb.note("L1 is " + L1) - bb.note("L2 is " + L2) - - F1 = L1 + "/mts_io.h" - F2 = L2 + "/mts_io.h" - F3 = L1 + "/mts_eeprom.h" - F4 = L2 + "/mts_eeprom.h" - - for f in [F1, F2, F3, F4]: - if os.path.exists(f): - os.remove(f) -} -- cgit v1.2.3