[Mobile-sig] Next Steps for "Working" Port

Russell Keith-Magee russell at keith-magee.com
Fri Feb 20 05:44:46 CET 2015


On Fri, Feb 20, 2015 at 11:22 AM, Cyd Haselton <chaselton at gmail.com> wrote:

>
>
> On February 19, 2015 9:00:22 PM CST, Russell Keith-Magee <
> russell at keith-magee.com> wrote:
> >On Fri, Feb 20, 2015 at 8:26 AM, Cyd Haselton <chaselton at gmail.com>
> >wrote:
> >
> >> Thanks to the help and input of people from this and the python-dev
> >list
> >> I've hacked together a nearly complete port of Python 3.4.2 to
> >> Android...specifically the KBOX system running on Android. I'm
> >currently
> >> working at what I hope is the last bug...typing 'modules string'
> >segfaults
> >> the python binary.
> >>
> >> I started this with the mindset that the port was just a step on the
> >way
> >> to porting Mozilla's SpiderMonkey. I still intend to do this but I'm
> >also
> >> wondering if, given the huge amount of work it's been, there is any
> >public
> >> usefulness to this port.
> >>
> >> If so, what would be the next steps? Keep in mind that I am
> >relatively new
> >> to pretty much everything related to the Linux platform, code
> >> development/contribution/maintenance and the like.
> >>
> >
> >Are you looking for advice on the next steps for building SpiderMonkey?
> >If
> >this is the case, then I'm not sure this is the best forum for that
> >discussion. This is a *Python* mobile-sig, not a general purpose Mobile
> >development forum. I'm not sure I see the connection between
> >SpiderMonkey
> >and Python in this instance (although I admit I might be missing some
> >relevant but non-obvious connection here). If you want advice on how to
> >build SpiderMonkey, then a general purpose Android mailing list would
> >be a
> >better forum.
> >
>
> Last time I checked Python was a prerequisite for SpiderMonkey but no i'm
> not asking for advice on how to port it.
>

A prerequisite for *running* SpiderMonkey, or *building* it? Because if
you're just looking for a build, it sounds like you've just shaved the
wrong yak :-)

>However, if you're looking for advice on how to advance your Python
> >3.4.2
> >port, then I would guess the next step is to share your patches and
> >build
> >instructions. Others have shared patches, but I don't think we're quite
> >at
> >the point of a set of patches that could be applied to the Python
> >source
> >tree that would make Android a platform supported by Python
> >"out-of-the-box". Everything I've seen to date involves post-patching
> >Makefiles, pyconfig.h, or providing other post-configure modifications
> >of
> >the source tree, or results in a sys.platform that identifies as
> >"Linux".
> >
>
> With the exception of a tricky segfault issue all of the patches I applied
> were ones I found at bugs.python.org or links included in bug reports at
> bugs.python.org. I've bookmarked them all, but what is the standard
> process/format for sharing?
>

Well, there isn't a "standard" process that I'm aware of at the moment -
this SIG is only a month or two old.

Ultimately, I'd like to get someone from the core team in a corner and say
"merge these N patches and you'll solve all our mobile problems". So - any
knowledge sharing that helps to develop what tickets are on that hit list
is a win.

Also, is there a problem with sys.platform identifying as Linux if
> ./configure detects it as such?
>

Well, Yes, Android is a "linux" - but that's really only true at the kernel
level. It's not just a "Debian vs Ubuntu vs RedHat" type distinction - the
filesystem is different, the process model is different, the system
resources available at runtime are different, and so on.

The same is true on iOS - Yes, technically, it is a Darwin kernel - but
that's about where the similarity with OS/X ends.

>From a practical perspective, there needs to be a way to identify that you
aren't dealing with a Linux desktop machine, but an Android device (or, not
a Mac, but an iPhone/iPad). To me, sys.platform seems like the most obvious
place to make this distinction, but if someone wants to posit a different
identifier (presumably on the basis that sys.platform is intended to be a
kernel identifier), then fine. However, so far, I haven't seen any patches
that add *any* sort of system identifier.


> >Don't get me wrong - getting Python to work on Android *at all* is
> >obviously an achievement - but to my mind, the end goal should be to
> >get
> >the source tree to a point where it *isn't* a big achievement - just a
> >simple set of instructions using a default source download.
> >
> Provided I can share patches and build instructions properly would this
> port be a useful contribution towards that end goal?
>

IMHO, a detailed post to this list or a link to a gist/blog post would both
do the job.

Yours,
Russ Magee %-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/mobile-sig/attachments/20150220/9829e1ec/attachment-0001.html>


More information about the Mobile-sig mailing list