9ad3981ebf40d779565f743ef2e1d3cef73d769e
[util-vserver.git] / src / Makefile-files
1 ## $Id: Makefile-files,v 1.70 2005/07/02 09:17:55 ensc Exp $  -*- makefile -*-
2
3 ## Copyright (C) 2003,2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
4 ##  
5 ## This program is free software; you can redistribute it and/or modify
6 ## it under the terms of the GNU General Public License as published by
7 ## the Free Software Foundation; either version 2, or (at your option)
8 ## any later version.
9 ##  
10 ## This program is distributed in the hope that it will be useful,
11 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ## GNU General Public License for more details.
14 ##  
15 ## You should have received a copy of the GNU General Public License
16 ## along with this program; if not, write to the Free Software
17 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 ##  
19
20 src_sbin_CXX_PROGS =    
21 src_pkglib_CXX_PROGS =  src/vbuild
22
23 src_pkglib_C99_PROGS =  src/vunify src/vcopy
24
25
26 AM_INSTALLCHECK_STD_OPTIONS_EXEMPT += \
27                         src/parserpmdump \
28                         src/showperm \
29                         src/vbuild \
30                         src/vcheck \
31                         src/vreboot \
32                         src/save_ctxinfo \
33                         src/mask2prefix \
34                         src/ifspec \
35                         src/rebootmgr \
36                         src/vdu \
37                         src/vfiles
38
39 DIETPROGS +=            src/chcontext-compat \
40                         src/capchroot \
41                         src/chain-echo \
42                         src/check-unixfile \
43                         src/chroot-sh \
44                         src/filetime \
45                         src/lockfile \
46                         src/readlink \
47                         src/secure-mount \
48                         src/save_ctxinfo \
49                         src/mask2prefix \
50                         src/chbind \
51                         src/exec-cd \
52                         src/fakerunlevel \
53                         src/keep-ctx-alive \
54                         src/exec-ulimit \
55                         src/vps \
56                         src/lsxid \
57                         src/chxid \
58                         src/reducecap \
59                         src/showattr \
60                         src/setattr \
61                         src/sigexec \
62                         src/vattribute \
63                         src/vlimit \
64                         src/vnamespace \
65                         src/vunify \
66                         src/vuname \
67                         src/rpm-fake-resolver \
68                         src/vcontext \
69                         src/vcopy \
70                         src/vkill \
71                         src/vsched \
72                         src/vshelper-sync \
73                         src/vrsetup \
74                         src/vserver-stat \
75                         src/vserver-info \
76                         src/vdlimit \
77                         src/vsh \
78                         src/vwait
79
80 if ENSC_CAN_BEECRYPT_WITH_DIETLIBC
81 DIETPROGS +=            src/vhashify
82 endif
83
84 noinst_HEADERS +=       src/capability-compat.h \
85                         src/util.h \
86                         src/fstool.h \
87                         src/compat-pivot_root.h \
88                         src/stack-start.h \
89                         src/vcopy-init.hc \
90                         src/vunify.h \
91                         src/vunify-init.hc \
92                         src/vhashify.h \
93                         src/vhashify-init.hc \
94                         src/vserver-visitdir.hc \
95                         src/context-sync.hc
96
97 pkglib_PROGRAMS +=      src/capchroot \
98                         src/chain-echo \
99                         src/chcontext-compat \
100                         src/check-unixfile \
101                         src/chroot-sh \
102                         src/fakerunlevel \
103                         src/filetime \
104                         src/keep-ctx-alive \
105                         src/lockfile \
106                         src/readlink \
107                         src/save_ctxinfo \
108                         src/secure-mount \
109                         src/mask2prefix \
110                         src/exec-ulimit \
111                         src/rpm-fake-resolver \
112                         src/vshelper-sync \
113                         src/sigexec \
114                         $(src_pkglib_C99_X_PROGS) \
115                         $(src_pkglib_CXX_X_PROGS)
116
117 if ENSC_HAVE_C99_COMPILER
118 if ENSC_HAVE_BEECRYPT
119 pkglib_PROGRAMS +=      src/vhashify
120 endif ENSC_HAVE_BEECRYPT
121 endif ENSC_HAVE_C99_COMPILER
122
123 legacy_PROGRAMS +=      src/ifspec \
124                         src/listdevip \
125                         src/parserpmdump \
126                         src/rebootmgr \
127                         src/showperm \
128                         src/vreboot
129
130 pkglib_LTLIBRARIES +=   src/rpm-fake.la
131
132 sbin_PROGRAMS +=        src/chbind \
133                         src/exec-cd \
134                         src/lsxid \
135                         src/chxid \
136                         src/vps \
137                         src/showattr \
138                         src/setattr \
139                         src/reducecap \
140                         src/vdu \
141                         src/vattribute \
142                         src/vcontext \
143                         src/vlimit \
144                         src/vkill \
145                         src/vnamespace \
146                         src/vrsetup \
147                         src/vsched \
148                         src/vserver-stat \
149                         src/vserver-info \
150                         src/vuname \
151                         src/vsh \
152                         src/vwait \
153                         $(src_sbin_CXX_X_PROGS)
154
155 if ENSC_HAVE_C99_COMPILER
156 sbin_PROGRAMS +=        src/vdlimit
157 endif
158
159
160 src_capchroot_SOURCES =         src/capchroot.c
161 src_capchroot_LDADD =           $(VSERVER_LDADDS)
162 src_capchroot_LDFLAGS =         $(VSERVER_LDFLGS)
163
164 src_chbind_SOURCES =            src/chbind.c
165 src_chbind_LDADD =              $(VSERVER_LDADDS)
166 src_chbind_LDFLAGS =            $(VSERVER_LDFLGS)
167
168 src_chcontext_compat_SOURCES =  src/chcontext.c
169 src_chcontext_compat_LDADD =    $(VSERVER_LDADDS) $(LIBINTERNAL)
170 src_chcontext_compat_LDFLAGS =  $(VSERVER_LDFLGS)
171
172 src_vcontext_SOURCES            =  src/vcontext.c
173 src_vcontext_LDADD              =  $(VSERVER_LDADDS) $(LIBINTERNAL)
174 src_vcontext_LDFLAGS            =  $(VSERVER_LDFLGS)
175
176 src_vsched_SOURCES              =  src/vsched.c
177 src_vsched_LDADD                =  $(VSERVER_LDADDS)
178 src_vsched_LDFLAGS              =  $(VSERVER_LDFLGS)
179
180 src_filetime_SOURCES            =  src/filetime.c
181 src_filetime_LDADD              =  $(VSERVER_LDADDS)
182 src_filetime_LDFLAGS            =  $(VSERVER_LDFLGS)
183
184 src_chain_echo_SOURCES          =  src/chain-echo.c
185 src_chroot_sh_SOURCES           =  src/chroot-sh.c
186 src_exec_cd_SOURCES             =  src/exec-cd.c
187 src_fakerunlevel_SOURCES        =  src/fakerunlevel.c
188 src_ifspec_SOURCES              =  src/ifspec.c
189 src_listdevip_SOURCES           =  src/listdevip.c
190 src_lockfile_SOURCES            =  src/lockfile.c
191 src_parserpmdump_SOURCES        =  src/parserpmdump.c
192 src_readlink_SOURCES            =  src/readlink.c
193 src_rebootmgr_SOURCES           =  src/rebootmgr.c
194 src_exec_ulimit_SOURCES         =  src/exec-ulimit.c
195 src_vshelper_sync_SOURCES       =  src/vshelper-sync.c
196
197 src_reducecap_SOURCES           =  src/reducecap.c
198 src_reducecap_LDADD             =  $(VSERVER_LDADDS)
199 src_reducecap_LDFLAGS           =  $(VSERVER_LDFLGS)
200
201 src_vkill_SOURCES               =  src/vkill.c
202 src_vkill_LDADD                 =  $(VSERVER_LDADDS)
203 src_vkill_LDFLAGS               =  $(VSERVER_LDFLGS)
204 src_vkill_CPPFLAGS              =  $(AM_CPPFLAGS) -DLEGACYDIR=\"$(legacydir)\"
205
206 src_vlimit_SOURCES              =  src/vlimit.c
207 src_vlimit_LDADD                =  $(VSERVER_LDADDS)
208 src_vlimit_LDFLAGS              =  $(VSERVER_LDFLGS)
209
210 src_save_ctxinfo_SOURCES        =  src/save_ctxinfo.c
211 src_save_ctxinfo_LDADD          =  $(VSERVER_LDADDS)
212 src_save_ctxinfo_LDFLAGS        =  $(VSERVER_LDFLGS)
213
214 src_vdu_SOURCES =               src/vdu.c
215 src_vreboot_SOURCES =           src/vreboot.c
216
217 src_secure_mount_SOURCES =      src/secure-mount.c
218 src_secure_mount_LDADD =        $(VSERVER_LDADDS)
219 src_secure_mount_LDFLAGS =      $(VSERVER_LDFLGS)
220
221 src_vattribute_SOURCES =        src/vattribute.c
222 src_vattribute_LDADD =          $(VSERVER_LDADDS)
223 src_vattribute_LDFLAGS =        $(VSERVER_LDFLGS)
224
225 src_vnamespace_SOURCES =        src/vnamespace.c
226 src_vnamespace_LDADD =          $(VSERVER_LDADDS) $(LIBINTERNAL)
227 src_vnamespace_LDFLAGS =        $(VSERVER_LDFLGS)
228
229 src_rpm_fake_resolver_SOURCES   =  src/rpm-fake-resolver.c
230 src_rpm_fake_resolver_LDADD     =  $(VSERVER_LDADDS)
231 src_rpm_fake_resolver_LDFLAGS   =  $(VSERVER_LDFLGS)
232
233 src_mask2prefix_SOURCES         =  src/mask2prefix.c
234
235 src_vps_SOURCES                 =  src/vps.c
236 src_vps_LDADD                   =  $(LIBINTERNAL) $(VSERVER_LDADDS)
237 src_vps_LDFLAGS                 =  $(VSERVER_LDFLGS)
238
239 src_vserver_info_SOURCES        =  src/vserver-info.c
240 src_vserver_info_LDADD          =  $(LIBINTERNAL) $(VSERVER_LDADDS)
241 src_vserver_info_LDFLAGS        =  $(VSERVER_LDFLGS)
242
243 src_vserver_stat_SOURCES        =  src/vserver-stat.c
244 src_vserver_stat_LDADD          =  $(LIBINTERNAL) $(VSERVER_LDADDS) $(LIBENSCVECTOR)
245 src_vserver_stat_LDFLAGS        =  $(VSERVER_LDFLGS)
246
247 src_vbuild_SOURCES              =  src/vbuild.cc src/vutil.cc src/vserver.cc
248
249 src_lsxid_SOURCES               =  src/fstool.c src/lsxid.c
250 src_lsxid_LDADD                 =  $(LIBINTERNAL) $(VSERVER_LDADDS) $(LIBENSCVECTOR)
251 src_lsxid_LDFLAGS               =  $(VSERVER_LDFLGS) 
252
253 src_chxid_SOURCES               =  src/fstool.c src/chxid.c
254 src_chxid_LDADD                 =  $(LIBINTERNAL) $(VSERVER_LDADDS)
255 src_chxid_LDFLAGS               =  $(VSERVER_LDFLGS)
256
257 src_showattr_SOURCES            =  src/fstool.c src/showattr.c
258 src_showattr_LDADD              =  $(LIBINTERNAL) $(VSERVER_LDADDS)
259 src_showattr_LDFLAGS            =  $(VSERVER_LDFLGS)
260
261 src_setattr_SOURCES             =  src/fstool.c src/setattr.c
262 src_setattr_LDADD               =  $(LIBINTERNAL) $(VSERVER_LDADDS)
263 src_setattr_LDFLAGS             =  $(VSERVER_LDFLGS)
264
265 src_keep_ctx_alive_SOURCES =    src/keep-ctx-alive.c
266 src_keep_ctx_alive_LDADD =      $(VSERVER_LDADDS)
267 src_keep_ctx_alive_LDFLAGS =    $(VSERVER_LDFLGS)
268
269
270 src_vcopy_SOURCES =             src/vcopy.c
271 src_vcopy_LDADD =               $(LIBINTERNAL) $(VSERVER_LDADDS)
272 src_vcopy_LDFLAGS =             $(VSERVER_LDFLGS)
273
274 src_vunify_SOURCES =            src/vunify.c
275 src_vunify_LDADD =              $(LIBINTERNAL) $(VSERVER_LDADDS)
276 src_vunify_LDFLAGS =            $(VSERVER_LDFLGS)
277
278 src_vhashify_SOURCES =          src/vhashify.c
279 if ENSC_CAN_BEECRYPT_WITH_DIETLIBC
280 src_vhashify_LDADD =            $(LIBINTERNAL) $(LIBENSCVECTOR) -lbeecrypt $(VSERVER_LDADDS)
281 src_vhashify_LDFLAGS =          $(VSERVER_LDFLGS)
282 else
283 src_vhashify_LDADD =            $(LIBINTERNAL_GLIBC) $(LIBENSCVECTOR_GLIBC) $(LIBVSERVER_GLIBC) -lbeecrypt
284 src_vhashify_LDFLAGS =
285 endif
286
287 src_vuname_SOURCES =            src/vuname.c
288 src_vuname_LDADD =              $(VSERVER_LDADDS)
289 src_vuname_LDFLAGS =            $(VSERVER_LDFLGS)
290
291 src_rpm_fake_la_SOURCES         =  src/rpm-fake.c
292 src_rpm_fake_la_CFLAGS          =  $(AM_CFLAGS)
293 src_rpm_fake_la_LDFLAGS         =  -module -avoid-version -rpath $(pkglibdir)
294 src_rpm_fake_la_LIBADD          =  $(LIBVSERVER_GLIBC) -ldl
295
296 src_vdlimit_SOURCES             = src/vdlimit.c
297 src_vdlimit_LDADD               = $(VSERVER_LDADDS)
298 src_vdlimit_LDFLAGS             = $(VSERVER_LDFLGS)
299
300 src_vsh_SOURCES                 = src/vsh.c
301 src_vsh_LDADD                   = $(VSERVER_LDADDS)
302 src_vsh_LDFLAGS                 = $(VSERVER_LDFLGS)
303
304 src_vwait_SOURCES               = src/vwait.c
305 src_vwait_LDADD                 = $(VSERVER_LDADDS)
306 src_vwait_LDFLAGS               = $(VSERVER_LDFLGS)
307
308 EXTRA_PROGRAMS +=               $(src_sbin_CXX_PROGS) $(src_pkglib_CXX_PROGS)
309
310 TESTS_ENVIRONMENT +=            srctestsuitedir=$(top_builddir)/src/testsuite
311
312 if ENSC_HAVE_C99_COMPILER
313 src_sbin_C99_X_PROGS =          $(src_sbin_C99_PROGS)
314 src_pkglib_C99_X_PROGS =        $(src_pkglib_C99_PROGS)
315 else
316 src_sbin_C99_X_PROGS =
317 src_pkglib_C99_X_PROGS =  
318 endif
319
320 if ENSC_HAVE_CXX_COMPILER
321 src_sbin_CXX_X_PROGS =          $(src_sbin_CXX_PROGS)
322 src_pkglib_CXX_X_PROGS =        $(src_pkglib_CXX_PROGS)
323 else
324 src_sbin_CXX_X_PROGS =
325 src_pkglib_CXX_X_PROGS =  
326 endif
327
328 install-exec-hook:              src_install_exec_hook
329
330 src_install_exec_hook:
331                                 -rm -f $(DESTDIR)$(pkglibdir)/rpm-fake.a $(DESTDIR)$(pkglibdir)/rpm-fake.la
332
333 include $(top_srcdir)/src/testsuite/Makefile-files