mirror of
https://github.com/terrapkg/packages.git
synced 2026-05-31 09:01:55 +00:00
Add vala-nightly package (#425)
* shuffle vala packages into vala subdir * add vala-nightly package
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "vala-nightly.spec"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,236 @@
|
||||
# Based on https://src.fedoraproject.org/rpms/vala/blob/rawhide/f/vala.spec
|
||||
%global api_ver 0.58
|
||||
%global priority 90
|
||||
|
||||
%global real_name vala
|
||||
%global commit 94582de0320c39b58eb38c97dbffcf48d2a948b9
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global repo https://gitlab.gnome.org/GNOME/%{real_name}.git
|
||||
|
||||
%global commit_date %(date '+%Y%m%d')
|
||||
%global snapshot_info %{commit_date}.%{shortcommit}
|
||||
|
||||
Name: vala-nightly
|
||||
Version: 0.58.0^%{snapshot_info}
|
||||
Release: 1%{?dist}
|
||||
Summary: A modern programming language for GNOME
|
||||
|
||||
# Most files are LGPLv2.1+, curses.vapi is 2-clause BSD
|
||||
License: LGPL-2.1-or-later AND BSD-2-Clause
|
||||
URL: https://wiki.gnome.org/Projects/Vala
|
||||
|
||||
BuildRequires: git
|
||||
BuildRequires: bison
|
||||
BuildRequires: flex
|
||||
BuildRequires: gobject-introspection-devel
|
||||
BuildRequires: graphviz-devel
|
||||
BuildRequires: libxslt
|
||||
BuildRequires: autoconf-archive
|
||||
BuildRequires: make
|
||||
BuildRequires: pkgconfig(gobject-2.0)
|
||||
# only if Vala source files are patched
|
||||
BuildRequires: vala
|
||||
|
||||
# for tests
|
||||
BuildRequires: dbus-x11
|
||||
|
||||
Requires: libvala%{?_isa} = %{version}-%{release}
|
||||
|
||||
# For GLib-2.0 and GObject-2.0 .gir files
|
||||
Requires: gobject-introspection-devel
|
||||
|
||||
Provides: vala(api) = %{api_ver}
|
||||
|
||||
Conflicts: vala
|
||||
Provides: vala = %version
|
||||
Provides: vala%{?_isa} = %version
|
||||
|
||||
%description
|
||||
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.
|
||||
|
||||
valac, the Vala compiler, is a self-hosting compiler that translates
|
||||
Vala source code into C source and header files. It uses the GObject
|
||||
type system to create classes and interfaces declared in the Vala source
|
||||
code. It's also planned to generate GIDL files when gobject-
|
||||
introspection is ready.
|
||||
|
||||
The syntax of Vala is similar to C#, modified to better fit the GObject
|
||||
type system.
|
||||
|
||||
|
||||
%package -n libvala-nightly
|
||||
Summary: Vala compiler library
|
||||
|
||||
Conflicts: libvala
|
||||
Provides: libvala = %version
|
||||
Provides: libvala%{?_isa} = %version
|
||||
|
||||
%description -n libvala-nightly
|
||||
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 the shared libvala library.
|
||||
|
||||
|
||||
%package -n libvala-nightly-devel
|
||||
Summary: Development files for libvala
|
||||
Requires: libvala%{?_isa} = %{version}-%{release}
|
||||
|
||||
Conflicts: libvala-devel
|
||||
Provides: libvala-devel = %version
|
||||
Provides: libvala-devel%{?_isa} = %version
|
||||
|
||||
%description -n libvala-nightly-devel
|
||||
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 development files for libvala. This is not
|
||||
necessary for using the %{name} compiler.
|
||||
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for %{name}
|
||||
BuildArch: noarch
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: devhelp
|
||||
|
||||
Conflicts: vala-doc
|
||||
Provides: vala-doc = %version
|
||||
|
||||
%description doc
|
||||
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 documentation in a devhelp HTML book.
|
||||
|
||||
|
||||
%package -n valadoc-nightly
|
||||
Summary: Vala documentation generator
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
Conflicts: valadoc
|
||||
Provides: valadoc = %version
|
||||
Provides: valadoc%{?_isa} = %version
|
||||
|
||||
%description -n valadoc-nightly
|
||||
Valadoc is a documentation generator for generating API documentation from Vala
|
||||
source code.
|
||||
|
||||
|
||||
%package -n valadoc-nightly-devel
|
||||
Summary: Development files for valadoc
|
||||
Requires: valadoc%{?_isa} = %{version}-%{release}
|
||||
|
||||
Conflicts: valadoc-devel
|
||||
Provides: valadoc-devel = %version
|
||||
Provides: valadoc-devel%{?_isa} = %version
|
||||
|
||||
%description -n valadoc-nightly-devel
|
||||
Valadoc is a documentation generator for generating API documentation from Vala
|
||||
source code.
|
||||
|
||||
The valadoc-devel package contains libraries and header files for
|
||||
developing applications that use valadoc.
|
||||
|
||||
|
||||
%prep
|
||||
rm -rf %{real_name}-%{commit}
|
||||
git clone %{repo} %{real_name}-%{commit}
|
||||
cd %{real_name}-%{commit}
|
||||
git checkout %{commit}
|
||||
|
||||
|
||||
%build
|
||||
cd %{real_name}-%{commit}
|
||||
./autogen.sh --help
|
||||
%configure
|
||||
# Don't use rpath!
|
||||
sed -i 's|/lib /usr/lib|/lib /usr/lib /lib64 /usr/lib64|' libtool
|
||||
%make_build
|
||||
|
||||
%install
|
||||
cd %{real_name}-%{commit}
|
||||
%make_install
|
||||
# Avoid multilib conflicts in vala-gen-introspect
|
||||
mv %{buildroot}%{_bindir}/vala-gen-introspect-%{api_ver}{,-`uname -m`}
|
||||
echo -e '#!/bin/sh\nexec %{_bindir}/vala-gen-introspect-%{api_ver}-`uname -m` "$@"' > \
|
||||
%{buildroot}%{_bindir}/vala-gen-introspect-%{api_ver}
|
||||
chmod +x %{buildroot}%{_bindir}/vala-gen-introspect-%{api_ver}
|
||||
|
||||
find %{buildroot} -name '*.la' -delete
|
||||
|
||||
install -D -m 644 COPYING %{buildroot}%{_datadir}/licenses/%{real_name}/COPYING
|
||||
install -D -m 644 NEWS %{buildroot}%{_docdir}/%{real_name}/NEWS
|
||||
install -D -m 644 README.md %{buildroot}%{_docdir}/%{real_name}/README.md
|
||||
|
||||
%check
|
||||
cd %{real_name}-%{commit}
|
||||
# https://gitlab.gnome.org/GNOME/vala/-/issues/1416
|
||||
export -n VALAFLAGS
|
||||
%make_build check
|
||||
|
||||
|
||||
%files
|
||||
%license %{_datadir}/licenses/%{real_name}/COPYING
|
||||
%doc %{_docdir}/%{real_name}/NEWS
|
||||
%doc %{_docdir}/%{real_name}/README.md
|
||||
%{_bindir}/vala
|
||||
%{_bindir}/vala-%{api_ver}
|
||||
%{_bindir}/valac
|
||||
%{_bindir}/valac-%{api_ver}
|
||||
%{_bindir}/vala-gen-introspect
|
||||
%{_bindir}/vala-gen-introspect-%{api_ver}*
|
||||
%{_bindir}/vapigen
|
||||
%{_bindir}/vapigen-%{api_ver}
|
||||
%{_libdir}/pkgconfig/vapigen*.pc
|
||||
%{_libdir}/vala-%{api_ver}/
|
||||
%{_datadir}/aclocal/vala.m4
|
||||
%{_datadir}/aclocal/vapigen.m4
|
||||
%{_datadir}/vala/
|
||||
%{_datadir}/vala-%{api_ver}/
|
||||
%{_mandir}/man1/valac.1*
|
||||
%{_mandir}/man1/valac-%{api_ver}.1*
|
||||
%{_mandir}/man1/vala-gen-introspect.1*
|
||||
%{_mandir}/man1/vala-gen-introspect-%{api_ver}.1*
|
||||
%{_mandir}/man1/vapigen.1*
|
||||
%{_mandir}/man1/vapigen-%{api_ver}.1*
|
||||
|
||||
%files -n libvala-nightly
|
||||
%license %{_datadir}/licenses/%{real_name}/COPYING
|
||||
%{_libdir}/libvala-%{api_ver}.so.*
|
||||
|
||||
%files -n libvala-nightly-devel
|
||||
%{_includedir}/vala-%{api_ver}
|
||||
%{_libdir}/libvala-%{api_ver}.so
|
||||
%{_libdir}/pkgconfig/libvala-%{api_ver}.pc
|
||||
|
||||
%files doc
|
||||
%doc %{_datadir}/devhelp/books/vala-%{api_ver}
|
||||
|
||||
%files -n valadoc-nightly
|
||||
%{_bindir}/valadoc
|
||||
%{_bindir}/valadoc-%{api_ver}
|
||||
%{_libdir}/libvaladoc-%{api_ver}.so.0*
|
||||
%{_libdir}/valadoc-%{api_ver}/
|
||||
%{_datadir}/valadoc-%{api_ver}/
|
||||
%{_mandir}/man1/valadoc-%{api_ver}.1*
|
||||
%{_mandir}/man1/valadoc.1*
|
||||
|
||||
%files -n valadoc-nightly-devel
|
||||
%{_includedir}/valadoc-%{api_ver}/
|
||||
%{_libdir}/libvaladoc-%{api_ver}.so
|
||||
%{_libdir}/pkgconfig/valadoc-%{api_ver}.pc
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Apr 19 2023 David King <amigadave@amigadave.com> - 0.56.7-1
|
||||
- Update to 0.56.7
|
||||
Reference in New Issue
Block a user