1 DESCRIPTION = "Resource policy framework"
2 HOMEPAGE = "http://nohomepage.org"
3 SECTION = "System/Service"
4 LICENSE = "BSD-3-Clause"
11 inherit manifest autotools-brokensep
16 #PROVIDES by murphy-dev
17 PROVIDES += "murphy-dev"
20 #PROVIDES by murphy-core
21 PROVIDES += "murphy-core"
24 #PROVIDES by murphy-ecore
25 PROVIDES += "murphy-ecore"
28 #PROVIDES by murphy-pulse
29 PROVIDES += "murphy-pulse"
32 #PROVIDES by murphy-doc
33 PROVIDES += "murphy-doc"
39 #PROVIDES by murphy-ivi-resource-manager
40 PROVIDES += "murphy-ivi-resource-manager"
43 #PROVIDES by murphy-glib-dev
44 PROVIDES += "murphy-glib-dev"
47 #PROVIDES by murphy-pulse-dev
48 PROVIDES += "murphy-pulse-dev"
51 #PROVIDES by murphy-tests
52 PROVIDES += "murphy-tests"
55 #PROVIDES by murphy-gam
56 PROVIDES += "murphy-gam"
59 #PROVIDES by murphy-system-controller
60 PROVIDES += "murphy-system-controller"
61 # the PROVIDES rules is ignore "system-controller "
62 PROVIDES += "system-controller"
63 RPROVIDES_murphy-system-controller += "system-controller"
66 #PROVIDES by murphy-plugins-base
67 PROVIDES += "murphy-plugins-base"
70 #PROVIDES by murphy-glib
71 PROVIDES += "murphy-glib"
74 #PROVIDES by murphy-gam-dev
75 PROVIDES += "murphy-gam-dev"
78 #PROVIDES by murphy-ecore-dev
79 PROVIDES += "murphy-ecore-dev"
83 #RDEPENDS of murphy-dev (${PN}-dev)
84 RDEPENDS_${PN}-dev += "murphy-core"
85 RDEPENDS_${PN}-dev += "json-c"
87 #RDEPENDS of murphy-ecore (${PN}-ecore)
88 RDEPENDS_${PN}-ecore += "murphy-core"
90 #RDEPENDS of murphy-pulse (${PN}-pulse)
91 RDEPENDS_${PN}-pulse += "murphy-core"
93 #RDEPENDS of murphy (${PN})
94 RDEPENDS_${PN} += "murphy-core"
95 RDEPENDS_${PN} += "libcap"
96 RDEPENDS_${PN} += "/bin/systemctl"
98 #RDEPENDS of murphy-gam-dev (${PN}-gam-dev)
99 RDEPENDS_${PN}-gam-dev += "murphy-gam"
101 #RDEPENDS of murphy-pulse-dev (${PN}-pulse-dev)
102 RDEPENDS_${PN}-pulse-dev += "murphy-core"
103 RDEPENDS_${PN}-pulse-dev += "murphy-pulse"
105 #RDEPENDS of murphy-tests (${PN}-tests)
106 RDEPENDS_${PN}-tests += "murphy-core"
107 RDEPENDS_${PN}-tests += "murphy"
109 #RDEPENDS of murphy-gam (${PN}-gam)
110 RDEPENDS_${PN}-gam += "murphy"
112 #RDEPENDS of murphy-system-controller (${PN}-system-controller)
113 RDEPENDS_${PN}-system-controller += "ico-uxf-homescreen"
115 #RDEPENDS of murphy-plugins-base (${PN}-plugins-base)
116 RDEPENDS_${PN}-plugins-base += "murphy-core"
117 RDEPENDS_${PN}-plugins-base += "murphy"
119 #RDEPENDS of murphy-glib (${PN}-glib)
120 RDEPENDS_${PN}-glib += "murphy-core"
122 #RDEPENDS of murphy-glib-dev (${PN}-glib-dev)
123 RDEPENDS_${PN}-glib-dev += "murphy-core"
124 RDEPENDS_${PN}-glib-dev += "murphy-glib"
126 #RDEPENDS of murphy-ecore-dev (${PN}-ecore-dev)
127 RDEPENDS_${PN}-ecore-dev += "murphy-core"
128 RDEPENDS_${PN}-ecore-dev += "murphy-ecore"
133 DEPENDS += "genivi-shell"
137 DEPENDS += "audio-session-manager"
141 DEPENDS += "glib-2.0"
144 DEPENDS += "ico-uxf-weston-plugin"
146 DEPENDS += "tizen-platform-config"
147 DEPENDS += "weston-ivi-shell"
149 DEPENDS += "libwebsockets"
151 DEPENDS += "virtual/libgles2"
152 DEPENDS += "virtual/egl"
154 DEPENDS += "pulseaudio"
156 DEPENDS_append_class-native = " bison-native"
157 DEPENDS_append_class-target = " bison-native"
161 chmod -Rf a+rX,u+w,g-w,o-w ${S}
163 cp ${S}/packaging/murphy.manifest .
164 echo "Build with icosyscon"
169 bb.build.exec_func('do_prep', d)
180 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
184 DYNAMIC_PLUGINS="domain-control,system-controller,ivi-resource-manager"
186 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-pulse"
188 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-ecore"
190 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-glib"
192 CONFIG_OPTIONS="$CONFIG_OPTIONS --disable-qt"
194 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-libdbus"
196 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-gpl --enable-telephony"
198 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-resource-asm"
199 DYNAMIC_PLUGINS="$DYNAMIC_PLUGINS,resource-asm"
201 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-websockets"
203 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-smack"
205 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-system-controller"
207 CONFIG_OPTIONS="$CONFIG_OPTIONS --enable-system-monitor"
211 autotools_do_configure
218 EXTRA_OECONF += " $CONFIG_OPTIONS --with-dynamic-plugins=$DYNAMIC_PLUGINS"
221 export RPM_BUILD_ROOT=${D}
234 BINDIR=${prefix}/bin \
236 rm -f ${D}${infodir}/dir
237 find ${D} -regex ".*\.la$" | xargs rm -f --
238 find ${D} -regex ".*\.a$" | xargs rm -f --
240 # Make sure we have a plugin dir even if all the basic plugins
241 # are configured to be built in.
242 mkdir -p ${D}${prefix}/lib/murphy/plugins
244 # Get rid of any *.la files installed by libtool.
245 rm -f ${D}${prefix}/lib/*.la
247 # Clean up also the murphy DB installation.
248 rm -f ${D}${prefix}/lib/murphy/*.la
250 # Generate list of linkedin plugins (depends on the configuration).
253 find ./${prefix}/lib -name libmurphy-plugin-*.so* | \
254 sed 's#^./*#/#g' > $outdir/filelist.plugins-base
256 echo "Found the following linked-in plugin files:"
257 cat $outdir/filelist.plugins-base | sed 's/^/ /g'
259 # Generate list of header files, filtering ones that go to subpackages.
262 find ./${prefix}/include/murphy | \
263 grep -E -v '((pulse)|(ecore)|(glib)|(qt))-glue' | \
264 sed 's#^./*#/#g' > $outdir/filelist.devel-includes
267 # Replace the default sample/test config files with the packaging ones.
268 rm -f ${D}${sysconfdir}/murphy/*
269 cp packaging.in/murphy-lua.conf ${D}${sysconfdir}/murphy/murphy.conf
270 cp packaging.in/murphy.lua ${D}${sysconfdir}/murphy/murphy.lua
272 # Copy plugin configuration files in place.
273 mkdir -p ${D}${sysconfdir}/murphy/plugins/amb
274 cp packaging.in/amb-config.lua \
275 ${D}${sysconfdir}/murphy/plugins/amb/config.lua
277 # Copy tmpfiles.d config file in place
278 mkdir -p ${D}/usr/lib/tmpfiles.d
279 cp packaging.in/murphyd.conf ${D}/usr/lib/tmpfiles.d
281 # Copy the systemd files in place.
282 #mkdir -p %{buildroot}%{_unitdir}
283 mkdir -p ${D}${prefix}/lib/systemd/user
284 cp packaging.in/murphyd.service ${D}${prefix}/lib/systemd/user
286 mkdir -p ${D}${sysconfdir}/dbus-1/system.d
287 sed "s/@TZ_SYS_USER_GROUP@/users/g" \
288 packaging.in/org.Murphy.conf.in > packaging.in/org.Murphy.conf
289 cp packaging.in/org.Murphy.conf \
290 ${D}${sysconfdir}/dbus-1/system.d/org.Murphy.conf
292 # copy (experimental) GAM resource backend configuration files
293 mkdir -p ${D}${sysconfdir}/murphy/gam
294 cp packaging.in/gam-*.names packaging.in/gam-*.tree \
295 ${D}${sysconfdir}/murphy/gam
300 pkg_postinst_${PN}() {
307 pkg_postinst_${PN}() {
310 /bin/systemctl --user enable --global murphyd.service
311 setcap 'cap_net_admin=+ep' $D${prefix}/bin/murphyd
316 pkg_postinst_${PN}() {
323 pkg_postinst_${PN}() {
330 pkg_postinst_${PN}() {
337 pkg_postinst_${PN}() {
344 pkg_postinst_${PN}() {
361 if [ "$1" = "0" ]; then
362 systemctl --user disable --global murphyd.service
403 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
404 PACKAGES += " murphy-core "
405 PACKAGES += " murphy-dev "
406 PACKAGES += " murphy-ecore "
407 PACKAGES += " murphy-gam-dev "
408 PACKAGES += " murphy-pulse "
409 PACKAGES += " murphy "
410 PACKAGES += " murphy-ivi-resource-manager "
411 PACKAGES += " murphy-ecore-dev "
412 PACKAGES += " murphy-pulse-dev "
413 PACKAGES += " murphy-tests "
414 PACKAGES += " murphy-gam "
415 PACKAGES += " murphy-system-controller "
416 PACKAGES += " murphy-glib "
417 PACKAGES += " murphy-glib-dev "
418 PACKAGES += " murphy-plugins-base "
420 murphy-core_files = ""
421 murphy-core_files += "${prefix}/lib/libmurphy-common.so.*"
422 murphy-core_files += "${prefix}/lib/libmurphy-core.so.*"
423 murphy-core_files += "${prefix}/lib/libmurphy-resolver.so.*"
424 murphy-core_files += "${prefix}/lib/libmurphy-resource.so.*"
425 murphy-core_files += "${prefix}/lib/libmurphy-resource-backend.so.*"
426 murphy-core_files += "${prefix}/lib/libmurphy-lua-utils.so.*"
427 murphy-core_files += "${prefix}/lib/libmurphy-lua-decision.so.*"
428 murphy-core_files += "${prefix}/lib/libmurphy-domain-controller.so.*"
429 murphy-core_files += "${prefix}/lib/murphy/*.so.*"
430 murphy-core_files += "${prefix}/lib/libbreedline*.so.*"
431 murphy-core_files += "${prefix}/lib/libmurphy-libdbus.so.*"
432 murphy-core_files += "${prefix}/lib/libmurphy-dbus-libdbus.so.*"
434 murphy-dev_files = ""
435 murphy-dev_files += "${prefix}/include/murphy-db"
436 murphy-dev_files += "${prefix}/lib/libmurphy-common.so"
437 murphy-dev_files += "${prefix}/lib/libmurphy-core.so"
438 murphy-dev_files += "${prefix}/lib/libmurphy-resolver.so"
439 murphy-dev_files += "${prefix}/lib/libmurphy-resource.so"
440 murphy-dev_files += "${prefix}/lib/libmurphy-resource-backend.so"
441 murphy-dev_files += "${prefix}/lib/libmurphy-lua-utils.so"
442 murphy-dev_files += "${prefix}/lib/libmurphy-lua-decision.so"
443 murphy-dev_files += "${prefix}/lib/libmurphy-domain-controller.so"
444 murphy-dev_files += "${prefix}/lib/murphy/*.so"
445 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-common.pc"
446 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-core.pc"
447 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-resolver.pc"
448 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-lua-utils.pc"
449 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-lua-decision.pc"
450 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-domain-controller.pc"
451 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-db.pc"
452 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-resource.pc"
453 murphy-dev_files += "${prefix}/include/breedline"
454 murphy-dev_files += "${prefix}/lib/libbreedline*.so"
455 murphy-dev_files += "${prefix}/lib/pkgconfig/breedline*.pc"
456 murphy-dev_files += "${prefix}/lib/libmurphy-libdbus.so"
457 murphy-dev_files += "${prefix}/lib/libmurphy-dbus-libdbus.so"
458 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-libdbus.pc"
459 murphy-dev_files += "${prefix}/lib/pkgconfig/murphy-dbus-libdbus.pc"
461 murphy-ecore_files = ""
462 murphy-ecore_files += "${prefix}/lib/libmurphy-ecore.so.*"
463 MANIFESTFILES_${PN}-ecore = "murphy.manifest"
465 murphy-gam-dev_files = ""
466 murphy-gam-dev_files += "${prefix}/bin/decision-test"
467 murphy-gam-dev_files += "${prefix}/bin/pattern-generator"
468 murphy-gam-dev_files += "${prefix}/lib/libmurphy-decision-tree.so"
470 murphy-pulse_files = ""
471 murphy-pulse_files += "${prefix}/lib/libmurphy-pulse.so.*"
472 MANIFESTFILES_${PN}-pulse = "murphy.manifest"
474 murphy-doc_files = ""
475 murphy-doc_files += "${prefix}/share/doc/murphy/AUTHORS"
476 murphy-doc_files += "${prefix}/share/doc/murphy/CODING-STYLE"
477 murphy-doc_files += "${prefix}/share/doc/murphy/ChangeLog"
478 murphy-doc_files += "${prefix}/share/doc/murphy/NEWS"
479 murphy-doc_files += "${prefix}/share/doc/murphy/README"
482 murphy_files += "${prefix}/bin/murphyd"
483 murphy_files += "${sysconfdir}/murphy"
484 murphy_files += "${prefix}/lib/systemd/user/murphyd.service"
485 murphy_files += "/usr/lib/tmpfiles.d/murphyd.conf"
486 murphy_files += "${prefix}/sbin/asm-bridge"
487 murphy_files += "${sysconfdir}/dbus-1/system.d"
488 murphy_files += "${sysconfdir}/dbus-1/system.d/org.Murphy.conf"
489 murphy_files += "${prefix}/share/murphy"
491 CONFFILES_${PN} += "${sysconfdir}/murphy"
492 CONFFILES_${PN} += "${sysconfdir}/dbus-1/system.d/org.Murphy.conf"
493 MANIFESTFILES_${PN} = "murphy.manifest"
495 murphy-ivi-resource-manager_files = ""
496 murphy-ivi-resource-manager_files += "${prefix}/lib/murphy/plugins/plugin-ivi-resource-manager.so"
497 MANIFESTFILES_${PN}-ivi-resource-manager = "murphy.manifest"
499 murphy-ecore-dev_files = ""
500 murphy-ecore-dev_files += "${prefix}/include/murphy/common/ecore-glue.h"
501 murphy-ecore-dev_files += "${prefix}/lib/libmurphy-ecore.so"
502 murphy-ecore-dev_files += "${prefix}/lib/pkgconfig/murphy-ecore.pc"
504 murphy-pulse-dev_files = ""
505 murphy-pulse-dev_files += "${prefix}/include/murphy/common/pulse-glue.h"
506 murphy-pulse-dev_files += "${prefix}/lib/libmurphy-pulse.so"
507 murphy-pulse-dev_files += "${prefix}/lib/pkgconfig/murphy-pulse.pc"
509 murphy-tests_files = ""
510 murphy-tests_files += "${prefix}/bin/resource-client"
511 murphy-tests_files += "${prefix}/bin/resource-api-test"
512 murphy-tests_files += "${prefix}/bin/resource-api-fuzz"
513 murphy-tests_files += "${prefix}/bin/resource-context-create"
514 murphy-tests_files += "${prefix}/bin/test-domain-controller"
515 murphy-tests_files += "${prefix}/bin/murphy-console"
516 MANIFESTFILES_${PN}-tests = "murphy.manifest"
518 murphy-gam_files = ""
519 murphy-gam_files += "${prefix}/lib/libmurphy-decision-tree.so.*"
520 murphy-gam_files += "${prefix}/lib/libmurphy-decision-tree.so.0.0.0"
521 murphy-gam_files += "${prefix}/lib/murphy/plugins/plugin-gam-resource-manager.so"
523 murphy-system-controller_files = ""
524 murphy-system-controller_files += "${prefix}/lib/murphy/plugins/plugin-system-controller.so"
525 MANIFESTFILES_${PN}-system-controller = "murphy.manifest"
527 murphy-glib_files = ""
528 murphy-glib_files += "${prefix}/lib/libmurphy-glib.so.*"
529 MANIFESTFILES_${PN}-glib = "murphy.manifest"
531 murphy-glib-dev_files = ""
532 murphy-glib-dev_files += "${prefix}/include/murphy/common/glib-glue.h"
533 murphy-glib-dev_files += "${prefix}/lib/libmurphy-glib.so"
534 murphy-glib-dev_files += "${prefix}/lib/pkgconfig/murphy-glib.pc"
536 murphy-plugins-base_files = ""
537 murphy-plugins-base_files += "${prefix}/lib/murphy/plugins/plugin-domain-control.so"
538 murphy-plugins-base_files += "${prefix}/lib/murphy/plugins/plugin-resource-asm.so"
539 murphy-plugins-base_files += "${prefix}/lib/murphy/plugins/plugin-resource-native.so"
541 FILES_${PN}-core = "${murphy-core_files}"
542 FILES_${PN}-dev = "${murphy-dev_files}"
543 FILES_${PN}-ecore = "${murphy-ecore_files}"
544 FILES_${PN}-gam-dev = "${murphy-gam-dev_files}"
545 FILES_${PN}-pulse = "${murphy-pulse_files}"
546 FILES_${PN}-doc = "${murphy-doc_files}"
547 FILES_${PN} = "${murphy_files}"
548 FILES_${PN}-ivi-resource-manager = "${murphy-ivi-resource-manager_files}"
549 FILES_${PN}-ecore-dev = "${murphy-ecore-dev_files}"
550 FILES_${PN}-pulse-dev = "${murphy-pulse-dev_files}"
551 FILES_${PN}-tests = "${murphy-tests_files}"
552 FILES_${PN}-gam = "${murphy-gam_files}"
553 FILES_${PN}-system-controller = "${murphy-system-controller_files}"
554 FILES_${PN}-glib = "${murphy-glib_files}"
555 FILES_${PN}-glib-dev = "${murphy-glib-dev_files}"
556 FILES_${PN}-plugins-base = "${murphy-plugins-base_files}"
558 PKG_murphy-core= "murphy-core"
559 PKG_murphy-dev= "murphy-dev"
560 PKG_murphy-ecore= "murphy-ecore"
561 PKG_murphy-gam-dev= "murphy-gam-dev"
562 PKG_murphy-pulse= "murphy-pulse"
563 PKG_murphy-doc= "murphy-doc"
565 PKG_murphy-ivi-resource-manager= "murphy-ivi-resource-manager"
566 PKG_murphy-ecore-dev= "murphy-ecore-dev"
567 PKG_murphy-pulse-dev= "murphy-pulse-dev"
568 PKG_murphy-tests= "murphy-tests"
569 PKG_murphy-gam= "murphy-gam"
570 PKG_murphy-system-controller= "murphy-system-controller"
571 PKG_murphy-glib= "murphy-glib"
572 PKG_murphy-glib-dev= "murphy-glib-dev"
573 PKG_murphy-plugins-base= "murphy-plugins-base"
575 require murphy-extraconf.inc