diff --git a/nqp.spec b/nqp.spec index adb229d..97083df 100644 --- a/nqp.spec +++ b/nqp.spec @@ -1,6 +1,11 @@ # +# noarch: moar,jvm +# + +# # disables the check: brp-java-repack-jars -# needed that the following error do not happen: +# needed that the following error do not happen at the 'rakudo' build +# also the the command 'nqp-j --version' fails with that error: # Unhandled exception: java.lang.RuntimeException: Bytecode jar contains # unexpected file META-INF/ # in (src/stage2/gen/NQP.nqp) @@ -8,50 +13,39 @@ %define __jar_repack %{nil} -# -# i686: parrot,moar -# x86_64: parrot,moar,jvm -# armv7hl: parrot,moar,jvm -# - -%global year 2014 -%global month 12 -%global parrot_version 6.10.0 +%global year 2015 +%global month 04 -%global PAR_LIB_DIR %{_libdir}/parrot/%{parrot_version} -%global parrot_dynext %{PAR_LIB_DIR}/dynext Name: nqp Version: 0.0.%{year}.%{month} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Not Quite Perl (6) +BuildArch: noarch + Group: Development/Libraries License: Artistic 2.0 and ISC and WTFPL URL: https://github.com/perl6/nqp Source0: http://rakudo.org/downloads/nqp/nqp-%{year}.%{month}.tar.gz -##Patch0: use_libtommath.patch -BuildRequires: readline-devel, gmp-devel, libicu-devel, libtommath-devel BuildRequires: perl(Test::Harness) -BuildRequires: parrot >= %{parrot_version} -BuildRequires: parrot-devel >= %{parrot_version} -BuildRequires: parrot-tools >= %{parrot_version} - BuildRequires: perl(ExtUtils::Command) -Requires: parrot >= %{parrot_version} +BuildRequires: moarvm +BuildRequires: moarvm-devel >= 0.%{year}.%{month} + +Requires: moarvm + %description -This is "Not Quite Perl" -- a compiler for quickly generating PIR routines -from Perl6-like code. The key feature of NQP is that it's -designed to be a very small compiler (as compared with, say, perl6 -or Rakudo) and is focused on being a high-level way to create -compilers and libraries for virtual machines (such as the Parrot -Virtual Machine). Unlike a full-fledged implementation of Perl 6, -NQP strives to have as small a run-time footprint as it can, while -still providing a Perl 6 object model and regular expression engine -for the virtual machine. +This is "Not Quite Perl" -- a lightweight Perl 6-like environment for virtual +machines. The key feature of NQP is that it's designed to be a very small +environment (as compared with, say, perl6 or Rakudo) and is focused on being +a high-level way to create compilers and libraries for virtual machines (such +as JVM and MoarVM). Unlike a full-fledged implementation of Perl 6, NQP +strives to have as small a runtime footprint as it can, while still providing +a Perl 6 object model and regular expression engine for the virtual machine. #-- @@ -77,120 +71,68 @@ Not Quite Perl (6) build on JVM #-- -%package moar -Summary: Not Quite Perl (6) build on MoarVM -Group: Development/Libraries - -BuildRequires: moarvm -BuildRequires: moarvm-devel +%package doc +Summary: Documentation for Not Quite Perl (6) +Group: Documentation -Requires: moarvm +BuildArch: noarch -%description moar -Not Quite Perl (6) build on MoarVM +%description doc +Documentation and also examples about NQP. #-- - %prep %setup -q -n %{name}-%{year}.%{month} -# -# see https://bugzilla.redhat.com/show_bug.cgi?id=1077812 why this files -# are removed -# -# The upstream libtommath doesn't have the conversion from and to -# float/double that NQP needs. bn_mp_(get|set)_long.c are extentions of the -# origin libtommath source. The header files are needed to build. -#rm `find 3rdparty/libtommath -type f ! -name '*long.c' -a ! -name '*.h' -a ! -name '*bncore.c' -a ! '*bn_error.c'` -# -##%%patch0 -p0 %build -%ifarch i686 -%{__perl} Configure.pl --has-libtommath --backends=parrot,moar --prefix=%{_usr} -%else -%{__perl} Configure.pl --has-libtommath --backends=parrot,jvm,moar --prefix=%{_usr} -%endif - -CFLAGS="$RPM_OPT_FLAGS -fPIC" %{__make} # %{?_smp_mflags} +%{__perl} Configure.pl --backends=jvm,moar --prefix=%{_usr} +CFLAGS="$RPM_OPT_FLAGS -fPIC" %{__make} %{?_smp_mflags} %install %{__make} install DESTDIR=$RPM_BUILD_ROOT -# Force executable permission on shared objects so they get stripped -%{__chmod} 755 $RPM_BUILD_ROOT%{parrot_dynext}/nqp*.so - %check -%ifarch %{ix86} %{arm} - # The tests fail on i686 and armv7hl architecture - # t/serialization/01-basic.t ............ - # Failed 12/1355 subtests - # t/serialization/02-types.t ............ ok - rm -f t/serialization/01-basic.t -%endif - # fails at prove -r --exec "./nqp-m" ... - rm -f t/hll/06-sprintf.t +# fails at prove -r --exec "./nqp-m" ... +rm -f t/hll/06-sprintf.t %{?!_without_tests: make test} %files -%doc CREDITS LICENSE README.pod docs examples -%{_bindir}/nqp-p - -# The unversioned shared system library files are needed for the essential work -# of the nqp executable, otherwise the executing of nqp fails -# with error message "PARROT VM: Could not load bytecode ..." -%{parrot_dynext}/nqp_group.so -%{parrot_dynext}/nqp_ops.so -%{parrot_dynext}/nqp_bigint_ops.so -%{parrot_dynext}/nqp_dyncall_ops.so - -%{PAR_LIB_DIR}/languages/nqp -%{PAR_LIB_DIR}/library/ModuleLoader.pbc -%{PAR_LIB_DIR}/include/nqp_const.pir - -%{_includedir}/parrot/%{parrot_version}/dynpmc/pmc_* +%doc CREDITS LICENSE README.pod +%{_bindir}/nqp-m +%dir %{_datadir}/nqp +%dir %{_datadir}/nqp/lib +%{_datadir}/nqp/lib/*.moarvm +%{_datadir}/nqp/lib/profiler/template.html -##%%ifnarch i686 # %%{ix86} seem not to work -# ARM: armv7hl -%ifarch x86_64 %{arm} %files jvm %{_bindir}/nqp-j %{_bindir}/eval-client.pl -%dir %{_usr}/languages -%dir %{_usr}/languages/nqp -%dir %{_usr}/languages/nqp/lib -%{_usr}/languages/nqp/lib/*.jar -%{_usr}/languages/nqp/runtime -%{_usr}/languages/nqp/lib/profiler/template.html -%endif +%dir %{_datadir}/nqp +%dir %{_datadir}/nqp/lib +%{_datadir}/nqp/lib/*.jar +%{_datadir}/nqp/runtime -%files moar -%{_bindir}/nqp-m -%dir %{_usr}/languages -%dir %{_usr}/languages/nqp -%dir %{_usr}/languages/nqp/lib -%{_usr}/languages/nqp/lib/*.moarvm -%{_usr}/languages/nqp/lib/profiler/template.html - +%files doc +%doc docs examples %changelog -* Mon Jan 26 2015 David Tardon - 0.0.2014.12-2 -- rebuild for ICU 54.1 - -* Mon Jan 26 2015 Gerd Pokorra 0.0.2014.12-1 -- update to 2015.12 +* Sat May 02 2015 Gerd Pokorra 0.0.2015.04-1 +- add subpackage doc +- define __jar_repack nil +- build architecture independent +- update to 2015.04 * Fri Aug 15 2014 Gerd Pokorra 0.0.2014.04-1 -- add subpackage moar - update to 20014.04 * Fri Apr 04 2014 Gerd Pokorra 0.0.2014.03-4 diff --git a/sources b/sources index cc6e2bf..456463c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9c371844136cc52b6d515c87d7f4a202 nqp-2014.12.tar.gz +ad8cd60f13f75f31d7da681e099c6e8c nqp-2015.04.tar.gz