add inotify support (FDO Bz#13268)
[platform/upstream/dbus.git] / bus / Makefile.am
1
2 configdir=$(sysconfdir)/dbus-1
3
4 INCLUDES=-I$(top_srcdir) $(DBUS_BUS_CFLAGS) @PIE_CFLAGS@                \
5         -DDBUS_SYSTEM_CONFIG_FILE=\""$(configdir)/system.conf"\"        \
6         -DDAEMON_NAME=\"dbus-daemon\"  -DDBUS_COMPILATION
7
8 EFENCE=
9
10 CONFIG_IN_FILES=                                \
11         session.conf.in                         \
12         system.conf.in
13
14 config_DATA=                                    \
15         session.conf                            \
16         system.conf
17
18 if DBUS_USE_LIBXML
19 XML_SOURCES=config-loader-libxml.c
20 endif
21 if DBUS_USE_EXPAT
22 XML_SOURCES=config-loader-expat.c
23 endif
24
25 if DBUS_BUS_ENABLE_KQUEUE
26 DIR_WATCH_SOURCE=dir-watch-kqueue.c
27 else
28 if DBUS_BUS_ENABLE_INOTIFY
29 DIR_WATCH_SOURCE=dir-watch-inotify.c
30 else
31 if DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX
32 DIR_WATCH_SOURCE=dir-watch-dnotify.c
33 else
34 DIR_WATCH_SOURCE=dir-watch-default.c
35 endif
36 endif
37 endif
38
39 BUS_SOURCES=                                    \
40         activation.c                            \
41         activation.h                            \
42         activation-exit-codes.h                 \
43         bus.c                                   \
44         bus.h                                   \
45         config-parser.c                         \
46         config-parser.h                         \
47         config-parser-common.c                  \
48         config-parser-common.h                  \
49         connection.c                            \
50         connection.h                            \
51         desktop-file.c                          \
52         desktop-file.h                          \
53         $(DIR_WATCH_SOURCE)                     \
54         dir-watch.h                             \
55         dispatch.c                              \
56         dispatch.h                              \
57         driver.c                                \
58         driver.h                                \
59         expirelist.c                            \
60         expirelist.h                            \
61         policy.c                                \
62         policy.h                                \
63         selinux.h                               \
64         selinux.c                               \
65         services.c                              \
66         services.h                              \
67         signals.c                               \
68         signals.h                               \
69         test.c                                  \
70         test.h                                  \
71         utils.c                                 \
72         utils.h                                 \
73         $(XML_SOURCES)
74
75 dbus_daemon_SOURCES=                            \
76         $(BUS_SOURCES)                          \
77         main.c                                  
78
79 dbus_daemon_LDADD=                                      \
80         $(EFENCE)                                       \
81         $(DBUS_BUS_LIBS)                                \
82         $(top_builddir)/dbus/libdbus-convenience.la
83
84 dbus_daemon_LDFLAGS=@R_DYNAMIC_LDFLAG@ @SECTION_LDFLAGS@ @PIE_LDFLAGS@
85
86 LAUNCH_HELPER_SOURCES=                          \
87         $(XML_SOURCES)                          \
88         config-parser-common.c                  \
89         config-parser-common.h                  \
90         config-parser-trivial.c                 \
91         config-parser-trivial.h                 \
92         desktop-file.c                          \
93         desktop-file.h                          \
94         utils.c                                 \
95         utils.h                                 \
96         activation-exit-codes.h                 \
97         activation-helper.h                     \
98         activation-helper.c
99
100 ## This is the installed launch helper with the setuid checks
101 dbus_daemon_launch_helper_SOURCES=              \
102         activation-helper-bin.c                 \
103         $(LAUNCH_HELPER_SOURCES)
104
105 dbus_daemon_launch_helper_LDADD=                \
106         $(DBUS_LAUNCHER_LIBS)                   \
107         $(top_builddir)/dbus/libdbus-convenience.la
108
109 dbus_daemon_launch_helper_LDFLAGS=@R_DYNAMIC_LDFLAG@ @SECTION_LDFLAGS@
110
111 ## we build another binary so we can do the launch testing without root privs.
112 ## DO NOT INSTALL THIS FILE
113 dbus_daemon_launch_helper_test_SOURCES=         \
114         activation-helper-bin.c                 \
115         $(LAUNCH_HELPER_SOURCES)
116
117 dbus_daemon_launch_helper_test_LDADD=           \
118         $(DBUS_LAUNCHER_LIBS)                   \
119         $(top_builddir)/dbus/libdbus-convenience.la
120
121 dbus_daemon_launch_helper_test_LDFLAGS=@R_DYNAMIC_LDFLAG@ @SECTION_LDFLAGS@
122 dbus_daemon_launch_helper_test_CPPFLAGS=        \
123         -DACTIVATION_LAUNCHER_TEST
124
125 ## we build yet another binary so we can do the OOM tests
126 ## DO NOT INSTALL THIS FILE
127 bus_test_launch_helper_SOURCES=         \
128         test-launch-helper.c            \
129         $(LAUNCH_HELPER_SOURCES)
130
131 bus_test_launch_helper_LDADD=           \
132         $(DBUS_LAUNCHER_LIBS)                   \
133         $(top_builddir)/dbus/libdbus-convenience.la
134
135 bus_test_launch_helper_LDFLAGS=@R_DYNAMIC_LDFLAG@ @SECTION_LDFLAGS@
136 bus_test_launch_helper_CPPFLAGS=        \
137         -DACTIVATION_LAUNCHER_TEST      \
138         -DACTIVATION_LAUNCHER_DO_OOM
139
140 ## note that TESTS has special meaning (stuff to use in make check)
141 ## so if adding tests not to be run in make check, don't add them to 
142 ## TESTS
143 if DBUS_BUILD_TESTS
144 TESTS_ENVIRONMENT=DBUS_TEST_DATA=$(top_builddir)/test/data DBUS_TEST_HOMEDIR=$(top_builddir)/dbus DBUS_FATAL_WARNINGS=1 DBUS_BLOCK_ON_ABORT=1
145 TESTS=bus-test bus-test-system bus-test-launch-helper
146 else
147 TESTS=
148 endif
149
150 ## we use noinst_PROGRAMS not check_PROGRAMS so that we build 
151 ## even when not doing "make check"
152 noinst_PROGRAMS=$(TESTS) dbus-daemon dbus-daemon-launch-helper-test dbus-daemon-launch-helper
153
154 bus_test_system_SOURCES=                        \
155         $(XML_SOURCES)                          \
156         config-parser-common.c                  \
157         config-parser-common.h                  \
158         config-parser-trivial.c                 \
159         config-parser-trivial.h                 \
160         utils.c                                 \
161         utils.h                                 \
162         test-system.c
163
164 bus_test_system_LDADD=$(top_builddir)/dbus/libdbus-convenience.la $(DBUS_BUS_LIBS)
165 bus_test_system_LDFLAGS=@R_DYNAMIC_LDFLAG@
166
167 bus_test_SOURCES=                               \
168         $(BUS_SOURCES)                          \
169         test-main.c
170
171 bus_test_LDADD=$(top_builddir)/dbus/libdbus-convenience.la $(DBUS_BUS_LIBS)
172 bus_test_LDFLAGS=@R_DYNAMIC_LDFLAG@
173
174 ## mop up the gcov files
175 clean-local:
176         /bin/rm *.bb *.bbg *.da *.gcov || true
177
178 uninstall-hook:
179         rm -f $(DESTDIR)$(DBUS_DAEMONDIR)/dbus-daemon
180         rm -f $(DESTDIR)$(libexecdir)/dbus-daemon-launch-helper
181
182 install-data-hook:
183         if test '!' -d $(DESTDIR)$(DBUS_DAEMONDIR); then \
184                 $(mkinstalldirs) $(DESTDIR)$(DBUS_DAEMONDIR); \
185                 chmod 755 $(DESTDIR)$(DBUS_DAEMONDIR); \
186         fi
187         $(INSTALL_PROGRAM) dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR)
188         $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus
189         $(mkinstalldirs) $(DESTDIR)$(configdir)/system.d
190         $(mkinstalldirs) $(DESTDIR)$(configdir)/session.d
191         $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services
192         $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/system-services
193         $(mkinstalldirs) $(DESTDIR)$(libexecdir)/dbus-1
194         $(INSTALL_PROGRAM) dbus-daemon-launch-helper $(DESTDIR)$(libexecdir)
195         if test `id -u` -eq 0; then \
196                 chown root:$(DBUS_USER) $(DESTDIR)$(libexecdir)/dbus-daemon-launch-helper; \
197                 chmod 4750 $(DESTDIR)$(libexecdir)/dbus-daemon-launch-helper; \
198         else \
199                 echo "Not installing $(DESTDIR)$(libexecdir)/dbus-daemon-launch-helper binary setuid!"; \
200                 echo "You'll need to manually set permissions to root:$(DBUS_USER) and permissions 4750"; \
201         fi
202
203 #### Init scripts fun
204 SCRIPT_IN_FILES=messagebus.in \
205                 rc.messagebus.in
206
207 ## Red Hat start
208 if DBUS_INIT_SCRIPTS_RED_HAT
209
210 initddir=$(sysconfdir)/rc.d/init.d
211
212 initd_SCRIPTS=  \
213         messagebus
214
215 endif
216  ## Red Hat end
217
218 ## Slackware start
219 if DBUS_INIT_SCRIPTS_SLACKWARE
220
221 initddir=$(sysconfdir)/rc.d/
222
223 initd_SCRIPTS=  \
224         rc.messagebus
225
226 endif
227 ## Slackware end
228
229 MAN_IN_FILES=dbus-daemon.1.in
230 man_MANS = dbus-daemon.1
231
232 #### Extra dist 
233
234 EXTRA_DIST=$(CONFIG_IN_FILES) $(SCRIPT_IN_FILES) $(man_MANS) $(MAN_IN_FILES)