https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Bug ID: 1113915 Summary: Review Request: micropython - Implementation of Python 3 with very low memory footprint Product: Fedora Version: rawhide Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: mstuchli@redhat.com QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org
Spec URL: http://mstuchli.fedorapeople.org/micropython.spec SRPM URL: http://mstuchli.fedorapeople.org/micropython-1.1.1-1.src.rpm Description: Implementation of Python 3 with very low memory footprint Fedora Account System Username: mstuchli
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Christopher Meng i@cicku.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |i@cicku.me Assignee|nobody@fedoraproject.org |i@cicku.me Flags| |fedora-review?
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #1 from Christopher Meng i@cicku.me --- 1. Release: 1
https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Using_the_.25.7B.3...
2. BuildRequires: python-devel BuildRequires: python3-devel
Why python2 still being used?
3. LDFLAGS need to set as well: %?__global_ldflags
4. Try make -C for subdir building.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #2 from Matej Stuchlik mstuchli@redhat.com --- (In reply to Christopher Meng from comment #1)
- Release: 1
https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Using_the_.25.7B. 3Fdist.7D_Tag
Fixed 8
- BuildRequires: python-devel
BuildRequires: python3-devel
Why python2 still being used?
Required during the build process: python ../py/makeqstrdata.py build/genhdr/qstrdefs.preprocessed.h qstrdefsport.h > build/genhdr/qstrdefs.generated.h
- LDFLAGS need to set as well: %?__global_ldflags
Fixed, but I'm now the build fails during linking. http://koji.fedoraproject.org/koji/taskinfo?taskID=7095407 I'll look into it, but does it seem familiar to you?
- Try make -C for subdir building
Fixed
New SRPM URL: http://mstuchli.fedorapeople.org/micropython-1.1.1-1.fc20.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #3 from Christopher Meng i@cicku.me --- (In reply to Matej Stuchlik from comment #2)
Fixed, but I'm now the build fails during linking. http://koji.fedoraproject.org/koji/taskinfo?taskID=7095407 I'll look into it, but does it seem familiar to you?
Yes, because you are overriding the ldflags.
Also no hidden build:
mkdir -p build/genhdr CPP ../py/qstrdefs.h makeqstrdata ../py/qstrdefs.h qstrdefsport.h ../py/py-version.sh: line 4: git: command not found Generating build/genhdr/py-version.h mkdir -p build/py/ CC ../py/nlrx86.S CC ../py/nlrx64.S CC ../py/nlrthumb.S CC ../py/nlrsetjmp.c CC ../py/malloc.c CC ../py/gc.c CC ../py/qstr.c CC ../py/vstr.c CC ../py/unicode.c CC ../py/mpz.c CC ../py/lexer.c CC ../py/lexerstr.c CC ../py/lexerunix.c CC ../py/parse.c CC ../py/parsehelper.c CC ../py/scope.c CC ../py/compile.c CC ../py/emitcommon.c CC ../py/emitpass1.c CC ../py/emitcpy.c CC ../py/emitbc.c CC ../py/asmx64.c CC ../py/emitnative.c CC ../py/asmthumb.c CC ../py/emitnative.c CC ../py/emitinlinethumb.c CC ../py/formatfloat.c CC ../py/parsenumbase.c CC ../py/parsenum.c CC ../py/emitglue.c CC ../py/runtime.c CC ../py/argcheck.c CC ../py/map.c CC ../py/obj.c CC ../py/objarray.c CC ../py/objbool.c CC ../py/objboundmeth.c CC ../py/objcell.c CC ../py/objclosure.c CC ../py/objcomplex.c CC ../py/objdict.c CC ../py/objenumerate.c CC ../py/objexcept.c CC ../py/objfilter.c CC ../py/objfloat.c CC ../py/objfun.c CC ../py/objgenerator.c CC ../py/objgetitemiter.c CC ../py/objint.c CC ../py/objint_longlong.c CC ../py/objint_mpz.c CC ../py/objlist.c CC ../py/objmap.c CC ../py/objmodule.c CC ../py/objobject.c CC ../py/objproperty.c CC ../py/objnone.c CC ../py/objnamedtuple.c CC ../py/objrange.c CC ../py/objset.c CC ../py/objslice.c CC ../py/objstr.c CC ../py/objstringio.c CC ../py/objtuple.c CC ../py/objtype.c CC ../py/objzip.c CC ../py/opmethods.c CC ../py/sequence.c CC ../py/stream.c CC ../py/binary.c CC ../py/builtin.c CC ../py/builtinimport.c CC ../py/builtinevex.c CC ../py/builtintables.c CC ../py/modarray.c CC ../py/modcollections.c CC ../py/modgc.c CC ../py/modio.c CC ../py/modmath.c CC ../py/modcmath.c CC ../py/modmicropython.c CC ../py/modstruct.c CC ../py/modsys.c CC ../py/vm.c CC ../py/showbc.c CC ../py/repl.c CC ../py/smallint.c CC ../py/pfenv.c CC main.c CC gccollect.c CC input.c CC file.c CC modsocket.c CC modos.c CC modtime.c CC modffi.c LINK micropython build/modffi.o: In function `ffifunc_call': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:331: undefined reference to `ffi_call' build/modffi.o: In function `ffimod_close': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:163: undefined reference to `dlclose' build/modffi.o: In function `ffimod_var': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:247: undefined reference to `dlsym' build/modffi.o: In function `ffimod_make_new': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:262: undefined reference to `dlopen' build/modffi.o: In function `mod_ffi_callback': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:217: undefined reference to `ffi_closure_alloc' /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:228: undefined reference to `ffi_prep_cif' /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:233: undefined reference to `ffi_prep_closure_loc' build/modffi.o: In function `ffimod_func': /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:173: undefined reference to `dlsym' /builddir/build/BUILD/micropython-1.1.1/unix/modffi.c:191: undefined reference to `ffi_prep_cif' build/modffi.o:(.rodata+0x0): undefined reference to `ffi_type_uint8' build/modffi.o:(.rodata+0x1c): undefined reference to `ffi_type_uint32' build/modffi.o:(.rodata+0x28): undefined reference to `ffi_type_uint32' build/modffi.o:(.rodata+0x38): undefined reference to `ffi_type_pointer' build/modffi.o:(.rodata+0x80): undefined reference to `ffi_type_sint8' build/modffi.o:(.rodata+0x88): undefined reference to `ffi_type_double' build/modffi.o:(.rodata+0x90): undefined reference to `ffi_type_float' build/modffi.o:(.rodata+0x9c): undefined reference to `ffi_type_sint32' build/modffi.o:(.rodata+0xa8): undefined reference to `ffi_type_sint32' build/modffi.o:(.rodata+0xb8): undefined reference to `ffi_type_pointer' build/modffi.o:(.rodata+0xc4): undefined reference to `ffi_type_pointer' build/modffi.o:(.rodata+0xd0): undefined reference to `ffi_type_void' collect2: error: ld returned 1 exit status ../py/mkrules.mk:75: recipe for target 'micropython' failed make: Leaving directory '/builddir/build/BUILD/micropython-1.1.1/unix' RPM build errors: make: *** [micropython] Error 1
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #4 from Matej Stuchlik mstuchli@redhat.com --- (In reply to Christopher Meng from comment #3)
(In reply to Matej Stuchlik from comment #2)
Fixed, but I'm now the build fails during linking. http://koji.fedoraproject.org/koji/taskinfo?taskID=7095407 I'll look into it, but does it seem familiar to you?
Yes, because you are overriding the ldflags.
I don't think I follow, looking at the build log, LDFLAGS seem to be "-Wl,-z,relro -lm -Wl,-Map=micropython.map,--cref", i.e. %?__global_ldflags followed by whatever is added in the Makefile, which seem alright to me. Maybe you missed that I'm using LDFLAGS_MOD="%?__global_ldflags"? ^^^
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #5 from Christopher Meng i@cicku.me --- (In reply to Matej Stuchlik from comment #4)
(In reply to Christopher Meng from comment #3)
(In reply to Matej Stuchlik from comment #2)
Fixed, but I'm now the build fails during linking. http://koji.fedoraproject.org/koji/taskinfo?taskID=7095407 I'll look into it, but does it seem familiar to you?
Yes, because you are overriding the ldflags.
I don't think I follow, looking at the build log, LDFLAGS seem to be "-Wl,-z,relro -lm -Wl,-Map=micropython.map,--cref", i.e. %?__global_ldflags followed by whatever is added in the Makefile, which seem alright to me. Maybe you missed that I'm using LDFLAGS_MOD="%?__global_ldflags"? ^^^
I don't know.
If revision 1 was built successfully, then rev 2 failed, it should be caused by ldflags.
But now you provide the rev 2 RPM with no %release tag bumped, I can't tell.
Anyway, fix it and then I will go ahead.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #6 from Matej Stuchlik mstuchli@redhat.com --- I've rebased the package to micropython 1.2, fixed an issue with cflags, added the ldflags and added a patch that stops git from being invoked during build.
new SRPM URL: http://mstuchli.fedorapeople.org/micropython-1.2-1.fc20.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Matej Stuchlik mstuchli@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |needinfo?(i@cicku.me)
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Christopher Meng i@cicku.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo?(i@cicku.me) |
--- Comment #7 from Christopher Meng i@cicku.me --- I will finish this in today or tomorrow.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #8 from Christopher Meng i@cicku.me --- 1. I don't think it's a good idea to remove O2 from the cflags, you should contact upstream. (Use V=1 and report the issues)
2. The summary of this package should be: "Python for microcontrollers"
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zbyszek@in.waw.pl
--- Comment #9 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl --- Upstream is up to version 1.4.4. Would be great to finish this. Matej, any plans for an update? Christopher, any plans to finish the review?
Also, what about the stdlib? It has separate sources, so should be built separately...
%license is now mandatory (https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#License_Text).
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
John Dulaney jdulaney@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jdulaney@fedoraproject.org
--- Comment #10 from John Dulaney jdulaney@fedoraproject.org --- Is this still a thing? If I get no response in a week, I'm going to submit my own review.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #11 from Upstream Release Monitoring upstream-release-monitoring@fedoraproject.org --- jdulaney's scratch build of micropython-1.2-1.fc23.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=11807116
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #12 from Upstream Release Monitoring upstream-release-monitoring@fedoraproject.org --- jdulaney's scratch build of micropython-1.5-0.fc23.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=11807259
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #13 from Upstream Release Monitoring upstream-release-monitoring@fedoraproject.org --- jdulaney's scratch build of micropython-1.5-0.fc23.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=11807362
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #14 from Upstream Release Monitoring upstream-release-monitoring@fedoraproject.org --- jdulaney's scratch build of micropython-1.5-0.fc23.src.rpm for rawhide failed http://koji.fedoraproject.org/koji/taskinfo?taskID=11807404
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #15 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl --- (In reply to John Dulaney from comment #10)
Is this still a thing? If I get no response in a week, I'm going to submit my own review.
I think you can go ahead. Nothing much has happened here in a long time.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
John Dulaney jdulaney@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |CLOSED Resolution|--- |DEFERRED Last Closed| |2016-01-05 21:14:37
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Nick Coghlan ncoghlan@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ncoghlan@redhat.com
--- Comment #16 from Nick Coghlan ncoghlan@redhat.com --- What's the status here? John's last comment suggests a new review request would be incoming, but that doesn't appear to be the case as yet.
Context for my question is this Marketing Team ticket about creating updated Python talking points for Fedora Ambassadors: https://fedorahosted.org/marketing-team/ticket/219
Packaged MicroPython and the BBC micro:bit support in https://fedoraproject.org/wiki/Changes/Micro_Bit would potentially make good additions to that, but the first part of that depends on MicroPython actually being packaged (the second part doesn't, as that can work with building MicroPython directly from source)
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
--- Comment #17 from John Dulaney jdulaney@fedoraproject.org --- So, I had some things to work through with upstream, and then got distracted. Let me poke at that a bit.
https://bugzilla.redhat.com/show_bug.cgi?id=1113915
Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|DEFERRED |DUPLICATE
--- Comment #18 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl ---
*** This bug has been marked as a duplicate of bug 1323966 ***
package-review@lists.fedoraproject.org