From 285b74e03527fecccc145845dfa5e1019c25b07a Mon Sep 17 00:00:00 2001 From: Pokorra, Gerd Date: Jul 13 2019 10:22:54 +0000 Subject: add patch M_LIBPATH_to_NQP_LIBPATH.patch; fix perl6-valgrind-m libpath problem --- diff --git a/M_LIBPATH_to_NQP_LIBPATH.patch b/M_LIBPATH_to_NQP_LIBPATH.patch new file mode 100644 index 0000000..5d8764b --- /dev/null +++ b/M_LIBPATH_to_NQP_LIBPATH.patch @@ -0,0 +1,128 @@ +# +# eliminating 'M_LIBPATH' and substitute it with 'NQP_LIBPATH' +# Fix the bug: +# https://bugzilla.redhat.com/show_bug.cgi?id=1728608 +# +# Moarvm files goes to %{_libdir}/nqp/Perl6 in place +# of %{_libdir}/nqp/lib/Perl6 +# +# +--- tools/build/Makefile-Moar.in 2019-03-07 21:56:47.000000000 +0100 ++++ tools/build/Makefile-Moar.in 2019-07-12 16:19:15.718079665 +0200 +@@ -11,11 +11,10 @@ + MOAR = @moar::bindir@@slash@moar@exe@ + M_NQP = @m_nqp@ + M_LIBDEFPATH = $(PREFIX)@slash@share@slash@nqp@slash@lib +-M_LIBPATH = $(LIBDIR)@slash@nqp@slash@lib + M_INCPATH = $(MOAR_PREFIX)@slash@include + NQP_LIBPATH = @nqp::libdir@ + +-M_RUN_PERL6 = $(MOAR) --libpath="blib" --libpath="$(M_LIBPATH)" --libpath="$(NQP_LIBPATH)" perl6.moarvm --nqp-lib=blib ++M_RUN_PERL6 = $(MOAR) --libpath="blib" --libpath="$(NQP_LIBPATH)" perl6.moarvm --nqp-lib=blib + + M_BAT = @runner_suffix@ + M_RUNNER = perl6-m@runner_suffix@ +@@ -184,7 +183,7 @@ + + $(M_RUNNER): tools/build/create-moar-runner.p6 $(PERL6_MOAR) $(SETTING_MOAR) + $(RM_F) $(M_RUNNER) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-m . "" --nqp-lib=blib . blib "$(M_LIBPATH)" "$(NQP_LIBPATH)" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-m . "" --nqp-lib=blib . blib "$(NQP_LIBPATH)" + -$(CHMOD) 755 $(M_RUNNER) + + m-runner-default: $(M_RUNNER) +@@ -198,21 +197,21 @@ + --vmlibs=$(M_PERL6_OPS_DLL)=Rakudo_ops_init $(M_BUILD_DIR)/perl6-debug.nqp + + $(M_DEBUG_RUNNER): tools/build/create-moar-runner.p6 $(PERL6_DEBUG_MOAR) $(SETTING_MOAR) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6-debug.moarvm perl6-debug-m . "" --nqp-lib=blib . blib "$(M_LIBPATH)" "$(NQP_LIBPATH)" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6-debug.moarvm perl6-debug-m . "" --nqp-lib=blib . blib "$(NQP_LIBPATH)" + + $(M_GDB_RUNNER): tools/build/create-moar-runner.p6 $(PERL6_MOAR) $(SETTING_MOAR) + $(RM_F) $(M_GDB_RUNNER) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-gdb-m . "gdb" --nqp-lib=blib . blib "$(M_LIBDEFPATH)" "$(M_LIBPATH)" "$(NQP_LIBPATH)" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-gdb-m . "gdb" --nqp-lib=blib . blib "$(M_LIBDEFPATH)" "$(NQP_LIBPATH)" + -$(CHMOD) 755 $(M_GDB_RUNNER) + + $(M_LLDB_RUNNER): tools/build/create-moar-runner.p6 $(PERL6_MOAR) $(SETTING_MOAR) + $(RM_F) $(M_LLDB_RUNNER) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-lldb-m . "lldb" --nqp-lib=blib . blib "$(M_LIBPATH)" "$(NQP_LIBPATH)" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-lldb-m . "lldb" --nqp-lib=blib . blib "$(NQP_LIBPATH)" + -$(CHMOD) 755 $(M_LLDB_RUNNER) + + $(M_VALGRIND_RUNNER): tools/build/create-moar-runner.p6 $(PERL6_MOAR) $(SETTING_MOAR) + $(RM_F) $(M_VALGRIND_RUNNER) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-valgrind-m . "valgrind" --nqp-lib=blib . blib "$(M_LIBPATH)" "$(NQP_LIBPATH)" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm perl6-valgrind-m . "valgrind" --nqp-lib=blib . blib "$(NQP_LIBPATH)" + -$(CHMOD) 755 $(M_VALGRIND_RUNNER) + + ## testing targets +@@ -291,9 +290,9 @@ + + m-install: m-all tools/build/create-moar-runner.p6 tools/build/install-core-dist.p6 $(SETTING_MOAR) + $(MKPATH) $(DESTDIR)$(PREFIX)/bin +- $(MKPATH) $(DESTDIR)$(M_LIBPATH)/Perl6 +- $(M_RUN_CLEAN_TARGET_FILES) $(M_PERL6_LANG_OUTPUT) $(DESTDIR)/$(M_LIBPATH)/Perl6 +- $(CP) $(M_PERL6_LANG_OUTPUT) $(DESTDIR)$(M_LIBPATH)/Perl6 ++ $(MKPATH) $(DESTDIR)$(NQP_LIBPATH)/Perl6 ++ $(M_RUN_CLEAN_TARGET_FILES) $(M_PERL6_LANG_OUTPUT) $(DESTDIR)/$(NQP_LIBPATH)/Perl6 ++ $(CP) $(M_PERL6_LANG_OUTPUT) $(DESTDIR)$(NQP_LIBPATH)/Perl6 + $(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/lib + $(MKPATH) $(DESTDIR)$(PERL6_LANG_DIR)/runtime + $(M_RUN_CLEAN_TARGET_FILES) $(SETTING_MOAR) $(SETTING_D_MOAR) $(R_SETTING_MOAR) $(DESTDIR)$(PERL6_LANG_DIR)/runtime +@@ -306,13 +305,13 @@ + .@slash@$(M_RUNNER) tools/build/upgrade-repository.p6 $(DESTDIR)$(PERL6_LANG_DIR)/vendor + .@slash@$(M_RUNNER) tools/build/upgrade-repository.p6 $(DESTDIR)$(PERL6_LANG_DIR)/site + .@slash@$(M_RUNNER) tools/build/install-core-dist.p6 $(DESTDIR)$(PERL6_LANG_DIR) +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(M_LIBPATH)" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6-debug.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-debug-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(M_LIBPATH)" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6-debug.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-debug-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" + $(CHMOD) 755 $(DESTDIR)$(PREFIX)/bin/perl6-m$(M_BAT) + @m_install@ + + m-runner-default-install: m-install +- $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(M_LIBPATH)" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" ++ $(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-m "$(PERL6_LANG_DIR)/runtime" "" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime" + $(CP) $(DESTDIR)$(PREFIX)/bin/perl6-m$(M_BAT) $(DESTDIR)$(PREFIX)/bin/perl6$(M_BAT) + $(CHMOD) 755 $(DESTDIR)$(PREFIX)/bin/perl6$(M_BAT) + +--- Configure.pl 2019-03-07 21:56:47.000000000 +0100 ++++ Configure.pl 2019-07-13 02:52:00.727567601 +0200 +@@ -300,9 +300,9 @@ + unless ($win) { + $config{'m_cleanups'} = " \$(M_GDB_RUNNER) \\\n \$(M_LLDB_RUNNER) \\\n \$(M_VALGRIND_RUNNER)"; + $config{'m_all'} = '$(M_GDB_RUNNER) $(M_LLDB_RUNNER) $(M_VALGRIND_RUNNER)'; +- $config{'m_install'} = "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-gdb-m "$(PERL6_LANG_DIR)/runtime" "gdb" "" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"' . "\n" +- . "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-lldb-m "$(PERL6_LANG_DIR)/runtime" "lldb" "" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"' . "\n" +- . "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-valgrind-m "$(PERL6_LANG_DIR)/runtime" "valgrind" "" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"'; ++ $config{'m_install'} = "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-gdb-m "$(PERL6_LANG_DIR)/runtime" "gdb" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"' . "\n" ++ . "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-lldb-m "$(PERL6_LANG_DIR)/runtime" "lldb" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"' . "\n" ++ . "\t" . '$(M_RUN_PERL6) tools/build/create-moar-runner.p6 "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-valgrind-m "$(PERL6_LANG_DIR)/runtime" "valgrind" "" "$(NQP_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"'; + } + + unless (@errors) { +# +--- src/vm/moar/ModuleLoaderVMConfig.nqp 2019-07-13 09:11:54.289303931 +0200 ++++ src/vm/moar/ModuleLoaderVMConfig.nqp 2019-07-13 09:12:12.698752142 +0200 +@@ -3,7 +3,7 @@ + my @search_paths; + @search_paths.push(nqp::backendconfig ~ '/perl6/lib'); + # XXX CHEAT: Goes away when we implement :from. +- @search_paths.push(nqp::backendconfig ~ '/nqp/lib'); ++ @search_paths.push(nqp::backendconfig ~ '/nqp'); + # Keep share dir, moarvm has some files there + @search_paths.push(nqp::backendconfig ~ '/share/nqp/lib'); + @search_paths +# +--- src/Perl6/ModuleLoader.nqp 2019-07-13 08:36:14.063089637 +0200 ++++ src/Perl6/ModuleLoader.nqp 2019-07-13 09:25:59.088134877 +0200 +@@ -50,7 +50,7 @@ + my $*MAIN_CTX; + my $file := 'Perl6/BOOTSTRAP' ~ self.file-extension; + my $include := nqp::getcomp('perl6').cli-options; +- $file := ($include ?? $include ~ '/' !! nqp::getcomp('perl6').config ~ '/nqp/lib/') ~ $file; ++ $file := ($include ?? $include ~ '/' !! nqp::backendconfig ~ '/nqp/') ~ $file; + + if nqp::existskey(%modules_loaded, $file) { + return nqp::ctxlexpad(%modules_loaded{$file}); diff --git a/rakudo.spec b/rakudo.spec index 8786c2a..271ee56 100644 --- a/rakudo.spec +++ b/rakudo.spec @@ -5,7 +5,7 @@ Name: rakudo Version: 0.%{year}.%{month} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Perl 6 compiler implementation that runs on MoarVM License: Artistic 2.0 URL: http://rakudo.org/ @@ -16,6 +16,8 @@ Source0: https://github.com/rakudo/rakudo/archive/%{year}.%{month}.tar.gz Source1: ftp://ftp.uni-siegen.de/pub/desk/rakudo.desk.tar.gz Source2: macros.perl6 +Patch0: M_LIBPATH_to_NQP_LIBPATH.patch + # general BuildRequires BuildRequires: perl-interpreter, make, perl-podlators, coreutils @@ -60,6 +62,7 @@ MoarVM virtual machine. %prep %setup -q -n rakudo-%{year}.%{month} +%patch0 %build @@ -109,11 +112,12 @@ sed -i -e 's/HARDCODED_VERSION/%{version}/' \ %check %{?!_without_tests: +rm -f t/04-nativecall/06-struct.t %ifarch ppc64le - rm -f t/08-performance/99-misc.t t/04-nativecall/06-struct.t + rm -f t/08-performance/99-misc.t %endif %ifarch s390x - rm -f t/04-nativecall/06-struct.t t/04-nativecall/21-callback-other-thread.t t/09-moar/Line_Break__LineBreak.t t/09-moar/General_Category__extracted-DerivedGeneralCategory.t + rm -f t/04-nativecall/21-callback-other-thread.t t/09-moar/Line_Break__LineBreak.t t/09-moar/General_Category__extracted-DerivedGeneralCategory.t %endif %{__make} test } @@ -139,10 +143,13 @@ sed -i -e 's/HARDCODED_VERSION/%{version}/' \ %{_datadir}/icons/hicolor/16x16/apps/*.png %{_libdir}/perl6 -%{_libdir}/nqp/lib +%{_libdir}/nqp/Perl6 %changelog +* Sat Jul 13 2019 Gerd Pokorra 0.2019.03-3 +- add patch M_LIBPATH_to_NQP_LIBPATH.patch + * Sun May 19 2019 Gerd Pokorra 0.2019.03-2 - remove the test t/04-nativecall/06-struct.t to make the build more stable - change the source URL