install everything in /usr

This patch is needed for the /usr-move feature
https://fedoraproject.org/wiki/Features/UsrMove

This package requires now 'filesystem' >= 3, which is only installable
on a system which has /bin, /sbin, /lib, /lib64 as symlinks to /usr and
not regular directories. The 'filesystem' package acts as a guard, to
prevent *this* package to be installed on old unconverted systems.

New installations will have the 'filesystem' >=3 layout right away, old
installations need to be converted with anaconda or dracut first; only
after that, the 'filesystem' package, and also *this* package can be
installed.

Packages *should* not install files in /bin, /sbin, /lib, /lib64, but
only in the corresponding directories in /usr. Packages *must* not
install conflicting files with the same names in the corresponding
directories in / and /usr. Especially compatibilty symlinks must not be
installed.

Feel free to modify any of the changes to the spec file, but keep the
above in mind.
This commit is contained in:
Harald Hoyer 2012-01-25 14:13:39 +01:00
parent 5e41f83b8e
commit 7bb4ea376d

View File

@ -1,7 +1,7 @@
Summary: The GNU data compression program Summary: The GNU data compression program
Name: gzip Name: gzip
Version: 1.4 Version: 1.4
Release: 4%{?dist} Release: 5%{?dist}
# info pages are under GFDL license # info pages are under GFDL license
License: GPLv3+ and GFDL License: GPLv3+ and GFDL
Group: Applications/File Group: Applications/File
@ -25,6 +25,10 @@ URL: http://www.gzip.org/
Requires: /sbin/install-info Requires: /sbin/install-info
Requires: coreutils Requires: coreutils
BuildRequires: texinfo BuildRequires: texinfo
#Conflicts: filesystem < 3
Provides: /bin/gunzip
Provides: /bin/gzip
Provides: /bin/zcat
%description %description
The gzip package contains the popular GNU gzip data compression The gzip package contains the popular GNU gzip data compression
@ -49,28 +53,21 @@ very commonly used data compression program.
%build %build
export DEFS="NO_ASM" export DEFS="NO_ASM"
export CPPFLAGS="-DHAVE_LSTAT" export CPPFLAGS="-DHAVE_LSTAT"
%configure --bindir=/bin %configure
make make
#make gzip.info #make gzip.info
%install %install
rm -rf ${RPM_BUILD_ROOT} rm -rf ${RPM_BUILD_ROOT}
%makeinstall bindir=${RPM_BUILD_ROOT}/bin %makeinstall
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
ln -sf ../../bin/gzip ${RPM_BUILD_ROOT}%{_bindir}/gzip
ln -sf ../../bin/gunzip ${RPM_BUILD_ROOT}%{_bindir}/gunzip
for i in zcmp zegrep zforce zless znew gzexe zdiff zfgrep zgrep zmore ; do
mv ${RPM_BUILD_ROOT}/bin/$i ${RPM_BUILD_ROOT}%{_bindir}/$i
done
gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/gzip.info* gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/gzip.info*
# we don't ship it, so let's remove it from ${RPM_BUILD_ROOT} # we don't ship it, so let's remove it from ${RPM_BUILD_ROOT}
rm -f ${RPM_BUILD_ROOT}%{_infodir}/dir rm -f ${RPM_BUILD_ROOT}%{_infodir}/dir
# uncompress is a part of ncompress package # uncompress is a part of ncompress package
rm -f ${RPM_BUILD_ROOT}/bin/uncompress rm -f ${RPM_BUILD_ROOT}/%{_bindir}/uncompress
%post %post
if [ -f %{_infodir}/gzip.info* ]; then if [ -f %{_infodir}/gzip.info* ]; then
@ -87,12 +84,15 @@ fi
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%doc NEWS README AUTHORS ChangeLog THANKS TODO %doc NEWS README AUTHORS ChangeLog THANKS TODO
/bin/*
%{_bindir}/* %{_bindir}/*
%{_mandir}/*/* %{_mandir}/*/*
%{_infodir}/gzip.info* %{_infodir}/gzip.info*
%changelog %changelog
* Wed Jan 25 2012 Harald Hoyer <harald@redhat.com> 1.4-5
- install everything in /usr
https://fedoraproject.org/wiki/Features/UsrMove
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-4 * Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild