]> git.proxmox.com Git - mirror_lxc.git/blob - src/lxc/Makefile.am
configure.ac: add --enable-deprecated flag
[mirror_lxc.git] / src / lxc / Makefile.am
1 pkginclude_HEADERS = \
2 attach_options.h \
3 lxccontainer.h \
4 version.h
5
6 noinst_HEADERS = \
7 arguments.h \
8 attach.h \
9 bdev/bdev.h \
10 bdev/lxcaufs.h \
11 bdev/lxcbtrfs.h \
12 bdev/lxcdir.h \
13 bdev/lxcloop.h \
14 bdev/lxclvm.h \
15 bdev/lxcnbd.h \
16 bdev/lxcoverlay.h \
17 bdev/lxcrbd.h \
18 bdev/lxcrsync.h \
19 bdev/lxczfs.h \
20 caps.h \
21 cgroup.h \
22 conf.h \
23 console.h \
24 error.h \
25 initutils.h \
26 list.h \
27 log.h \
28 lxc.h \
29 lxclock.h \
30 monitor.h \
31 namespace.h \
32 start.h \
33 state.h \
34 utils.h \
35 criu.h
36
37 if IS_BIONIC
38 noinst_HEADERS += \
39 ../include/ifaddrs.h \
40 ../include/openpty.h \
41 ../include/lxcmntent.h
42 endif
43
44 if !HAVE_GETLINE
45 if HAVE_FGETLN
46 noinst_HEADERS += ../include/getline.h
47 endif
48 endif
49
50 if !HAVE_GETSUBOPT
51 noinst_HEADERS += ../include/getsubopt.h
52 endif
53
54 sodir=$(libdir)
55 # use PROGRAMS to avoid complains from automake
56 so_PROGRAMS = liblxc.so
57
58 LSM_SOURCES = \
59 lsm/nop.c \
60 lsm/lsm.h lsm/lsm.c
61
62 if ENABLE_APPARMOR
63 LSM_SOURCES += lsm/apparmor.c
64 endif
65
66 if ENABLE_SELINUX
67 LSM_SOURCES += lsm/selinux.c
68 endif
69
70 liblxc_so_SOURCES = \
71 arguments.c arguments.h \
72 bdev/bdev.c bdev/bdev.h \
73 bdev/lxcaufs.c bdev/lxcaufs.h \
74 bdev/lxcbtrfs.c bdev/lxcbtrfs.h \
75 bdev/lxcdir.c bdev/lxcdir.h \
76 bdev/lxcloop.c bdev/lxcloop.h \
77 bdev/lxclvm.c bdev/lxclvm.h \
78 bdev/lxcnbd.c bdev/lxcnbd.h \
79 bdev/lxcoverlay.c bdev/lxcoverlay.h \
80 bdev/lxcrbd.c bdev/lxcrbd.h \
81 bdev/lxcrsync.c bdev/lxcrsync.h \
82 bdev/lxczfs.c bdev/lxczfs.h \
83 commands.c commands.h \
84 start.c start.h \
85 execute.c \
86 monitor.c monitor.h \
87 console.c \
88 freezer.c \
89 error.h error.c \
90 parse.c parse.h \
91 cgfs.c \
92 cgroup.c cgroup.h \
93 lxc.h \
94 initutils.c initutils.h \
95 utils.c utils.h \
96 sync.c sync.h \
97 namespace.h namespace.c \
98 conf.c conf.h \
99 confile.c confile.h \
100 list.h \
101 state.c state.h \
102 log.c log.h \
103 attach.c attach.h \
104 criu.c criu.h \
105 \
106 network.c network.h \
107 nl.c nl.h \
108 rtnl.c rtnl.h \
109 genl.c genl.h \
110 \
111 caps.c caps.h \
112 lxcseccomp.h \
113 mainloop.c mainloop.h \
114 af_unix.c af_unix.h \
115 \
116 lxcutmp.c lxcutmp.h \
117 lxclock.h lxclock.c \
118 lxccontainer.c lxccontainer.h \
119 version.h \
120 \
121 $(LSM_SOURCES)
122
123 if ENABLE_CGMANAGER
124 liblxc_so_SOURCES += cgmanager.c
125 endif
126
127 if IS_BIONIC
128 liblxc_so_SOURCES += \
129 ../include/ifaddrs.c ../include/ifaddrs.h \
130 ../include/openpty.c ../include/openpty.h \
131 ../include/lxcmntent.c ../include/lxcmntent.h
132 endif
133
134 if !HAVE_GETLINE
135 if HAVE_FGETLN
136 liblxc_so_SOURCES += ../include/getline.c ../include/getline.h
137 endif
138 endif
139
140 AM_CFLAGS=-I$(top_srcdir)/src \
141 -DLXCROOTFSMOUNT=\"$(LXCROOTFSMOUNT)\" \
142 -DLXCPATH=\"$(LXCPATH)\" \
143 -DLXC_GLOBAL_CONF=\"$(LXC_GLOBAL_CONF)\" \
144 -DLXCINITDIR=\"$(LXCINITDIR)\" \
145 -DLIBEXECDIR=\"$(LIBEXECDIR)\" \
146 -DLXCTEMPLATEDIR=\"$(LXCTEMPLATEDIR)\" \
147 -DLOGPATH=\"$(LOGPATH)\" \
148 -DLXC_DEFAULT_CONFIG=\"$(LXC_DEFAULT_CONFIG)\" \
149 -DLXC_USERNIC_DB=\"$(LXC_USERNIC_DB)\" \
150 -DLXC_USERNIC_CONF=\"$(LXC_USERNIC_CONF)\" \
151 -DDEFAULT_CGROUP_PATTERN=\"$(DEFAULT_CGROUP_PATTERN)\" \
152 -DRUNTIME_PATH=\"$(RUNTIME_PATH)\" \
153 -DSBINDIR=\"$(SBINDIR)\"
154
155 if ENABLE_APPARMOR
156 AM_CFLAGS += -DHAVE_APPARMOR
157 endif
158
159 if ENABLE_CGMANAGER
160 AM_CFLAGS += -DHAVE_CGMANAGER
161 endif
162
163 if ENABLE_SELINUX
164 AM_CFLAGS += -DHAVE_SELINUX
165 endif
166
167 if USE_CONFIGPATH_LOGS
168 AM_CFLAGS += -DUSE_CONFIGPATH_LOGS
169 endif
170
171 if ENABLE_SECCOMP
172 AM_CFLAGS += -DHAVE_SECCOMP $(SECCOMP_CFLAGS)
173 liblxc_so_SOURCES += seccomp.c
174 endif
175
176 liblxc_so_CFLAGS = -fPIC -DPIC $(AM_CFLAGS) -pthread
177
178 liblxc_so_LDFLAGS = \
179 -pthread \
180 -shared \
181 -Wl,-soname,liblxc.so.$(firstword $(subst ., ,@LXC_VERSION_ABI@))
182
183 liblxc_so_LDADD = $(CAP_LIBS) $(APPARMOR_LIBS) $(SELINUX_LIBS) $(SECCOMP_LIBS)
184
185 if ENABLE_CGMANAGER
186 liblxc_so_LDADD += $(CGMANAGER_LIBS) $(DBUS_LIBS) $(NIH_LIBS) $(NIH_DBUS_LIBS)
187 liblxc_so_CFLAGS += $(CGMANAGER_CFLAGS) $(DBUS_CFLAGS) $(NIH_CFLAGS) $(NIH_DBUS_CFLAGS)
188 endif
189
190 bin_SCRIPTS = lxc-checkconfig
191
192 EXTRA_DIST = \
193 lxc-top.lua
194
195 if ENABLE_DEPRECATED
196 if ENABLE_PYTHON
197 bin_SCRIPTS += lxc-start-ephemeral
198 endif
199 endif
200
201 bin_PROGRAMS = \
202 lxc-attach \
203 lxc-autostart \
204 lxc-cgroup \
205 lxc-checkpoint \
206 lxc-copy \
207 lxc-config \
208 lxc-console \
209 lxc-create \
210 lxc-destroy \
211 lxc-device \
212 lxc-execute \
213 lxc-freeze \
214 lxc-info \
215 lxc-ls \
216 lxc-monitor \
217 lxc-snapshot \
218 lxc-start \
219 lxc-stop \
220 lxc-top \
221 lxc-unfreeze \
222 lxc-unshare \
223 lxc-usernsexec \
224 lxc-wait
225
226 if ENABLE_DEPRECATED
227 bin_PROGRAMS += lxc-clone
228 endif
229
230 sbin_PROGRAMS = init.lxc
231 pkglibexec_PROGRAMS = \
232 lxc-monitord \
233 lxc-user-nic
234
235 AM_LDFLAGS = -Wl,-E
236 if ENABLE_RPATH
237 AM_LDFLAGS += -Wl,-rpath -Wl,$(libdir)
238 endif
239 LDADD=liblxc.so @CAP_LIBS@ @APPARMOR_LIBS@ @SELINUX_LIBS@ @SECCOMP_LIBS@
240
241 lxc_attach_SOURCES = lxc_attach.c
242 lxc_autostart_SOURCES = lxc_autostart.c
243 lxc_cgroup_SOURCES = lxc_cgroup.c
244 lxc_config_SOURCES = lxc_config.c
245 lxc_console_SOURCES = lxc_console.c
246 lxc_destroy_SOURCES = lxc_destroy.c
247 lxc_device_SOURCES = lxc_device.c
248 lxc_execute_SOURCES = lxc_execute.c
249 lxc_freeze_SOURCES = lxc_freeze.c
250 lxc_info_SOURCES = lxc_info.c
251 init_lxc_SOURCES = lxc_init.c
252 lxc_monitor_SOURCES = lxc_monitor.c
253 lxc_monitord_SOURCES = lxc_monitord.c
254 lxc_ls_SOURCES = lxc_ls.c
255 lxc_copy_SOURCES = lxc_copy.c
256 lxc_start_SOURCES = lxc_start.c
257 lxc_stop_SOURCES = lxc_stop.c
258 lxc_top_SOURCES = lxc_top.c
259 lxc_unfreeze_SOURCES = lxc_unfreeze.c
260 lxc_unshare_SOURCES = lxc_unshare.c
261 lxc_wait_SOURCES = lxc_wait.c
262 lxc_create_SOURCES = lxc_create.c
263 lxc_snapshot_SOURCES = lxc_snapshot.c
264 lxc_usernsexec_SOURCES = lxc_usernsexec.c
265 lxc_user_nic_SOURCES = lxc_user_nic.c network.c network.h
266 lxc_checkpoint_SOURCES = lxc_checkpoint.c
267
268 if ENABLE_DEPRECATED
269 lxc_clone_SOURCES = lxc_clone.c
270 endif
271
272 if !HAVE_GETSUBOPT
273 lxc_copy_SOURCES += ../include/getsubopt.c ../include/getsubopt.h
274 endif
275
276 if HAVE_STATIC_LIBCAP
277 sbin_PROGRAMS += init.lxc.static
278
279 init_lxc_static_SOURCES = lxc_init.c error.c log.c initutils.c caps.c
280
281 if !HAVE_GETLINE
282 if HAVE_FGETLN
283 init_lxc_static_SOURCES += ../include/getline.c
284 endif
285 endif
286
287 init_lxc_static_LDFLAGS = -static
288 init_lxc_static_LDADD = @CAP_LIBS@
289 init_lxc_static_CFLAGS = $(AM_CFLAGS) -DNO_LXC_CONF
290 endif
291
292 install-exec-local: install-soPROGRAMS
293 mkdir -p $(DESTDIR)$(datadir)/lxc
294 install -c -m 644 lxc.functions $(DESTDIR)$(datadir)/lxc
295 mv $(DESTDIR)$(libdir)/liblxc.so $(DESTDIR)$(libdir)/liblxc.so.@LXC_VERSION_ABI@
296 cd $(DESTDIR)$(libdir); \
297 ln -sf liblxc.so.@LXC_VERSION_ABI@ liblxc.so.$(firstword $(subst ., ,@LXC_VERSION_ABI@)); \
298 ln -sf liblxc.so.$(firstword $(subst ., ,@LXC_VERSION_ABI@)) liblxc.so
299
300 install-exec-hook:
301 chmod u+s $(DESTDIR)$(libexecdir)/lxc/lxc-user-nic
302
303 uninstall-local:
304 $(RM) $(DESTDIR)$(libdir)/liblxc.so*