moarvm: bump version to 2016.11
PATCH 1/6 moarvm: bump version to 2016.11
--- package/moarvm/moarvm.hash | 2 +- package/moarvm/moarvm.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/moarvm/moarvm.hash +1 -1
@@ -1,2 +1,2 @@ # Locally computed -sha256 d8cb9fe74267dd933c3e405b098dea99cb9c0561aedb06e8efd8ddaef43396d0 MoarVM-2016.10.tar.gz +sha256 5eaa8ff47b1c25e023a900947f88222fffe0884ce74652659ecd2265ae2d1387 MoarVM-2016.11.tar.gz
package/moarvm/moarvm.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -MOARVM_VERSION = 2016.10 +MOARVM_VERSION = 2016.11 MOARVM_SITE = http://moarvm.com/releases MOARVM_SOURCE = MoarVM-$(MOARVM_VERSION).tar.gz MOARVM_LICENSE = Artistic-2.0
Signature · 1 line
2.10.1
PATCH 2/6 moarvm: use pkgconfig to find libraries and headers
MoarVM's Configure.pl script uses pkgconfig to find libraries and headers, but it uses the one installed in the host machine which is wrong and can lead to errors of unsafe include paths.
Instead, make it depend on the host-pkgconf package and specify the path to our pkgconfig binary by using the --pkgconfig configure option.
--- package/moarvm/moarvm.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
package/moarvm/moarvm.mk +2 -1
@@ -10,7 +10,7 @@ MOARVM_SOURCE = MoarVM-$(MOARVM_VERSION).tar.gz MOARVM_LICENSE = Artistic-2.0 MOARVM_LICENSE_FILES = Artistic2.txt MOARVM_INSTALL_STAGING = YES -MOARVM_DEPENDENCIES = host-luajit libuv libtommath libatomic_ops +MOARVM_DEPENDENCIES = host-luajit host-pkgconf libuv libtommath libatomic_ops MOARVM_CONF_OPTS = \ --build=$(GNU_HOST_NAME) \
@@ -19,6 +19,7 @@ MOARVM_CONF_OPTS = \ --cc="$(TARGET_CC)" \ --ld="$(TARGET_CC)" \ --prefix="/usr" \ + --pkgconfig=$(PKG_CONFIG_HOST_BINARY) \ --lua=$(HOST_DIR)/usr/bin/luajit \ --has-libuv \ --has-libtommath \
Signature · 1 line
2.10.1
PATCH 3/6 moarvm: enable optional support for libffi
In reply to Vicente Olivert Riera--- package/moarvm/moarvm.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/moarvm/moarvm.mk +5 -0
@@ -25,6 +25,11 @@ MOARVM_CONF_OPTS = \ --has-libtommath \ --has-libatomic +ifeq ($(BR2_PACKAGE_LIBFFI),y) +MOARVM_CONF_OPTS += --has-libffi +MOARVM_DEPENDENCIES += libffi +endif + ifeq ($(BR2_ENDIAN),"BIG") MOARVM_CONF_OPTS += --big-endian endif
Signature · 1 line
2.10.1
PATCH 4/6 moarvm: select libffi when building for MIPS
In reply to Vicente Olivert RieraOtherwise the compilation will fail like this:
./libmoar.so: undefined reference to `dcCallbackThunkEntry'
See: https://github.com/MoarVM/MoarVM/issues/222
--- package/moarvm/Config.in | 3 +++ 1 file changed, 3 insertions(+)
package/moarvm/Config.in +3 -0
@@ -9,6 +9,9 @@ config BR2_PACKAGE_MOARVM select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBTOMMATH select BR2_PACKAGE_LIBATOMIC_OPS + # dyncall does not work on MIPS; libffi needs to be used. + # See: https://github.com/MoarVM/MoarVM/issues/222 + select BR2_PACKAGE_LIBFFI if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el help Short for "Metamodel On A Runtime", MoarVM is a virtual machine built especially for Rakudo Perl 6 and the NQP Compiler Toolchain.
Signature · 1 line
2.10.1
PATCH 4/6 moarvm: select libffi when building for MIPS
Hello,
Quoted 7 lines · Vicente Olivert Riera
Otherwise the compilation will fail like this:
./libmoar.so: undefined reference to `dcCallbackThunkEntry'
See: https://github.com/MoarVM/MoarVM/issues/222
Signed-off-by Vicente Olivert Riera <[email protected]>
Is this something we can see in the autobuilders? I.e, is this master or next material?
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 4/6 moarvm: select libffi when building for MIPS
Hi Thomas,
Quoted 5 lines · Thomas Petazzoni
Hello,
Quoted 2 lines · Vicente Olivert Riera
Otherwise the compilation will fail like this:
Quoted 8 lines
Quoted 5 lines
./libmoar.so: undefined reference to `dcCallbackThunkEntry'
See: https://github.com/MoarVM/MoarVM/issues/222
Signed-off-by Vicente Olivert Riera <[email protected]>Is this something we can see in the autobuilders? I.e, is this master or next material?
Is next material since MoarVM is not available for MIPS, so you cannot build it and you cannot hit that issue.
MoarVM depends on libatomic_ops, and libatomic_ops doesn't have MIPS support in Buildroot so far. This patch series adds MIPS support to it, so, from that moment, MoarVM will be able to be built for MIPS.
Regards,
Vincent
Quoted 5 lines
Thanks,
Thomas
PATCH 4/6 moarvm: select libffi when building for MIPS
Hello,
Thanks for your feedback.
Quoted 3 lines · Vicente Olivert Riera
MoarVM depends on
libatomic_ops, andlibatomic_opsdoesn't have MIPS support in Buildroot so far. This patch series adds MIPS support to it, so, from that moment, MoarVM will be able to be built for MIPS.
If moarvm depends on libatomic_ops, then why the patch enabling MIPS support in libatomic_ops is PATCH 5/6, i.e. *after* the patch enabling moarvm? Won't things break if I apply only patches 1 to 4, but not patches 5 and 6 ?
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 4/6 moarvm: select libffi when building for MIPS
Hi Thomas,
Quoted 6 lines · Thomas Petazzoni
Hello,
Thanks for your feedback.
On Thu, 24 Nov 2016 14:58:00 +0000, Vicente Olivert Riera wrote:
Quoted 8 lines
Quoted 3 lines
MoarVM depends on
libatomic_ops, andlibatomic_opsdoesn't have MIPS support in Buildroot so far. This patch series adds MIPS support to it, so, from that moment, MoarVM will be able to be built for MIPS.If moarvm depends on
libatomic_ops, then why the patch enabling MIPS support inlibatomic_opsis PATCH 5/6, i.e. *after* the patch enabling moarvm? Won't things break if I apply only patches 1 to 4, but not patches 5 and 6 ?
no, there is no patch enabling or disabling MoarVM for MIPS. You won't be able to build MoarVM for MIPS until libatomic_ops has support for MIPS as well, because MoarVM depends on libatomic_ops.
So, if we enable libatomic_ops, then we will be able to build MoarVM, and that will fail. What I did in my patch series is to add the code for fixing the MIPS problem in MoarVM even before we can actually build it for MIPS.
Regards,
Vincent
Quoted 5 lines
Best regards,
Thomas
PATCH 4/6 moarvm: select libffi when building for MIPS
Hello,
Quoted 8 lines · Vicente Olivert Riera
no, there is no patch enabling or disabling MoarVM for MIPS. You won't be able to build MoarVM for MIPS until
libatomic_opshas support for MIPS as well, because MoarVM depends onlibatomic_ops.So, if we enable
libatomic_ops, then we will be able to build MoarVM, and that will fail. What I did in my patch series is to add the code for fixing the MIPS problem in MoarVM even before we can actually build it for MIPS.
Ah, yes, moarvm has a "depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS", so indeed moarvm can't be selected for MIPS until MIPS support in libatomic_ops is enabled. So bisectability-wise we are OK.
However, from a logical point of view, it is very, very strange to enable the dependencies of moarvm *after* moarvm itself. It would be much more logical to take care of libatomic_ops first (which can be used for other things than moarvm), and then handle moarvm.
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 4/6 moarvm: select libffi when building for MIPS
Hi Thomas,
Quoted 13 lines · Thomas Petazzoni
Hello,
Quoted 8 lines · Vicente Olivert Riera
no, there is no patch enabling or disabling MoarVM for MIPS. You won't be able to build MoarVM for MIPS until
libatomic_opshas support for MIPS as well, because MoarVM depends onlibatomic_ops.So, if we enable
libatomic_ops, then we will be able to build MoarVM, and that will fail. What I did in my patch series is to add the code for fixing the MIPS problem in MoarVM even before we can actually build it for MIPS.
Quoted 7 lines
Ah, yes, moarvm has a "depends on
BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS", so indeed moarvm can't be selected for MIPS until MIPS support inlibatomic_opsis enabled. So bisectability-wise we are OK.However, from a logical point of view, it is very, very strange to enable the dependencies of moarvm *after* moarvm itself.
That's the thing, we are not enabling moarvm itself. It happens automatically when you enable its dependencies.
Quoted 3 lines
It would be
much more logical to take care oflibatomic_opsfirst (which can be used for other things than moarvm), and then handle moarvm.
Yeah, I see your point. The thing is that I put first the fix for moarvm in place so whenever it gets enabled for MIPS it's gonna build just fine.
Anyway, do you need me to resend this series with the patches in different order, or will you handle that when applying?
Regards,
Vincent
Quoted 5 lines
Thanks,
Thomas
PATCH 5/6 libatomic_ops: add support for MIPS architecture
In reply to Vicente Olivert Riera--- package/libatomic_ops/Config.in | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
package/libatomic_ops/Config.in +3 -1
@@ -1,6 +1,8 @@ config BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS bool - default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_sparc64 || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 + default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_sparc64 || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + # Unsupported for MIPS R6 + depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6 config BR2_PACKAGE_LIBATOMIC_OPS bool "libatomic_ops"
Signature · 1 line
2.10.1
PATCH 6/6 libatomic_ops: bump version to 7.4.4
In reply to Vicente Olivert Riera--- package/libatomic_ops/libatomic_ops.hash | 2 +- package/libatomic_ops/libatomic_ops.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/libatomic_ops/libatomic_ops.hash +1 -1
@@ -1,2 +1,2 @@ # Locally calculated -sha256 2616be0a2f70f7e3eb12f131a36e32723ed5a1928f17b886c3e7c62f7ed14339 libatomic_ops-libatomic_ops-7_4_2.tar.gz +sha256 ef8335676f18a111f885d48810ab090fb6bfad94e5a5dd76cdccd2a536828662 libatomic_ops-libatomic_ops-7_4_4.tar.gz
package/libatomic_ops/libatomic_ops.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -LIBATOMIC_OPS_VERSION = libatomic_ops-7_4_2 +LIBATOMIC_OPS_VERSION = libatomic_ops-7_4_4 LIBATOMIC_OPS_SITE = $(call github,ivmai,libatomic_ops,$(LIBATOMIC_OPS_VERSION)) LIBATOMIC_OPS_AUTORECONF = YES
Signature · 1 line
2.10.1
PATCH 1/6 moarvm: bump version to 2016.11
In reply to Vicente Olivert RieraHello,
Quoted 5 lines · Vicente Olivert Riera
Signed-off-by Vicente Olivert Riera <[email protected]>--- package/moarvm/moarvm.hash | 2 +- package/moarvm/moarvm.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
Entire patch series applied to next. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com