blob: b6ae3cddcb9abca99c1672c6209d73876068b9d5 [file] [log] [blame]
Brad Bishop15ae2502019-06-18 21:44:24 -04001SUMMARY = "Hardware health monitoring applications"
2HOMEPAGE = "https://hwmon.wiki.kernel.org/"
Patrick Williamsb48b7b42016-08-17 15:04:38 -05003LICENSE = "GPLv2+ & LGPLv2.1+"
4LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
5 file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c"
6
Brad Bishop15ae2502019-06-18 21:44:24 -04007DEPENDS = " \
8 bison-native \
9 flex-native \
Brad Bishop15ae2502019-06-18 21:44:24 -040010 virtual/libiconv \
11"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050012
Brad Bishop15ae2502019-06-18 21:44:24 -040013SRC_URI = "git://github.com/lm-sensors/lm-sensors.git;protocol=https \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050014 file://fancontrol.init \
15 file://sensord.init \
Andrew Geisslerbbbd5f42020-10-30 15:42:48 -050016 file://0001-Change-PIDFile-path-from-var-run-to-run.patch \
Patrick Williamsb48b7b42016-08-17 15:04:38 -050017"
Brad Bishop868407c2019-11-04 13:24:47 -050018SRCREV = "1667b850a1ce38151dae17156276f981be6fb557"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080019
Patrick Williamsb48b7b42016-08-17 15:04:38 -050020inherit update-rc.d systemd
21
Patrick Williams213cb262021-08-07 19:21:33 -050022RDEPENDS:${PN}-dev = ""
Patrick Williamsb48b7b42016-08-17 15:04:38 -050023
Brad Bishopb809eb92019-09-18 06:27:43 -040024PACKAGECONFIG ??= "sensord"
25PACKAGECONFIG[sensord] = "sensord,,rrdtool"
26
27INITSCRIPT_PACKAGES = "\
28 ${PN}-fancontrol \
29 ${@bb.utils.contains('PACKAGECONFIG', 'sensord', '${PN}-sensord', '', d)} \
30 "
Patrick Williams213cb262021-08-07 19:21:33 -050031INITSCRIPT_NAME:${PN}-fancontrol = "fancontrol"
32INITSCRIPT_NAME:${PN}-sensord = "sensord"
33INITSCRIPT_PARAMS:${PN}-fancontrol = "defaults 66"
34INITSCRIPT_PARAMS:${PN}-sensord = "defaults 67"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050035
Brad Bishopb809eb92019-09-18 06:27:43 -040036SYSTEMD_PACKAGES = "\
37 ${PN} \
38 ${PN}-fancontrol \
39 ${@bb.utils.contains('PACKAGECONFIG', 'sensord', '${PN}-sensord', '', d)} \
40 "
Patrick Williams213cb262021-08-07 19:21:33 -050041SYSTEMD_SERVICE:${PN} = "lm_sensors.service"
42SYSTEMD_SERVICE:${PN}-fancontrol = "fancontrol.service"
43SYSTEMD_SERVICE:${PN}-sensord = "sensord.service"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050044SYSTEMD_AUTO_ENABLE = "disable"
45
Brad Bishop15ae2502019-06-18 21:44:24 -040046S = "${WORKDIR}/git"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050047
48EXTRA_OEMAKE = 'EXLDFLAGS="${LDFLAGS}" \
49 MACHINE=${TARGET_ARCH} PREFIX=${prefix} MANDIR=${mandir} \
50 LIBDIR=${libdir} \
51 CC="${CC}" AR="${AR}"'
52
53do_compile() {
Brad Bishopd7bf8c12018-02-25 22:55:05 -050054 sed -i -e 's:^# \(PROG_EXTRA\):\1:' ${S}/Makefile
55 # Respect LDFLAGS
56 sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' ${S}/Makefile
57 sed -i -e 's/\$(LIBSHSONAME) -o/$(LIBSHSONAME) \$(LDFLAGS) -o/g' \
58 ${S}/lib/Module.mk
Brad Bishopb809eb92019-09-18 06:27:43 -040059 oe_runmake user PROG_EXTRA="sensors ${PACKAGECONFIG_CONFARGS}"
Patrick Williamsb48b7b42016-08-17 15:04:38 -050060}
61
62do_install() {
63 oe_runmake user_install DESTDIR=${D}
Brad Bishopb809eb92019-09-18 06:27:43 -040064 if ${@bb.utils.contains('PACKAGECONFIG', 'sensord', 'true', 'false', d)}; then
65 install -m 0755 ${S}/prog/sensord/sensord ${D}${sbindir}
66 install -m 0644 ${S}/prog/sensord/sensord.8 ${D}${mandir}/man8
67 fi
Patrick Williamsb48b7b42016-08-17 15:04:38 -050068
69 # Install directory
Brad Bishop15ae2502019-06-18 21:44:24 -040070 install -d ${D}${INIT_D_DIR}
Patrick Williamsb48b7b42016-08-17 15:04:38 -050071
72 # Install fancontrol init script
Brad Bishop15ae2502019-06-18 21:44:24 -040073 install -m 0755 ${WORKDIR}/fancontrol.init ${D}${INIT_D_DIR}/fancontrol
Patrick Williamsb48b7b42016-08-17 15:04:38 -050074
Brad Bishopb809eb92019-09-18 06:27:43 -040075 if ${@bb.utils.contains('PACKAGECONFIG', 'sensord', 'true', 'false', d)}; then
76 # Install sensord init script
77 install -m 0755 ${WORKDIR}/sensord.init ${D}${INIT_D_DIR}/sensord
78 fi
Patrick Williamsb48b7b42016-08-17 15:04:38 -050079
80 # Insall sensord service script
Brad Bishopb809eb92019-09-18 06:27:43 -040081 install -d ${D}${systemd_unitdir}/system
82 install -m 0644 ${S}/prog/init/*.service ${D}${systemd_unitdir}/system
83 if ! ${@bb.utils.contains('PACKAGECONFIG', 'sensord', 'true', 'false', d)}; then
84 rm ${D}${systemd_system_unitdir}/sensord.service
85 fi
Patrick Williamsb48b7b42016-08-17 15:04:38 -050086}
87
Patrick Williams213cb262021-08-07 19:21:33 -050088RPROVIDES:${PN}-dbg += "${PN}-libsensors-dbg ${PN}-sensors-dbg ${PN}-sensord-dbg ${PN}-isatools-dbg"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080089
Patrick Williams213cb262021-08-07 19:21:33 -050090ALLOW_EMPTY:${PN} = "1"
91RDEPENDS:${PN} += " \
Brad Bishop26bdd442019-08-16 17:08:17 -040092 ${PN}-libsensors \
93 ${PN}-sensors \
Andrew Geissler82c905d2020-04-13 13:39:40 -050094 ${@bb.utils.contains('PACKAGECONFIG', 'sensord', '${PN}-sensord', '', d)} \
Brad Bishop26bdd442019-08-16 17:08:17 -040095 ${PN}-fancontrol \
96 ${PN}-sensorsdetect \
97 ${PN}-sensorsconfconvert \
98 ${PN}-pwmconfig \
Andrew Geisslerc87764f2020-06-27 00:16:32 -050099 ${@bb.utils.contains('MACHINE_FEATURES', 'x86', '${PN}-isatools', '', d)} \
Brad Bishop26bdd442019-08-16 17:08:17 -0400100"
101
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500102# libsensors packages
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800103PACKAGES =+ "${PN}-libsensors ${PN}-libsensors-dev ${PN}-libsensors-staticdev ${PN}-libsensors-doc"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500104
105# sensors command packages
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800106PACKAGES =+ "${PN}-sensors ${PN}-sensors-doc"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500107
108# sensord logging daemon
Brad Bishopb809eb92019-09-18 06:27:43 -0400109PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'sensord', '${PN}-sensord ${PN}-sensord-doc', '', d)}"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500110
111# fancontrol script
112PACKAGES =+ "${PN}-fancontrol ${PN}-fancontrol-doc"
113
114# sensors-detect script
115PACKAGES =+ "${PN}-sensorsdetect ${PN}-sensorsdetect-doc"
116
117# sensors-conf-convert script
118PACKAGES =+ "${PN}-sensorsconfconvert ${PN}-sensorsconfconvert-doc"
119
120# pwmconfig script
121PACKAGES =+ "${PN}-pwmconfig ${PN}-pwmconfig-doc"
122
123# isadump and isaset helper program
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800124PACKAGES =+ "${PN}-isatools ${PN}-isatools-doc"
125
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500126
127# libsensors files
Patrick Williams213cb262021-08-07 19:21:33 -0500128FILES:${PN}-libsensors = "${libdir}/libsensors.so.* ${sysconfdir}/sensors3.conf ${sysconfdir}/sensors.d"
129FILES:${PN}-libsensors-dev = "${libdir}/libsensors.so ${includedir}"
130FILES:${PN}-libsensors-staticdev = "${libdir}/libsensors.a"
131FILES:${PN}-libsensors-doc = "${mandir}/man3"
132RRECOMMENDS:${PN}-libsensors = "lmsensors-config-libsensors"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500133
134# sensors command files
Patrick Williams213cb262021-08-07 19:21:33 -0500135FILES:${PN}-sensors = "${bindir}/sensors"
136FILES:${PN}-sensors-doc = "${mandir}/man1 ${mandir}/man5"
137RDEPENDS:${PN}-sensors = "${PN}-libsensors"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500138
139# sensord logging daemon
Patrick Williams213cb262021-08-07 19:21:33 -0500140FILES:${PN}-sensord = "${sbindir}/sensord ${INIT_D_DIR}/sensord ${systemd_system_unitdir}/sensord.service"
141FILES:${PN}-sensord-doc = "${mandir}/man8/sensord.8"
142RDEPENDS:${PN}-sensord = "${PN}-sensors rrdtool"
143RRECOMMENDS:${PN}-sensord = "lmsensors-config-sensord"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500144
145# fancontrol script files
Patrick Williams213cb262021-08-07 19:21:33 -0500146FILES:${PN}-fancontrol = "${sbindir}/fancontrol ${INIT_D_DIR}/fancontrol"
147FILES:${PN}-fancontrol-doc = "${mandir}/man8/fancontrol.8"
148RDEPENDS:${PN}-fancontrol = "bash"
149RRECOMMENDS:${PN}-fancontrol = "lmsensors-config-fancontrol"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500150
151# sensors-detect script files
Patrick Williams213cb262021-08-07 19:21:33 -0500152FILES:${PN}-sensorsdetect = "${sbindir}/sensors-detect"
153FILES:${PN}-sensorsdetect-doc = "${mandir}/man8/sensors-detect.8"
154RDEPENDS:${PN}-sensorsdetect = "${PN}-sensors perl perl-modules"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500155
156# sensors-conf-convert script files
Patrick Williams213cb262021-08-07 19:21:33 -0500157FILES:${PN}-sensorsconfconvert = "${bindir}/sensors-conf-convert"
158FILES:${PN}-sensorsconfconvert-doc = "${mandir}/man8/sensors-conf-convert.8"
159RDEPENDS:${PN}-sensorsconfconvert = "${PN}-sensors perl perl-modules"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500160
161# pwmconfig script files
Patrick Williams213cb262021-08-07 19:21:33 -0500162FILES:${PN}-pwmconfig = "${sbindir}/pwmconfig"
163FILES:${PN}-pwmconfig-doc = "${mandir}/man8/pwmconfig.8"
164RDEPENDS:${PN}-pwmconfig = "${PN}-fancontrol bash"
Patrick Williamsb48b7b42016-08-17 15:04:38 -0500165
166# isadump and isaset helper program files
Patrick Williams213cb262021-08-07 19:21:33 -0500167FILES:${PN}-isatools = "${sbindir}/isa*"
168FILES:${PN}-isatools-doc = "${mandir}/man8/isa*"