Sophie

Sophie

distrib > Mageia > 3 > i586 > by-pkgid > 02af7b4e397fa992b13e0839aabbace0 > files > 2

parrot-4.6.0-5.mga3.src.rpm

%define name    parrot
%define version 4.6.0
%define release %mkrel 5

%define libname        %mklibname %{name}
%define libname_devel  %mklibname -d %{name} 

%define _requires_exceptions perl(Parrot::Pmc2c::.*)
%define _provides_exceptions perl(File::Which)

Name:          %name
Version:       %version
Release:       %release

Summary:       Virtual Machine for dynamic languages
License:       Artistic 2.0
Group:         Development/Perl
Url:           http://www.parrot.org/
Source0:       ftp://ftp.parrot.org/pub/parrot/releases/stable/%{version}/%{name}-%{version}.tar.bz2
BuildRequires: bison
BuildRequires: gdbm-devel
BuildRequires: gmp-devel
BuildRequires: flex
BuildRequires: libicu-devel
BuildRequires: ncurses-devel
BuildRequires: perl-doc
BuildRequires: readline-devel

%description
Parrot is a virtual machine designed to efficiently compile and execute 
bytecode for interpreted languages. Parrot will be the target for the final 
Perl 6 compiler, and is already usable as a backend for the Rakudo Perl
6 compiler, as well as a variety of other languages

#--

%package -n %libname
Summary:    Parrot Virtual Machine run time library
License:    Artistic 2.0
Group:      Development/Perl
Provides:   lib%{name} = %{version}-%{release}
Requires:   %{name} = %{version}-%{release}

%description -n %libname
Run time library for %{name}.

#--

%package -n %{name}-doc
Summary:    Parrot Virtual Machine documentation
License:    Artistic 2.0
BuildArch:	noarch
Group:      Development/Perl

%description -n %{name}-doc
Documentation for %{name}.

#--

%package -n %libname_devel
Summary:    Parrot Virtual Machine development headers and libraries
License:    Artistic 2.0
Group:      Development/Perl
Provides:   %{name}-devel = %{version}-%{release}
Requires:   %libname = %{version}

%description -n %libname_devel
Development files for %{name}.

#--

%package -n %{name}-src
Summary:    Parrot Virtual Machine sources
License:    Artistic 2.0
Group:      Development/Perl
BuildArch:	noarch

%description -n %{name}-src
Sources of %{name}.


%prep
%setup -q
%{__perl} -pi -e 's,"lib/,"%{_lib}/, if (/CONST_STRING\(interp,/)' \
    src/library.c
%{__perl} -pi -e "s,'/usr/lib','%{_libdir}',;s,runtime/lib/,runtime/%{_lib}/," \
    tools/dev/install_files.pl \
    tools/dev/mk_manifest_and_skip.pl

%build
%define _disable_ld_no_undefined 1

%{__perl} Configure.pl \
    --prefix=%{_usr} \
    --libdir=%{_libdir} \
    --sysconfdir=%{_sysconfdir} \
    --infodir=%{_datadir}/info \
    --mandir=%{_mandir} \
    --cc="%{__cc}" \
    --parrot_is_shared \
    --lex=/usr/bin/flex \
    --ldflags='%{ldflags}' \
    --libs='-lcurses -lm -lrt'

# the following Configure.pl flag makes the compile goes boom
    #--optimize="$RPM_OPT_FLAGS -maccumulate-outgoing-args" \
make LDFLAGS="%ldflags"
export LD_LIBRARY_PATH=$( pwd )/blib/lib
make parrot_utils LDFLAGS="%ldflags"
make installable LDFLAGS="%ldflags"
%make html

%install
export LD_LIBRARY_PATH=$( pwd )/blib/lib
%makeinstall_std

# Drop the docs so rpm can pick them up itself.
rm -rf $RPM_BUILD_ROOT/%{_docdir}/parrot

# Force permissions on doc directories.
find docs examples -type d -exec chmod 755 {} \;
find docs examples -type f -exec chmod 644 {} \;

# Force permissions on shared libs so they get stripped.
find $RPM_BUILD_ROOT%{_libdir} -type f \( -name '*.so' -o -name '*.so.*' \) \
    -exec chmod 755 {} \;

%files
%doc ChangeLog CREDITS PBC_COMPAT PLATFORMS README.pod
%doc RESPONSIBLE_PARTIES TODO
%exclude %{_bindir}/parrot_config
%exclude %{_bindir}/pbc_*
%{_bindir}/*

%files -n %{name}-doc
%doc docs examples

%files -n %libname
%{_libdir}/parrot
%{_libdir}/*.so.*

%files -n %libname_devel
%{_bindir}/parrot_config
%{_bindir}/pbc_disassemble
%{_bindir}/pbc_merge
%{_bindir}/pbc_to_exe
%{_bindir}/pbc_dump
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/*.a

%files -n %{name}-src
/usr/src/parrot


%changelog

* Sun Jan 13 2013 umeabot <umeabot> 4.6.0-5.mga3
+ Revision: 362421
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Fri Nov 09 2012 fwang <fwang> 4.6.0-4.mga3
+ Revision: 316687
- fix ldflags
- use correct ldflags

* Fri Nov 09 2012 fwang <fwang> 4.6.0-3.mga3
+ Revision: 316652
- rebuild for updated icu

* Tue Nov 06 2012 fwang <fwang> 4.6.0-2.mga3
+ Revision: 314783
- rebuild for new icu

* Tue Jul 17 2012 shlomif <shlomif> 4.6.0-1.mga3
+ Revision: 272025
- New version 4.6.0

* Fri Jun 08 2012 shlomif <shlomif> 4.3.0-1.mga3
+ Revision: 257931
- New upstream version - 4.3.0

* Wed May 30 2012 fwang <fwang> 4.0.0-2.mga3
+ Revision: 249634
- rebuild for new icu

* Mon Jan 30 2012 shlomif <shlomif> 4.0.0-1.mga2
+ Revision: 203292
- New version of Parrot - 4.0.0

  + tv <tv>
    - new release

* Mon Jun 20 2011 fwang <fwang> 3.4.0-1.mga2
+ Revision: 110373
- disable parallel build for now
- fix linkage and file list
- new version 3.4.0
- rebuild for new icu

* Sat Apr 02 2011 pterjan <pterjan> 3.1.0-2.mga1
+ Revision: 79798
- Remove filerequires on /usr/lib/pkgconfig directory in the lib package

* Thu Mar 03 2011 jquelin <jquelin> 3.1.0-1.mga1
+ Revision: 63324
- adding missing buildrequires:
- adding missing buildrequires:
- update to 3.1.0
- imported package parrot