Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > 45513228ec9e1ca39d0b328439a04153 > files > 2

vala-0.18.1-2.mga3.src.rpm

%define api	0.18
%define major	0
%define libname	%mklibname %{name} %{api} %{major}
%define devname %mklibname -d %{name}

%define url_ver	%(echo %{version}|cut -d. -f1,2)

Summary:	Compiler for the GObject type system
Name:		vala
Version:	0.18.1
Release:	%mkrel 2
Source0:	http://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz
# Most files are LGPLv2.1+, curses.vapi is 2-clause BSD
License:	LGPLv2+ and BSD
Group:		Development/Other
Url:		http://live.gnome.org/Vala
BuildRequires:	pkgconfig(glib-2.0) >= 2.16.0
BuildRequires:	pkgconfig(gmodule-2.0) >= 2.16.0
BuildRequires:	pkgconfig(gobject-2.0) >= 2.16.0
BuildRequires:	pkgconfig(gthread-2.0) >= 2.16.0
BuildRequires:	xsltproc
BuildRequires:	flex
BuildRequires:	bison
Requires:	glib2-devel

%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. Vala supports modern language features as the following:

* Interfaces
* Properties
* Signals
* Foreach
* Lambda expressions
* Type inference for local variables
* Non-null types [PARTIAL]
* Exception handling [PLANNED]
* Assisted memory management

* type modules (aka. Plugins) 

Vala is designed to allow access to existing C libraries, especially
GObject-based libraries, without the need for runtime bindings. Each
to be used library requires a Vala API file at compile-time,
containing the class and method declarations in Vala syntax. Vala
currently comes with experimental bindings for GLib and GTK+. It's
planned to provide generated bindings for the full GNOME Platform at a
later stage.

Using classes and methods written in Vala from an application written
in C is not difficult. The Vala library only has to install the
generated header files and C applications may then access the
GObject-based API of the Vala library as usual. It should also be
easily possible to write a bindings generator for access to Vala
libraries from applications written in e.g. C# as the Vala parser is written 
as a library, so that all compile-time information is available when
generating a binding.

%package -n %{libname}
Group:		System/Libraries
Summary:	Vala runtime library

%description -n %{libname}
This is the runtime library of the Vala programming language.

%package -n %{devname}
Group:		Development/Other
Summary:	Vala development files
Requires:	%{libname} = %{version}-%{release}
Requires:	%{name} = %{version}-%{release}
Provides:	lib%{name}-devel = %{version}-%{release}
Provides:	%{name}-devel = %{version}-%{release}
Obsoletes:	%mklibname -d vala 0

%description -n %{devname}
This is the development library of the Vala programming language.

%package tools
Summary:	Tools for creating projects and bindings for %{name}
Group:		Development/Other
Requires:	%{name} = %{version}-%{release}
Requires:	gnome-common
Requires:	intltool
Requires:	libtool

%description tools
This package contains tools to generate Vala projects, as well as API bindings
from existing C libraries, allowing access from Vala programs.

%prep
%setup -q
%apply_patches

%build
autoreconf -vfi
%configure2_5x
%make

%install
%makeinstall_std

find %{buildroot} -name "*.la" -delete

mkdir -p %{buildroot}%{_datadir}/vala/vapi

%files -n %{libname}
%defattr(-,root,root)
%_libdir/libvala-%{api}.so.%{major}*

%files -n %{devname}
%defattr(-,root,root)
%doc ChangeLog
%{_libdir}/libvala-%{api}.so
%{_includedir}/vala-%{api}
%{_libdir}/pkgconfig/*.pc
%{_datadir}/pkgconfig/*.pc
%{_datadir}/devhelp/books/vala-%{api}
%{_datadir}/aclocal/*.m4

%files
%defattr(-,root,root)
%doc AUTHORS MAINTAINERS NEWS README
%{_bindir}/vala
%{_bindir}/vala-%{api}
%{_bindir}/valac
%{_bindir}/valac-%{api}
%{_datadir}/vala-%{api}
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_mandir}/man1/valac.1*
%{_mandir}/man1/valac-%api.1*

%files tools
%defattr(-,root,root)
%{_bindir}/*gen*
%{_bindir}/vapicheck
%{_bindir}/vapicheck-%api
%{_datadir}/vala/Makefile.vapigen
%{_libdir}/vala-%api
%{_mandir}/*/*gen*


