parrot/parrot.spec

187 lines
5.9 KiB
RPMSpec
Raw Normal View History

%define perl_major_ver %(eval `perl -V:version`; echo ${version%*.[0-9]*}.0)
Name: parrot
Version: 5.6.0
Release: 1mamba
Summary: A virtual machine designed to compile and execute bytecode for interpreted languages
Group: System/Libraries/Perl
Vendor: openmamba
Distribution: openmamba
Packager: Davide Madrisan <davide.madrisan@gmail.com>
URL: http://parrot.org/
Source: ftp://ftp.parrot.org/pub/parrot/releases/devel/%{version}/parrot-%{version}.tar.gz
License: Artistic
Requires: perl >= %perl_major_ver
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libffi-devel
BuildRequires: libfreeglut-devel
BuildRequires: libGL-devel
BuildRequires: libGLU-devel
BuildRequires: libgmp-devel
BuildRequires: libicu-devel
BuildRequires: libreadline-devel
BuildRequires: libz-devel
BuildRequires: perl-devel
## AUTOBUILDREQ-END
BuildRequires: perl-devel >= %perl_major_ver
BuildRequires: libpython-devel
BuildRequires: libncurses-devel
BuildRequires: libreadline-devel
BuildRequires: libgdbm-devel
Provides: perl(Parrot::Pmc2c::MethodEmitter) = %{version}
Provides: perl(Parrot::Pmc2c::PCCMETHOD_BITS) = %{version}
Provides: perl(Parrot::Pmc2c::PMCEmitter) = %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
Parrot is a virtual machine designed to efficiently compile and execute bytecode for interpreted languages.
Parrot will be a target for the Perl 6 compiler, and is already usable as a backend for Pugs, as well as variety of other languages.
%package devel
Group: Development/Libraries
Summary: Parrot Virtual Machine development headers and libraries
License: Artistic
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
Parrot is a virtual machine designed to efficiently compile and execute bytecode for interpreted languages.
Parrot will be a target for the Perl 6 compiler, and is already usable as a backend for Pugs, as well as variety of other languages.
This package contains static libraries and header files needed for development.
%prep
%setup -q
%define _use_internal_dependency_generator 0
%define __find_provides %{_builddir}/parrot-%{version}/find_provides.sh
cat > %{_builddir}/parrot-%{version}/find_provides.sh <<_EOF
#! /bin/sh
%{_prefix}/lib/rpm/find-provides %{buildroot} %{_target_cpu} | \
grep -v "perl(File::" | grep -v "perl(DB)"
exit 0
_EOF
chmod +x %{_builddir}/parrot-%{version}/find_provides.sh
%define __find_requires %{_builddir}/parrot-%{version}/find_requires.sh
cat > %{_builddir}/parrot-%{version}/find_requires.sh <<_EOF
#! /bin/sh
grep -v "%{_docdir}" | \
%{_libdir}/rpm/find-requires %{buildroot} %{_target_cpu} 2>/dev/null | \
grep -v "perl(File::" | grep -v "perl(DB)"
exit 0
_EOF
chmod +x %{_builddir}/parrot-%{version}/find_requires.sh
%build
perl Configure.pl \
--prefix=%{_usr} \
--libdir=%{_libdir} \
--sysconfdir=%{_sysconfdir} \
--infodir=%{_datadir}/info \
--mandir=%{_mandir} \
--cc=%{__cc} \
--cxx=%{__cxx} \
--optimize="%{optflags} -maccumulate-outgoing-args" \
--parrot_is_shared \
--lex=%{_bindir}/flex \
--yacc="%{_bindir}/bison -y"
export LD_LIBRARY_PATH=$( pwd )/blib/lib
%make
%make html
#make test || :
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
export LD_LIBRARY_PATH=$( pwd )/blib/lib
%makeinstall
rm -fr %{buildroot}%{_datadir}/doc %{buildroot}%{_usr}/src
rm -rf %{buildroot}%{_libdir}/libparrot.a
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
%defattr(-,root,root)
#%exclude %{_bindir}/parrot-config
%{_bindir}/parrot
%{_libdir}/parrot
%{_libdir}/libparrot.so.*
%dir %{_datadir}/parrot
%dir %{_datadir}/parrot/%{version}
%{_datadir}/parrot/%{version}/MANIFEST*
%{_mandir}/man1/parrot.1.gz
%doc CREDITS LICENSE
%files devel
%defattr(-,root,root,-)
%{_bindir}/winxed
%{_bindir}/ops2c
%{_bindir}/parrot_config
#%{_bindir}/parrot_debugger
%{_bindir}/parrot_nci_thunk_gen
%{_bindir}/parrot-nqp
%{_bindir}/parrot-prove
%{_bindir}/pbc_disassemble
%{_bindir}/pbc_merge
%{_bindir}/pbc_to_exe
%{_bindir}/pbc_dump
%{_includedir}/parrot
%{_libdir}/libparrot.so
%{_mandir}/man1/ops2c.1.gz
%{_mandir}/man1/parrot-nqp.1.gz
%{_mandir}/man1/parrot-prove.1.gz
%{_mandir}/man1/parrot_config.1.gz
%{_mandir}/man1/parrot_nci_thunk_gen.1.gz
%{_mandir}/man1/parrotbug.1.gz
%{_mandir}/man1/pbc_to_exe.1.gz
%{_mandir}/man1/plumage.1.gz
%{_mandir}/man1/winxed.1.gz
#%{_libdir}/pkgconfig/parrot/%{version}/parrot.pc
%doc ChangeLog PBC_COMPAT
%doc PLATFORMS RESPONSIBLE_PARTIES TODO
%doc docs examples
%changelog
* Sat Jul 27 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 5.6.0-1mamba
- update to 5.6.0
- filter out perl(File::Which) provide to avoid build requirement conflict with perl-File-Which
* Sat Jun 01 2013 Automatic Build System <autodist@mambasoft.it> 5.4.0-1mamba
- automatic version update by autodist
* Fri Apr 19 2013 Automatic Build System <autodist@mambasoft.it> 5.3.0-1mamba
- automatic version update by autodist
* Fri Apr 05 2013 Automatic Build System <autodist@mambasoft.it> 5.2.0-1mamba
- automatic version update by autodist
* Wed Feb 27 2013 Automatic Build System <autodist@mambasoft.it> 5.1.0-1mamba
- automatic version update by autodist
* Fri Jan 04 2013 Automatic Build System <autodist@mambasoft.it> 4.11.0-1mamba
- automatic version update by autodist
* Fri Dec 07 2012 Automatic Build System <autodist@mambasoft.it> 4.10.0-1mamba
- automatic version update by autodist
* Mon Jul 19 2010 Davide Madrisan <davide.madrisan@gmail.com> 2.5.0-2mamba
- rebuilt
* Fri Jul 02 2010 Davide Madrisan <davide.madrisan@gmail.com> 2.5.0-1mamba
- update to 2.5.0 ("Cheops")
* Wed Feb 17 2010 Davide Madrisan <davide.madrisan@gmail.com> 2.0.0-1mamba
- update to 2.0.0
* Sat Feb 14 2009 Aleph0 <aleph0@openmamba.org> 0.8.0-1mamba
- update to 0.8.0
* Wed Sep 19 2007 Aleph0 <aleph0@openmamba.org> 0.4.16-1mamba
- package created by autospec