Makefile.am 7.81 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#  This file is part of systemd.
#
#  Copyright 2010 Lennart Poettering
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  (at your option) any later version.
#
#  systemd is distributed in the hope that it will be useful, but
#  WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
#  General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with systemd; If not, see <http://www.gnu.org/licenses/>.

ACLOCAL_AMFLAGS = -I m4

20
dbuspolicydir=$(sysconfdir)/dbus-1/system.d
21
udevrulesdir=@udevrulesdir@
22

23
pkgsysconfdir=$(sysconfdir)/systemd
24
systemunitdir=$(pkgdatadir)/system
25
sessionunitdir=$(pkgdatadir)/session
26

27
28
AM_CPPFLAGS = \
        -include $(top_builddir)/config.h \
29
	-DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
30
	-DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
31
	-DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
32
	-DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
33
	-DSESSION_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/session\" \
34
	-DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \
35
	-DCGROUP_AGENT_PATH=\"$(pkglibexecdir)/systemd-cgroups-agent\" \
36
37
	-DSYSTEMD_BINARY_PATH=\"$(sbindir)/systemd\" \
	-I $(top_srcdir)/src
38
39
40
41
42

sbin_PROGRAMS = \
	systemd

bin_PROGRAMS = \
43
44
45
46
	systemctl

if HAVE_GTK
bin_PROGRAMS += \
47
	systemadm
48
endif
49
50
51

pkglibexec_PROGRAMS = \
	systemd-logger \
52
53
	systemd-cgroups-agent \
	systemd-initctl
54
55
56

noinst_PROGRAMS = \
	test-engine \
57
	test-job-type \
58
59
	test-ns \
	test-loopback
60

61
dist_dbuspolicy_DATA = \
62
	src/org.freedesktop.systemd1.conf
63

64
dist_udevrules_DATA = \
65
	src/99-systemd.rules
66

67
dist_systemunit_DATA = \
68
	units/emergency.service \
69
70
71
72
73
74
75
76
77
	units/local-fs.target \
	units/network.target \
	units/nss-lookup.target \
	units/remote-fs.target \
	units/rtc-set.target \
	units/shutdown.target \
	units/sigpwr.target \
	units/sockets.target \
	units/swap.target \
78
79
80
	units/systemd-initctl.socket \
	units/systemd-logger.socket

81
systemunit_DATA = \
82
	units/systemd-initctl.service \
83
84
	units/systemd-logger.service \
	units/syslog.target
85

86
EXTRA_DIST = \
87
88
	units/systemd-initctl.service.in \
	units/systemd-logger.service.in \
89
	units/syslog.target.in \
90
91
	LICENSE \
	README
92

93
94
95
# This is needed because automake is buggy in how it generates the
# rules for C programs, but not Vala programs.  We therefore can't
# list the .h files as dependencies if we want make dist to work.
96
BASIC_SOURCES = \
97
98
99
100
101
102
103
104
        src/util.c \
        src/hashmap.c \
        src/set.c \
        src/strv.c \
        src/conf-parser.c \
        src/socket-util.c \
        src/log.c \
        src/ratelimit.c
105

106
COMMON_SOURCES = \
107
	$(BASIC_SOURCES) \
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
	src/unit.c \
        src/job.c \
        src/manager.c \
        src/load-fragment.c \
        src/service.c \
        src/automount.c \
        src/mount.c \
        src/swap.c \
        src/device.c \
        src/target.c \
        src/snapshot.c \
        src/socket.c \
        src/timer.c \
        src/load-dropin.c \
        src/execute.c \
        src/dbus.c \
        src/dbus-manager.c \
        src/dbus-unit.c \
        src/dbus-job.c \
	src/dbus-service.c \
	src/dbus-socket.c \
	src/dbus-target.c \
	src/dbus-mount.c \
	src/dbus-automount.c \
	src/dbus-swap.c \
	src/dbus-snapshot.c \
	src/dbus-device.c \
	src/dbus-execute.c \
	src/cgroup.c \
	src/mount-setup.c \
	src/hostname-setup.c \
	src/loopback-setup.c \
	src/utmp-wtmp.c \
	src/specifier.c \
	src/unit-name.c \
	src/fdset.c \
	src/namespace.c
