Merge vala-tools into main vala package

We had a way too complicated subpackage setup, with vala related utilities
split between vala and vala-tools packages. This led to most vala using
packages having to BuildRequire both vala and vala-tools. This commit
simplifies this by moving everything together into a single vala package, with
the exception of vala-devel that contains headers for linking with libvala.
This commit is contained in:
Kalev Lember 2016-09-22 06:04:14 +02:00
parent 3b04cfd26a
commit 82b21cc302

View File

@ -3,7 +3,7 @@
Name: vala Name: vala
Version: 0.34.0 Version: 0.34.0
Release: 1%{?dist} Release: 2%{?dist}
Summary: A modern programming language for GNOME Summary: A modern programming language for GNOME
# Most files are LGPLv2.1+, curses.vapi is 2-clause BSD # Most files are LGPLv2.1+, curses.vapi is 2-clause BSD
@ -22,10 +22,8 @@ BuildRequires: libxslt
# BuildRequires: dbus-x11 # BuildRequires: dbus-x11
# alternatives # alternatives
%global vala_binaries vala valac %global vala_binaries vala valac vala-gen-introspect vapicheck vapigen
%global vala_manpages valac %global vala_manpages valac vala-gen-introspect vapigen
%global vala_tools_binaries vala-gen-introspect vapicheck vapigen
%global vala_tools_manpages vala-gen-introspect vapigen
Requires(posttrans): %{_sbindir}/alternatives Requires(posttrans): %{_sbindir}/alternatives
Requires(preun): %{_sbindir}/alternatives Requires(preun): %{_sbindir}/alternatives
@ -36,6 +34,10 @@ Obsoletes: compat-vala022 < 0.24
Obsoletes: emacs-vala < 0.27.1 Obsoletes: emacs-vala < 0.27.1
Obsoletes: emacs-vala-el < 0.27.1 Obsoletes: emacs-vala-el < 0.27.1
Obsoletes: vala-tools < 0.34.0
Conflicts: vala-tools < 0.34.0
Provides: vala-tools = %{version}-%{release}
Provides: vala(api) = %{api_ver} Provides: vala(api) = %{api_ver}
%description %description
@ -68,23 +70,6 @@ This package contains development files for %{name}. This is not
necessary for using the %{name} compiler. necessary for using the %{name} compiler.
%package tools
Summary: Tools for creating projects and bindings for %{name}
License: LGPLv2+
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: gnome-common intltool libtool pkgconfig
Requires: gobject-introspection-devel
%description tools
Vala is a new programming language that aims to bring modern programming
language features to GNOME developers without imposing any additional
runtime requirements and without using a different ABI compared to
applications and libraries written in C.
This package contains tools to generate Vala projects, as well as API
bindings from existing C libraries, allowing access from Vala programs.
%package doc %package doc
Summary: Documentation for %{name} Summary: Documentation for %{name}
License: LGPLv2+ License: LGPLv2+
@ -116,12 +101,12 @@ make %{?_smp_mflags}
%install %install
%make_install %make_install
# remove symlinks, using alternatives # remove symlinks, using alternatives
for f in %{vala_binaries} %{vala_tools_binaries}; for f in %{vala_binaries}
do do
rm $RPM_BUILD_ROOT%{_bindir}/$f rm $RPM_BUILD_ROOT%{_bindir}/$f
touch $RPM_BUILD_ROOT%{_bindir}/$f touch $RPM_BUILD_ROOT%{_bindir}/$f
done done
for f in %{vala_manpages} %{vala_tools_manpages}; for f in %{vala_manpages}
do do
rm $RPM_BUILD_ROOT%{_mandir}/man1/$f.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/$f.1*
touch $RPM_BUILD_ROOT%{_mandir}/man1/$f.1.gz touch $RPM_BUILD_ROOT%{_mandir}/man1/$f.1.gz
@ -148,18 +133,6 @@ do
$f.1.gz %{_mandir}/man1/$f-%{api_ver}.1.gz %{priority} $f.1.gz %{_mandir}/man1/$f-%{api_ver}.1.gz %{priority}
done done
%posttrans tools
for f in %{vala_tools_binaries};
do
%{_sbindir}/alternatives --install %{_bindir}/$f \
$f %{_bindir}/$f-%{api_ver} %{priority}
done
for f in %{vala_tools_manpages};
do
%{_sbindir}/alternatives --install %{_mandir}/man1/$f.1.gz \
$f.1.gz %{_mandir}/man1/$f-%{api_ver}.1.gz %{priority}
done
%preun %preun
/sbin/ldconfig /sbin/ldconfig
for f in %{vala_binaries}; for f in %{vala_binaries};
@ -173,62 +146,47 @@ do
%{_mandir}/man1/$f-%{api_ver}.1.gz %{_mandir}/man1/$f-%{api_ver}.1.gz
done done
%preun tools
for f in %{vala_tools_binaries};
do
%{_sbindir}/alternatives --remove $f \
%{_bindir}/$f-%{api_ver}
done
for f in %{vala_tools_manpages};
do
%{_sbindir}/alternatives --remove $f.1.gz \
%{_mandir}/man1/$f-%{api_ver}.1.gz
done
%files %files
%license COPYING %license COPYING
%doc AUTHORS MAINTAINERS NEWS README THANKS %doc AUTHORS MAINTAINERS NEWS README THANKS
%ghost %{_bindir}/vala %ghost %{_bindir}/vala
%ghost %{_bindir}/valac %ghost %{_bindir}/valac
%ghost %{_bindir}/vala-gen-introspect
%ghost %{_bindir}/vapicheck
%ghost %{_bindir}/vapigen
%{_bindir}/vala-%{api_ver} %{_bindir}/vala-%{api_ver}
%{_bindir}/valac-%{api_ver} %{_bindir}/valac-%{api_ver}
# owning only the directories, they should be empty %{_bindir}/vala-gen-introspect-%{api_ver}
%dir %{_datadir}/vala %{_bindir}/vapicheck-%{api_ver}
%dir %{_datadir}/vala/vapi %{_bindir}/vapigen-%{api_ver}
%{_datadir}/vala-%{api_ver} %{_libdir}/pkgconfig/vapigen*.pc
%{_libdir}/vala-%{api_ver}/
%{_libdir}/libvala-%{api_ver}.so.* %{_libdir}/libvala-%{api_ver}.so.*
%{_datadir}/aclocal/vala.m4
%{_datadir}/aclocal/vapigen.m4
%{_datadir}/vala/
%{_datadir}/vala-%{api_ver}/
%ghost %{_mandir}/man1/valac.1.gz %ghost %{_mandir}/man1/valac.1.gz
%ghost %{_mandir}/man1/vala-gen-introspect.1.gz
%ghost %{_mandir}/man1/vapigen.1.gz
%{_mandir}/man1/valac-%{api_ver}.1.gz %{_mandir}/man1/valac-%{api_ver}.1.gz
%{_mandir}/man1/vala-gen-introspect-%{api_ver}.1.gz
%{_mandir}/man1/vapigen-%{api_ver}.1.gz
%files devel %files devel
%{_includedir}/vala-%{api_ver} %{_includedir}/vala-%{api_ver}
%{_libdir}/libvala-%{api_ver}.so %{_libdir}/libvala-%{api_ver}.so
%{_libdir}/pkgconfig/libvala-%{api_ver}.pc %{_libdir}/pkgconfig/libvala-%{api_ver}.pc
# directory owned by filesystem
%{_datadir}/aclocal/vala.m4
%files tools
%ghost %{_bindir}/vala-gen-introspect
%ghost %{_bindir}/vapicheck
%ghost %{_bindir}/vapigen
%{_bindir}/vala-gen-introspect-%{api_ver}
%{_bindir}/vapicheck-%{api_ver}
%{_bindir}/vapigen-%{api_ver}
%{_libdir}/pkgconfig/vapigen*.pc
%{_libdir}/vala-%{api_ver}
%{_datadir}/aclocal/vapigen.m4
%{_datadir}/vala/Makefile.vapigen
%ghost %{_mandir}/man1/vala-gen-introspect.1.gz
%ghost %{_mandir}/man1/vapigen.1.gz
%{_mandir}/man1/vala-gen-introspect-%{api_ver}.1.gz
%{_mandir}/man1/vapigen-%{api_ver}.1.gz
%files doc %files doc
%doc %{_datadir}/devhelp/books/vala-%{api_ver} %doc %{_datadir}/devhelp/books/vala-%{api_ver}
%changelog %changelog
* Thu Sep 22 2016 Kalev Lember <klember@redhat.com> - 0.34.0-2
- Merge vala-tools into main vala package
* Thu Sep 22 2016 Kalev Lember <klember@redhat.com> - 0.34.0-1 * Thu Sep 22 2016 Kalev Lember <klember@redhat.com> - 0.34.0-1
- Update to 0.34.0 - Update to 0.34.0