SHA256
1
0
forked from pool/gcc

- Rework gcc-info.

* Install symlinks to the versioned info files and adjust
    install_info calls.  [bnc#756182]
  * Provide uninstall hook that removes the alias entries.

OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc?expand=0&rev=33
This commit is contained in:
Richard Biener 2012-11-28 14:09:43 +00:00 committed by Git OBS Bridge
parent 09d3438c55
commit 14fff57287
2 changed files with 35 additions and 12 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Wed Nov 28 14:03:29 UTC 2012 - rguenther@suse.com
- Rework gcc-info.
* Install symlinks to the versioned info files and adjust
install_info calls. [bnc#756182]
* Provide uninstall hook that removes the alias entries.
-------------------------------------------------------------------
Thu Oct 4 18:21:01 UTC 2012 - dmueller@suse.com

View File

@ -106,21 +106,28 @@ Summary: The system GNU Compiler documentation
License: GFDL-1.2
Group: Development/Languages/C and C++
PreReq: %{install_info_prereq}
Requires: gcc%{gcc_version}-info
PreReq: gcc%{gcc_version}-info
%description -n gcc-info
The system GNU Compiler documentation.
# There is intentionally no postun with install_info_delete as there
# is no way to just remove the aliased entries. The content owners
# install_info_delete will also remove the aliases though.
# install-info does not pick up descriptions from the content.
# install / update the entries
%post -n gcc-info
%install_info --info-dir=%{_infodir} --name=cpp --description=\\"The GNU C preprocessor.\\" %{_infodir}/cpp-%{gcc_suffix}.info.gz
%install_info --info-dir=%{_infodir} --name=gcc --description=\\"The GNU Compiler Collection.\\" %{_infodir}/gcc-%{gcc_suffix}.info.gz
%install_info --info-dir=%{_infodir} --name=g++ --description=\\"The GNU C++ compiler.\\" %{_infodir}/g++-%{gcc_suffix}.info.gz
%install_info --info-dir=%{_infodir} --name=gcj --description=\\"Ahead-of-time compiler for the Java language\\" %{_infodir}/gcj-%{gcc_suffix}.info.gz
%install_info --info-dir=%{_infodir} --name=gfortran --description=\\"The GNU Fortran compiler.\\" %{_infodir}/gfortran-%{gcc_suffix}.info.gz
%install_info --info-dir=%{_infodir} --name=cpp --description='The GNU C preprocessor.' %{_infodir}/cpp.info.gz
%install_info --info-dir=%{_infodir} --name=gcc --description='The GNU Compiler Collection.' %{_infodir}/gcc.info.gz
%install_info --info-dir=%{_infodir} --name=g++ --description='The GNU C++ compiler.' %{_infodir}/g++.info.gz
%install_info --info-dir=%{_infodir} --name=gcj --description='Ahead-of-time compiler for the Java language' %{_infodir}/gcj.info.gz
%install_info --info-dir=%{_infodir} --name=gfortran --description='The GNU Fortran compiler.' %{_infodir}/gfortran.info.gz
# if we uninstall, clean the entries
%preun -n gcc-info
if [ "$1" -eq "0" ] ; then
%install_info --delete --info-dir=%{_infodir} --name=cpp %{_infodir}/cpp.info.gz
%install_info --delete --info-dir=%{_infodir} --name=gcc %{_infodir}/gcc.info.gz
%install_info --delete --info-dir=%{_infodir} --name=g++ %{_infodir}/g++.info.gz
%install_info --delete --info-dir=%{_infodir} --name=gcj %{_infodir}/gcj.info.gz
%install_info --delete --info-dir=%{_infodir} --name=gfortran %{_infodir}/gfortran.info.gz
fi
%package -n gcc-c++
Summary: The system GNU C++ Compiler
@ -342,6 +349,7 @@ echo "This is a dummy package to provide a dependency on the system compiler." >
mkdir -p $RPM_BUILD_ROOT/lib
mkdir -p $RPM_BUILD_ROOT%{_prefix}/bin
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
mkdir -p $RPM_BUILD_ROOT%{_infodir}
mkdir -p $RPM_BUILD_ROOT%{_prefix}/share/doc/packages/gcc-objc/
mkdir -p $RPM_BUILD_ROOT%{_prefix}/share/doc/packages/gcc-obj-c++/
# Link all the binaries
@ -384,6 +392,10 @@ for man1 in \
; do
ln -sf $man1-%{gcc_suffix}.1.gz $RPM_BUILD_ROOT%{_mandir}/man1/$man1.1.gz
done
# Link info pages
for info in cpp gcc g++ gcj gfortran ; do
ln -sf $info-%{gcc_suffix}.info.gz $RPM_BUILD_ROOT%{_infodir}/$info.info.gz
done
# Provide the traditional /lib/cpp that only handles C
cp $RPM_SOURCE_DIR/cpp $RPM_BUILD_ROOT/lib/
chmod 755 $RPM_BUILD_ROOT/lib/cpp
@ -490,8 +502,11 @@ EOF
%files -n gcc-info
%defattr(-,root,root)
# empty - only for the dependency
%doc README
%{_infodir}/cpp.info.gz
%{_infodir}/gcc.info.gz
%{_infodir}/g++.info.gz
%{_infodir}/gcj.info.gz
%{_infodir}/gfortran.info.gz
%if %{build_ada}
%files -n gcc-ada