The package rpms/micropython.git has added or updated architecture specific content in
its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/micropython.git/commit/?id=007ea5....
Change:
+ExclusiveArch: %{arm} %{ix86} x86_64
Thanks.
Full change:
============
commit 007ea5d59566b880e44fb217de7d25cafe8315b2
Author: Miro Hronok <miro(a)hroncok.cz>
Date: Sun Jan 13 13:43:35 2019 +0100
Enable i686, fix a FTBFS (#1556924)
diff --git a/c97607db5ccc03afbccacf853f2cd06305c28251.patch
b/c97607db5ccc03afbccacf853f2cd06305c28251.patch
new file mode 100644
index 0000000..ae6dd9c
--- /dev/null
+++ b/c97607db5ccc03afbccacf853f2cd06305c28251.patch
@@ -0,0 +1,63 @@
+From c97607db5ccc03afbccacf853f2cd06305c28251 Mon Sep 17 00:00:00 2001
+From: Damien George <damien.p.george(a)gmail.com>
+Date: Tue, 15 May 2018 11:17:28 +1000
+Subject: [PATCH] py/nlrx86: Use naked attribute on nlr_push for gcc 8.0 and
+ higher.
+
+gcc 8.0 supports the naked attribute for x86 systems so it can now be used
+here. And in fact it is necessary to use this for nlr_push because gcc 8.0
+no longer generates a prelude for this function (even without the naked
+attribute).
+---
+ py/nlrx86.c | 26 +++++++++++++++++++++-----
+ 1 file changed, 21 insertions(+), 5 deletions(-)
+
+diff --git a/py/nlrx86.c b/py/nlrx86.c
+index 23882cc307..59b97d8ee6 100644
+--- a/py/nlrx86.c
++++ b/py/nlrx86.c
+@@ -39,15 +39,29 @@ unsigned int nlr_push_tail(nlr_buf_t *nlr)
asm("nlr_push_tail");
+ __attribute__((used)) unsigned int nlr_push_tail(nlr_buf_t *nlr);
+ #endif
+
++#if !defined(__clang__) && defined(__GNUC__) && __GNUC__ >= 8
++// Since gcc 8.0 the naked attribute is supported
++#define USE_NAKED (1)
++#define UNDO_PRELUDE (0)
++#elif defined(__ZEPHYR__) || defined(__ANDROID__)
++// Zephyr and Android use a different calling convention by default
++#define USE_NAKED (0)
++#define UNDO_PRELUDE (0)
++#else
++#define USE_NAKED (0)
++#define UNDO_PRELUDE (1)
++#endif
++
++#if USE_NAKED
++__attribute__((naked))
++#endif
+ unsigned int nlr_push(nlr_buf_t *nlr) {
++ #if !USE_NAKED
+ (void)nlr;
++ #endif
+
+ __asm volatile (
+- // Check for Zephyr, which uses a different calling convention
+- // by default.
+- // TODE: Better support for various x86 calling conventions
+- // (unfortunately, __attribute__((naked)) is not supported on x86).
+- #if !(defined(__ZEPHYR__) || defined(__ANDROID__))
++ #if UNDO_PRELUDE
+ "pop %ebp \n" // undo function's prelude
+ #endif
+ "mov 4(%esp), %edx \n" // load nlr_buf
+@@ -61,7 +75,9 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
+ "jmp nlr_push_tail \n" // do the rest in C
+ );
+
++ #if !USE_NAKED
+ return 0; // needed to silence compiler warning
++ #endif
+ }
+
+ NORETURN void nlr_jump(void *val) {
diff --git a/micropython.spec b/micropython.spec
index d9fa797..dfc46b5 100644
--- a/micropython.spec
+++ b/micropython.spec
@@ -4,7 +4,7 @@
Name: micropython
Version: 1.9.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Implementation of Python 3 with very low memory footprint
# micorpython itself is MIT
@@ -21,7 +21,7 @@ Source1:
https://github.com/pfalcon/axtls/archive/%{axtls_commit}/axtls-%{
Source2:
https://github.com/pfalcon/berkeley-db-1.xx/archive/%{berkley_commit}/ber...
# Other arches need active porting
-ExclusiveArch: %{arm} x86_64
+ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: gcc
BuildRequires: python3-devel
@@ -46,6 +46,8 @@ Patch0: python37_tests.patch
%global cpython_version_tests 3.7
BuildRequires: %{_bindir}/python%{cpython_version_tests}
+#
https://github.com/micropython/micropython/issues/3637
+Patch1:
https://github.com/micropython/micropython/commit/c97607db5ccc03afbccacf8...
Provides: bundled(axtls)
Provides: bundled(libdb) = 1.85
@@ -100,6 +102,9 @@ install -pm 755 ports/unix/micropython %{buildroot}%{_bindir}
%{_bindir}/micropython
%changelog
+* Sun Jan 13 2019 Miro Hronok <mhroncok(a)redhat.com> - 1.9.4-2
+- Enable i686, fix a FTBFS (#1556924)
+
* Wed Aug 01 2018 Miro Hronok <mhroncok(a)redhat.com> - 1.9.4-1
- Update to 1.9.4 (#1577187)
- Use CPython 3.6 in tests that compare results due to PEP479 (#1604827)