%changelog

* Mon Jan 14 2013 umeabot <umeabot> 0.18.1-2.mga3
+ Revision: 385223
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Thu Nov 15 2012 fwang <fwang> 0.18.1-1.mga3
+ Revision: 318000
- new version 0.18.1

* Mon Sep 24 2012 ovitters <ovitters> 0.18.0-1.mga3
+ Revision: 297217
- new version 0.18.0

* Sun Sep 16 2012 mitya <mitya> 0.17.7-1.mga3
+ Revision: 294640
- New version 0.17.7

* Mon Sep 03 2012 ovitters <ovitters> 0.17.6-1.mga3
+ Revision: 287687
- new version 0.17.6

* Mon Aug 20 2012 ovitters <ovitters> 0.17.5-1.mga3
+ Revision: 282599
- drop merged patches
- new version 0.17.5

* Fri Aug 10 2012 wally <wally> 0.17.4-2.mga3
+ Revision: 280436
- add patches from upstream GIT to fix deja-dup build

* Mon Aug 06 2012 ovitters <ovitters> 0.17.4-1.mga3
+ Revision: 279394
- new version 0.17.4

* Mon Jul 16 2012 ovitters <ovitters> 0.17.3-1.mga3
+ Revision: 271521
- new version 0.17.3

* Tue Jun 26 2012 ovitters <ovitters> 0.17.2-1.mga3
+ Revision: 264124
- update api
- new version 0.17.2

* Sat Jun 23 2012 ovitters <ovitters> 0.16.1-1.mga3
+ Revision: 262794
- new version 0.16.1

* Mon Mar 26 2012 ovitters <ovitters> 0.16.0-1.mga2
+ Revision: 226772
- new version 0.16.0

* Sat Feb 25 2012 ovitters <ovitters> 0.15.2-1.mga2
+ Revision: 214753
- new version
- fix source URL

* Sat Jan 28 2012 fwang <fwang> 0.15.1-1.mga2
+ Revision: 202405
- update file list
- update file list
- new version 0.15.1

  + wally <wally>
    - clean .spec

* Thu Dec 01 2011 fwang <fwang> 0.14.1-1.mga2
+ Revision: 174702
- new version 0.14.1

* Mon Oct 03 2011 fwang <fwang> 0.14.0-2.mga2
+ Revision: 151129
- rebuild

* Sun Sep 18 2011 fwang <fwang> 0.14.0-1.mga2
+ Revision: 144777
- new version 0.14.0

* Sat Sep 10 2011 fwang <fwang> 0.13.4-1.mga2
+ Revision: 141988
- new version 0.13.4
- new version 0.13.3
- new version 0.13.2

  + colin <colin>
    - Upstream fix: linux: fix Linux.CLOCK_MONOTONIC_RAW binding

* Sun Jul 10 2011 fwang <fwang> 0.13.1-1.mga2
+ Revision: 121600
- new version 0.13.1

* Tue Jul 05 2011 ahmad <ahmad> 0.13.0-1.mga2
+ Revision: 118631
- Update to 0.13.0
- Drop patch0, now that we have libnotify0.7 in Cauldron

* Mon May 02 2011 pterjan <pterjan> 0.12.0-2.mga1
+ Revision: 94319
- Fix vapi file to describe our version of libnotify

* Tue Apr 05 2011 dams <dams> 0.12.0-1.mga1
+ Revision: 80690
- update to 0.12.0

* Sun Feb 13 2011 spuhler <spuhler> 0.10.3-1.mga1
+ Revision: 51178
- update from version 0.10.2 to version 0.10.3

* Mon Jan 17 2011 blino <blino> 0.10.2-2.mga1
+ Revision: 21502
- remove old ldconfig scriptlets
- imported package vala