febede6
# breaks Colin Walters' automatic build script
febede6
# https://bugzilla.redhat.com/show_bug.cgi?id=609292
febede6
#global main_ver 0.9
33b29c7
30c0323
Name:           vala
4b1b6cc
Version:        0.9.4
bd1915f
Release:        1%{?dist}
30c0323
Summary:        A modern programming language for GNOME
30c0323
30c0323
Group:          Development/Languages
4a34b0c
# Most files are LGPLv2.1+, curses.vapi is 2-clause BSD
3ca905c
License:        LGPLv2+ and BSD
a1e8301
URL:            http://live.gnome.org/Vala
f1c6583
#VCS:           git:git://git.gnome.org/vala
febede6
Source0:        http://download.gnome.org/sources/vala/0.9/vala-%{version}.tar.bz2
ad6fb4a
Source1:        vala-mode.el
ad6fb4a
Source2:        vala-init.el
f1c6583
Source3:        emacs-vala-COPYING
30c0323
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
30c0323
04470c6
BuildRequires:  gtk2-devel flex bison devhelp gecko-libs >= 1.9
ad6fb4a
BuildRequires:  emacs emacs-el
7149a3a
Requires:       gtk2-devel
30c0323
30c0323
%description
30c0323
Vala is a new programming language that aims to bring modern programming
30c0323
language features to GNOME developers without imposing any additional
30c0323
runtime requirements and without using a different ABI compared to
30c0323
applications and libraries written in C.
30c0323
30c0323
valac, the Vala compiler, is a self-hosting compiler that translates
30c0323
Vala source code into C source and header files. It uses the GObject
30c0323
type system to create classes and interfaces declared in the Vala source
30c0323
code. It's also planned to generate GIDL files when gobject-
30c0323
introspection is ready.
30c0323
30c0323
The syntax of Vala is similar to C#, modified to better fit the GObject
30c0323
type system.
30c0323
30c0323
30c0323
%package        devel
30c0323
Summary:        Development files for %{name}
30c0323
Group:          Development/Libraries
30c0323
Requires:       %{name} = %{version}-%{release}
30c0323
Requires:       pkgconfig
30c0323
30c0323
%description    devel
fbc625e
Vala is a new programming language that aims to bring modern programming
fbc625e
language features to GNOME developers without imposing any additional
fbc625e
runtime requirements and without using a different ABI compared to
fbc625e
applications and libraries written in C.
fbc625e
fbc625e
This package contains development files for %{name}. This is not necessary for
fbc625e
using the %{name} compiler.
30c0323
33b29c7
9b647cf
%package        tools
9b647cf
Summary:        Tools for creating projects and bindings for %{name}
eee8d9d
Group:          Development/Languages
9b647cf
License:        LGPLv2+
eee8d9d
Requires:       %{name} = %{version}-%{release}
1ead076
Requires:       gnome-common intltool libtool
9b647cf
Provides:       %{name}-vapigen = %{version}-%{release}
9b647cf
Obsoletes:      %{name}-vapigen < %{version}-%{release}
eee8d9d
9b647cf
%description    tools
fbc625e
Vala is a new programming language that aims to bring modern programming
fbc625e
language features to GNOME developers without imposing any additional
fbc625e
runtime requirements and without using a different ABI compared to
fbc625e
applications and libraries written in C.
fbc625e
9b647cf
This package contains tools to generate Vala projects, as well as API bindings
9b647cf
from existing C libraries, allowing access from Vala programs.
fbc625e
33b29c7
680e0a2
%package        doc
fbc625e
Summary:        Documentation for %{name}
fbc625e
Group:          Documentation
fbc625e
License:        LGPLv2+
fbc625e
Requires:       %{name} = %{version}-%{release}
fbc625e
Requires:       devhelp
680e0a2
Provides:       %{name}-docs = %{version}-%{release}
680e0a2
Obsoletes:      %{name}-docs < %{version}-%{release}
fbc625e
680e0a2
680e0a2
%description    doc
fbc625e
Vala is a new programming language that aims to bring modern programming
fbc625e
language features to GNOME developers without imposing any additional
fbc625e
runtime requirements and without using a different ABI compared to
fbc625e
applications and libraries written in C.
fbc625e
fbc625e
This package contains documentation in a devhelp HTML book.
eee8d9d
30c0323
ad6fb4a
%package -n emacs-%{name}
33b29c7
Summary:        Vala mode for Emacs
33b29c7
Group:          Applications/Editors
33b29c7
License:        GPLv2+
33b29c7
ad6fb4a
BuildArch:      noarch
ad6fb4a
# Provide upgrade path from older, arch-specific package
ad6fb4a
Obsoletes:      emacs-%{name} < %{version}-%{release}
ad6fb4a
Requires:       emacs(bin) >= %{_emacs_version}
33b29c7
ad6fb4a
ad6fb4a
%description -n emacs-%{name}
33b29c7
An Emacs mode for editing Vala source code.
33b29c7
ad6fb4a
%package -n emacs-%{name}-el
ad6fb4a
Summary:        Elisp source files for emacs-%{name}
ad6fb4a
Group:          Applications/Editors
ad6fb4a
License:        GPLv2+
ad6fb4a
ad6fb4a
BuildArch:      noarch
ad6fb4a
Requires:       emacs-%{name} = %{version}-%{release}
ad6fb4a
ad6fb4a
%description -n emacs-%{name}-el
ad6fb4a
This package contains the elisp source files for Vala under GNU
ad6fb4a
Emacs. You do not need to install this package to run Vala. Install
ad6fb4a
the emacs-%{name} package to use Vala with GNU Emacs.
ad6fb4a
33b29c7
30c0323
%prep
30c0323
%setup -q
30c0323
30c0323
30c0323
%build
26820d6
%configure --enable-vapigen
30c0323
# Don't use rpath!
30c0323
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
30c0323
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
30c0323
make %{?_smp_mflags}
33b29c7
# Compile emacs module
33b29c7
mkdir emacs-vala && cd emacs-vala && cp -p %{SOURCE1} .
ad6fb4a
%{_emacs_bytecompile} vala-mode.el
f1c6583
# and copy its licensing file
f1c6583
cp -p %{SOURCE3} COPYING
30c0323
30c0323
a2a9a03
# checks currently utilize installed Vala, not the one being compiled
a2a9a03
#%check
a2a9a03
#make check
a2a9a03
a2a9a03
30c0323
%install
30c0323
rm -rf $RPM_BUILD_ROOT
30c0323
make install DESTDIR=$RPM_BUILD_ROOT
30c0323
rm $RPM_BUILD_ROOT%{_libdir}/libvala.la
30c0323
33b29c7
# Emacs mode files
ad6fb4a
mkdir -p $RPM_BUILD_ROOT%{_emacs_sitelispdir}/%{name}
ad6fb4a
mkdir -p $RPM_BUILD_ROOT%{_emacs_sitestartdir}
ad6fb4a
cp -p emacs-vala/*.el* $RPM_BUILD_ROOT%{_emacs_sitelispdir}/%{name}
ad6fb4a
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_emacs_sitestartdir}
33b29c7
30c0323
30c0323
%clean
30c0323
rm -rf $RPM_BUILD_ROOT
30c0323
30c0323
%post -p /sbin/ldconfig
30c0323
30c0323
%postun -p /sbin/ldconfig
30c0323
30c0323
%files
30c0323
%defattr(-,root,root,-)
6cc6db5
%doc AUTHORS ChangeLog COPYING INSTALL MAINTAINERS NEWS README THANKS
bd1915f
%{_bindir}/vala
30c0323
%{_bindir}/valac
30c0323
%{_datadir}/vala
30c0323
%{_libdir}/libvala.so.*
d47c378
%{_mandir}/*/valac*
30c0323
30c0323
%files devel
30c0323
%defattr(-,root,root,-)
30c0323
%{_includedir}/vala-1.0
30c0323
%{_libdir}/libvala.so
30c0323
%{_libdir}/pkgconfig/vala-1.0.pc
30c0323
9b647cf
%files tools
eee8d9d
%defattr(-,root,root,-)
6116728
%{_bindir}/*gen*
fbc625e
%{_bindir}/vapicheck
eee8d9d
%{_libdir}/vala
d47c378
%{_mandir}/*/*gen*
eee8d9d
680e0a2
%files doc
fbc625e
%defattr(-,root,root,-)
fbc625e
%{_datadir}/devhelp/books/vala
fbc625e
ad6fb4a
%files -n emacs-%{name}
ad6fb4a
%defattr(-,root,root,-)
f1c6583
%doc emacs-vala/COPYING
ad6fb4a
%dir %{_emacs_sitelispdir}/%{name}
ad6fb4a
%{_emacs_sitelispdir}/%{name}/*.elc
ad6fb4a
%{_emacs_sitestartdir}/*.el
ad6fb4a
ad6fb4a
%files -n emacs-%{name}-el
33b29c7
%defattr(-,root,root,-)
ad6fb4a
%{_emacs_sitelispdir}/%{name}/*.el
33b29c7
30c0323
30c0323
30c0323
%changelog
4b1b6cc
* Mon Aug  2 2010 Peter Robinson <pbrobinson@gmail.com> - 0.9.4-1
4b1b6cc
- Update to 0.9.4
4b1b6cc
bd1915f
* Thu Jul 15 2010 Michel Salim <salimma@fedoraproject.org> - 0.9.3-1
bd1915f
- Update to 0.9.3
bd1915f
f1c6583
* Mon Jul 12 2010 Michel Salim <salimma@fedoraproject.org> - 0.9.2-2
f1c6583
- Add COPYING file to emacs-vala
f1c6583
2aa3722
* Sat Jul  3 2010 Michel Salim <salimma@fedoraproject.org> - 0.9.2-1
2aa3722
- Update to 0.9.2
2aa3722
ad6fb4a
* Sun Jun 13 2010 Michel Salim <salimma@fedoraproject.org> - 0.9.1-1
ad6fb4a
- Update to 0.9.1
ad6fb4a
- Make emacs-vala subpackage noarch; split off source file to -el subpackage
ad6fb4a
  according to Emacs packaging guidelines
ad6fb4a
e083e54
* Tue Apr 27 2010 Michel Salim <salimma@fedoraproject.org> - 0.8.1-1
e083e54
- Update to 0.8.1
e083e54
ab07b0c
* Fri Apr  9 2010 Peter Robinson <pbrobinson@gmail.com> - 0.8.0-1
ab07b0c
- Update to new major release 0.8.0
ab07b0c
273d2d4
* Tue Mar  2 2010 Peter Robinson <pbrobinson@gmail.com> - 0.7.10-1
273d2d4
- Update to 0.7.10
273d2d4
0610241
* Tue Jan  5 2010 Peter Robinson <pbrobinson@gmail.com> - 0.7.9-1
0610241
- Update to 0.7.9
0610241
312ccb3
* Tue Nov 17 2009 Peter Robinson <pbrobinson@gmail.com> - 0.7.8-1
312ccb3
- Update to 0.7.8
312ccb3
2b23e12
* Sat Oct  3 2009 Michel Salim <salimma@fedoraproject.org> - 0.7.7-1
2b23e12
- Update to 0.7.7
2b23e12
726b2d1
* Thu Aug 20 2009 Michel Salim <salimma@fedoraproject.org> - 0.7.5-1
726b2d1
- Update to 0.7.5
726b2d1
546d832
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.4-3
546d832
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
546d832
26820d6
* Tue Jul 14 2009 Michel Salim <salimma@fedoraproject.org> - 0.7.4-2
26820d6
- Patch broken ModuleInit attribute (upstream bug 587444)
26820d6
45effa9
* Tue Jul  7 2009 Michel Salim <salimma@fedoraproject.org> - 0.7.4-1
45effa9
- Update to 0.7.4
45effa9
6a5358c
* Wed Jun  3 2009 Peter Robinson <pbrobinson@gmail.com> - 0.7.3-1
6a5358c
- Update to 0.7.3
6a5358c
f70c801
* Sat Apr 18 2009 Michel Salim <salimma@fedoraproject.org> - 0.6.1-1
f70c801
- Update to 0.6.1
f70c801
240e595
* Mon Feb 23 2009 Michel Salim <salimma@fedoraproject.org> - 0.5.7-1
240e595
- Update to 0.5.7
240e595
8cdf7f0
* Tue Jan 27 2009 Michel Salim <salimma@fedoraproject.org> - 0.5.6-1
8cdf7f0
- Update to 0.5.6
8cdf7f0
04470c6
* Tue Dec 16 2008 Michel Salim <salimma@fedoraproject.org> - 0.5.3-1
04470c6
- Update to 0.5.3
04470c6
04470c6
* Mon Dec 15 2008 Michel Salim <salimma@fedoraproject.org> - 0.5.2-3
04470c6
- Fix bug in Emacs version detection
04470c6
3ddad05
* Sat Dec 13 2008 Michel Salim <salimma@fedoraproject.org> - 0.5.2-2
3ddad05
- Use buildsystem variables to determine available Emacs version
04470c6
- BR on gecko-devel >= 1.9, since older version is also in RHEL repo
3ddad05
a2a9a03
* Sat Dec 13 2008 Michel Salim <salimma@fedoraproject.org> - 0.5.2-1
a2a9a03
- Update to 0.5.2
a2a9a03
b2c52ed
* Sun Nov 23 2008 Michel Salim <salimma@fedoraproject.org> - 0.5.1-1
b2c52ed
- Update to 0.5.1
b2c52ed
b2c52ed
* Fri Aug 22 2008 Michel Salim <salimma@fedoraproject.org> - 0.3.5-1
6cc6db5
- Update to 0.3.5
6cc6db5
b2c52ed
* Tue Jul 15 2008 Michel Salim <salimma@fedoraproject.org> - 0.3.4-2
33b29c7
- Add vala-mode for editing Vala code in Emacs
33b29c7
d96260f
* Tue Jul  1 2008 Lennart Poettering <lpoetter@redhat.com> - 0.3.4-1
d96260f
- Update to 0.3.4
d96260f
b2c52ed
* Wed Jun  4 2008 Michel Salim <salimma@fedoraproject.org> - 0.3.3-1
434dd7c
- Update to 0.3.3
434dd7c
b2c52ed
* Fri May 16 2008 Michel Salim <salimma@fedoraproject.org> - 0.3.2-1
4a34b0c
- Update to 0.3.2
4a34b0c
b2c52ed
* Thu Apr 10 2008 Michel Salim <salimma@fedoraproject.org> - 0.2.0-1
6222e27
- Update to 0.2.0
6222e27
b2c52ed
* Wed Mar  5 2008 Michel Salim <salimma@fedoraproject.org> - 0.1.7-1
1ead076
- Update to 0.1.7
1ead076
- -tool subpackage now requires gnome-common, intltool and libtoolize
1ead076
  for out-of-the-box vala-gen-project support
1ead076
95a0bbc
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.1.6-2
95a0bbc
- Autorebuild for GCC 4.3
95a0bbc
b2c52ed
* Sat Jan 19 2008 Michel Salim <salimma@fedoraproject.org> - 0.1.6-1
680e0a2
- Update to 0.1.6
680e0a2
- Revert vapi addition, needed declarations have been inlined (r846)
680e0a2
- Rename -docs subpackage to -doc, to comply with guidelines
680e0a2
b2c52ed
* Tue Jan 15 2008 Michel Salim <salimma@fedoraproject.org> - 0.1.5-5
82826ec
- Manually add Gee vapi file to package (bz #428692)
82826ec
b2c52ed
* Tue Dec  4 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.5-4
7149a3a
- Backport patch to autodetect location of automake shared files
7149a3a
b2c52ed
* Tue Dec  4 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.5-3
b0163da
- Add build dependency on gtk2-devel
b0163da
b2c52ed
* Tue Dec  4 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.5-2
9b647cf
- Enable project generator tool
9b647cf
b2c52ed
* Tue Nov 27 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.5-1
6116728
- Update to 0.1.5
6116728
b2c52ed
* Sun Nov 11 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.4-2
8263764
- Add build dependency on devhelp
d917e88
b2c52ed
* Fri Oct 19 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.4-1
fbc625e
- Update to 0.1.4
fbc625e
- Put newly-added documentation in its own subpackage (depends on devhelp)
fbc625e
b2c52ed
* Mon Sep 17 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.3-5
28fe5b6
- vapigen subpackage: add missing Require: on perl-XML-Twig
28fe5b6
b2c52ed
* Sat Sep  8 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.3-4
eee8d9d
- Split -vapigen subpackage. It is functionally self-contained and the license
eee8d9d
  is more restricted
eee8d9d
- Updated license declarations
eee8d9d
b2c52ed
* Wed Sep  5 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.3-3
a1e8301
- Licensing and URL updates
a1e8301
b2c52ed
* Tue Sep  4 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.3-2
6b7c0dc
- Enable binding generation tools
6b7c0dc
b2c52ed
* Sun Sep  2 2007 Michel Salim <salimma@fedoraproject.org> - 0.1.3-1
539aa0b
- Update to 0.1.3
539aa0b
b2c52ed
* Sun Mar 25 2007 Michel Salim <salimma@fedoraproject.org> - 0.0.8-1
6de7dc5
- Update to 0.0.8
6de7dc5
b2c52ed
* Wed Mar  7 2007 Michel Salim <salimma@fedoraproject.org> - 0.0.7-1
0204e65
- Update to 0.0.7
0204e65
b2c52ed
* Wed Feb 28 2007 Michel Salim <salimma@fedoraproject.org> - 0.0.6-1
b7e0735
- Update to 0.0.6
b7e0735
b2c52ed
* Mon Nov  6 2006 Michel Salim <salimma@fedoraproject.org> - 0.0.5-1
30c0323
- Initial package