blob: 5b1dccc02a01a7ee2a33ca9ca3d4f43b15022889 (
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
DESCRIPTION = "mts-io controller and sysfs wrapper"
HOMEPAGE = "http://www.multitech.net/"
SECTION = "base"
PRIORITY = "optional"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://io-module/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://io-tool/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
"
DEPENDS = "virtual/kernel"
INC_PR = "r1"
SRCREV = "${PV}"
PR = "${INC_PR}.1-${KERNEL_MODULE_PACKAGE_SUFFIX}"
SRC_URI = " \
git://git.multitech.net/mts-io.git;protocol=git \
file://led-status_heartbeat_trigger \
file://lora-led-updater \
file://mts-io.init \
file://mts-io.blacklist \
file://mts-io.mtcap.init \
file://mts-io.conf \
"
S = "${WORKDIR}/git"
inherit module
inherit update-rc.d
inherit autotools
# add this since we aren't using module.bbclass
addtask make_scripts after do_patch before do_compile
do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
do_make_scripts[deptask] = "do_populate_sysroot"
EXTRA_OEMAKE = " -C ${STAGING_KERNEL_DIR} \
KBUILD_VERBOSE=1 \
M=${S}/io-module \
modules \
"
do_compile () {
bbnote make "$@"
make "$@"
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake
}
PACKAGES = "${PN}-noarch kernel-module-${PN} ${PN}-util ${PN}-util-dbg ${PN}-dev"
FILES_kernel-module-${PN} = " \
${base_libdir}/modules/${KERNEL_VERSION}/extra/mts_io.ko \
${sysconfdir}/modprobe.d/mts-io.conf \
"
FILES_${PN}-noarch = "${sysconfdir}/init.d/mts-io \
${sysconfdir}/rc5.d/S95led-status_heartbeat_trigger \
${sysconfdir}/default/mts-io \
${sysconfdir}/init.d/led-status_heartbeat_trigger"
FILES_${PN}-noarch += "${libdir}/mts-io-sysfs*"
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 += "${includedir}/linux ${includedir}/mts-kernel-headers"
INITSCRIPT_NAME = "mts-io"
INITSCRIPT_PARAMS = "start 39 S ."
PARALLEL_MAKE = ""
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 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 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
install -m 0755 ${WORKDIR}/led-status_heartbeat_trigger ${D}/${sysconfdir}/init.d/
install -d ${D}${sysconfdir}/default
install -m 0755 ${WORKDIR}/mts-io.conf ${D}${sysconfdir}/default/mts-io
install -d ${D}${sysconfdir}/modprobe.d
install -m 0644 ${WORKDIR}/mts-io.blacklist ${D}${sysconfdir}/modprobe.d/mts-io.conf
# blink status LED after booted
install -d ${D}${sysconfdir}/rc5.d
ln -sf ${sysconfdir}/init.d/led-status_heartbeat_trigger ${D}/${sysconfdir}/rc5.d/S95led-status_heartbeat_trigger
install -m 0755 -d ${D}${sbindir}
install -d ${D}${libdir}/mts-io-sysfs
install -m 0755 ${S}/io-tool/mts-io-sysfs-inc.sh ${D}${libdir}/mts-io-sysfs
install -m 0755 ${S}/io-tool/mts-io-sysfs ${D}${sbindir}/mts-io-sysfs
}
fakeroot do_install_append_mtcap() {
# install MTCAP mts-io init script
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
}
|