145

146
147
EXTRA_DIST += \
	${COMMON_SOURCES:.c=.h} \
148
149
150
151
152
153
154
155
	src/macro.h \
	src/ioprio.h \
	src/missing.h \
	src/list.h \
	src/securebits.h \
	src/linux/auto_dev-ioctl.h \
	src/initreq.h \
	src/sd-daemon.h
156

157
dist_man_MANS = \
158
159
	man/systemd.unit.5 \
	man/systemd.service.5
160
161

HTMLMANS = \
162
163
	man/systemd.unit.html \
	man/systemd.service.html
164
165
166
167
168
169
170
171

dist_noinst_DATA = \
	$(HTMLMANS)

EXTRA_DIST += \
	man/systemd.unit.xml \
	man/systemd.service.xml

172
173
systemd_SOURCES = \
	$(COMMON_SOURCES) \
174
	src/main.c
175
176
177
178

systemd_CPPFLAGS = \
	$(AM_CPPFLAGS) \
	$(DBUS_CFLAGS) \
179
180
	$(UDEV_CFLAGS) \
	$(CGROUP_CFLAGS)
181
182
183

systemd_LDADD = \
	$(DBUS_LIBS) \
184
185
	$(UDEV_LIBS) \
	$(CGROUP_LIBS)
186
187
188

test_engine_SOURCES = \
	$(COMMON_SOURCES) \
189
	src/test-engine.c
190
191
192
193
194
195

test_engine_CPPFLAGS = $(systemd_CPPFLAGS)
test_engine_LDADD = $(systemd_LDADD)

test_job_type_SOURCES = \
	$(COMMON_SOURCES) \
196
	src/test-engine.c
197
198
199
200

test_job_type_CPPFLAGS = $(systemd_CPPFLAGS)
test_job_type_LDADD = $(systemd_LDADD)

201
202
test_ns_SOURCES = \
	$(BASIC_SOURCES) \
203
204
	src/test-ns.c \
	src/namespace.c
205
206
207
208

test_ns_CPPFLAGS = $(systemd_CPPFLAGS)
test_ns_LDADD = $(systemd_LDADD)

209
210
test_loopback_SOURCES = \
	$(BASIC_SOURCES) \
211
212
	src/test-loopback.c \
	src/loopback-setup.c
213
214
215
216

test_loopback_CPPFLAGS = $(systemd_CPPFLAGS)
test_loopback_LDADD = $(systemd_LDADD)

217
218
systemd_logger_SOURCES = \
	$(BASIC_SOURCES) \
219
220
	src/logger.c \
	src/sd-daemon.c
221

222
223
systemd_initctl_SOURCES = \
	$(BASIC_SOURCES) \
224
225
	src/initctl.c \
	src/sd-daemon.c
226
227
228
229
230
231
232
233

systemd_initctl_CPPFLAGS = \
	$(AM_CPPFLAGS) \
	$(DBUS_CFLAGS)

systemd_initctl_LDADD = \
	$(DBUS_LIBS)

234
235
systemd_cgroups_agent_SOURCES = \
	$(BASIC_SOURCES) \
236
	src/cgroups-agent.c
237
238
239
240
241
242
243
244

systemd_cgroups_agent_CPPFLAGS = \
	$(AM_CPPFLAGS) \
	$(DBUS_CFLAGS)

systemd_cgroups_agent_LDADD = \
	$(DBUS_LIBS)

245
246
247
248
249
250
251
252
253
254
255
256
257
258
VALAFLAGS = \
	-g \
	--save-temps \
	--pkg=dbus-glib-1 \
	--pkg=posix

