common: low-level websocket abstraction + a websocket transport
[profile/ivi/murphy.git] / src / Makefile.am
1 SUBDIRS         = murphy-db . \
2                   common/tests breedline/tests core/tests \
3                   core/lua-decision/tests resolver/tests \
4                   daemon/tests  plugins/tests
5
6 BUILT_SOURCES   =
7
8 AM_CFLAGS       = $(WARNING_CFLAGS) -I$(top_builddir) -DLIBDIR=\"@LIBDIR@\"
9 MURPHY_CFLAGS   =
10 pkgconfigdir    = ${libdir}/pkgconfig
11
12 bin_PROGRAMS    =
13 lib_LTLIBRARIES =
14 pkgconfig_DATA  =
15 EXTRA_DIST      =
16
17 QUIET_GEN       = $(Q:@=@echo '  GEN   '$@;)
18
19 LEXCOMPILE      = $(LEX) $(LFLAGS) $(AM_LFLAGS)
20 YACCCOMPILE     = $(YACC) $(YFLAGS) $(AM_YFLAGS)
21
22 INCLUDES        = -I$(top_builddir)/src/murphy-db/include -I$(top_builddir)
23 BUILT_SOURCES   =
24
25 ###################################
26 # murphy common library
27 #
28
29 lib_LTLIBRARIES += libmurphy-common.la
30 EXTRA_DIST      += common/murphy-common.pc
31 pkgconfig_DATA  += common/murphy-common.pc
32
33
34 libmurphy_commonh_ladir      =          \
35                 $(includedir)/murphy
36
37 libmurphy_commonh_la_HEADERS =          \
38                 common.h                \
39                 config.h
40
41 libmurphy_common_ladir      =           \
42                 $(includedir)/murphy/common
43
44 libmurphy_common_la_HEADERS =           \
45                 common/macros.h         \
46                 common/list.h           \
47                 common/log.h            \
48                 common/debug.h          \
49                 common/debug-info.h     \
50                 common/mm.h             \
51                 common/hashtbl.h        \
52                 common/mainloop.h       \
53                 common/utils.h          \
54                 common/file-utils.h     \
55                 common/msg.h            \
56                 common/refcnt.h         \
57                 common/transport.h
58
59 libmurphy_common_la_REGULAR_SOURCES =           \
60                 common/log.c                    \
61                 common/debug.c                  \
62                 common/mm.c                     \
63                 common/hashtbl.c                \
64                 common/mainloop.c               \
65                 common/utils.c                  \
66                 common/file-utils.c             \
67                 common/msg.c                    \
68                 common/transport.c              \
69                 common/stream-transport.c       \
70                 common/internal-transport.c     \
71                 common/dgram-transport.c
72
73 libmurphy_common_la_SOURCES =                           \
74                 $(libmurphy_common_la_REGULAR_SOURCES)  \
75                 common-func-info.c
76
77 libmurphy_common_la_CFLAGS  =           \
78                 $(AM_CFLAGS)
79
80 libmurphy_common_la_LDFLAGS =                                   \
81                 -Wl,-version-script=linker-script.common        \
82                 -version-info @MURPHY_VERSION_INFO@
83
84 libmurphy_common_la_LIBADD  =           \
85                 -lrt
86
87 libmurphy_common_la_DEPENDENCIES = linker-script.common
88
89 libcommonincludedir      = $(includedir)/murphy/common
90 libcommoninclude_HEADERS = $(libmurphy_common_la_HEADERS)
91
92 if WEBSOCKETS_ENABLED
93 libmurphy_common_la_HEADERS +=                  \
94                 common/fragbuf.h                \
95                 common/websocklib.h             \
96                 common/websocket.c
97
98 libmurphy_common_la_REGULAR_SOURCES +=          \
99                 common/fragbuf.c                \
100                 common/websocklib.c             \
101                 common/websocket.c              \
102                 common/wsck-transport.c
103
104 libmurphy_common_la_CFLAGS +=                   \
105                 $(WEBSOCKETS_CFLAGS)
106
107 libmurphy_common_la_LIBADD +=                   \
108                 $(WEBSOCKETS_LIBS)
109 endif
110
111
112 # linker script generation
113 linker-script.common: $(libmurphy_common_la_HEADERS)
114         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
115
116 clean-linker-script::
117         -rm -f linker-script.common
118
119 generate-linker-scripts: linker-script.common
120
121 # debug file:line-function mapping generation
122 common-func-info.c: $(libmurphy_common_la_REGULAR_SOURCES)
123         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
124
125 clean-func-infos::
126         -rm common-func-info.c
127
128 ###################################
129 # murphy lua utilities
130 #
131
132 lib_LTLIBRARIES += libmurphy-lua-utils.la
133 EXTRA_DIST      += core/lua-utils/murphy-lua-utils.pc
134 pkgconfig_DATA  += core/lua-utils/murphy-lua-utils.pc
135
136 libmurphy_lua_utils_ladir =                                     \
137                 $(includedir)/murphy/core/lua-utils
138
139 libmurphy_lua_utils_la_HEADERS =                                \
140                 core/lua-utils/strarray.h                       \
141                 core/lua-utils/funcbridge.h                     \
142                 core/lua-utils/object.h
143
144 libmurphy_lua_utils_la_REGULAR_SOURCES =                        \
145                 core/lua-utils/strarray.c                       \
146                 core/lua-utils/funcbridge.c                     \
147                 core/lua-utils/object.c
148
149 libmurphy_lua_utils_la_SOURCES =                                \
150                 $(libmurphy_lua_utils_la_REGULAR_SOURCES)       \
151                 lua-utils-func-info.c
152
153 libmurphy_lua_utils_la_CFLAGS =                                 \
154                 $(AM_CFLAGS)                                    \
155                 $(LUA_CFLAGS)
156
157 libmurphy_lua_utils_la_LDFLAGS =                                \
158                 -Wl,-version-script=linker-script.lua-utils     \
159                 -version-info @MURPHY_VERSION_INFO@
160
161 libmurphy_lua_utils_la_LIBADD =                                 \
162                 $(LUA_LIBS)
163
164 libmurphy_lua_utils_la_DEPENDENCIES = linker-script.lua-utils
165
166 # debug file:line-function mapping generation
167 lua-utils-func-info.c: $(libmurphy_lua_utils_la_REGULAR_SOURCES)
168         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
169
170 clean-func-infos::
171         -rm lua-utils-func-info.c
172
173 # lua-utils linker script generation
174 linker-script.lua-utils: $(libmurphy_lua_utils_la_HEADERS)
175         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
176
177 clean-linker-script::
178         -rm -f linker-script.lua-utils
179
180 generate-linker-scripts: linker-script.lua-utils
181
182 ###################################
183 # murphy lua decision network
184 #
185
186 lib_LTLIBRARIES += libmurphy-lua-decision.la
187 EXTRA_DIST      += core/lua-decision/murphy-lua-decision.pc
188 pkgconfig_DATA  += core/lua-decision/murphy-lua-decision.pc
189
190 libmurphy_lua_decision_ladir =                                  \
191                 $(includedir)/murphy/core/lua-decision
192
193 libmurphy_lua_decision_la_HEADERS =                             \
194                 core/lua-decision/mdb.h                         \
195                 core/lua-decision/element.h
196
197 libmurphy_lua_decision_la_REGULAR_SOURCES =                     \
198                 core/lua-decision/mdb.c                         \
199                 core/lua-decision/element.c
200
201 libmurphy_lua_decision_la_SOURCES =                             \
202                 $(libmurphy_lua_decision_la_REGULAR_SOURCES)    \
203                 lua-decision-func-info.c
204
205 libmurphy_lua_decision_la_CFLAGS =                              \
206                 $(AM_CFLAGS)                                    \
207                 $(LUA_CFLAGS)
208
209 libmurphy_lua_decision_la_LDFLAGS =                             \
210                 -Wl,-version-script=linker-script.lua-decision  \
211                 -version-info @MURPHY_VERSION_INFO@
212
213 libmurphy_lua_decision_la_LIBADD =                              \
214                 $(LUA_LIBS)
215
216 libmurphy_lua_decision_la_DEPENDENCIES = linker-script.lua-decision
217
218 # debug file:line-function mapping generation
219 lua-decision-func-info.c: $(libmurphy_lua_decision_la_REGULAR_SOURCES)
220         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
221
222 clean-func-infos::
223         -rm lua-decision-func-info.c
224
225 # lua-decision linker script generation
226 linker-script.lua-decision: $(libmurphy_lua_decision_la_HEADERS)
227         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
228
229 clean-linker-script::
230         -rm -f linker-script.lua-decision
231
232 generate-linker-scripts: linker-script.lua-decision
233
234 ###################################
235 # murphy core library
236 #
237
238 lib_LTLIBRARIES += libmurphy-core.la
239 EXTRA_DIST      += core/murphy-core.pc
240 pkgconfig_DATA  += core/murphy-core.pc
241
242 LUA_BINDINGS_SOURCES =                          \
243                 core/lua-bindings/lua-murphy.c  \
244                 core/lua-bindings/lua-lua.c     \
245                 core/lua-bindings/lua-plugin.c  \
246                 core/lua-bindings/lua-log.c     \
247                 core/lua-bindings/lua-console.c
248
249 libmurphy_core_lua_bindings_ladir =                     \
250                 $(includedir)/murphy/core/lua-bindings
251
252 libmurphy_core_lua_bindings_la_HEADERS =                \
253                 core/lua-bindings/murphy.h
254
255 libmurphy_coreh_ladir      =            \
256                 $(includedir)/murphy
257
258 libmurphy_coreh_la_HEADERS =            \
259                 core.h
260
261 libmurphy_core_ladir =                  \
262                 $(includedir)/murphy/core
263
264 libmurphy_core_la_HEADERS =             \
265                 core/context.h          \
266                 core/plugin.h           \
267                 core/console-command.h  \
268                 core/console.h          \
269                 core/scripting.h        \
270                 core/method.h           \
271                 core/event.h
272
273 libmurphy_core_la_REGULAR_SOURCES =     \
274                 core/context.c          \
275                 core/plugin.c           \
276                 core/console.c          \
277                 core/scripting.c        \
278                 core/method.c           \
279                 core/event.c            \
280                 $(LUA_BINDINGS_SOURCES)
281
282 libmurphy_core_la_SOURCES =             \
283                 $(libmurphy_core_la_REGULAR_SOURCES) \
284                 core-func-info.c
285
286 libmurphy_core_la_CFLAGS  =             \
287                 $(AM_CFLAGS)            \
288                 $(LUA_CFLAGS)
289
290 libmurphy_core_la_LDFLAGS =             \
291                 -Wl,-version-script=linker-script.core \
292                 -version-info @MURPHY_VERSION_INFO@
293
294 libmurphy_core_la_LIBADD  =                     \
295                 libmurphy-common.la             \
296                 libmurphy-lua-decision.la       \
297                 libmurphy-lua-utils.la          \
298                 $(LUA_LIBS)                     \
299                 -ldl
300
301 libmurphy_core_la_DEPENDENCIES = linker-script.core        \
302         $(filter %.la, $(libmurphy_core_la_LIBADD))
303
304 # core linker script generation
305 linker-script.core: $(libmurphy_core_la_HEADERS) \
306                     $(libmurphy_core_lua_bindings_la_HEADERS)
307         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
308
309 clean-linker-script::
310         -rm -f linker-script.core
311
312 generate-linker-scripts: linker-script.core
313
314 # debug file:line-function mapping generation
315 core-func-info.c: $(libmurphy_core_la_REGULAR_SOURCES)
316         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
317
318 clean-func-infos::
319         -rm core-func-info.c
320
321 ###################################
322 # murphy dbus library
323 #
324
325 murphy_dbus_headers =                   \
326                 common/dbus.h           \
327                 common/dbus-transport.h
328
329 if DBUS_ENABLED
330 lib_LTLIBRARIES += libmurphy-dbus.la
331 EXTRA_DIST      += common/murphy-dbus.pc
332 pkgconfig_DATA  += common/murphy-dbus.pc
333
334 libmurphy_dbus_ladir      =             \
335                 $(includedir)/murphy/common
336
337 libmurphy_dbus_la_HEADERS = $(murphy_dbus_headers)
338
339
340 libmurphy_dbus_la_REGULAR_SOURCES =     \
341                 common/dbus.c           \
342                 common/dbus-glue.c      \
343                 common/dbus-transport.c
344
345 libmurphy_dbus_la_SOURCES =             \
346                 $(libmurphy_dbus_la_REGULAR_SOURCES) \
347                 dbus-func-info.c
348
349 libmurphy_dbus_la_CFLAGS  =             \
350                 $(AM_CFLAGS)            \
351                 $(DBUS_CFLAGS)
352
353 libmurphy_dbus_la_LDFLAGS =             \
354                 -Wl,-version-script=linker-script.dbus \
355                 -version-info @MURPHY_VERSION_INFO@
356
357 libmurphy_dbus_la_LIBADD  =             \
358                 -lrt $(DBUS_LIBS)
359
360 libmurphy_dbus_la_DEPENDENCIES = linker-script.dbus
361
362 libdbusincludedir      = $(includedir)/murphy/dbus
363 libdbusinclude_HEADERS = $(libmurphy_dbus_la_HEADERS)
364
365 # debug file:line-function mapping generation
366 dbus-func-info.c: $(libmurphy_dbus_la_REGULAR_SOURCES)
367         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
368
369 clean-func-infos::
370         -rm dbus-func-info.c
371 endif
372
373 # linker script generation
374 linker-script.dbus: $(murphy_dbus_headers)
375         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
376
377 clean-linker-script::
378         -rm -f linker-script.dbus
379
380 generate-linker-scripts: linker-script.dbus
381
382
383 ###################################
384 # murphy pulse glue library
385 #
386
387 murphy_pulse_headers =                  \
388                 common/pulse-glue.h
389
390 if PULSE_ENABLED
391 lib_LTLIBRARIES += libmurphy-pulse.la
392 EXTRA_DIST      += common/murphy-pulse.pc
393 pkgconfig_DATA  += common/murphy-pulse.pc
394
395 libmurphy_pulse_ladir      =            \
396                 $(includedir)/murphy/common
397
398 libmurphy_pulse_la_HEADERS = $(murphy_pulse_headers)
399
400 libmurphy_pulse_la_SOURCES =            \
401                 common/pulse-glue.c
402
403 libmurphy_pulse_la_CFLAGS  =            \
404                 $(AM_CFLAGS)            \
405                 $(PULSE_CFLAGS)
406
407 libmurphy_pulse_la_LDFLAGS =            \
408                 -Wl,-version-script=linker-script.pulse \
409                 -version-info @MURPHY_VERSION_INFO@
410
411 libmurphy_pulse_la_LIBADD  =
412
413 libmurphy_pulse_la_DEPENDENCIES = linker-script.pulse
414
415 libpulseincludedir      = $(includedir)/murphy/pulse
416 libpulseinclude_HEADERS = $(libmurphy_pulse_la_HEADERS)
417 endif
418
419 # linker script generation
420 linker-script.pulse: $(murphy_pulse_headers)
421         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
422
423 clean-linker-script::
424         -rm -f linker-script.pulse
425
426 generate-linker-scripts: linker-script.pulse
427
428 ###################################
429 # murphy ecore glue library
430 #
431
432 murphy_ecore_headers =                  \
433                 common/ecore-glue.h
434
435 if ECORE_ENABLED
436 lib_LTLIBRARIES += libmurphy-ecore.la
437 EXTRA_DIST      += common/murphy-ecore.pc
438 pkgconfig_DATA  += common/murphy-ecore.pc
439
440 libmurphy_ecore_ladir      =            \
441                 $(includedir)/murphy/common
442
443 libmurphy_ecore_la_HEADERS = $(murphy_ecore_headers)
444
445 libmurphy_ecore_la_SOURCES =            \
446                 common/ecore-glue.c
447
448 libmurphy_ecore_la_CFLAGS  =            \
449                 $(AM_CFLAGS)            \
450                 $(ECORE_CFLAGS)
451
452 libmurphy_ecore_la_LDFLAGS =            \
453                 -Wl,-version-script=linker-script.ecore \
454                 -version-info @MURPHY_VERSION_INFO@
455
456 libmurphy_ecore_la_LIBADD  =
457
458 libmurphy_ecore_la_DEPENDENCIES = linker-script.ecore
459
460 libecoreincludedir      = $(includedir)/murphy/ecore
461 libecoreinclude_HEADERS = $(libmurphy_ecore_la_HEADERS)
462 endif
463
464 # linker script generation
465 linker-script.ecore: $(murphy_ecore_headers)
466         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
467
468 clean-linker-script::
469         -rm -f linker-script.ecore
470
471 generate-linker-scripts: linker-script.ecore
472
473 ###################################
474 # murphy glib glue library
475 #
476
477 murphy_glib_headers =                   \
478                 common/glib-glue.h
479
480 if GLIB_ENABLED
481 lib_LTLIBRARIES += libmurphy-glib.la
482 EXTRA_DIST      += common/murphy-glib.pc
483 pkgconfig_DATA  += common/murphy-glib.pc
484
485 libmurphy_glib_ladir      =             \
486                 $(includedir)/murphy/common
487
488 libmurphy_glib_la_HEADERS = $(murphy_glib_headers)
489
490 libmurphy_glib_la_SOURCES =             \
491                 common/glib-glue.c
492
493 libmurphy_glib_la_CFLAGS  =             \
494                 $(AM_CFLAGS)            \
495                 $(GLIB_CFLAGS)
496
497 libmurphy_glib_la_LDFLAGS =             \
498                 -Wl,-version-script=linker-script.glib \
499                 -version-info @MURPHY_VERSION_INFO@
500
501 libmurphy_glib_la_LIBADD  =
502
503 libmurphy_glib_la_DEPENDENCIES = linker-script.glib
504
505 libglibincludedir      = $(includedir)/murphy/glib
506 libglibinclude_HEADERS = $(libmurphy_glib_la_HEADERS)
507 endif
508
509 # linker script generation
510 linker-script.glib: $(murphy_glib_headers)
511         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
512
513 clean-linker-script::
514         -rm -f linker-script.glib
515
516 generate-linker-scripts: linker-script.glib
517
518 ###################################
519 # murphy qt glue library
520 #
521
522 murphy_qt_headers       =               \
523                 common/qt-glue.h
524
525 if QT_ENABLED
526 lib_LTLIBRARIES += libmurphy-qt.la
527 EXTRA_DIST      += common/murphy-qt.pc
528 pkgconfig_DATA  += common/murphy-qt.pc
529
530 BUILT_SOURCES   += common/qt-glue-priv.moc.h
531
532 libmurphy_qt_ladir      =               \
533                 $(includedir)/murphy/common
534
535 libmurphy_qt_la_HEADERS = $(murphy_qt_headers)
536
537 libmurphy_qt_la_SOURCES =               \
538                 common/qt-glue.cpp
539
540 libmurphy_qt_la_CPPFLAGS  =             \
541                 $(AM_CFLAGS)            \
542                 $(QTCORE_CFLAGS)
543
544 libmurphy_qt_la_LDFLAGS =               \
545                 -Wl,-version-script=linker-script.qt \
546                 -version-info @MURPHY_VERSION_INFO@
547
548 libmurphy_qt_la_LIBADD  = $(QTCORE_LIBS)
549
550 libmurphy_qt_la_DEPENDENCIES = linker-script.qt
551
552 libqtincludedir      = $(includedir)/murphy/qt
553 libqtinclude_HEADERS = $(libmurphy_qt_la_HEADERS)
554
555 # run moc to generate Qt meta objects
556 common/qt-glue-priv.moc.h: common/qt-glue-priv.h
557         $(QUIET_GEN)$(QT_MOC) -DQT_ENABLED=1 $< -o$@
558 endif
559
560 # linker script generation
561 linker-script.qt: $(murphy_qt_headers)
562         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
563
564 clean-linker-script::
565         -rm -f linker-script.qt
566
567 generate-linker-scripts: linker-script.qt
568
569 ###################################
570 # murphy resolver library
571 #
572
573 lib_LTLIBRARIES += libmurphy-resolver.la
574 EXTRA_DIST      += resolver/murphy-resolver.pc
575 pkgconfig_DATA  += resolver/murphy-resolver.pc
576
577 BUILT_SOURCES   += resolver/scanner.c resolver/parser.c
578
579 libmurphy_resolver_ladir =                      \
580                 $(includedir)/murphy/resolver
581
582 libmurphy_resolver_la_HEADERS =                 \
583                 resolver/resolver.h
584
585 SIMPLE_SCRIPT_SOURCES =                                         \
586                 resolver/scripting/simple/simple-script.c       \
587                 resolver/scripting/simple/simple-scanner.c      \
588                 resolver/scripting/simple/simple-parser.c       \
589                 resolver/scripting/simple/call.c                \
590                 resolver/scripting/simple/builtins.c
591
592 libmurphy_resolver_la_REGULAR_SOURCES =                         \
593                 resolver/resolver.c                             \
594                 resolver/parser.c                               \
595                 resolver/scanner.c                              \
596                 resolver/target.c                               \
597                 resolver/target-sorter.c                        \
598                 resolver/fact.c                                 \
599                 resolver/events.c                               \
600                 $(SIMPLE_SCRIPT_SOURCES)
601
602 libmurphy_resolver_la_SOURCES =                 \
603                 $(libmurphy_resolver_la_REGULAR_SOURCES)        \
604                 resolver-func-info.c
605
606 libmurphy_resolver_la_CFLAGS =                  \
607                 $(AM_CFLAGS)                    \
608                 $(INCLUDES)
609
610 libmurphy_resolver_la_LDFLAGS =                 \
611                 -Wl,-version-script=linker-script.resolver \
612                 -version-info @MURPHY_VERSION_INFO@
613
614 libmurphy_resolver_la_LIBADD =          \
615                 libmurphy-core.la       \
616                 libmurphy-common.la     \
617                 murphy-db/mql/libmql.la \
618                 murphy-db/mqi/libmqi.la \
619                 murphy-db/mdb/libmdb.la
620
621 libmurphy_resolver_la_DEPENDENCIES = linker-script.resolver  \
622         $(filter %.la, $(libmurphy_resolver_la_LIBADD))
623
624 # resolver lexical analyser and parser generation
625 RESOLVER_PARSER_PREFIX = yy_res_
626
627 resolver/scanner.c: resolver/scanner.l resolver/parser.c
628         $(LEXCOMPILE) -P $(RESOLVER_PARSER_PREFIX) $<
629         mv lex.$(RESOLVER_PARSER_PREFIX).c $@
630
631 resolver/parser.h resolver/parser.c: resolver/parser.y
632         $(YACCCOMPILE) -p $(RESOLVER_PARSER_PREFIX) $< -o resolver/parser.c
633
634 # debug file:line-function mapping generation
635 resolver-func-info.c: $(libmurphy_resolver_la_REGULAR_SOURCES)
636         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
637
638 clean-func-infos::
639         -rm resolver-func-info.c
640
641 # resolver linker script generation
642 linker-script.resolver: $(libmurphy_resolver_la_HEADERS)
643         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
644
645 clean-linker-script::
646         -rm -f linker-script.resolver
647
648
649 generate-linker-scripts: linker-script.resolver
650 # simple interpreter lexical analyser and parser generation
651 SIMPLE_PARSER_PREFIX  = yy_smpl_
652 BUILT_SOURCES        += resolver/scripting/simple/simple-scanner.c \
653                         resolver/scripting/simple/simple-parser.c
654
655 resolver/scripting/simple/simple-scanner.c:             \
656     resolver/scripting/simple/simple-scanner.l          \
657     resolver/scripting/simple/simple-parser.c
658         $(LEXCOMPILE) -P $(SIMPLE_PARSER_PREFIX) $<
659         mv lex.$(SIMPLE_PARSER_PREFIX).c $@
660
661 # simple interpreter parser generation
662 resolver/scripting/simple/simple-parser.h       \
663 resolver/scripting/simple/simple-parser.c:      \
664     resolver/scripting/simple/simple-parser.y
665         $(YACCCOMPILE) -p $(SIMPLE_PARSER_PREFIX) $< -o \
666             resolver/scripting/simple/simple-parser.c
667
668 ###################################
669 # murphy backend resource library
670 #
671
672 if BUILD_RESOURCES
673 RESOURCE_LIBRARY = libmurphy-resource-backend.la
674 else
675 RESOURCE_LIBRARY =
676 endif
677
678 if BUILD_RESOURCES
679 lib_LTLIBRARIES += $(RESOURCE_LIBRARY)
680
681 libmurphy_resource_backend_ladir =                     \
682                 $(includedir)/murphy/resource
683
684 libmurphy_resource_backend_la_HEADERS =                        \
685                 resource/data-types.h           \
686                 resource/common-api.h           \
687                 resource/client-api.h           \
688                 resource/manager-api.h          \
689                 resource/config-api.h           \
690                 resource/protocol.h             \
691                 resource/config-lua.h
692
693 libmurphy_resource_backend_la_REGULAR_SOURCES =                \
694                 resource/attribute.c            \
695                 resource/resource.c             \
696                 resource/resource-set.c         \
697                 resource/application-class.c    \
698                 resource/resource-owner.c       \
699                 resource/resource-client.c      \
700                 resource/zone.c                 \
701                 resource/config-lua.c
702
703 libmurphy_resource_backend_la_SOURCES =                        \
704                 $(libmurphy_resource_backend_la_REGULAR_SOURCES)        \
705                 resource-func-info.c
706
707 libmurphy_resource_backend_la_CFLAGS =                 \
708                 $(AM_CFLAGS)                    \
709                 $(LUA_CFLAGS)                   \
710                 $(INCLUDES)
711
712 libmurphy_resource_backend_la_LDFLAGS =                        \
713                 -Wl,-version-script=linker-script.resource_backend \
714                 -version-info @MURPHY_VERSION_INFO@
715
716 libmurphy_resource_backend_la_LIBADD =     \
717                 libmurphy-core.la   \
718                 libmurphy-common.la \
719                 murphy-db/mql/libmql.la \
720                 murphy-db/mqi/libmqi.la \
721                 murphy-db/mdb/libmdb.la \
722                 $(LUA_LIBS)
723
724 libmurphy_resource_backend_la_DEPENDENCIES = linker-script.resource_backend \
725         $(filter %.la, $(libmurphy_resource_backend_la_LIBADD))
726
727 # debug file:line-function mapping generation
728 resource-func-info.c: $(libmurphy_resource_backend_la_REGULAR_SOURCES)
729         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
730
731 clean-func-infos::
732         -rm resource-func-info.c
733 endif
734
735 # resource linker script generation
736 linker-script.resource_backend: $(libmurphy_resource_backend_la_HEADERS)
737         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
738
739 clean-linker-script::
740         -rm -f linker-script.resource_backend
741
742 generate-linker-scripts: linker-script.resource_backend
743
744 ##########################
745 # readline replacement
746 #
747 lib_LTLIBRARIES += libbreedline.la
748 EXTRA_DIST      += breedline/breedline.pc
749 pkgconfig_DATA  += breedline/breedline.pc
750
751 libbreedline_ladir      =               \
752                 $(includedir)/breedline
753
754 libbreedline_la_HEADERS =               \
755                 breedline/breedline.h   \
756                 breedline/macros.h
757
758 libbreedline_la_SOURCES =               \
759                 breedline/breedline.c
760
761 libbreedline_la_CFLAGS  =               \
762                 $(AM_CFLAGS)
763
764 libbreedline_la_LDFLAGS =                                       \
765                 -Wl,-version-script=linker-script.breedline     \
766                 -version-info @MURPHY_VERSION_INFO@
767
768 libbreedline_la_LIBADD =
769
770 libbreedline_la_DEPENDENCIES = linker-script.breedline
771
772 libbreedlineincludedir      = $(includedir)/breedline
773 libbreedlineinclude_HEADERS = $(libbreedline_la_HEADERS)
774
775 # linker script generation
776 linker-script.breedline: $(libbreedline_la_HEADERS)
777         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
778             -p '^brl_' -o $@ $^
779
780 clean-linker-script::
781         -rm -f linker-script.breedline
782
783 generate-linker-scripts: linker-script.breedline
784
785 ##########################
786 # breedline murphy glue library
787 #
788 lib_LTLIBRARIES += libbreedline-murphy.la
789 EXTRA_DIST      += breedline/breedline-murphy.pc
790 pkgconfig_DATA  += breedline/breedline-murphy.pc
791
792 libbreedline_murphy_ladir      = $(includedir)/breedline
793
794 libbreedline_murphy_la_HEADERS = breedline/breedline-murphy.h
795 libbreedline_murphy_la_SOURCES = breedline/breedline-murphy.c
796 libbreedline_murphy_la_CFLAGS  = $(AM_CFLAGS)
797
798 libbreedline_murphy_la_LDFLAGS =        \
799                 -Wl,-version-script=linker-script.breedline-murphy      \
800                 -version-info @MURPHY_VERSION_INFO@
801
802 libbreedline_murphy_la_LIBADD = libmurphy-common.la
803
804 libbreedline_murphy_la_DEPENDENCIES = linker-script.breedline-murphy \
805         $(filter %.la,$(libbreedline_murphy_la_LIBADD))
806
807 libbreedline_murphyincludedir      = $(includedir)/breedline
808 libbreedline_murphyinclude_HEADERS = $(libbreedline_murphy_la_HEADERS)
809
810 # linker script generation
811 linker-script.breedline-murphy: $(libbreedline_murphy_la_HEADERS)
812         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
813             -p '^brl_' -o $@ $^
814
815 clean-linker-script::
816         -rm -f linker-script.breedline-murphy
817
818 generate-linker-scripts: linker-script.breedline-murphy
819
820 ##########################
821 # breedline glib glue library
822 #
823
824 breedline_glib_headers =        \
825                 breedline/breedline-glib.h
826
827 if GLIB_ENABLED
828 lib_LTLIBRARIES += libbreedline-glib.la
829 EXTRA_DIST      += breedline/breedline-glib.pc
830 pkgconfig_DATA  += breedline/breedline-glib.pc
831
832 libbreedline_glib_ladir      = $(includedir)/breedline
833
834 libbreedline_glib_la_HEADERS = $(breedline_glib_headers)
835 libbreedline_glib_la_SOURCES = breedline/breedline-glib.c
836 libbreedline_glib_la_CFLAGS  = $(AM_CFLAGS) $(GLIB_CFLAGS)
837
838 libbreedline_glib_la_LDFLAGS = \
839                 -Wl,-version-script=linker-script.breedline-glib        \
840                 -version-info @MURPHY_VERSION_INFO@
841
842 libbreedline_glib_la_LIBADD = $(GLIB_LIBS)
843
844 libbreedline_glib_la_DEPENDENCIES = linker-script.breedline-glib
845
846 libbreedline_glibincludedir      = $(includedir)/breedline
847 libbreedline_glibinclude_HEADERS = $(libbreedline_glib_la_HEADERS)
848 endif
849
850 # linker script generation
851 linker-script.breedline-glib: $(breedline_glib_headers)
852         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q \
853             -p '^brl_' -o $@ $^
854
855 clean-linker-script::
856         -rm -f linker-script.breedline-glib
857
858 generate-linker-scripts: linker-script.breedline-glib
859
860 ###################################
861 # murphy resource external library
862
863 # TODO: put this under conditional compilation
864
865 lib_LTLIBRARIES += libmurphy-resource.la
866 # EXTRA_DIST      += resource/murphy-resource.pc
867 # pkgconfig_DATA  += resource/murphy-resource.pc
868
869 libmurphy_resource_ladir =          \
870         $(includedir)/murphy/plugins/resource-native/libmurphy-resource
871
872 libmurphy_resource_la_HEADERS =         \
873         plugins/resource-native/libmurphy-resource/resource-api.h     \
874         plugins/resource-native/libmurphy-resource/resource-private.h
875
876 libmurphy_resource_la_SOURCES =         \
877         plugins/resource-native/libmurphy-resource/resource.c \
878         plugins/resource-native/libmurphy-resource/attribute.c \
879         plugins/resource-native/libmurphy-resource/rset.c \
880         plugins/resource-native/libmurphy-resource/string_array.c \
881         plugins/resource-native/libmurphy-resource/message.c
882
883 libmurphy_resource_la_CFLAGS =          \
884         $(AM_CFLAGS)            \
885         $(INCLUDES)
886
887 libmurphy_resource_la_LDFLAGS = \
888                 -Wl,-version-script=linker-script.resource      \
889                 -version-info @MURPHY_VERSION_INFO@
890
891 libmurphy_resource_la_LIBADD =      \
892         libmurphy-core.la   \
893         libmurphy-common.la
894
895 libmurphy_resource_la_DEPENDENCIES = libmurphy-core.la      \
896                      libmurphy-common.la \
897                      linker-script.resource
898
899 # linker script generation
900 linker-script.resource: $(libmurphy_resource_la_HEADERS)
901         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
902
903 clean-linker-script::
904         -rm -f linker-script.resource
905
906 generate-linker-scripts: linker-script.resource
907
908
909 # resource-api-test
910 bin_PROGRAMS += resource-api-test
911
912 resource_api_test_SOURCES = plugins/resource-native/libmurphy-resource/api_test.c
913 resource_api_test_CFLAGS  = $(AM_CFLAGS) $(BUILTIN_CFLAGS)
914 resource_api_test_LDADD   = $(BUILTIN_LIBS) libmurphy-common.la libmurphy-resource.la \
915                                                 murphy-db/mql/libmql.la \
916                                                 murphy-db/mqi/libmqi.la \
917                                                 murphy-db/mdb/libmdb.la \
918                                                 libmurphy-resolver.la
919
920 ###################################
921 # murphy plugins
922 #
923
924 BUILTIN_PLUGINS    =
925 BUILTIN_CFLAGS     = -D__MURPHY_BUILTIN_PLUGIN__ $(AM_CFLAGS)
926 BUILTIN_LIBS       =
927
928 LINKEDIN_PLUGINS   =
929
930 plugin_LTLIBRARIES =
931 plugindir          = $(libdir)/murphy/plugins
932
933
934 # test plugin
935 TEST_PLUGIN_SOURCES = plugins/plugin-test.c
936 TEST_PLUGIN_CFLAGS  =
937 TEST_PLUGIN_LIBS    =
938
939 if !DISABLED_PLUGIN_TEST
940 if BUILTIN_PLUGIN_TEST
941 BUILTIN_PLUGINS += $(TEST_PLUGIN_SOURCES)
942 BUILTIN_CFLAGS  += $(TEST_PLUGIN_CFLAGS)
943 BUILTIN_LIBS    += $(TEST_PLUGIN_LIBS)
944 else
945 plugin_test_la_SOURCES = $(TEST_PLUGIN_SOURCES)
946 plugin_test_la_CFLAGS  = $(TEST_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
947 plugin_test_la_LDFLAGS = -module -avoid-version
948 plugin_test_la_LIBADD  = $(TEST_PLUGIN_LIBS)
949
950 plugin_LTLIBRARIES    += plugin-test.la
951 endif
952 endif
953
954 # dbus plugin
955 if DBUS_ENABLED
956 DBUS_PLUGIN_SOURCES = plugins/plugin-dbus.c
957 DBUS_PLUGIN_CFLAGS  = $(DBUS_CFLAGS)
958 DBUS_PLUGIN_LIBS    = libmurphy-dbus.la
959
960 if !DISABLED_PLUGIN_DBUS
961 if BUILTIN_PLUGIN_DBUS
962 BUILTIN_PLUGINS += $(DBUS_PLUGIN_SOURCES)
963 BUILTIN_CFLAGS  += $(DBUS_PLUGIN_CFLAGS)
964 BUILTIN_LIBS    += $(DBUS_PLUGIN_LIBS)
965 else
966 plugin_dbus_la_SOURCES = $(DBUS_PLUGIN_SOURCES)
967 plugin_dbus_la_CFLAGS  = $(DBUS_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
968 plugin_dbus_la_LDFLAGS = -module -avoid-version
969 plugin_dbus_la_LIBADD  = $(DBUS_PLUGIN_LIBS)
970
971 plugin_LTLIBRARIES    += plugin-dbus.la
972 endif
973 endif
974 endif
975
976 if GLIB_ENABLED
977 # glib plugin
978 GLIB_PLUGIN_SOURCES = plugins/plugin-glib.c
979 GLIB_PLUGIN_CFLAGS  = $(GLIB_CFLAGS)
980 GLIB_PLUGIN_LIBS    = $(GLIB_LIBS)
981
982 if !DISABLED_PLUGIN_GLIB
983 if BUILTIN_PLUGIN_GLIB
984 BUILTIN_PLUGINS += $(GLIB_PLUGIN_SOURCES)
985 BUILTIN_CFLAGS  += $(GLIB_PLUGIN_CFLAGS)
986 BUILTIN_LIBS    += $(GLIB_PLUGIN_LIBS)
987 else
988 plugin_glib_la_SOURCES = $(GLIB_PLUGIN_SOURCES)
989 plugin_glib_la_CFLAGS  = $(GLIB_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
990 plugin_glib_la_LDFLAGS = -module -avoid-version
991 plugin_glib_la_LIBADD  = $(GLIB_PLUGIN_LIBS)
992
993 plugin_LTLIBRARIES    += plugin-glib.la
994 endif
995 endif
996 endif
997
998 # resource-dbus plugin
999 if BUILD_RESOURCES
1000 if DBUS_ENABLED
1001 RESOURCE_DBUS_PLUGIN_SOURCES = plugins/plugin-resource-dbus.c
1002 RESOURCE_DBUS_PLUGIN_CFLAGS  = $(DBUS_CFLAGS)
1003 RESOURCE_DBUS_PLUGIN_LIBS    = libmurphy-dbus.la                   \
1004                                         libmurphy-core.la                                       \
1005                                         libmurphy-common.la                 \
1006                                         $(RESOURCE_LIBRARY)
1007
1008 if !DISABLED_PLUGIN_RESOURCE_DBUS
1009 if BUILTIN_PLUGIN_RESOURCE_DBUS
1010 BUILTIN_PLUGINS += $(RESOURCE_DBUS_PLUGIN_SOURCES)
1011 BUILTIN_CFLAGS  += $(RESOURCE_DBUS_PLUGIN_CFLAGS)
1012 BUILTIN_LIBS    += $(RESOURCE_DBUS_PLUGIN_LIBS)
1013 else
1014 plugin_resource_dbus_la_SOURCES = $(RESOURCE_DBUS_PLUGIN_SOURCES)
1015 plugin_resource_dbus_la_CFLAGS  = $(RESOURCE_DBUS_PLUGIN_CFLAGS) $(MURPHY_CFLAGS) $(AM_CFLAGS)
1016 plugin_resource_dbus_la_LDFLAGS = -module -avoid-version
1017 plugin_resource_dbus_la_LIBADD  = $(RESOURCE_DBUS_PLUGIN_LIBS)
1018 plugin_LTLIBRARIES    += plugin-resource-dbus.la
1019 endif
1020 endif
1021 endif
1022 endif
1023
1024 # console plugin
1025 CONSOLE_PLUGIN_REGULAR_SOURCES = plugins/plugin-console.c
1026 CONSOLE_PLUGIN_SOURCES         = $(CONSOLE_PLUGIN_REGULAR_SOURCES) \
1027                                  plugin-console-func-info.c
1028 CONSOLE_PLUGIN_CFLAGS          =
1029 CONSOLE_PLUGIN_LIBS            =
1030
1031 if CONSOLE_ENABLED
1032 if !DISABLED_PLUGIN_CONSOLE
1033 if BUILTIN_PLUGIN_CONSOLE
1034 BUILTIN_PLUGINS += $(CONSOLE_PLUGIN_SOURCES)
1035 BUILTIN_CFLAGS  += $(CONSOLE_PLUGIN_CFLAGS)
1036 BUILTIN_LIBS    += $(CONSOLE_PLUGIN_LIBS)
1037 else
1038 plugin_console_la_SOURCES = $(CONSOLE_PLUGIN_SOURCES)
1039 plugin_console_la_CFLAGS  = $(CONSOLE_PLUGIN_CFLAGS) \
1040                             $(MURPHY_CFLAGS) $(AM_CFLAGS)
1041 plugin_console_la_LDFLAGS = -module -avoid-version
1042 plugin_console_la_LIBADD  = $(CONSOLE_PLUGIN_LIBS)
1043
1044 plugin_LTLIBRARIES    += plugin-console.la
1045 endif
1046 endif
1047 # debug file:line-function mapping generation
1048 plugin-console-func-info.c: $(CONSOLE_PLUGIN_REGULAR_SOURCES)
1049         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
1050
1051 clean-func-infos::
1052         -rm plugin-console-func-info.c
1053 endif
1054
1055 # native resource plugin
1056 if BUILD_RESOURCES
1057 PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES =                                \
1058                 plugins/resource-native/plugin-resource-native.c
1059 PLUGIN_RESOURCE_NATIVE_SOURCES =                                        \
1060                 $(PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES)               \
1061                 plugin-resource-native-func-info.c
1062 PLUGIN_RESOURCE_NATIVE_CFLAGS =                                         \
1063                 $(LUA_CFLAGS)                                           \
1064                 $(INCLUDES)
1065 PLUGIN_RESOURCE_NATIVE_LIBS =                                           \
1066                 libmurphy-core.la                                       \
1067                 libmurphy-common.la                                     \
1068                 murphy-db/mqi/libmqi.la                                 \
1069                 murphy-db/mdb/libmdb.la                                 \
1070                 $(RESOURCE_LIBRARY)                   \
1071                 $(LUA_LIBS)
1072
1073 plugin_resource_native_la_SOURCES = $(PLUGIN_RESOURCE_NATIVE_SOURCES)
1074 plugin_resource_native_la_CFLAGS  = $(PLUGIN_RESOURCE_NATIVE_CFLAGS)    \
1075                                     $(MURPHY_CFLAGS) $(AM_CFLAGS)
1076 plugin_resource_native_la_LDFLAGS = -module -avoid-version
1077 plugin_resource_native_la_LIBADD  = $(PLUGIN_RESOURCE_NATIVE_LIBS)
1078
1079 plugin_LTLIBRARIES += plugin-resource-native.la
1080
1081 # resource-client
1082 bin_PROGRAMS += resource-client
1083
1084 resource_client_SOURCES = plugins/resource-native/resource-client.c
1085 resource_client_CFLAGS  = $(AM_CFLAGS)
1086 resource_client_LDADD   =  libmurphy-common.la
1087
1088 # debug file:line-function mapping generation
1089 plugin-resource-native-func-info.c: $(PLUGIN_RESOURCE_NATIVE_REGULAR_SOURCES)
1090         $(QUIET_GEN)$(top_builddir)/build-aux/gen-debug-table -o $@ $^
1091
1092 clean-func-infos::
1093         -rm plugin-resource-native-func-info.c
1094 endif
1095
1096 # domain control plugin
1097 DOMAIN_CONTROL_PLUGIN_SOURCES = plugins/domain-control/plugin-domain-control.c \
1098                                 plugins/domain-control/domain-control.c        \
1099                                 plugins/domain-control/proxy.c                 \
1100                                 plugins/domain-control/table.c                 \
1101                                 plugins/domain-control/message.c               \
1102                                 plugins/domain-control/notify.c
1103 DOMAIN_CONTROL_PLUGIN_LOADER  = linkedin-domain-control-loader.c
1104
1105
1106 DOMAIN_CONTROL_PLUGIN_CFLAGS  =
1107 DOMAIN_CONTROL_PLUGIN_LIBS    =
1108
1109 if !DISABLED_PLUGIN_DOMAIN_CONTROL
1110 if BUILTIN_PLUGIN_DOMAIN_CONTROL
1111 LINKEDIN_PLUGINS             += libmurphy-plugin-domain-control.la
1112 lib_LTLIBRARIES              += libmurphy-plugin-domain-control.la
1113 DOMAIN_CONTROL_PLUGIN_CFLAGS += $(BUILTIN_CFLAGS)
1114
1115
1116 libmurphy_plugin_domain_control_ladir =                          \
1117                 $(includedir)/murphy/domain-control
1118
1119 libmurphy_plugin_domain_control_la_SOURCES =                     \
1120                 $(DOMAIN_CONTROL_PLUGIN_SOURCES)                 \
1121                 $(DOMAIN_CONTROL_PLUGIN_LOADER)
1122
1123 libmurphy_plugin_domain_control_la_CFLAGS =                      \
1124                 $(DOMAIN_CONTROL_PLUGIN_CFLAGS)                  \
1125                 $(AM_CFLAGS)
1126
1127 libmurphy_plugin_domain_control_la_LDFLAGS =                     \
1128                 -Wl,-version-script=linker-script.domain-control \
1129                 -version-info @MURPHY_VERSION_INFO@
1130
1131 libmurphy_plugin_domain_control_la_LIBADD =             \
1132                 libmurphy-core.la                       \
1133                 libmurphy-common.la                     \
1134                 murphy-db/mql/libmql.la                 \
1135                 murphy-db/mqi/libmqi.la                 \
1136                 murphy-db/mdb/libmdb.la
1137
1138 libmurphy_plugin_domain_control_la_DEPENDENCIES =       \
1139                 linker-script.domain-control            \
1140         $(filter %.la, $(libmurphy_plugin_domain_control_la_LIBADD))
1141 else
1142 plugin_domain_control_la_SOURCES = $(DOMAIN_CONTROL_PLUGIN_SOURCES)
1143 plugin_domain_control_la_CFLAGS  = $(DOMAIN_CONTROL_PLUGIN_CFLAGS) \
1144                                    $(MURPHY_CFLAGS) $(AM_CFLAGS)
1145 plugin_domain_control_la_LDFLAGS = -module -avoid-version
1146 plugin_domain_control_la_LIBADD  = $(DOMAIN_CONTROL_PLUGIN_LIBS)
1147 plugin_LTLIBRARIES              += plugin-domain-control.la
1148 endif
1149
1150
1151 # domain controller client library
1152 lib_LTLIBRARIES += libmurphy-domain-controller.la
1153 EXTRA_DIST      += plugins/domain-control/murphy-domain-controller.pc
1154 pkgconfig_DATA  += plugins/domain-control/murphy-domain-controller.pc
1155
1156 libmurphy_domain_controller_ladir =                     \
1157                 $(includedir)/murphy/domain-control
1158
1159 libmurphy_domain_controller_la_HEADERS =                \
1160                 plugins/domain-control/client.h
1161
1162 libmurphy_domain_controller_la_SOURCES  = plugins/domain-control/client.c      \
1163                                           plugins/domain-control/table-common.c\
1164                                           plugins/domain-control/message.c
1165 libmurphy_domain_controller_la_CFLAGS   =
1166 libmurphy_domain_controller_la_LIBADD   = libmurphy-common.la     \
1167                                           murphy-db/mql/libmql.la \
1168                                           murphy-db/mqi/libmqi.la \
1169                                           murphy-db/mdb/libmdb.la
1170
1171 # test domain controller (disabled until we have a readline replacement)
1172 bin_PROGRAMS += test-domain-controller
1173
1174 test_domain_controller_SOURCES = plugins/domain-control/test-client.c
1175 test_domain_controller_CFLAGS  = $(AM_CFLAGS)
1176 test_domain_controller_LDADD   = libmurphy-domain-controller.la \
1177                                  libbreedline-murphy.la         \
1178                                  libbreedline.la                \
1179                                  libmurphy-common.la
1180 endif
1181
1182 # linkedin domain control plugin linker script generation
1183 linker-script.domain-control: $(DOMAIN_CONTROL_PLUGIN_LOADER:%.c=%.h)
1184         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linker-script -q -o $@ $^
1185
1186 clean-linker-script::
1187         -rm -f linker-script.domain-control
1188
1189 generate-linker-scripts: linker-script.domain-control
1190
1191
1192 # Lua plugin
1193 LUA_PLUGIN_SOURCES = plugins/plugin-lua.c
1194 LUA_PLUGIN_CFLAGS  = $(AM_CFLAGS) $(LUA_CFLAGS)
1195 LUA_PLUGIN_LIBS    =
1196
1197
1198 if BUILTIN_PLUGIN_LUA
1199 BUILTIN_PLUGINS += $(LUA_PLUGIN_SOURCES)
1200 BUILTIN_CFLAGS  += $(LUA_PLUGIN_CFLAGS)
1201 BUILTIN_LIBS    += $(LUA_PLUGIN_LIBS)
1202 else
1203 plugin_lua_la_SOURCES = plugins/plugin-lua.c
1204 plugin_lua_la_CFLAGS  = $(LUA_PLUGIN_CFLAGS) \
1205                         $(MURPHY_CFLAGS) $(AM_CFLAGS)
1206 plugin_lua_la_LDFLAGS = -module -avoid-version
1207 plugin_lua_la_LIBADD  = $(LUA_PLUGIN_LIBS) $(LUA_LIBS)
1208
1209 plugin_LTLIBRARIES    += plugin-lua.la
1210 endif
1211
1212
1213 ###################################
1214 # murphy daemon
1215 #
1216
1217 bin_PROGRAMS += murphyd
1218 EXTRA_DIST   += $(config_DATA)
1219 configdir     = $(sysconfdir)/murphy
1220 config_DATA   = daemon/murphy.conf
1221
1222 murphyd_SOURCES =                       \
1223                 daemon/daemon.c         \
1224                 daemon/config.c         \
1225                 $(BUILTIN_PLUGINS)      \
1226                 load-linkedin-plugins.c
1227
1228 murphyd_CFLAGS  =                       \
1229                 $(AM_CFLAGS)            \
1230                 $(BUILTIN_CFLAGS)
1231
1232 murphyd_LDADD  =                                \
1233                 $(BUILTIN_LIBS)                 \
1234                 $(LINKEDIN_PLUGINS)             \
1235                 $(RESOURCE_LIBRARY)             \
1236                 libmurphy-resolver.la           \
1237                 libmurphy-lua-decision.la       \
1238                 libmurphy-core.la               \
1239                 libmurphy-lua-utils.la          \
1240                 libmurphy-common.la
1241
1242 murphyd_LDFLAGS = -rdynamic
1243
1244
1245
1246 ###################################
1247 # linkedin (DSO) loader generation
1248 #
1249
1250 linkedin-%-loader.c:
1251         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1252             -p $(shell echo $@ | \
1253                 sed 's/linkedin-//g;s/-loader.c//g') -o $@
1254
1255 linkedin-%-loader.h:
1256         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1257             -p $(shell echo $@ | \
1258                 sed 's/linkedin-//g;s/-loader.h//g') -o $@
1259
1260 load-linkedin-plugins.c:
1261         $(QUIET_GEN)$(top_builddir)/build-aux/gen-linkedin-loader \
1262             -o $@ -d $(shell echo $(LINKEDIN_PLUGINS) | \
1263                            sed 's/.*plugin-//g;s/\.[^\.]*$$//g')
1264
1265 clean-local::
1266         -rm -f linkedin-*-loader.[hc] load-linkedin-plugins.c
1267
1268 ###################################
1269 # murphy console client
1270 #
1271
1272 if CONSOLE_ENABLED
1273 bin_PROGRAMS += murphy-console
1274
1275 murphy_console_SOURCES =                \
1276                 console-client/client.c
1277
1278 murphy_console_CFLAGS  =                \
1279                 $(AM_CFLAGS)
1280
1281 murphy_console_LDADD  =                 \
1282                 libbreedline-murphy.la  \
1283                 libbreedline.la         \
1284                 libmurphy-common.la
1285
1286 if DBUS_ENABLED
1287 murphy_console_LDADD += libmurphy-dbus.la
1288 endif
1289
1290 murphy_console_LDFLAGS = -rdynamic
1291 endif
1292
1293 generate-linker-scripts:
1294         $(MAKE) -C murphy-db $@
1295
1296 # cleanup
1297 clean-local:: # clean-linker-script clean-func-infos
1298         -rm -f *~