2 ## Copyright (C) 2019 Wind River Systems, Inc.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
16 MAJOR = "${@d.getVar('PV').split('.')[0]}"
17 MINOR = "${@d.getVar('PV').split('.')[1]}"
20 PACKAGES += " mtce-pmon"
21 PACKAGES += " mtce-hwmon"
22 PACKAGES += " mtce-hostw"
23 PACKAGES += " mtce-lmon"
25 RDEPENDS_mtce-pmon_append = " \
38 RDEPENDS_mtce_append = " \
43 do_configure_prepend () {
47 do_compile_prepend () {
48 # use sed to correct the path of systemctl
49 sed -i -e 's|${bindir}/systemctl|${base_bindir}/systemctl|' ${S}/mtce/src/pmon/pmonHdlr.cpp
51 oe_runmake -e VER=1 VER_MJR=1 INCLUDES=" -I. -I../alarm -I../heartbeat -I../maintenance \
52 -I../hostw -I../public -I../smash -I../common -I../hwmon \
53 -I${S}/mtce-common/src/common \
54 -I${S}/mtce-common/src/daemon " \
55 CCFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS} -L${S}/mtce-common/src/common \
56 -L${S}/mtce-common/src/daemon " build
59 do_install_prepend () {
61 install -m 755 -d ${D}/${bindir}
62 install -m 755 -d ${D}/${sbindir}
63 install -m 755 -d ${D}/${libdir}
64 install -m 755 -d ${D}/${libdir}/ocf/resource.d/platform
65 install -m 755 -d ${D}/${systemd_system_unitdir}
67 install -m 755 -d ${D}/${sysconfdir}
68 install -m 755 -d ${D}/${sysconfdir}/mtc/tmp
69 install -m 755 -d ${D}/${sysconfdir}/bmc/server_profiles.d
70 install -m 755 -d ${D}/${sysconfdir}/init.d
71 install -m 755 -d ${D}/${sysconfdir}/pmon.d
72 install -m 755 -d ${D}/${sysconfdir}/logrotate.d
74 install -m 755 -d ${D}/${sysconfdir}/services.d
75 install -m 750 -d ${D}/${sysconfdir}/services.d/controller
76 install -m 750 -d ${D}/${sysconfdir}/services.d/worker
77 install -m 750 -d ${D}/${sysconfdir}/services.d/storage
80 install -m 755 -p -D scripts/mtcAgent ${D}/${libdir}/ocf/resource.d/platform
81 install -m 755 -p -D hwmon/scripts/ocf/hwmon ${D}/${libdir}/ocf/resource.d/platform
84 install -m 644 -p -D scripts/mtc.ini ${D}/${sysconfdir}/mtc.ini
85 install -m 644 -p -D scripts/mtc.conf ${D}/${sysconfdir}/mtc.conf
86 install -m 644 -p -D fsmon/scripts/fsmond.conf ${D}/${sysconfdir}/mtc/fsmond.conf
87 install -m 644 -p -D hwmon/scripts/hwmond.conf ${D}/${sysconfdir}/mtc/hwmond.conf
88 install -m 644 -p -D pmon/scripts/pmond.conf ${D}/${sysconfdir}/mtc/pmond.conf
89 install -m 644 -p -D lmon/scripts/lmond.conf ${D}/${sysconfdir}/mtc/lmond.conf
90 install -m 644 -p -D hostw/scripts/hostwd.conf ${D}/${sysconfdir}/mtc/hostwd.conf
92 install -m 644 -p -D scripts/sensor_hp360_v1_ilo_v4.profile ${D}/${sysconfdir}/bmc/server_profiles.d/
93 install -m 644 -p -D scripts/sensor_hp380_v1_ilo_v4.profile ${D}/${sysconfdir}/bmc/server_profiles.d/
94 install -m 644 -p -D scripts/sensor_quanta_v1_ilo_v4.profile ${D}/${sysconfdir}/bmc/server_profiles.d/
98 install -m 755 -p -D maintenance/mtcAgent ${D}/${bindir}/mtcAgent
99 install -m 755 -p -D maintenance/mtcClient ${D}/${bindir}/mtcClient
100 install -m 755 -p -D heartbeat/hbsAgent ${D}/${bindir}/hbsAgent
101 install -m 755 -p -D heartbeat/hbsClient ${D}/${bindir}/hbsClient
102 install -m 755 -p -D pmon/pmond ${D}/${bindir}/pmond
103 install -m 755 -p -D lmon/lmond ${D}/${bindir}/lmond
104 install -m 755 -p -D pmon/pmond ${D}/${bindir}/pmond
105 install -m 755 -p -D lmon/lmond ${D}/${bindir}/lmond
106 install -m 755 -p -D hostw/hostwd ${D}/${bindir}/hostwd
107 install -m 755 -p -D fsmon/fsmond ${D}/${bindir}/fsmond
108 install -m 755 -p -D hwmon/hwmond ${D}/${bindir}/hwmond
109 install -m 755 -p -D mtclog/mtclogd ${D}/${bindir}/mtclogd
110 install -m 755 -p -D alarm/mtcalarmd ${D}/${bindir}/mtcalarmd
111 install -m 755 -p -D scripts/wipedisk ${D}/${bindir}/wipedisk
112 install -m 755 -p -D fsync/fsync ${D}/${sbindir}/fsync
113 install -m 700 -p -D pmon/scripts/pmon-restart ${D}/${sbindir}/pmon-restart
114 install -m 700 -p -D pmon/scripts/pmon-start ${D}/${sbindir}/pmon-start
115 install -m 700 -p -D pmon/scripts/pmon-stop ${D}/${sbindir}/pmon-stop
118 install -m 755 -p -D scripts/mtcClient ${D}/${sysconfdir}/init.d/mtcClient
119 install -m 755 -p -D scripts/hbsClient ${D}/${sysconfdir}/init.d/hbsClient
120 install -m 755 -p -D hwmon/scripts/lsb/hwmon ${D}/${sysconfdir}/init.d/hwmon
121 install -m 755 -p -D fsmon/scripts/fsmon ${D}/${sysconfdir}/init.d/fsmon
122 install -m 755 -p -D scripts/mtclog ${D}/${sysconfdir}/init.d/mtclog
123 install -m 755 -p -D pmon/scripts/pmon ${D}/${sysconfdir}/init.d/pmon
124 install -m 755 -p -D lmon/scripts/lmon ${D}/${sysconfdir}/init.d/lmon
125 install -m 755 -p -D hostw/scripts/hostw ${D}/${sysconfdir}/init.d/hostw
126 install -m 755 -p -D alarm/scripts/mtcalarm.init ${D}/${sysconfdir}/init.d/mtcalarm
127 # install -m 755 -p -D scripts/config ${D}/${sysconfdir}/init.d/config
129 # TODO: Init hack. Should move to proper module
130 install -m 755 -p -D scripts/hwclock.sh ${D}/${sysconfdir}/init.d/hwclock.sh
131 install -m 644 -p -D scripts/hwclock.service ${D}/${systemd_system_unitdir}/hwclock.service
134 # systemd service files
135 install -m 644 -p -D fsmon/scripts/fsmon.service ${D}/${systemd_system_unitdir}/fsmon.service
136 install -m 644 -p -D hwmon/scripts/hwmon.service ${D}/${systemd_system_unitdir}/hwmon.service
137 install -m 644 -p -D pmon/scripts/pmon.service ${D}/${systemd_system_unitdir}/pmon.service
138 install -m 644 -p -D hostw/scripts/hostw.service ${D}/${systemd_system_unitdir}/hostw.service
139 install -m 644 -p -D scripts/mtcClient.service ${D}/${systemd_system_unitdir}/mtcClient.service
140 install -m 644 -p -D scripts/hbsClient.service ${D}/${systemd_system_unitdir}/hbsClient.service
141 install -m 644 -p -D scripts/mtclog.service ${D}/${systemd_system_unitdir}/mtclog.service
142 install -m 644 -p -D scripts/hbsClient.service ${D}/${systemd_system_unitdir}/hbsClient.service
143 install -m 644 -p -D scripts/mtclog.service ${D}/${systemd_system_unitdir}/mtclog.service
144 install -m 644 -p -D scripts/goenabled.service ${D}/${systemd_system_unitdir}/goenabled.service
145 install -m 644 -p -D scripts/runservices.service ${D}/${systemd_system_unitdir}/runservices.service
146 install -m 644 -p -D alarm/scripts/mtcalarm.service ${D}/${systemd_system_unitdir}/mtcalarm.service
147 install -m 644 -p -D lmon/scripts/lmon.service ${D}/${systemd_system_unitdir}/lmon.service
149 # fix the path for init scripts
150 sed -i -e 's|rc.d/||' ${D}/${systemd_system_unitdir}/*.service
153 install -m 755 -p -D scripts/goenabled ${D}/${sysconfdir}/init.d/goenabled
155 # start or stop services test script
156 install -m 755 -p -D scripts/mtcTest ${D}/${sysconfdir}/services.d/worker
157 install -m 755 -p -D scripts/mtcTest ${D}/${sysconfdir}/services.d/controller
158 install -m 755 -p -D scripts/mtcTest ${D}/${sysconfdir}/services.d/storage
159 install -m 755 -p -D scripts/runservices ${D}/${sysconfdir}/init.d/runservices
163 install -m 755 -p -D scripts/dmemchk.sh ${D}/${sbindir}
165 # process monitor config files
166 install -m 644 -p -D scripts/mtcClient.conf ${D}/${sysconfdir}/pmon.d/mtcClient.conf
167 install -m 644 -p -D scripts/hbsClient.conf ${D}/${sysconfdir}/pmon.d/hbsClient.conf
168 install -m 644 -p -D pmon/scripts/acpid.conf ${D}/${sysconfdir}/pmon.d/acpid.conf
169 install -m 644 -p -D pmon/scripts/sshd.conf ${D}/${sysconfdir}/pmon.d/sshd.conf
170 install -m 644 -p -D pmon/scripts/syslog-ng.conf ${D}/${sysconfdir}/pmon.d/syslog-ng.conf
171 install -m 644 -p -D pmon/scripts/nslcd.conf ${D}/${sysconfdir}/pmon.d/nslcd.conf
172 install -m 644 -p -D pmon/scripts/syslog-ng.conf ${D}/${sysconfdir}/pmon.d/syslog-ng.conf
173 install -m 644 -p -D pmon/scripts/nslcd.conf ${D}/${sysconfdir}/pmon.d/nslcd.conf
174 install -m 644 -p -D fsmon/scripts/fsmon.conf ${D}/${sysconfdir}/pmon.d/fsmon.conf
175 install -m 644 -p -D scripts/mtclogd.conf ${D}/${sysconfdir}/pmon.d/mtclogd.conf
176 install -m 644 -p -D alarm/scripts/mtcalarm.pmon.conf ${D}/${sysconfdir}/pmon.d/mtcalarm.conf
177 install -m 644 -p -D lmon/scripts/lmon.pmon.conf ${D}/${sysconfdir}/pmon.d/lmon.conf
180 install -m 644 -p -D scripts/mtce.logrotate ${D}/${sysconfdir}/logrotate.d/mtce.logrotate
181 install -m 644 -p -D hostw/scripts/hostw.logrotate ${D}/${sysconfdir}/logrotate.d/hostw.logrotate
182 install -m 644 -p -D pmon/scripts/pmon.logrotate ${D}/${sysconfdir}/logrotate.d/pmon.logrotate
183 install -m 644 -p -D lmon/scripts/lmon.logrotate ${D}/${sysconfdir}/logrotate.d/lmon.logrotate
184 install -m 644 -p -D fsmon/scripts/fsmon.logrotate ${D}/${sysconfdir}/logrotate.d/fsmon.logrotate
185 install -m 644 -p -D hwmon/scripts/hwmon.logrotate ${D}/${sysconfdir}/logrotate.d/hwmon.logrotate
186 install -m 644 -p -D alarm/scripts/mtcalarm.logrotate ${D}/${sysconfdir}/logrotate.d/mtcalarm.logrotate
188 # software development files
189 install -m 644 -p -D heartbeat/mtceHbsCluster.h ${D}/${includedir}/mtceHbsCluster.h
190 install -m 755 -p -D public/libamon.so.${MAJOR} ${D}/${libdir}/
191 cd ${D}/${libdir} ; ln -s libamon.so.${MAJOR} libamon.so.${MAJOR}.${MINOR}
192 cd ${D}/${libdir} ; ln -s libamon.so.${MAJOR} libamon.so
195 SYSTEMD_PACKAGES += " \
202 SYSTEMD_SERVICE_mtce = " \
210 SYSTEMD_SERVICE_mtce-hostw = "hostw.service"
211 SYSTEMD_SERVICE_mtce-lmon = "lmon.service"
212 SYSTEMD_SERVICE_mtce-pmon = "pmon.service"
214 SYSTEMD_AUTO_ENABLE_mtce = "enable"
215 SYSTEMD_AUTO_ENABLE_mtce-hostw = "enable"
216 SYSTEMD_AUTO_ENABLE_mtce-lmon = "enable"
217 SYSTEMD_AUTO_ENABLE_mtce-pmon = "enable"
219 FILES_mtce-pmon = " \
220 ${sbindir}/pmon-restart \
221 ${sbindir}/pmon-start \
222 ${sbindir}/pmon-stop \
224 ${systemd_system_unitdir}/pmon.service \
225 ${sysconfdir}/mtc/pmond.conf \
226 ${sysconfdir}/init.d/pmon \
227 ${sysconfdir}/logrotate.d/pmon.logrotate \
230 FILES_mtce-hwmon = " \
232 ${sysconfdir}/init.d/hwmon \
233 ${libdir}/ocf/resource.d/platform/hwmon \
234 ${sysconfdir}/logrotate.d/hwmon.logrotate \
235 ${systemd_system_unitdir}/hwmon.service \
236 ${sysconfdir}/mtc/hwmond.conf \
239 FILES_mtce-hostw = " \
240 ${sysconfdir}/mtc/hostwd.conf \
241 ${sysconfdir}/logrotate.d/hostw.logrotate \
242 ${systemd_system_unitdir}/hostw.service \
243 ${sysconfdir}/init.d/hostw \
249 ${sysconfdir}/mtc/lmond.conf \
250 ${sysconfdir}/logrotate.d/lmon.logrotate \
251 ${sysconfdir}/pmon.d/lmon.conf \
252 ${sysconfdir}/init.d/lmon \
253 ${systemd_system_unitdir}/lmon.service \
258 ${bindir}/mtcClient \
262 ${bindir}/hbsClient \
263 ${bindir}/mtcalarmd \
266 ${sbindir}/dmemchk.sh \
267 ${libdir}/ocf/resource.d/platform/mtcAgent \
268 ${libdir}/libamon${SOLIBS} \
269 ${systemd_system_unitdir}/mtcalarm.service \
270 ${systemd_system_unitdir}/goenabled.service \
271 ${systemd_system_unitdir}/mtclog.service \
272 ${systemd_system_unitdir}/mtcClient.service \
273 ${systemd_system_unitdir}/fsmon.service \
274 ${systemd_system_unitdir}/hbsClient.service \
275 ${systemd_system_unitdir}/hwclock.service \
276 ${systemd_system_unitdir}/runservices.service \
277 ${sysconfdir}/pmon.d/nslcd.conf \
278 ${sysconfdir}/pmon.d/mtclogd.conf \
279 ${sysconfdir}/pmon.d/mtcalarm.conf \
280 ${sysconfdir}/pmon.d/syslog-ng.conf \
281 ${sysconfdir}/pmon.d/acpid.conf \
282 ${sysconfdir}/pmon.d/sshd.conf \
283 ${sysconfdir}/pmon.d/fsmon.conf \
284 ${sysconfdir}/pmon.d/hbsClient.conf \
285 ${sysconfdir}/pmon.d/mtcClient.conf \
286 ${sysconfdir}/init.d/runservices \
287 ${sysconfdir}/init.d/goenabled \
288 ${sysconfdir}/init.d/mtcClient \
289 ${sysconfdir}/init.d/hwclock.sh \
290 ${sysconfdir}/init.d/mtclog \
291 ${sysconfdir}/init.d/mtcalarm \
292 ${sysconfdir}/init.d/hbsClient \
293 ${sysconfdir}/init.d/fsmon \
294 ${sysconfdir}/mtc.conf \
295 ${sysconfdir}/bmc/server_profiles.d/sensor_hp380_v1_ilo_v4.profile \
296 ${sysconfdir}/bmc/server_profiles.d/sensor_hp360_v1_ilo_v4.profile \
297 ${sysconfdir}/bmc/server_profiles.d/sensor_quanta_v1_ilo_v4.profile \
298 ${sysconfdir}/services.d/worker/mtcTest \
299 ${sysconfdir}/services.d/controller/mtcTest \
300 ${sysconfdir}/services.d/storage/mtcTest \
301 ${sysconfdir}/mtc/fsmond.conf \
302 ${sysconfdir}/mtc/tmp/ \
303 ${sysconfdir}/mtc.ini \
304 ${sysconfdir}/logrotate.d/fsmon.logrotate \
305 ${sysconfdir}/logrotate.d/mtcalarm.logrotate \
306 ${sysconfdir}/logrotate.d/mtce.logrotate \