if HAVE_GTK
VALAFLAGS += \
	--pkg=gtk+-2.0
endif

VALA_CFLAGS = \
	-Wno-unused-variable \
	-Wno-unused-function
259
260

systemctl_SOURCES = \
261
262
	src/systemctl.vala \
	src/systemd-interfaces.vala
263

264
systemctl_CPPFLAGS = $(AM_CPPFLAGS) $(DBUSGLIB_CFLAGS) $(VALA_CFLAGS)
265
266
267
systemctl_LDADD = $(DBUSGLIB_LIBS)

systemadm_SOURCES = \
268
269
	src/systemadm.vala \
	src/systemd-interfaces.vala
270

271
systemadm_CPPFLAGS = $(AM_CPPFLAGS) $(DBUSGLIB_CFLAGS) $(GTK_CFLAGS) $(VALA_CFLAGS)
272
systemadm_LDADD = $(DBUSGLIB_LIBS) $(GTK_LIBS)
273

274
275
units/systemd-initctl.service: units/systemd-initctl.service.in Makefile
	$(MKDIR_P) units
276
	$(SED) -e 's,@libexecdir\@,$(libexecdir),g' \
277
278
		-e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \
		< $< > $@
279

280
281
units/systemd-logger.service: units/systemd-logger.service.in Makefile
	$(MKDIR_P) units
282
	$(SED) -e 's,@libexecdir\@,$(libexecdir),g' \
283
284
		-e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \
		< $< > $@
285

286
287
288
289
290
units/syslog.target: units/syslog.target.in Makefile
	$(MKDIR_P) units
	$(SED) -e 's,@SPECIAL_SYSLOG_SERVICE\@,$(SPECIAL_SYSLOG_SERVICE),g' \
		< $< > $@

291
CLEANFILES = \
292
293
294
	src/systemd-interfaces.c \
	src/systemctl.c \
	src/systemadm.c \
295
	units/systemd-initctl.service \
296
297
	units/systemd-logger.service \
	units/syslog.target
298

299
if HAVE_XSLTPROC
300
301
man/%.5: man/%.xml
	$(MKDIR_P) man
302
303
	$(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<

304
305
man/%.html: man/%.xml
	$(MKDIR_P) man
306
307
308
309
310
311
312
	$(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $<

CLEANFILES += \
	$(dist_man_MANS) \
	$(HTMLMANS)
endif

313
install-data-hook:
314
	$(MKDIR_P) -m 0755 \
315
316
		$(DESTDIR)$(systemunitdir) \
		$(DESTDIR)$(sessionunitdir) \
317
		$(DESTDIR)$(pkgsysconfdir)/system \
318
		$(DESTDIR)$(pkgsysconfdir)/system/sockets.target.wants \
319
320
321
		$(DESTDIR)$(pkgsysconfdir)/session \
		$(DESTDIR)$(sysconfdir)/xdg/systemd \
		$(DESTDIR)/cgroup/debug
322
323
324
	( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
		rm -f session && \
		$(LN_S) $(DESTDIR)$(pkgsysconfdir)/session session )
325
326
327
328
329
330
331
332
	( cd $(DESTDIR)$(pkgsysconfdir)/system/sockets.target.wants && \
		rm -f systemd-initctl.socket systemd-logger.socket && \
		$(LN_S) $(DESTDIR)$(systemunitdir)/systemd-logger.socket systemd-logger.socket && \
		$(LN_S) $(DESTDIR)$(systemunitdir)/systemd-initctl.socket systemd-initctl.socket )
	( cd $(DESTDIR)$(sessionunitdir) && \
		rm -f shutdown.target sockets.target && \
		$(LN_S) ../system/shutdown.target shutdown.target && \
		$(LN_S) ../system/sockets.target sockets.target )
333
334
335

DISTCHECK_CONFIGURE_FLAGS = \
	--with-udevrulesdir=$$dc_install_base/$(udevrulesdir)