1 ## This package understands the following switches:
2 ## --without dietlibc ... disable usage of dietlibc
3 ## --with xalan ... require/use the xalan xslt processor
5 ## Fedora Extras specific customization below...
8 ## fails because '__sigsetjmp' and '__longjmp' are undefined
11 %bcond_without dietlibc
17 %global confdir %_sysconfdir/vservers
18 %global confdefaultdir %confdir/.defaults
19 %global pkglibdir %_libdir/%name
20 %global chkconfig /sbin/chkconfig
22 %global _localstatedir %_var
24 %{!?python_sitearch:%global python_sitearch %(%__python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
26 %{!?release_func:%global release_func() %1%{?dist}}
28 Summary: Linux virtual server utilities
30 Version: 0.30.215+svn2847
31 Release: %release_func 143596525
33 Group: System Environment/Base
34 URL: http://savannah.nongnu.org/projects/util-vserver/
35 Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%name-%version.tar.bz2
36 #Source1: http://ftp.linux-vserver.org/pub/utils/util-vserver/%name-%version.tar.bz2.asc
38 BuildRoot: %_tmppath/%name-%version-%release-root
40 Requires: %name-core = %version-%release
41 Requires: %name-lib = %version-%release
42 Requires: diffutils mktemp sed
43 Provides: vserver = %version-%release
44 Obsoletes: vserver < %version
45 BuildRequires: mount vconfig gawk iproute iptables
46 BuildRequires: gcc-c++ wget which diffutils
47 BuildRequires: e2fsprogs-devel nss-devel
48 BuildRequires: doxygen tetex-latex graphviz ghostscript
49 BuildRequires: libxslt rsync dump
50 Requires(post): %name-core
51 Requires(pre): %pkglibdir
52 Requires(postun): %pkglibdir
53 %{?with_dietlibc:BuildRequires: dietlibc}
54 %{?with_xalan:BuildRequires: xalan-j}
57 Summary: Dynamic libraries for util-vserver
58 Group: System Environment/Libraries
61 Summary: The core-utilities for util-vserver
62 Group: Applications/System
66 Summary: Tools which can be used to build vservers
67 Group: Applications/System
68 Requires: rpm wget binutils tar
69 Requires: %name = %version-%release
70 Requires(pre): %confdir
71 Requires(postun): %confdir
72 Requires(post): %name-core
75 Summary: SysV-initscripts for vserver
76 Group: System Environment/Base
77 Provides: init(%name) = sysv
78 Requires: make diffutils
80 Requires: %name = %version-%release
81 Requires(post): %chkconfig
82 Requires(preun): %chkconfig
83 Requires(pre): %_initrddir %pkglibdir
84 requires(postun): %_initrddir %pkglibdir
87 Summary: Legacy utilities for util-vserver
88 Group: Applications/System
89 Requires: %name = %version-%release
90 Requires(post): %chkconfig
91 Requires(preun): %chkconfig
92 Requires(pre): %_initrddir %pkglibdir
93 requires(postun): %_initrddir %pkglibdir
96 Summary: Header-files and libraries needed to develop vserver based applications
97 Group: Development/Libraries
99 Requires: %name-lib = %version-%release
102 Summary: Python bindings to develop vserver-based applications
103 Group: Development/Libraries
104 BuildRequires: python-devel ctags
105 Requires: %name-lib = %version-%release
109 util-vserver provides the components and a framework to setup virtual
110 servers. A virtual server runs inside a linux server. It is nevertheless
111 highly independent. As such, you can run various services with normal
112 configuration. The various vservers can't interact with each other and
113 can't interact with services in the main server.
115 This requires a special kernel supporting the new new_s_context and
116 set_ipv4root system call.
119 util-vserver provides the components and a framework to setup virtual
120 servers. A virtual server runs inside a linux server. It is nevertheless
121 highly independent. As such, you can run various services with normal
122 configuration. The various vservers can't interact with each other and
123 can't interact with services in the main server.
125 This package contains the shared libraries needed by all other
126 'util-vserver' subpackages.
129 util-vserver provides the components and a framework to setup virtual
130 servers. A virtual server runs inside a linux server. It is nevertheless
131 highly independent. As such, you can run various services with normal
132 configuration. The various vservers can't interact with each other and
133 can't interact with services in the main server.
135 This package contains utilities which are required to communicate with
136 the Linux-Vserver enabled kernel.
140 util-vserver provides the components and a framework to setup virtual
141 servers. A virtual server runs inside a linux server. It is nevertheless
142 highly independent. As such, you can run various services with normal
143 configuration. The various vservers can't interact with each other and
144 can't interact with services in the main server.
146 This package contains utilities which assist in building Vservers.
149 util-vserver provides the components and a framework to setup virtual
150 servers. A virtual server runs inside a linux server. It is nevertheless
151 highly independent. As such, you can run various services with normal
152 configuration. The various vservers can't interact with each other and
153 can't interact with services in the main server.
155 This package contains the SysV initscripts which start and stop
156 VServers and related tools.
160 util-vserver provides the components and a framework to setup virtual
161 servers. A virtual server runs inside a linux server. It is nevertheless
162 highly independent. As such, you can run various services with normal
163 configuration. The various vservers can't interact with each other and
164 can't interact with services in the main server.
166 This package contains the tools which are needed to work with VServers
167 having an old-style configuration.
171 util-vserver provides the components and a framework to setup virtual
172 servers. A virtual server runs inside a linux server. It is nevertheless
173 highly independent. As such, you can run various services with normal
174 configuration. The various vservers can't interact with each other and
175 can't interact with services in the main server.
177 This package contains header files and libraries which are needed to
178 develop VServer related applications.
181 util-vserver provides the components and a framework to setup virtual
182 servers. A virtual server runs inside a linux server. It is nevertheless
183 highly independent. As such, you can run various services with normal
184 configuration. The various vservers can't interact with each other and
185 can't interact with services in the main server.
187 This package contains the files needed to interface with the
188 Linux-VServer API from Python.
194 sed -i -e 's!^\(# chkconfig: \)[0-9]\+ !\1- !' sysv/*
198 %configure --with-initrddir=%_initrddir --enable-release \
199 --with-crypto-api=nss \
201 %{!?with_dietlibc:--disable}%{?with_dietlibc:--enable}-dietlibc
203 %__make %{?_smp_mflags} all
204 %__make %{?_smp_mflags} doc
208 rm -rf $RPM_BUILD_ROOT
209 %__make DESTDIR="$RPM_BUILD_ROOT" install install-distribution
211 rm -f $RPM_BUILD_ROOT%_libdir/*.la \
212 $RPM_BUILD_ROOT%python_sitearch/*.*a
214 MANIFEST_CONFIG='%config' \
215 MANIFEST_CONFIG_NOREPLACE='%config(noreplace)' \
216 contrib/make-manifest %name $RPM_BUILD_ROOT contrib/manifest.dat
221 LC_NUMERIC=de_DE.UTF-8 ./lib_internal/testsuite/crypto-speed || :
225 rm -rf $RPM_BUILD_ROOT
229 test -d /vservers || mkdir -m0000 /vservers
230 test -d /vservers/.pkg || mkdir -m0755 /vservers/.pkg
232 f="%confdefaultdir/vdirbase"; test -L "$f" -o -e "$f" || ln -s /vservers "$f"
233 f="%confdefaultdir/run.rev"; test -L "$f" -o -e "$f" || ln -s %_localstatedir/run/vservers.rev "$f"
234 f="%confdefaultdir/cachebase"; test -L "$f" -o -e "$f" || ln -s %_localstatedir/cache/vservers "$f"
236 %_sbindir/setattr --barrier /vservers /vservers/.pkg || :
240 test "$1" != 0 || rm -rf %_localstatedir/cache/vservers/* 2>/dev/null || :
243 %post lib -p /sbin/ldconfig
244 %postun lib -p /sbin/ldconfig
248 %chkconfig --add vservers-default
249 %chkconfig --add vprocunhide
250 %chkconfig --add util-vserver
254 test "$1" != 0 || %_initrddir/vprocunhide stop &>/dev/null || :
256 test "$1" != 0 || %chkconfig --del vprocunhide
257 test "$1" != 0 || %chkconfig --del vservers-default
258 test "$1" != 0 || %chkconfig --del util-vserver
262 test "$1" = 0 || %_initrddir/vprocunhide condrestart >/dev/null || :
265 %triggerin build -- fedora-release, centos-release
272 test -r "$i" || continue
274 target=%confdir/.distributions/.common/pubkeys/$base-$(basename "$i")
278 copy fedora /usr/share/doc/fedora-release-*/RPM-GPG-*
279 copy fedora /etc/pki/rpm-gpg/RPM-GPG-*
280 copy centos /usr/share/doc/centos-*/RPM-GPG-KEY-*
284 test -d /vservers/.hash || mkdir -m0700 /vservers/.hash
286 f="%confdefaultdir/apps/vunify/hash"; test -e "$f"/method -o -e "$f"/00 || \
287 ln -s /vservers/.hash "$f"/00
289 %_sbindir/setattr --barrier /vservers/.hash || :
293 test "$1" != 0 || rm -f %confdir/.distributions/.common/pubkeys/fedora-*
296 ## Temporary workaround to remove old v_* files; it will conflict
297 ## somehow with the -legacy package but can be fixed by reinstalling
299 ## TODO: remove me in the final .spec file
300 %define v_services httpd named portmap sendmail smb sshd xinetd gated
301 %triggerun sysv -- util-vserver-sysv < 0.30.198
302 for i in %v_services; do
303 %chkconfig --del v_$i || :
308 %chkconfig --add rebootmgr
309 %chkconfig --add vservers-legacy
311 for i in %v_services; do
312 %chkconfig --add v_$i
317 test "$1" != 0 || %_initrddir/rebootmgr stop &>/dev/null || :
319 test "$1" != 0 || for i in %v_services; do
320 %chkconfig --del v_$i
323 test "$1" != 0 || %chkconfig --del rebootmgr
324 test "$1" != 0 || %chkconfig --del vservers-legacy
327 test "$1" = 0 || %_initrddir/rebootmgr condrestart >/dev/null || :
330 %files -f %name-base.list
331 %defattr(-,root,root,-)
332 %doc AUTHORS COPYING ChangeLog NEWS README THANKS
333 %doc doc/*.html doc/*.css
337 %dir %confdefaultdir/apps
338 %dir %confdefaultdir/files
339 %dir %pkglibdir/defaults
340 %ghost %confdefaultdir/cachebase
341 %ghost %confdefaultdir/vdirbase
342 %ghost %confdefaultdir/run.rev
344 %dir %_localstatedir/cache/vservers
345 %dir %_localstatedir/run/vservers
346 %dir %_localstatedir/run/vservers.rev
347 %dir %_localstatedir/run/vshelper
350 %files lib -f %name-lib.list
351 %files sysv -f %name-sysv.list
354 %files core -f %name-core.list
355 %defattr(-,root,root,-)
359 %files build -f %name-build.list
360 %defattr(-,root,root,-)
361 %doc contrib/yum*.patch
362 %dir %confdir/.distributions
363 %dir %confdir/.distributions/*
364 %dir %confdir/.distributions/*/apt
365 %dir %confdir/.distributions/.common
366 %dir %confdir/.distributions/.common/pubkeys
367 %dir %confdefaultdir/apps/vunify
368 %dir %confdefaultdir/apps/vunify/hash
371 %files legacy -f %name-legacy.list
372 %defattr(-,root,root,-)
373 %dir %pkglibdir/legacy
376 %files devel -f %name-devel.list
377 %defattr(-,root,root,-)
378 %doc lib/apidoc/latex/refman.pdf
383 %defattr(-,root,root,-)
384 %python_sitearch/*.so
388 * Sun Aug 23 2009 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.215+svn2847-0
389 - updated to svn 2847 snapshot
390 - added -python subpackage
392 * Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.30.215-8
393 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
395 * Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.30.215-7
396 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
398 * Sat Oct 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.215-6
399 - rebuilt with recent dietlibc
401 * Sat Oct 18 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.215-5
402 - fixed build with recent rpm
404 * Mon Sep 8 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.30.215-4
407 * Sat Apr 19 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.215-3
410 * Mon Apr 14 2008 Alex Lancaster <alexlan[AT]fedoraproject org> - 0.30.215-2
411 - Temporarily disable check to get it to at least build and fix broken
414 * Sat Apr 12 2008 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.215-1
415 - updated to 0.30.215
416 - use nss-devel instead of beecrypt-devel as BR
417 - run crypto-suite benchmark in %%check
418 - fixed initscript runlevels (#441311)
420 * Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.30.214-3
421 - Autorebuild for GCC 4.3
423 * Wed Sep 19 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.214-2
424 - fixed upgrade path from 0.30.213 to 0.30.214; rpm fails to handle when
425 a directory becomes a symlink. Hence, remove the 'etch' directory in
428 * Mon Sep 3 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.214-1
429 - updated to 0.30.214
431 * Sat Aug 4 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.213-2
432 - added patch to make 'vyum' work with a patched yum-3.2
434 * Thu May 31 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.213-1
435 - updated to 0.30.213
436 - disabled dietlibc build for PPC64
437 - enabled support for 'util-vserver' initscript
439 * Fri Apr 20 2007 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.212-4
440 - BR some tools tested by ./configure
442 * Fri Jan 19 2007 David Woodhouse <dwmw2@infradead.org> - 0.30.212-3
443 - Build with 64KiB page size
445 * Fri Jan 19 2007 David Woodhouse <dwmw2@infradead.org> - 0.30.212-2
446 - rebuilt with PPC support
448 * Sun Dec 10 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.212-1
449 - updated to 0.30.212
451 - requires 'rsync' for -build to support new 'rsync' build method
453 * Thu Oct 12 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.211-2
454 - added graphiz + ghostscript BR
456 * Thu Oct 12 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.211-1
457 - updated to 0.30.211
459 * Thu Oct 05 2006 Christian Iseli <Christian.Iseli@licr.org> 0.30.210-5
460 - rebuilt for unwind info generation, broken in gcc-4.1.1-21
462 * Mon Sep 18 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.210-4
465 * Sun Jul 9 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.210-3
466 - rebuilt with dietlibc-0.30
468 * Mon Feb 20 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.210-2
471 * Sun Jan 22 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.210-1
473 - removed patches which were from upstream
475 * Sun Jan 22 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.210-0
476 - do not require 'xalan' anymore by default
477 - removed 'Requires: apt'; apt-rpm is not maintained upstream anymore
478 - removed 'chattr' leftovers
479 - create the '/etc/vservers/.defaults/cachebase' symlink
480 - added /var/cache/vservers and the needed support
481 - set barrier attribute on /vservers/.pkg and /vservers/.hash
482 - added 'centos-release' to the list of packages in the copy-the-keys
484 - create '/vservers/.hash' and add initial configuration for it
486 * Thu Nov 3 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.209-4
487 - exclude PPC from build; see
488 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=172389
489 - added patch to make 'vyum' work with yum-2.4
491 * Tue Nov 1 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.209-3
492 - added lot of debug stuff to find out the reason for the 'make check'
493 failure on PPC (cflags & personlity get killed there)
495 * Sun Oct 30 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0.30.209-2
496 - made sure that ensc_fmt/* it compiled with dietlibc. Else, it will
497 fail with the stack-protector in FC5's gcc
499 * Sun Oct 30 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.209-1
503 * Sat Jul 16 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-2
506 * Fri Jul 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-1
508 - require the -lib subpackage by -devel
509 - copy GPG keys from /etc/pki/rpm-gpg/
511 * Fri Apr 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.206-1
512 - added patches to make yum work in chroot environments
515 * Thu Mar 24 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.205-1
516 - added some %%descriptions
517 - copy GPG keys from the system into the confdir
518 - buildrequire dietlibc-0.25
519 - BuildRequire beecrypt-devel
521 - use %%global instead of %%define
522 - removed 'run.rev' as a vserver-local variable and made it a system-wide setting
524 * Wed Jan 26 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.198-0.3
525 - updated BuildRequires:
526 - use 'setattr --barrier' instead of 'chattr +t' in the %%post scriptlet
527 - moved the v_* initscripts to legacy
528 - do not ship the /vservers directory itself; as it is immutable, the
529 extraction will fail else
531 * Thu Sep 9 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.194-0
532 - documented switches for 'rpmbuild'
534 * Wed May 26 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.215-0
535 - (re)added the MANIFEST_* variables which were lost some time ago;
536 this will preserve %%config files...
538 * Mon Mar 15 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.202-0
539 - use file-list for sysv scripts also
541 * Sat Mar 6 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.198-0
542 - added vprocunhide-service support
543 - added doxygen support
546 * Wed Oct 1 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.23.5-0