1 SUBDIRS = murphy-db . \
2 common/tests breedline/tests core/tests \
3 core/lua-decision/tests resolver/tests \
4 daemon/tests plugins/tests
8 AM_CFLAGS = $(WARNING_CFLAGS) -I$(top_builddir) -DLIBDIR=\"@LIBDIR@\"
10 pkgconfigdir = ${libdir}/pkgconfig
17 QUIET_GEN = $(Q:@=@echo ' GEN '$@;)
19 LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS)
20 YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
22 INCLUDES = -I$(top_builddir)/src/murphy-db/include -I$(top_builddir)
25 ###################################
26 # murphy common library
29 lib_LTLIBRARIES += libmurphy-common.la
30 EXTRA_DIST += common/murphy-common.pc
31 pkgconfig_DATA += common/murphy-common.pc
34 libmurphy_commonh_ladir = \
37 libmurphy_commonh_la_HEADERS = \
41 libmurphy_common_ladir = \
42 $(includedir)/murphy/common
44 libmurphy_common_la_HEADERS = \
59 libmurphy_common_la_REGULAR_SOURCES = \
69 common/stream-transport.c \
70 common/internal-transport.c \
71 common/dgram-transport.c
73 libmurphy_common_la_SOURCES = \
74 $(libmurphy_common_la_REGULAR_SOURCES) \
77 libmurphy_common_la_CFLAGS = \
80 libmurphy_common_la_LDFLAGS = \
81 -Wl,-version-script=linker-script.common \
82 -version-info @MURPHY_VERSION_INFO@
84 libmurphy_common_la_LIBADD = \
87 libmurphy_common_la_DEPENDENCIES = linker-script.common
89 libcommonincludedir = $(includedir)/murphy/common
90 libcommoninclude_HEADERS = $(libmurphy_common_la_HEADERS)
92 # linker script generation
93 linker-script.common: $(libmurphy_common_la_HEADERS)
94 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
97 -rm -f linker-script.common
99 generate-linker-scripts: linker-script.common
101 # debug file:line-function mapping generation
102 common-func-info.c: $(libmurphy_common_la_REGULAR_SOURCES)
103 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
106 -rm common-func-info.c
108 ###################################
109 # murphy lua utilities
112 lib_LTLIBRARIES += libmurphy-lua-utils.la
113 EXTRA_DIST += core/lua-utils/murphy-lua-utils.pc
114 pkgconfig_DATA += core/lua-utils/murphy-lua-utils.pc
116 libmurphy_lua_utils_ladir = \
117 $(includedir)/murphy/core/lua-utils
119 libmurphy_lua_utils_la_HEADERS = \
120 core/lua-utils/strarray.h \
121 core/lua-utils/funcbridge.h \
122 core/lua-utils/object.h
124 libmurphy_lua_utils_la_REGULAR_SOURCES = \
125 core/lua-utils/strarray.c \
126 core/lua-utils/funcbridge.c \
127 core/lua-utils/object.c
129 libmurphy_lua_utils_la_SOURCES = \
130 $(libmurphy_lua_utils_la_REGULAR_SOURCES) \
131 lua-utils-func-info.c
133 libmurphy_lua_utils_la_CFLAGS = \
137 libmurphy_lua_utils_la_LDFLAGS = \
138 -Wl,-version-script=linker-script.lua-utils \
139 -version-info @MURPHY_VERSION_INFO@
141 libmurphy_lua_utils_la_LIBADD = \
144 libmurphy_lua_utils_la_DEPENDENCIES = linker-script.lua-utils
146 # debug file:line-function mapping generation
147 lua-utils-func-info.c: $(libmurphy_lua_utils_la_REGULAR_SOURCES)
148 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
151 -rm lua-utils-func-info.c
153 # lua-utils linker script generation
154 linker-script.lua-utils: $(libmurphy_lua_utils_la_HEADERS)
155 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
157 clean-linker-script::
158 -rm -f linker-script.lua-utils
160 generate-linker-scripts: linker-script.lua-utils
162 ###################################
163 # murphy lua decision network
166 lib_LTLIBRARIES += libmurphy-lua-decision.la
167 EXTRA_DIST += core/lua-decision/murphy-lua-decision.pc
168 pkgconfig_DATA += core/lua-decision/murphy-lua-decision.pc
170 libmurphy_lua_decision_ladir = \
171 $(includedir)/murphy/core/lua-decision
173 libmurphy_lua_decision_la_HEADERS = \
174 core/lua-decision/mdb.h \
175 core/lua-decision/element.h
177 libmurphy_lua_decision_la_REGULAR_SOURCES = \
178 core/lua-decision/mdb.c \
179 core/lua-decision/element.c
181 libmurphy_lua_decision_la_SOURCES = \
182 $(libmurphy_lua_decision_la_REGULAR_SOURCES) \
183 lua-decision-func-info.c
185 libmurphy_lua_decision_la_CFLAGS = \
189 libmurphy_lua_decision_la_LDFLAGS = \
190 -Wl,-version-script=linker-script.lua-decision \
191 -version-info @MURPHY_VERSION_INFO@
193 libmurphy_lua_decision_la_LIBADD = \
196 libmurphy_lua_decision_la_DEPENDENCIES = linker-script.lua-decision
198 # debug file:line-function mapping generation
199 lua-decision-func-info.c: $(libmurphy_lua_decision_la_REGULAR_SOURCES)
200 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
203 -rm lua-decision-func-info.c
205 # lua-decision linker script generation
206 linker-script.lua-decision: $(libmurphy_lua_decision_la_HEADERS)
207 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
209 clean-linker-script::
210 -rm -f linker-script.lua-decision
212 generate-linker-scripts: linker-script.lua-decision
214 ###################################
215 # murphy core library
218 lib_LTLIBRARIES += libmurphy-core.la
219 EXTRA_DIST += core/murphy-core.pc
220 pkgconfig_DATA += core/murphy-core.pc
222 LUA_BINDINGS_SOURCES = \
223 core/lua-bindings/lua-murphy.c \
224 core/lua-bindings/lua-plugin.c \
225 core/lua-bindings/lua-log.c \
226 core/lua-bindings/lua-console.c
228 libmurphy_core_lua_bindings_ladir = \
229 $(includedir)/murphy/core/lua-bindings
231 libmurphy_core_lua_bindings_la_HEADERS = \
232 core/lua-bindings/murphy.h
234 libmurphy_coreh_ladir = \
237 libmurphy_coreh_la_HEADERS = \
240 libmurphy_core_ladir = \
241 $(includedir)/murphy/core
243 libmurphy_core_la_HEADERS = \
246 core/console-command.h \
252 libmurphy_core_la_REGULAR_SOURCES = \
259 $(LUA_BINDINGS_SOURCES)
261 libmurphy_core_la_SOURCES = \
262 $(libmurphy_core_la_REGULAR_SOURCES) \
265 libmurphy_core_la_CFLAGS = \
269 libmurphy_core_la_LDFLAGS = \
270 -Wl,-version-script=linker-script.core \
271 -version-info @MURPHY_VERSION_INFO@
273 libmurphy_core_la_LIBADD = \
274 libmurphy-common.la \
275 libmurphy-lua-decision.la \
276 libmurphy-lua-utils.la \
280 libmurphy_core_la_DEPENDENCIES = linker-script.core \
281 $(filter %.la, $(libmurphy_core_la_LIBADD))
283 # core linker script generation
284 linker-script.core: $(libmurphy_core_la_HEADERS) \
285 $(libmurphy_core_lua_bindings_la_HEADERS)
286 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
288 clean-linker-script::
289 -rm -f linker-script.core
291 generate-linker-scripts: linker-script.core
293 # debug file:line-function mapping generation
294 core-func-info.c: $(libmurphy_core_la_REGULAR_SOURCES)
295 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
300 ###################################
301 # murphy dbus library
304 murphy_dbus_headers = \
306 common/dbus-transport.h
309 lib_LTLIBRARIES += libmurphy-dbus.la
310 EXTRA_DIST += common/murphy-dbus.pc
311 pkgconfig_DATA += common/murphy-dbus.pc
313 libmurphy_dbus_ladir = \
314 $(includedir)/murphy/common
316 libmurphy_dbus_la_HEADERS = $(murphy_dbus_headers)
319 libmurphy_dbus_la_REGULAR_SOURCES = \
322 common/dbus-transport.c
324 libmurphy_dbus_la_SOURCES = \
325 $(libmurphy_dbus_la_REGULAR_SOURCES) \
328 libmurphy_dbus_la_CFLAGS = \
332 libmurphy_dbus_la_LDFLAGS = \
333 -Wl,-version-script=linker-script.dbus \
334 -version-info @MURPHY_VERSION_INFO@
336 libmurphy_dbus_la_LIBADD = \
339 libmurphy_dbus_la_DEPENDENCIES = linker-script.dbus
341 libdbusincludedir = $(includedir)/murphy/dbus
342 libdbusinclude_HEADERS = $(libmurphy_dbus_la_HEADERS)
344 # debug file:line-function mapping generation
345 dbus-func-info.c: $(libmurphy_dbus_la_REGULAR_SOURCES)
346 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
352 # linker script generation
353 linker-script.dbus: $(murphy_dbus_headers)
354 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
356 clean-linker-script::
357 -rm -f linker-script.dbus
359 generate-linker-scripts: linker-script.dbus
362 ###################################
363 # murphy pulse glue library
366 murphy_pulse_headers = \
370 lib_LTLIBRARIES += libmurphy-pulse.la
371 EXTRA_DIST += common/murphy-pulse.pc
372 pkgconfig_DATA += common/murphy-pulse.pc
374 libmurphy_pulse_ladir = \
375 $(includedir)/murphy/common
377 libmurphy_pulse_la_HEADERS = $(murphy_pulse_headers)
379 libmurphy_pulse_la_SOURCES = \
382 libmurphy_pulse_la_CFLAGS = \
386 libmurphy_pulse_la_LDFLAGS = \
387 -Wl,-version-script=linker-script.pulse \
388 -version-info @MURPHY_VERSION_INFO@
390 libmurphy_pulse_la_LIBADD =
392 libmurphy_pulse_la_DEPENDENCIES = linker-script.pulse
394 libpulseincludedir = $(includedir)/murphy/pulse
395 libpulseinclude_HEADERS = $(libmurphy_pulse_la_HEADERS)
398 # linker script generation
399 linker-script.pulse: $(murphy_pulse_headers)
400 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
402 clean-linker-script::
403 -rm -f linker-script.pulse
405 generate-linker-scripts: linker-script.pulse
407 ###################################
408 # murphy ecore glue library
411 murphy_ecore_headers = \
415 lib_LTLIBRARIES += libmurphy-ecore.la
416 EXTRA_DIST += common/murphy-ecore.pc
417 pkgconfig_DATA += common/murphy-ecore.pc
419 libmurphy_ecore_ladir = \
420 $(includedir)/murphy/common
422 libmurphy_ecore_la_HEADERS = $(murphy_ecore_headers)
424 libmurphy_ecore_la_SOURCES = \
427 libmurphy_ecore_la_CFLAGS = \
431 libmurphy_ecore_la_LDFLAGS = \
432 -Wl,-version-script=linker-script.ecore \
433 -version-info @MURPHY_VERSION_INFO@
435 libmurphy_ecore_la_LIBADD =
437 libmurphy_ecore_la_DEPENDENCIES = linker-script.ecore
439 libecoreincludedir = $(includedir)/murphy/ecore
440 libecoreinclude_HEADERS = $(libmurphy_ecore_la_HEADERS)
443 # linker script generation
444 linker-script.ecore: $(murphy_ecore_headers)
445 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
447 clean-linker-script::
448 -rm -f linker-script.ecore
450 generate-linker-scripts: linker-script.ecore
452 ###################################
453 # murphy glib glue library
456 murphy_glib_headers = \
460 lib_LTLIBRARIES += libmurphy-glib.la
461 EXTRA_DIST += common/murphy-glib.pc
462 pkgconfig_DATA += common/murphy-glib.pc
464 libmurphy_glib_ladir = \
465 $(includedir)/murphy/common
467 libmurphy_glib_la_HEADERS = $(murphy_glib_headers)
469 libmurphy_glib_la_SOURCES = \
472 libmurphy_glib_la_CFLAGS = \
476 libmurphy_glib_la_LDFLAGS = \
477 -Wl,-version-script=linker-script.glib \
478 -version-info @MURPHY_VERSION_INFO@
480 libmurphy_glib_la_LIBADD =
482 libmurphy_glib_la_DEPENDENCIES = linker-script.glib
484 libglibincludedir = $(includedir)/murphy/glib
485 libglibinclude_HEADERS = $(libmurphy_glib_la_HEADERS)
488 # linker script generation
489 linker-script.glib: $(murphy_glib_headers)
490 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
492 clean-linker-script::
493 -rm -f linker-script.glib
495 generate-linker-scripts: linker-script.glib
497 ###################################
498 # murphy qt glue library
501 murphy_qt_headers = \
505 lib_LTLIBRARIES += libmurphy-qt.la
506 EXTRA_DIST += common/murphy-qt.pc
507 pkgconfig_DATA += common/murphy-qt.pc
509 BUILT_SOURCES += common/qt-glue-priv.moc.h
511 libmurphy_qt_ladir = \
512 $(includedir)/murphy/common
514 libmurphy_qt_la_HEADERS = $(murphy_qt_headers)
516 libmurphy_qt_la_SOURCES = \
519 libmurphy_qt_la_CPPFLAGS = \
523 libmurphy_qt_la_LDFLAGS = \
524 -Wl,-version-script=linker-script.qt \
525 -version-info @MURPHY_VERSION_INFO@
527 libmurphy_qt_la_LIBADD = $(QTCORE_LIBS)
529 libmurphy_qt_la_DEPENDENCIES = linker-script.qt
531 libqtincludedir = $(includedir)/murphy/qt
532 libqtinclude_HEADERS = $(libmurphy_qt_la_HEADERS)
534 # run moc to generate Qt meta objects
535 common/qt-glue-priv.moc.h: common/qt-glue-priv.h
536 $(QUIET_GEN)$(QT_MOC) -DQT_ENABLED=1 $< -o$@
539 # linker script generation
540 linker-script.qt: $(murphy_qt_headers)
541 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
543 clean-linker-script::
544 -rm -f linker-script.qt
546 generate-linker-scripts: linker-script.qt
548 ###################################
549 # murphy resolver library
552 lib_LTLIBRARIES += libmurphy-resolver.la
553 EXTRA_DIST += resolver/murphy-resolver.pc
554 pkgconfig_DATA += resolver/murphy-resolver.pc
556 BUILT_SOURCES += resolver/scanner.c resolver/parser.c
558 libmurphy_resolver_ladir = \
559 $(includedir)/murphy/resolver
561 libmurphy_resolver_la_HEADERS = \
564 SIMPLE_SCRIPT_SOURCES = \
565 resolver/scripting/simple/simple-script.c \
566 resolver/scripting/simple/simple-scanner.c \
567 resolver/scripting/simple/simple-parser.c \
568 resolver/scripting/simple/call.c \
569 resolver/scripting/simple/builtins.c
571 libmurphy_resolver_la_REGULAR_SOURCES = \
572 resolver/resolver.c \
576 resolver/target-sorter.c \
579 $(SIMPLE_SCRIPT_SOURCES)
581 libmurphy_resolver_la_SOURCES = \
582 $(libmurphy_resolver_la_REGULAR_SOURCES) \
585 libmurphy_resolver_la_CFLAGS = \
589 libmurphy_resolver_la_LDFLAGS = \
590 -Wl,-version-script=linker-script.resolver \
591 -version-info @MURPHY_VERSION_INFO@
593 libmurphy_resolver_la_LIBADD = \
595 libmurphy-common.la \
596 murphy-db/mql/libmql.la \
597 murphy-db/mqi/libmqi.la \
598 murphy-db/mdb/libmdb.la
600 libmurphy_resolver_la_DEPENDENCIES = linker-script.resolver \
601 $(filter %.la, $(libmurphy_resolver_la_LIBADD))
603 # resolver lexical analyser and parser generation
604 RESOLVER_PARSER_PREFIX = yy_res_
606 resolver/scanner.c: resolver/scanner.l resolver/parser.c
607 $(LEXCOMPILE) -P $(RESOLVER_PARSER_PREFIX) $<
608 mv lex.$(RESOLVER_PARSER_PREFIX).c $@
610 resolver/parser.h resolver/parser.c: resolver/parser.y
611 $(YACCCOMPILE) -p $(RESOLVER_PARSER_PREFIX) $< -o resolver/parser.c
613 # debug file:line-function mapping generation
614 resolver-func-info.c: $(libmurphy_resolver_la_REGULAR_SOURCES)
615 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
618 -rm resolver-func-info.c
620 # resolver linker script generation
621 linker-script.resolver: $(libmurphy_resolver_la_HEADERS)
622 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
624 clean-linker-script::
625 -rm -f linker-script.resolver
628 generate-linker-scripts: linker-script.resolver
629 # simple interpreter lexical analyser and parser generation
630 SIMPLE_PARSER_PREFIX = yy_smpl_
631 BUILT_SOURCES += resolver/scripting/simple/simple-scanner.c \
632 resolver/scripting/simple/simple-parser.c
634 resolver/scripting/simple/simple-scanner.c: \
635 resolver/scripting/simple/simple-scanner.l \
636 resolver/scripting/simple/simple-parser.c
637 $(LEXCOMPILE) -P $(SIMPLE_PARSER_PREFIX) $<
638 mv lex.$(SIMPLE_PARSER_PREFIX).c $@
640 # simple interpreter parser generation
641 resolver/scripting/simple/simple-parser.h \
642 resolver/scripting/simple/simple-parser.c: \
643 resolver/scripting/simple/simple-parser.y
644 $(YACCCOMPILE) -p $(SIMPLE_PARSER_PREFIX) $< -o \
645 resolver/scripting/simple/simple-parser.c
647 ###################################
648 # murphy backend resource library
652 lib_LTLIBRARIES += $(RESOURCE_LIBRARY)
653 # EXTRA_DIST += resource/murphy-resource.pc
654 # pkgconfig_DATA += resource/murphy-resource.pc
656 libmurphy_resource_backend_ladir = \
657 $(includedir)/murphy/resource
659 #libmurphy_resource_backend_la_HEADERS = \
660 # resource/data-types.h \
661 # resource/common-api.h \
662 # resource/client-api.h \
663 # resource/manager-api.h \
664 # resource/config-api.h \
665 # resource/protocol.h \
666 # resource/config-lua.h
669 libmurphy_resource_backend_la_HEADERS = $(murphy_resource_backend_headers)
671 libmurphy_resource_backend_la_REGULAR_SOURCES = \
672 resource/attribute.c \
673 resource/resource.c \
674 resource/resource-set.c \
675 resource/application-class.c \
676 resource/resource-owner.c \
677 resource/resource-client.c \
679 resource/config-lua.c
681 libmurphy_resource_backend_la_SOURCES = \
682 $(libmurphy_resource_backend_la_REGULAR_SOURCES) \
685 libmurphy_resource_backend_la_CFLAGS = \
690 libmurphy_resource_backend_la_LDFLAGS = \
691 -Wl,-version-script=linker-script.resource \
692 -version-info @MURPHY_VERSION_INFO@
694 libmurphy_resource_backend_la_LIBADD = \
696 libmurphy-common.la \
697 murphy-db/mql/libmql.la \
698 murphy-db/mqi/libmqi.la \
699 murphy-db/mdb/libmdb.la \
702 libmurphy_resource_backend_la_DEPENDENCIES = linker-script.resource \
703 $(filter %.la, $(libmurphy_resource_backend_la_LIBADD))
705 # debug file:line-function mapping generation
706 resource-func-info.c: $(libmurphy_resource_backend_la_REGULAR_SOURCES)
707 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
710 -rm resource-func-info.c
713 # resource linker script generation
714 linker-script.resource: $(murphy_resource_backend_headers)
715 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
717 clean-linker-script::
718 -rm -f linker-script.resource
720 generate-linker-scripts: linker-script.resource
722 ##########################
723 # readline replacement
725 lib_LTLIBRARIES += libbreedline.la
726 EXTRA_DIST += breedline/breedline.pc
727 pkgconfig_DATA += breedline/breedline.pc
729 libbreedline_ladir = \
730 $(includedir)/breedline
732 libbreedline_la_HEADERS = \
733 breedline/breedline.h \
736 libbreedline_la_SOURCES = \
737 breedline/breedline.c
739 libbreedline_la_CFLAGS = \
742 libbreedline_la_LDFLAGS = \
743 -Wl,-version-script=linker-script.breedline \
744 -version-info @MURPHY_VERSION_INFO@
746 libbreedline_la_LIBADD =
748 libbreedline_la_DEPENDENCIES = linker-script.breedline
750 libbreedlineincludedir = $(includedir)/breedline
751 libbreedlineinclude_HEADERS = $(libbreedline_la_HEADERS)
753 # linker script generation
754 linker-script.breedline: $(libbreedline_la_HEADERS)
755 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
758 clean-linker-script::
759 -rm -f linker-script.breedline
761 generate-linker-scripts: linker-script.breedline
763 ##########################
764 # breedline murphy glue library
766 lib_LTLIBRARIES += libbreedline-murphy.la
767 EXTRA_DIST += breedline/breedline-murphy.pc
768 pkgconfig_DATA += breedline/breedline-murphy.pc
770 libbreedline_murphy_ladir = $(includedir)/breedline
772 libbreedline_murphy_la_HEADERS = breedline/breedline-murphy.h
773 libbreedline_murphy_la_SOURCES = breedline/breedline-murphy.c
774 libbreedline_murphy_la_CFLAGS = $(AM_CFLAGS)
776 libbreedline_murphy_la_LDFLAGS = \
777 -Wl,-version-script=linker-script.breedline-murphy \
778 -version-info @MURPHY_VERSION_INFO@
780 libbreedline_murphy_la_LIBADD = libmurphy-common.la
782 libbreedline_murphy_la_DEPENDENCIES = linker-script.breedline-murphy \
783 $(filter %.la,$(libbreedline_murphy_la_LIBADD))
785 libbreedline_murphyincludedir = $(includedir)/breedline
786 libbreedline_murphyinclude_HEADERS = $(libbreedline_murphy_la_HEADERS)
788 # linker script generation
789 linker-script.breedline-murphy: $(libbreedline_murphy_la_HEADERS)
790 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
793 clean-linker-script::
794 -rm -f linker-script.breedline-murphy
796 generate-linker-scripts: linker-script.breedline-murphy
798 ##########################
799 # breedline glib glue library
802 breedline_glib_headers = \
803 breedline/breedline-glib.h
806 lib_LTLIBRARIES += libbreedline-glib.la
807 EXTRA_DIST += breedline/breedline-glib.pc
808 pkgconfig_DATA += breedline/breedline-glib.pc
810 libbreedline_glib_ladir = $(includedir)/breedline
812 libbreedline_glib_la_HEADERS = $(breedline_glib_headers)
813 libbreedline_glib_la_SOURCES = breedline/breedline-glib.c
814 libbreedline_glib_la_CFLAGS = $(AM_CFLAGS) $(GLIB_CFLAGS)
816 libbreedline_glib_la_LDFLAGS = \
817 -Wl,-version-script=linker-script.breedline-glib \
818 -version-info @MURPHY_VERSION_INFO@
820 libbreedline_glib_la_LIBADD = $(GLIB_LIBS)
822 libbreedline_glib_la_DEPENDENCIES = linker-script.breedline-glib
824 libbreedline_glibincludedir = $(includedir)/breedline
825 libbreedline_glibinclude_HEADERS = $(libbreedline_glib_la_HEADERS)
828 # linker script generation
829 linker-script.breedline-glib: $(breedline_glib_headers)
830 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
833 clean-linker-script::
834 -rm -f linker-script.breedline-glib
836 generate-linker-scripts: linker-script.breedline-glib
838 ###################################
839 # murphy resource external library
841 # TODO: put this under conditional compilation
843 lib_LTLIBRARIES += libmurphy-resource.la
844 # EXTRA_DIST += resource/murphy-resource.pc
845 # pkgconfig_DATA += resource/murphy-resource.pc
847 libmurphy_resource_ladir = \
848 $(includedir)/murphy/plugins/resource-native/libmurphy-resource
850 libmurphy_resource_la_HEADERS = \
851 plugins/resource-native/libmurphy-resource/resource-api.h \
852 plugins/resource-native/libmurphy-resource/resource-private.h
854 libmurphy_resource_la_SOURCES = \
855 plugins/resource-native/libmurphy-resource/resource.c
857 libmurphy_resource_la_CFLAGS = \
861 libmurphy_resource_la_LIBADD = \
865 libmurphy_resource_la_DEPENDENCIES = libmurphy-core.la \
869 bin_PROGRAMS += resource-api-test
871 resource_api_test_SOURCES = plugins/resource-native/libmurphy-resource/api_test.c
872 resource_api_test_CFLAGS = $(AM_CFLAGS) $(BUILTIN_CFLAGS)
873 resource_api_test_LDADD = $(BUILTIN_LIBS) libmurphy-common.la libmurphy-resource.la
876 ###################################
881 BUILTIN_CFLAGS = -D__MURPHY_BUILTIN_PLUGIN__ $(AM_CFLAGS)
887 plugindir = $(libdir)/murphy/plugins
891 TEST_PLUGIN_SOURCES = plugins/plugin-test.c
895 if !DISABLED_PLUGIN_TEST
896 if BUILTIN_PLUGIN_TEST
897 BUILTIN_PLUGINS += $(TEST_PLUGIN_SOURCES)
898 BUILTIN_CFLAGS += $(TEST_PLUGIN_CFLAGS)
899 BUILTIN_LIBS += $(TEST_PLUGIN_LIBS)
901 plugin_test_la_SOURCES = $(TEST_PLUGIN_SOURCES)
902 plugin_test_la_CFLAGS = $(TEST_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
903 plugin_test_la_LDFLAGS = -module -avoid-version
904 plugin_test_la_LIBADD = $(TEST_PLUGIN_LIBS)
906 plugin_LTLIBRARIES += plugin-test.la
912 DBUS_PLUGIN_SOURCES = plugins/plugin-dbus.c
913 DBUS_PLUGIN_CFLAGS = $(DBUS_CFLAGS)
914 DBUS_PLUGIN_LIBS = libmurphy-dbus.la
916 if !DISABLED_PLUGIN_DBUS
917 if BUILTIN_PLUGIN_DBUS
918 BUILTIN_PLUGINS += $(DBUS_PLUGIN_SOURCES)
919 BUILTIN_CFLAGS += $(DBUS_PLUGIN_CFLAGS)
920 BUILTIN_LIBS += $(DBUS_PLUGIN_LIBS)
922 plugin_dbus_la_SOURCES = $(DBUS_PLUGIN_SOURCES)
923 plugin_dbus_la_CFLAGS = $(DBUS_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
924 plugin_dbus_la_LDFLAGS = -module -avoid-version
925 plugin_dbus_la_LIBADD = $(DBUS_PLUGIN_LIBS)
927 plugin_LTLIBRARIES += plugin-dbus.la
934 GLIB_PLUGIN_SOURCES = plugins/plugin-glib.c
935 GLIB_PLUGIN_CFLAGS = $(GLIB_CFLAGS)
936 GLIB_PLUGIN_LIBS = $(GLIB_LIBS)
938 if !DISABLED_PLUGIN_GLIB
939 if BUILTIN_PLUGIN_GLIB
940 BUILTIN_PLUGINS += $(GLIB_PLUGIN_SOURCES)
941 BUILTIN_CFLAGS += $(GLIB_PLUGIN_CFLAGS)
942 BUILTIN_LIBS += $(GLIB_PLUGIN_LIBS)
944 plugin_glib_la_SOURCES = $(GLIB_PLUGIN_SOURCES)
945 plugin_glib_la_CFLAGS = $(GLIB_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
946 plugin_glib_la_LDFLAGS = -module -avoid-version
947 plugin_glib_la_LIBADD = $(GLIB_PLUGIN_LIBS)
949 plugin_LTLIBRARIES += plugin-glib.la
954 # resource-dbus plugin
957 RESOURCE_DBUS_PLUGIN_SOURCES = plugins/plugin-resource-dbus.c
958 RESOURCE_DBUS_PLUGIN_CFLAGS = $(DBUS_CFLAGS)
959 RESOURCE_DBUS_PLUGIN_LIBS = libmurphy-resource-backend.la \
964 if !DISABLED_PLUGIN_RESOURCE_DBUS
965 if BUILTIN_PLUGIN_RESOURCE_DBUS
966 BUILTIN_PLUGINS += $(RESOURCE_DBUS_PLUGIN_SOURCES)
967 BUILTIN_CFLAGS += $(RESOURCE_DBUS_PLUGIN_CFLAGS)
968 BUILTIN_LIBS += $(RESOURCE_DBUS_PLUGIN_LIBS)
970 plugin_resource_dbus_la_SOURCES = $(RESOURCE_DBUS_PLUGIN_SOURCES)
971 plugin_resource_dbus_la_CFLAGS = $(RESOURCE_DBUS_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
972 plugin_resource_dbus_la_LDFLAGS = -module -avoid-version
973 plugin_resource_dbus_la_LIBADD = $(RESOURCE_DBUS_PLUGIN_LIBS)
975 plugin_LTLIBRARIES += plugin-resource-dbus.la
982 CONSOLE_PLUGIN_REGULAR_SOURCES = plugins/plugin-console.c
983 CONSOLE_PLUGIN_SOURCES = $(CONSOLE_PLUGIN_REGULAR_SOURCES) \
984 plugin-console-func-info.c
985 CONSOLE_PLUGIN_CFLAGS =
986 CONSOLE_PLUGIN_LIBS =
989 if !DISABLED_PLUGIN_CONSOLE
990 if BUILTIN_PLUGIN_CONSOLE
991 BUILTIN_PLUGINS += $(CONSOLE_PLUGIN_SOURCES)
992 BUILTIN_CFLAGS += $(CONSOLE_PLUGIN_CFLAGS)
993 BUILTIN_LIBS += $(CONSOLE_PLUGIN_LIBS)
995 plugin_console_la_SOURCES = $(CONSOLE_PLUGIN_SOURCES)
996 plugin_console_la_CFLAGS = $(CONSOLE_PLUGIN_CFLAGS) \
997 $(MURPHY_CFLAGS) $(AM_CFLAGS)
998 plugin_console_la_LDFLAGS = -module -avoid-version
999 plugin_console_la_LIBADD = $(CONSOLE_PLUGIN_LIBS)
1001 plugin_LTLIBRARIES += plugin-console.la
1004 # debug file:line-function mapping generation
1005 plugin-console-func-info.c: $(CONSOLE_PLUGIN_REGULAR_SOURCES)
1006 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
1009 -rm plugin-console-func-info.c
1012 # native resource plugin
1014 PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES = \
1015 plugins/resource-native/plugin-resource-native.c
1016 PLUGIN_RESOURCE_NATIVE_SOURCES = \
1017 $(PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES) \
1018 plugin-resource-native-func-info.c
1019 PLUGIN_RESOURCE_NATIVE_CFLAGS = \
1022 PLUGIN_RESOURCE_NATIVE_LIBS = \
1024 libmurphy-common.la \
1025 murphy-db/mqi/libmqi.la \
1026 murphy-db/mdb/libmdb.la \
1027 libmurphy-resource-backend.la
1030 plugin_resource_native_la_SOURCES = $(PLUGIN_RESOURCE_NATIVE_SOURCES)
1031 plugin_resource_native_la_CFLAGS = $(PLUGIN_RESOURCE_NATIVE_CFLAGS) \
1032 $(MURPHY_CFLAGS) $(AM_CFLAGS)
1033 plugin_resource_native_la_LDFLAGS = -module -avoid-version
1034 plugin_resource_native_la_LIBADD = $(PLUGIN_RESOURCE_NATIVE_LIBS)
1036 plugin_LTLIBRARIES += plugin-resource-native.la
1039 bin_PROGRAMS += resource-client
1041 resource_client_SOURCES = plugins/resource-native/resource-client.c
1042 resource_client_CFLAGS = $(AM_CFLAGS)
1043 resource_client_LDADD = libmurphy-common.la
1045 # debug file:line-function mapping generation
1046 plugin-resource-native-func-info.c: $(PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES)
1047 $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
1050 -rm plugin-resource-native-func-info.c
1053 # domain control plugin
1054 DOMAIN_CONTROL_PLUGIN_SOURCES = plugins/domain-control/plugin-domain-control.c \
1055 plugins/domain-control/domain-control.c \
1056 plugins/domain-control/proxy.c \
1057 plugins/domain-control/table.c \
1058 plugins/domain-control/message.c \
1059 plugins/domain-control/notify.c
1060 DOMAIN_CONTROL_PLUGIN_LOADER = linkedin-domain-control-loader.c
1063 DOMAIN_CONTROL_PLUGIN_CFLAGS =
1064 DOMAIN_CONTROL_PLUGIN_LIBS =
1066 if !DISABLED_PLUGIN_DOMAIN_CONTROL
1067 if BUILTIN_PLUGIN_DOMAIN_CONTROL
1068 LINKEDIN_PLUGINS += libmurphy-plugin-domain-control.la
1069 lib_LTLIBRARIES += libmurphy-plugin-domain-control.la
1070 DOMAIN_CONTROL_PLUGIN_CFLAGS += $(BUILTIN_CFLAGS)
1073 libmurphy_plugin_domain_control_ladir = \
1074 $(includedir)/murphy/domain-control
1076 libmurphy_plugin_domain_control_la_SOURCES = \
1077 $(DOMAIN_CONTROL_PLUGIN_SOURCES) \
1078 $(DOMAIN_CONTROL_PLUGIN_LOADER)
1080 libmurphy_plugin_domain_control_la_CFLAGS = \
1081 $(DOMAIN_CONTROL_PLUGIN_CFLAGS) \
1084 libmurphy_plugin_domain_control_la_LDFLAGS = \
1085 -Wl,-version-script=linker-script.domain-control \
1086 -version-info @MURPHY_VERSION_INFO@
1088 libmurphy_plugin_domain_control_la_LIBADD = \
1090 libmurphy-common.la \
1091 murphy-db/mql/libmql.la \
1092 murphy-db/mqi/libmqi.la \
1093 murphy-db/mdb/libmdb.la
1095 libmurphy_plugin_domain_control_la_DEPENDENCIES = \
1096 linker-script.domain-control \
1097 $(filter %.la, $(libmurphy_plugin_domain_control_la_LIBADD))
1099 plugin_domain_control_la_SOURCES = $(DOMAIN_CONTROL_PLUGIN_SOURCES)
1100 plugin_domain_control_la_CFLAGS = $(DOMAIN_CONTROL_PLUGIN_CFLAGS) \
1101 $(MURPHY_CFLAGS) $(AM_CFLAGS)
1102 plugin_domain_control_la_LDFLAGS = -module -avoid-version
1103 plugin_domain_control_la_LIBADD = $(DOMAIN_CONTROL_PLUGIN_LIBS)
1104 plugin_LTLIBRARIES += plugin-domain-control.la
1108 # domain controller client library
1109 lib_LTLIBRARIES += libmurphy-domain-controller.la
1110 EXTRA_DIST += plugins/domain-control/murphy-domain-controller.pc
1111 pkgconfig_DATA += plugins/domain-control/murphy-domain-controller.pc
1113 libmurphy_domain_controller_ladir = \
1114 $(includedir)/murphy/domain-control
1116 libmurphy_domain_controller_la_HEADERS = \
1117 plugins/domain-control/client.h
1119 libmurphy_domain_controller_la_SOURCES = plugins/domain-control/client.c \
1120 plugins/domain-control/table-common.c\
1121 plugins/domain-control/message.c
1122 libmurphy_domain_controller_la_CFLAGS =
1123 libmurphy_domain_controller_la_LIBADD = libmurphy-common.la \
1124 murphy-db/mql/libmql.la \
1125 murphy-db/mqi/libmqi.la \
1126 murphy-db/mdb/libmdb.la
1128 # test domain controller (disabled until we have a readline replacement)
1129 bin_PROGRAMS += test-domain-controller
1131 test_domain_controller_SOURCES = plugins/domain-control/test-client.c
1132 test_domain_controller_CFLAGS = $(AM_CFLAGS)
1133 test_domain_controller_LDADD = libmurphy-domain-controller.la \
1134 libbreedline-murphy.la \
1139 # linkedin domain control plugin linker script generation
1140 linker-script.domain-control: $(DOMAIN_CONTROL_PLUGIN_LOADER:%.c=%.h)
1141 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
1143 clean-linker-script::
1144 -rm -f linker-script.domain-control
1146 generate-linker-scripts: linker-script.domain-control
1150 LUA_PLUGIN_SOURCES = plugins/plugin-lua.c
1151 LUA_PLUGIN_CFLAGS = $(AM_CFLAGS) $(LUA_CFLAGS)
1155 if BUILTIN_PLUGIN_LUA
1156 BUILTIN_PLUGINS += $(LUA_PLUGIN_SOURCES)
1157 BUILTIN_CFLAGS += $(LUA_PLUGIN_CFLAGS)
1158 BUILTIN_LIBS += $(LUA_PLUGIN_LIBS)
1160 plugin_lua_la_SOURCES = plugins/plugin-lua.c
1161 plugin_lua_la_CFLAGS = $(LUA_PLUGIN_CFLAGS) \
1162 $(MURPHY_CFLAGS) $(AM_CFLAGS)
1163 plugin_lua_la_LDFLAGS = -module -avoid-version
1164 plugin_lua_la_LIBADD = $(LUA_PLUGIN_LIBS) $(LUA_LIBS)
1166 plugin_LTLIBRARIES += plugin-lua.la
1170 ###################################
1174 RESOURCE_LIBRARY = libmurphy-resource-backend.la
1179 bin_PROGRAMS += murphyd
1180 EXTRA_DIST += $(config_DATA)
1181 configdir = $(sysconfdir)/murphy
1182 config_DATA = daemon/murphy.conf
1187 $(BUILTIN_PLUGINS) \
1188 load-linkedin-plugins.c
1196 $(LINKEDIN_PLUGINS) \
1197 $(RESOURCE_LIBRARY) \
1198 libmurphy-resolver.la \
1199 libmurphy-lua-decision.la \
1201 libmurphy-lua-utils.la \
1204 murphyd_LDFLAGS = -rdynamic
1208 ###################################
1209 # linkedin (DSO) loader generation
1212 linkedin-%-loader.c:
1213 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1214 -p $(shell echo $@ | \
1215 sed 's/linkedin-//g;s/-loader.c//g') -o $@
1217 linkedin-%-loader.h:
1218 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1219 -p $(shell echo $@ | \
1220 sed 's/linkedin-//g;s/-loader.h//g') -o $@
1222 load-linkedin-plugins.c:
1223 $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1224 -o $@ -d $(shell echo $(LINKEDIN_PLUGINS) | \
1225 sed 's/.*plugin-//g;s/\.[^\.]*$$//g')
1228 -rm -f linkedin-*-loader.[hc] load-linkedin-plugins.c
1230 ###################################
1231 # murphy console client
1235 bin_PROGRAMS += murphy-console
1237 murphy_console_SOURCES = \
1238 console-client/client.c
1240 murphy_console_CFLAGS = \
1243 murphy_console_LDADD = \
1244 libbreedline-murphy.la \
1249 murphy_console_LDADD += libmurphy-dbus.la
1252 murphy_console_LDFLAGS = -rdynamic
1255 generate-linker-scripts:
1256 $(MAKE) -C murphy-db $@
1259 clean-local:: # clean-linker-script clean-func-infos