added support for new migrate feature
[util-vserver.git] / util-vserver / util-vserver.spec.in
index 7d5ab6e..9b37aa2 100644 (file)
@@ -3,6 +3,7 @@
 %define confdir                %_sysconfdir/vservers
 %define confdefaultdir %confdir/.defaults
 %define pkglibdir      %_libdir/%name
+%define __chattr       /usr/bin/chattr
 
 Summary:       Linux virtual server utilities
 Name:          @PACKAGE@
@@ -16,13 +17,19 @@ Source0:    http://savannah.nongnu.org/download/util-vserver/stable.pkg/%version/%n
 BuildRoot:     %_tmppath/%name-%version-%release-root
 Requires:      init(@PACKAGE@)
 Requires:      %name-core = %epoch:%version-%release
+Requires:      %name-lib  = %epoch:%version-%release
 Provides:      vserver = %epoch:%version-%release
 Obsoletes:     vserver < %epoch:%version
 BuildRequires: mount vconfig gawk iproute
-BuildRequires: gcc-c++
+BuildRequires: gcc-c++ wget
 BuildRequires: e2fsprogs-devel
+Requires(post):        %__chattr
 %{!?_without_dietlibc:BuildRequires:   dietlibc >= 0:0.22}
 
+%package lib
+Summary:       Dynamic libraries for util-vserver
+Group:         System Environment/Libraries
+
 %package core
 Summary:       The core-utilities for util-vserver
 Group:         Applications/System
@@ -31,7 +38,7 @@ Group:                Applications/System
 Summary:       Tools which can be used to build vservers
 Group:         Applications/System
 Requires:      %name = %epoch:%version-%release
-Requires:      rpm apt
+Requires:      rpm apt wget binutils tar
 
 %package sysv
 Summary:       SysV-initscripts for vserver
@@ -40,6 +47,11 @@ Provides:    init(@PACKAGE@)
 Requires:      %name = %epoch:%version-%release
 Requires:      initscripts
 
+%package legacy
+Summary:       Legacy utilities for util-vserver
+Group:         Applications/System
+Requires:      %name = %epoch:%version-%release
+
 %package devel
 Summary:       Header-files and libraries which are needed to develop vserver based applications
 Group:         Development/Libraries
@@ -56,9 +68,11 @@ can't interact with services in the main server.
 This requires a special kernel supporting the new new_s_context and
 set_ipv4root system call.
 
+%description lib
 %description core
 %description build
 %description sysv
+%description legacy
 %description devel
 
 
@@ -78,6 +92,12 @@ rm -rf $RPM_BUILD_ROOT
 
 rm -f $RPM_BUILD_ROOT/%_libdir/*.la
 
+contrib/make-manifest %name $RPM_BUILD_ROOT contrib/manifest.dat
+
+
+%check || :
+%__make check
+
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -87,6 +107,8 @@ rm -rf $RPM_BUILD_ROOT
 f="%confdefaultdir/vdirbase"; test -L "$f" -o -e "$f" || ln -s /vservers             "$f"
 f="%confdefaultdir/run.rev";  test -L "$f" -o -e "$f" || ln -s /var/run/vservers.rev "$f"
 
+%__chattr +t /vservers || :
+
 
 %define v_services     httpd named portmap sendmail smb sshd xinetd
 %post sysv
@@ -112,42 +134,15 @@ test "$1" != 0 || /sbin/chkconfig --del vservers
 test "$1" = 0  || %{_initrddir}/rebootmgr condrestart >/dev/null || :
 
 
-%post   core -p /sbin/ldconfig
-%postun core -p /sbin/ldconfig
+%post   lib -p /sbin/ldconfig
+%postun lib -p /sbin/ldconfig
 
 
-%files
+%files -f %name-base.list
 %defattr(-,root,root,-)
 %doc AUTHORS COPYING ChangeLog NEWS README THANKS
 %doc doc/FAQ.txt
-%pkglibdir
-%exclude %pkglibdir/distributions
-%exclude %pkglibdir/distrib-info
-%exclude %pkglibdir/rpm-fake.so
-%exclude %pkglibdir/util-vserver-vars
-%exclude %pkglibdir/vapt-get*
-%exclude %pkglibdir/vrpm*
-%exclude %pkglibdir/vserver-build*
-%exclude %pkglibdir/vserver-setup*
-%exclude %pkglibdir/vunify
-%_sbindir/exec-cd
-%_sbindir/rebootmgr
-%_sbindir/vdu
-%_sbindir/vfiles
-%_sbindir/vlimit
-%_sbindir/vps
-%_sbindir/vpstree
-%_sbindir/vserver
-%_sbindir/vserver-stat
-%_sbindir/vtop
-%_mandir/*/*
-%exclude %_mandir/*/chbind*
-%exclude %_mandir/*/chcontext*
-%exclude %_mandir/*/reducecap*
-%exclude %_mandir/*/distrib-info*
-%exclude %_mandir/*/vserver-copy*
-%exclude %_mandir/*/vrpm*
-
+%dir %pkglibdir
 %dir %confdefaultdir
 %dir %confdefaultdir/init
 %dir %confdefaultdir/apps
@@ -156,7 +151,6 @@ test "$1" = 0  || %{_initrddir}/rebootmgr condrestart >/dev/null || :
 %ghost %confdefaultdir/vdirbase
 %ghost %confdefaultdir/run.rev
 
-
 %attr(000,root,root) %dir /vservers/.pkg
 %attr(000,root,root) %dir /vservers
 
@@ -164,61 +158,37 @@ test "$1" = 0  || %{_initrddir}/rebootmgr condrestart >/dev/null || :
 %dir /var/run/vservers.rev
 
 
-%files core
+%files lib -f %name-lib.list
+
+%files core -f %name-core.list
 %defattr(-,root,root,-)
-%_libdir/*.so.*
-%_sbindir/chbind
-%_sbindir/chcontext
-%_sbindir/new-namespace
-%_sbindir/reducecap
-%_sbindir/vkill
-%_sbindir/util-vserver-vars
-%pkglibdir/util-vserver-vars
-%_mandir/*/chbind*
-%_mandir/*/chcontext*
-%_mandir/*/reducecap*
 %dir %pkglibdir
 
 
-%files build
+%files build -f %name-build.list
 %defattr(-,root,root,-)
-%_sbindir/vapt-get
-%_sbindir/vrpm
-%_sbindir/vserver-copy
 %dir %pkglibdir
-%pkglibdir/distributions
-%pkglibdir/rpm-fake.so
-%pkglibdir/vapt-get*
-%pkglibdir/vrpm*
-%pkglibdir/vserver-build*
-%pkglibdir/vserver-setup*
-%pkglibdir/vunify
-%_mandir/*/distrib-info*
-%_mandir/*/vserver-copy*
-%exclude %_mandir/*/vrpm*
-
 %dir %confdir/.distributions
 %dir %confdir/.distributions/*
 %dir %confdir/.distributions/*/apt
 %config(noreplace) %confdir/.distributions/*/apt/sources.list
 
 
+%files legacy -f %name-legacy.list
+%defattr(-,root,root,-)
+%dir %pkglibdir/legacy
+
 
 %files sysv
 %defattr(-,root,root,-)
-%_initrddir/*
+%config %_initrddir/*
 %config(noreplace) %_sysconfdir/vservers.conf
 
 
-%files devel
+%files devel -f %name-devel.list
 %defattr(-,root,root,-)
-%_includedir/*.h
-%_libdir/*.a
-%_libdir/*.so
-%_libdir/pkgconfig/*
 
 
 %changelog
 * Wed Oct  1 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.23.5-0
 - Initial build.
-