On February 19, 2015 10:44:46 PM CST, Russell Keith-Magee <[email protected]> wrote: >On Fri, Feb 20, 2015 at 11:22 AM, Cyd Haselton <[email protected]> >wrote: > >> >> >> On February 19, 2015 9:00:22 PM CST, Russell Keith-Magee < >> [email protected]> wrote: >> >On Fri, Feb 20, 2015 at 8:26 AM, Cyd Haselton <[email protected]> >> >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 :-) >
Prereq for both, I thought. And I was intending to build on device >>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. > I'll pull the build directory off the device, pull out the modified files, get the bookmarked patches and make a list. >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. > I have little experience in using autoconf but I do know that, as of GCC 4.8 the -mbionic -mandroid flags define __ANDROID__...perhaps there is a way for setup.py or Setup to key off that to update sys.platform > >> >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. > Will do after I;ve compiled the info >Yours, >Russ Magee %-) -- Sent from my Android device with K-9 Mail. Please excuse my brevity. _______________________________________________ Mobile-sig mailing list [email protected] https://mail.python.org/mailman/listinfo/mobile-sig
