[rakudo-star/f13/master] Initial import (#624660).

Gerd Pokorra gerd at fedoraproject.org
Wed Sep 8 21:30:13 UTC 2010


commit b86d44a0c11a5587b8d76d65496dc00c3dac0423
Author: gerd <gp at zimt.uni-siegen.de>
Date:   Wed Sep 8 23:30:18 2010 +0200

    Initial import (#624660).

 .gitignore       |    2 +
 rakudo-star.spec |  202 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 sources          |    2 +
 3 files changed, 206 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..656c18b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,2 @@
+rakudo-star-2010.08.tar.gz
+rakudo.desk.in.tar.gz
diff --git a/rakudo-star.spec b/rakudo-star.spec
new file mode 100644
index 0000000..62d0480
--- /dev/null
+++ b/rakudo-star.spec
@@ -0,0 +1,202 @@
+%global year 2010
+%global month 08
+%global parrot_version 2.7.0
+
+%define parrot_dynext %{_libdir}/parrot/%{parrot_version}/dynext
+%define parrot_lang_perl6 %{_libdir}/parrot/%{parrot_version}/languages/perl6
+
+Name:           rakudo-star
+Version:        0.0.%{year}.%{month}_%{parrot_version}
+Release:        6%{?dist}
+Summary:        Rakudo, Perl6-modules, Blizkost and documentation
+License:        Artistic 2.0
+Group:          Development/Languages
+URL:            http://www.rakudo.org/
+
+Source0:        http://github.com/downloads/rakudo/star/rakudo-star-%{year}.%{month}.tar.gz
+# sources for desktop files are added here
+Source1:        rakudo.desk.in.tar.gz
+
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+# This librarys are needed while "pbc_to_exe" include them
+BuildRequires:  ncurses-devel
+BuildRequires:  readline-devel
+BuildRequires:  gmp-devel
+BuildRequires:  libicu-devel
+
+BuildRequires:  parrot >= %{parrot_version}
+BuildRequires:  parrot-devel >= %{parrot_version}
+BuildRequires:  parrot-tools >= %{parrot_version}
+
+# Needed for building blizkost
+BuildRequires:  perl(ExtUtils::Embed)
+
+# Needed for desktop-file-install usage
+BuildRequires:  desktop-file-utils
+
+# Replacing existing "rakudo" package
+Obsoletes:      rakudo <= 0.0.2010.08_2.7.0-2
+Provides:       rakudo = %{version}-%{release}
+
+
+# filter out the perl5 modules requires for perl6 modules
+%filter_from_requires /perl(/d
+%filter_setup
+
+
+%description
+Rakudo Perl 6, or just Rakudo, is a Perl 6 compiler for the Parrot virtual
+machine. Rakudo is an implementation of the Perl 6 specification that runs
+on the Parrot VM. More information about Perl 6 is available from:
+http://perl6.org
+Rakudo Star is a collection of things around Rakudo. It installs Perl 6 modules.
+Rakudo Star also includes Blizkost, which enables you to use Perl 5
+modules from Perl 6.
+The documentation includes a PDF-document that describes the using of Perl 6.
+
+
+%prep
+%setup -q -n %{name}-%{year}.%{month}
+
+
+%build
+%{__perl} Configure.pl
+
+# add flags like '-g' to CFLAGS
+%{__sed} -i -e "/^CFLAGS/ s/$/ $RPM_OPT_FLAGS/" Makefile
+%{__sed} -i -e "/^CFLAGS/ s/$/ @optimize@/" rakudo/build/Makefile.in
+
+%{__make}
+%{__make} blizkost
+
+
+%install
+%{__rm} -rf $RPM_BUILD_ROOT
+
+
+# Rakudo installation
+%{__sed} -i -e 's&$(DESTDIR)$(DOCDIR)/rakudo&$(DESTDIR)$(DOCDIR)/rakudo-star-%{version}&' rakudo/Makefile
+
+%{__make} rakudo-install DESTDIR=$RPM_BUILD_ROOT
+
+
+# Blizkost installation
+%{__mkdir} -p $RPM_BUILD_ROOT/usr/bin
+%{__make} blizkost-install DESTDIR=$RPM_BUILD_ROOT
+%{__rm} -f $RPM_BUILD_ROOT/usr/share/doc/parrot/2.7.0/languages/perl5/README
+
+
+# First install modules files to "m_install" subdirectory und then copy it
+# to $RPM_BUILD_ROOT, to avoid having the $RPM_BUILD_ROOT in installed files
+export PERL6LIB=$( pwd )/m_install%{parrot_lang_perl6}/lib
+export LD_LIBRARY_PATH=$( pwd )/rakudo/dynext
+%{__mkdir} -p m_install/usr/bin
+%{__ln_s} ../../../perl6 m_install/usr/bin/perl6
+%{__make} modules-install DESTDIR=$( pwd )/m_install
+%{__rm} m_install/usr/bin/perl6
+# move ufo
+%{__mv} m_install/usr/bin m_install%{parrot_lang_perl6}
+
+# Now copy to $RPM_BUILD_ROOT
+%{__cp} -r m_install/* $RPM_BUILD_ROOT
+
+
+# Force executable permission on shared objects so they get stripped
+%{__chmod} 755 $RPM_BUILD_ROOT%{parrot_dynext}/perl6*.so
+%{__chmod} 755 $RPM_BUILD_ROOT%{parrot_dynext}/blizkost_group.so
+
+
+# install desktop files
+%define DESK_TARGET $RPM_BUILD_ROOT%{_datadir}/applications/
+%{__mkdir} -p %{DESK_TARGET}
+# specs-URL
+%{__tar} xzf %{SOURCE1} --directory=%{DESK_TARGET} perl6_specs_link.desktop
+# UsingPerl6-PDF-document
+%{__tar} xzf %{SOURCE1} --to-stdout rakudo_guide_pdf.desk.in | %{__sed} "s|@VERSION@|%{version}|g" > %{DESK_TARGET}rakudo_guide_pdf.desktop
+
+desktop-file-install --delete-original --add-category="Documentation"  \
+    --dir=%{DESK_TARGET} %{DESK_TARGET}perl6_specs_link.desktop
+desktop-file-install --delete-original --add-category="Documentation"  \
+    --dir=%{DESK_TARGET} %{DESK_TARGET}rakudo_guide_pdf.desktop
+
+
+%check
+%{?!_without_tests:
+%{__make} rakudo-test
+
+# testing the modules
+export PERL6LIB=$( pwd )/m_install%{parrot_lang_perl6}/lib
+export LD_LIBRARY_PATH=$( pwd )/rakudo/dynext
+%{__cp} rakudo/Test.p* m_install%{parrot_lang_perl6}/lib
+#
+#prove -e ./perl6 -r modules/Algorithm-Viterbi/t
+# Configure.p* -> modules/mainline/lib/Test/
+#prove -e ./perl6 -r modules/perl6-File-Find/t
+prove -e ./perl6 -r modules/form/t
+prove -e ./perl6 -r modules/json/t
+# this test fails with koji
+#    prove -e ./perl6 -r modules/perl6-lwp-simple/t
+prove -e ./perl6 -r modules/Perl6-MIME-Base64/t
+prove -e ./perl6 -r modules/Math-Model/t
+prove -e ./perl6 -r modules/Math-RungeKutta/t
+#prove -e ./perl6 -r modules/MiniDBI/t
+prove -e ./perl6 -r modules/svg/t
+prove -e ./perl6 -r modules/svg-plot/t
+prove -e ./perl6 -r modules/perl6-Term-ANSIColor/t
+prove -e ./perl6 -r modules/mainline/t
+prove -e ./perl6 -r modules/xml-writer/t
+#prove -e ./perl6 -r modules/yaml-pm6/t
+}
+
+%clean
+%{__rm} -rf $RPM_BUILD_ROOT
+
+
+%files
+%defattr(-,root,root,-)
+%doc LICENSE README docs/CREDITS docs/cheatsheet.txt docs/UsingPerl6-draft.pdf
+%{_bindir}/perl6
+%{parrot_dynext}/perl6_group.so
+%{parrot_dynext}/perl6_ops.so
+%{parrot_lang_perl6}
+%{_mandir}/man1/perl6.1.gz
+%{_mandir}/man1/rakudo.1.gz
+
+# Blizkost files
+%{_bindir}/parrot-blizkost
+%{_libdir}/parrot/%{parrot_version}/languages/perl5
+%{parrot_dynext}/blizkost_group.so
+
+# modules part
+# %%{_bindir}/ufo is moved to %%{parrot_lang_perl6}/bin/ufo
+# the other modules files are in %%{parrot_lang_perl6}/lib placed with
+# %%{parrot_lang_perl6} above
+
+# desktop files
+%{_datadir}/applications/perl6_specs_link.desktop
+%{_datadir}/applications/rakudo_guide_pdf.desktop
+
+
+%changelog
+* Wed Sep 08 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-6
+- changed provides/obseletes for "rakudo" package
+
+* Wed Sep 08 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-5
+- add provides/obseletes for replacing the existing "rakudo" package
+
+* Wed Sep 08 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-4
+- let rakudo read the 'optimize' value of the parrot configuration this add flags like '-g' to CFLAGS
+
+* Fri Sep 03 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-3
+- consistent use of $RPM_BUILD_ROOT
+
+* Thu Sep 02 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-2
+- changed permission of source files
+- added tests for modules
+- changed the place of the installed perl-script "ufo" 
+
+* Tue Aug 31 2010 Gerd Pokorra <gp at zimt.uni-siegen.de> 0.0.2010.08_2.7.0-1
+- filter out the perl5 modules requires for perl6 modules
+- desktop files added
+- initial .spec file
diff --git a/sources b/sources
index e69de29..d65b3e0 100644
--- a/sources
+++ b/sources
@@ -0,0 +1,2 @@
+abdadbc3016498c3bd8a89b53f63ae35  rakudo-star-2010.08.tar.gz
+3f49413c8b8a9d0de40678d59d29078d  rakudo.desk.in.tar.gz


More information about the scm-commits mailing list