X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=util-vserver.spec;h=df5c31489f21a6bd11b39fede8601e0161d64992;hb=22ee1f7a5c708baa5f507284d6699feb7e8fd0ed;hp=86ea03ea41cb1f1b04a9a0e92cf3400b6238fc0f;hpb=d2c9e88942cbfa87c7459a49ab5664699b5c8492;p=packages%2Futil-vserver.git diff --git a/util-vserver.spec b/util-vserver.spec index 86ea03e..df5c314 100644 --- a/util-vserver.spec +++ b/util-vserver.spec @@ -1,10 +1,18 @@ # TODO -# - somewhy empty /var/cache/vservers is needed when building pld vserver # - make build create /dev/std{in,out,err} links -# - f8 subpackage # - reject install in %%pretrans if /proc/virtual/info has incompatible version # - unpackaged # /etc/rc.d/init.d/util-vserver -- # integrate to our initscript (util-vserver sets the path to vshelper and kills all guest processes) +# - move to main pkg: +# vserver initng delete +# /usr/lib64/util-vserver/vserver.delete: line 19: /usr/lib64/util-vserver/vserver-build.functions: No such file or directory +# /usr/lib64/util-vserver/vserver.delete: line 20: /usr/lib64/util-vserver/vserver-build.functions.pkgmgmt: No such file or directory +# or move the delete func to -build +# - make pkgmgmnt internalize modify poldek conf to unignore vserver-packages +# - service vservers stop should shutdown all running vservers (respecting +# configuration for order) otherwise on shutdown vservers are not nicely +# shutdown! +# - when building ac quest on th, the platform file for x8664 archidecture is wrong # # m68k and mips are the only not supported archs # @@ -14,7 +22,7 @@ %bcond_without no_dynamic_context # disable enforcement of disabled dynamic context %bcond_with xalan # use the xalan xslt processor # -%define _vproc_version 0.01 +%define vproc_version 0.01 # diet compile fails with ccache in %{__cc} %undefine with_ccache # @@ -22,7 +30,7 @@ Summary: Linux virtual server utilities Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych Name: util-vserver Version: 0.30.215 -Release: 2.2 +Release: 9.1 License: GPL Group: Applications/System Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2 @@ -39,7 +47,7 @@ Source8: vrootdevices.sysconfig # http://www.paul.sladen.org/vserver/archives/200505/0078.html Source9: %{name}-pkgmgmt.txt Source10: %{name}-initpost.sh -Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{_vproc_version}.tar.bz2 +Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85 Source12: %{name}-vhashify.cron Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc @@ -49,6 +57,7 @@ Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc Patch0: %{name}-vsysvwrapper.patch Patch1: %{name}-pld.patch Patch4: %{name}-m4-diet.patch +Patch5: %{name}-yum-verb-nogpg.patch Patch6: %{name}-build-umask.patch Patch7: %{name}-utmpx.patch Patch8: %{name}-vprocunhide.patch @@ -60,6 +69,10 @@ Patch13: %{name}-tmpdir.patch Patch14: %{name}-rpmpath.patch Patch15: %{name}-interfaces-ignore-cvs-dir.patch Patch16: %{name}-personalitymachine.patch +Patch17: %{name}-backupfiles.patch +Patch18: %{name}-trunk_fixes.patch +Patch19: %{name}-vprocunhide-net.patch +Patch20: %{name}-more-caps.patch URL: http://savannah.nongnu.org/projects/util-vserver/ BuildRequires: autoconf BuildRequires: automake >= 1.9 @@ -88,6 +101,7 @@ BuildRequires: tetex-metafont %endif Requires(post,preun): /sbin/chkconfig Requires: %{name}-lib = %{version}-%{release} +Requires: diffutils Requires: issue Requires: mktemp >= 1.5-18 Requires: rc-scripts @@ -96,6 +110,11 @@ Requires: util-linux Obsoletes: util-vserver-core BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%if %{with dietlibc} +# binaries created with this option have broken segments when using dietlibc +%define filterout_ld -Wl,-z,relro +%endif + # for adapter %define _usrbin /usr/bin %define _usrsbin /usr/sbin @@ -394,6 +413,7 @@ Szablony do tworzenia VServerów dla dystrybucji Ubuntu. %patch0 -p1 %patch1 -p1 %patch4 -p1 +%patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 @@ -405,6 +425,10 @@ Szablony do tworzenia VServerów dla dystrybucji Ubuntu. %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 +%patch18 -p1 +%patch19 -p1 +%patch20 -p1 install %{SOURCE9} package-management.txt @@ -414,6 +438,7 @@ unset LD_SYMBOLIC_FUNCTIONS || : %if %{with dietlibc} CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__" %endif +%{__libtoolize} %{__aclocal} -I m4 %{__automake} %{__autoconf} @@ -438,7 +463,7 @@ CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__" %{__make} all %{?with_doc:%{__make} doc} -%{__make} -C vproc-%{_vproc_version} \ +%{__make} -C vproc-%{vproc_version} \ CC="%{__cc}" \ CFLAGS="%{rpmcflags}" @@ -480,8 +505,10 @@ install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost +%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost -install vproc-%{_vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir} +%endif +install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir} install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF @@ -495,140 +522,144 @@ install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc # set arch for pld-ac in pld.conf -%ifarch i486 i686 ppc sparc alpha athlon -%define _ftp_arch %{_target_cpu} +%ifarch i586 i686 ppc sparc alpha athlon +%define ftp_arch %{_target_cpu} %endif %ifarch %{x8664} -%define _ftp_arch amd64 -%endif -%ifarch pentium2 pentium3 pentium4 -%define _ftp_arch i686 +%define ftp_arch amd64 %endif %ifarch i486 -%define _ftp_arch i386 +%define ftp_arch i386 +%endif +%ifarch pentium2 pentium3 pentium4 +%define ftp_arch i686 %endif %ifarch sparcv9 sparc64 -%define _ftp_arch sparc +%define ftp_arch sparc %endif -%{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf +%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf # set arch for pld-th in pld.conf %ifarch i486 i686 ppc sparc alpha athlon -%define _ftp_arch %{_target_cpu} +%define ftp_arch %{_target_cpu} %endif %ifarch %{x8664} -%define _ftp_arch x86_64 +%define ftp_arch x86_64 %endif %ifarch i586 -%define _ftp_arch i486 +%define ftp_arch i486 %endif %ifarch pentium2 pentium3 pentium4 -%define _ftp_arch i686 +%define ftp_arch i686 %endif %ifarch sparcv9 sparc64 -%define _ftp_arch sparc +%define ftp_arch sparc %endif -%{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf +%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf +%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4 # set arch for pld-ti in pld.conf -%ifarch i486 i686 ppc sparc alpha athlon -%define _ftp_arch %{_target_cpu} +%ifarch i586 i686 +%define ftp_arch %{_target_cpu} %endif %ifarch %{x8664} -%define _ftp_arch x86_64 +%define ftp_arch x86_64 %endif -%ifarch pentium2 pentium3 pentium4 -%define _ftp_arch i686 +%ifarch athlon pentium2 pentium3 pentium4 +%define ftp_arch i686 %endif -%ifarch sparcv9 sparc64 -%define _ftp_arch sparc +%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf %endif -%{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf -cat <<'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm/platform +cd $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm +cat <<'EOF' > platform # first platform file entry can't contain regexps %{_target_cpu}-%{_target_vendor}-linux # x86_64 things %ifarch x86_64 -amd64-[^-]*-linux(-gnu)? -x86_64-[^-]*-linux(-gnu)? +amd64-[^-]*-[Ll]inux(-gnu)? +x86_64-[^-]*-[Ll]inux(-gnu)? %endif %ifarch amd64 -amd64-[^-]*-linux(-gnu)? -x86_64-[^-]*-linux(-gnu)? +amd64-[^-]*-[Ll]inux(-gnu)? +x86_64-[^-]*-[Ll]inux(-gnu)? %endif %ifarch ia32e -ia32e-[^-]*-linux(-gnu)? -x86_64-[^-]*-linux(-gnu)? +ia32e-[^-]*-[Ll]inux(-gnu)? +x86_64-[^-]*-[Ll]inux(-gnu)? %endif # x86 things %ifarch athlon %{x8664} -athlon-[^-]*-linux(-gnu)? +athlon-[^-]*-[Ll]inux(-gnu)? %endif %ifarch pentium4 athlon %{x8664} -pentium4-[^-]*-linux(-gnu)? +pentium4-[^-]*-[Ll]inux(-gnu)? %endif %ifarch pentium3 pentium4 athlon %{x8664} -pentium3-[^-]*-linux(-gnu)? +pentium3-[^-]*-[Ll]inux(-gnu)? %endif %ifarch i686 pentium3 pentium4 athlon %{x8664} -i686-[^-]*-linux(-gnu)? +i686-[^-]*-[Ll]inux(-gnu)? %endif %ifarch i586 i686 pentium3 pentium4 athlon %{x8664} -i586-[^-]*-linux(-gnu)? +i586-[^-]*-[Ll]inux(-gnu)? %endif %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664} -i486-[^-]*-linux(-gnu)? +i486-[^-]*-[Ll]inux(-gnu)? %endif %ifarch %{ix86} %{x8664} -i386-[^-]*-linux(-gnu)? +i386-[^-]*-[Ll]inux(-gnu)? %endif %ifarch alpha -alpha-[^-]*-linux(-gnu)? +alpha-[^-]*-[Ll]inux(-gnu)? %endif %ifarch ia64 -ia64-[^-]*-linux(-gnu)? +ia64-[^-]*-[Ll]inux(-gnu)? %endif %ifarch ppc64 -powerpc64-[^-]*-linux(-gnu)? -ppc64-[^-]*-linux(-gnu)? +powerpc64-[^-]*-[Ll]inux(-gnu)? +ppc64-[^-]*-[Ll]inux(-gnu)? %endif %ifarch ppc ppc64 -powerpc-[^-]*-linux(-gnu)? -ppc-[^-]*-linux(-gnu)? +powerpc-[^-]*-[Ll]inux(-gnu)? +ppc-[^-]*-[Ll]inux(-gnu)? %endif %ifarch s390x -s390x-[^-]*-linux(-gnu)? +s390x-[^-]*-[Ll]inux(-gnu)? %endif %ifarch s390 s390x -s390-[^-]*-linux(-gnu)? +s390-[^-]*-[Ll]inux(-gnu)? %endif %ifarch sparc64 -sparc64-[^-]*-linux(-gnu)? -sparcv8-[^-]*-linux(-gnu)? -sparcv9-[^-]*-linux(-gnu)? +sparc64-[^-]*-[Ll]inux(-gnu)? +sparcv8-[^-]*-[Ll]inux(-gnu)? +sparcv9-[^-]*-[Ll]inux(-gnu)? %endif %ifarch sparcv9 -sparcv8-[^-]*-linux(-gnu)? -sparcv9-[^-]*-linux(-gnu)? +sparcv8-[^-]*-[Ll]inux(-gnu)? +sparcv9-[^-]*-[Ll]inux(-gnu)? %endif %ifarch sparc sparcv9 sparc64 -sparc-[^-]*-linux(-gnu)? +sparc-[^-]*-[Ll]inux(-gnu)? %endif # noarch noarch-[^-]*-.* EOF +cd - + +# current debootstrap link +echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \ + > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri -# XXX baggins check this: needed but seems unused -install -d $RPM_BUILD_ROOT/var/cache/vservers +install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek # we have our own initscript which does the same rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default @@ -709,6 +740,7 @@ exit 0 %dir %{_sysconfdir}/vservers/.defaults/apps %dir %{_sysconfdir}/vservers/.defaults/files %{_sysconfdir}/vservers/.defaults/vdirbase +%{_sysconfdir}/vservers/.defaults/cachebase %{_sysconfdir}/vservers/.defaults/run.rev /sbin/vshelper %attr(755,root,root) %{_sbindir}/chbind @@ -750,7 +782,11 @@ exit 0 %dir %{_libdir}/%{name}/defaults %{_libdir}/%{name}/FEATURES.txt %{_libdir}/%{name}/util-vserver-vars -%{_libdir}/%{name}/defaults/* +%{_libdir}/%{name}/defaults/context.start +%{_libdir}/%{name}/defaults/environment +%{_libdir}/%{name}/defaults/h2ext.desc +%{_libdir}/%{name}/defaults/mtab +%{_libdir}/%{name}/defaults/vprocunhide-files %attr(755,root,root) %{_libdir}/%{name}/capchroot %attr(755,root,root) %{_libdir}/%{name}/chain-echo %attr(755,root,root) %{_libdir}/%{name}/chbind-compat @@ -795,6 +831,7 @@ exit 0 %dir %{_localstatedir}/run/vservers.rev %dir %{_localstatedir}/run/vshelper %dir /var/cache/vservers +%dir /var/cache/vservers/poldek %files lib %defattr(644,root,root,755) @@ -823,14 +860,18 @@ exit 0 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys %attr(755,root,root) %{_libdir}/%{name}/rpm-fake* %dir %{_libdir}/%{name}/distributions -%attr(-,root,root) %{_libdir}/%{name}/distributions/defaults +%{_libdir}/%{name}/distributions/defaults %dir %{_libdir}/%{name}/distributions/template -%attr(755,root,root) %{_libdir}/%{name}/distributions/template/init* -%attr(-,root,root) %{_libdir}/%{name}/distributions/redhat +%attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost +%attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre +%dir %{_libdir}/%{name}/distributions/redhat +%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost +%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre +%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit %{_libdir}/%{name}/vserver-setup.functions %{_libdir}/%{name}/vserver-build.* %{_libdir}/%{name}/defaults/fstab -%{_libdir}/%{name}/defaults/debootstrap.uri +%{_libdir}/%{name}/defaults/debootstrap.* %{_libdir}/%{name}/defaults/vunify-exclude %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker @@ -915,8 +956,13 @@ exit 0 %files -n vserver-distro-pld %defattr(644,root,root,755) -%attr(-,root,root) %{_libdir}/%{name}/distributions/pld -%attr(-,root,root) %{_libdir}/%{name}/distributions/pld-* +%dir %{_libdir}/%{name}/distributions/pld +%attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost +%dir %{_libdir}/%{name}/distributions/pld-* +%{_libdir}/%{name}/distributions/pld-*/pkgs +%{_libdir}/%{name}/distributions/pld-*/pubkeys +%{_libdir}/%{name}/distributions/pld-*/rpm +%attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost %dir %{_sysconfdir}/vservers/.distributions/pld-ac %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d @@ -925,10 +971,12 @@ exit 0 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf +%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4 %dir %{_sysconfdir}/vservers/.distributions/pld-ti %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf +%endif %files -n vserver-distro-redhat %defattr(644,root,root,755)