
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on the android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform. Xavier [1] https://bitbucket.org/xdegaye/pyona/src [2] To reproduce these results, follow the instructions found in INSTALL at https://bitbucket.org/xdegaye/pyona/wiki/install [3] https://bitbucket.org/xdegaye/pyona/wiki/testsuite

Xavier de Gaye <xdegaye <at> gmail.com> writes:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on the android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform.
Xavier
[1] https://bitbucket.org/xdegaye/pyona/src [2] To reproduce these results, follow the instructions found in INSTALL at https://bitbucket.org/xdegaye/pyona/wiki/install [3] https://bitbucket.org/xdegaye/pyona/wiki/testsuite
This looks great, very clean! As I understand the patches, the locale.h and langinfo.h problems are solved. Do you think the following issues on the Python bug tracker could be closed? http://bugs.python.org/issue20305 http://bugs.python.org/issue22747 http://bugs.python.org/issue17905 Stefan Krah

On 04/24/2016 11:50 AM, Stefan Krah wrote:
Xavier de Gaye <xdegaye <at> gmail.com> writes:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on the android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform.
Xavier
[1] https://bitbucket.org/xdegaye/pyona/src [2] To reproduce these results, follow the instructions found in INSTALL at https://bitbucket.org/xdegaye/pyona/wiki/install [3] https://bitbucket.org/xdegaye/pyona/wiki/testsuite
This looks great, very clean! As I understand the patches, the locale.h and langinfo.h problems are solved. Do you think the following issues on the Python bug tracker could be closed?
http://bugs.python.org/issue20305 http://bugs.python.org/issue22747 http://bugs.python.org/issue17905
Thanks. A fix is still needed because Android does not HAVE_LANGINFO_H. I have tried to answer your question directly in those issues. Xavier

On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye@gmail.com> wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on the android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform.
How does this relate to http://bugs.python.org/issue23496? -eric

Eric Snow <ericsnowcurrently <at> gmail.com> writes:
On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye <at> gmail.com> wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external
How does this relate to http://bugs.python.org/issue23496?
As I understand, that issue seems abandoned and the patches are (despite core devs asking otherwise) against 3.4. If Xavier is willing to do so, I think it would be best to start over with a new issue that integrates his work into 3.6. Stefan Krah

On 04/25/2016 04:53 PM, Stefan Krah wrote:
Eric Snow <ericsnowcurrently <at> gmail.com> writes:
On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye <at> gmail.com> wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external
How does this relate to http://bugs.python.org/issue23496?
As I understand, that issue seems abandoned and the patches are (despite core devs asking otherwise) against 3.4.
If Xavier is willing to do so, I think it would be best to start over with a new issue that integrates his work into 3.6.
I will enter a new issue that lists all the new issues and the other already existing issues that, would have they been fixed, would have allowed a successfull cross-build and the same test suite results as described in my previous post. Xavier

On 26 April 2016 at 06:25, Xavier de Gaye <xdegaye@gmail.com> wrote:
On 04/25/2016 04:53 PM, Stefan Krah wrote:
Eric Snow <ericsnowcurrently <at> gmail.com> writes:
On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye <at> gmail.com
wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external
How does this relate to http://bugs.python.org/issue23496?
As I understand, that issue seems abandoned and the patches are (despite core devs asking otherwise) against 3.4.
If Xavier is willing to do so, I think it would be best to start over with a new issue that integrates his work into 3.6.
I will enter a new issue that lists all the new issues and the other already existing issues that, would have they been fixed, would have allowed a successfull cross-build and the same test suite results as described in my previous post.
Thanks for this, Xavier! Once you have that, in addition to posting the link back here, you may also want to ping the Mobile SIG list: https://www.python.org/community/sigs/current/mobile-sig/ Regards, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia

On 04/26/2016 04:02 AM, Nick Coghlan wrote:
On 26 April 2016 at 06:25, Xavier de Gaye <xdegaye@gmail.com <mailto:xdegaye@gmail.com>> wrote:
On 04/25/2016 04:53 PM, Stefan Krah wrote: > Eric Snow <ericsnowcurrently <at>gmail.com <http://gmail.com>> writes: >> On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye <at>gmail.com <http://gmail.com>> > wrote: >>> Starting with API level 21 (Android 5.0), the build of python3 with the >>> official android toolchains (that is, without resorting to external > >> How does this relate tohttp://bugs.python.org/issue23496? > > As I understand, that issue seems abandoned and the patches are > (despite core devs asking otherwise) against 3.4. > > > If Xavier is willing to do so, I think it would be best to start over > with a new issue that integrates his work into 3.6.
I will enter a new issue that lists all the new issues and the other already existing issues that, would have they been fixed, would have allowed a successfull cross-build and the same test suite results as described in my previous post.
Thanks for this, Xavier!
Once you have that, in addition to posting the link back here, you may also want to ping the Mobile SIG list: https://www.python.org/community/sigs/current/mobile-sig/
Issue 26865 [1] lists issues that may have to be fixed in the perspective of a future support of the android platform. Xavier [1] http://bugs.python.org/issue26865

On 04/25/2016 04:36 PM, Eric Snow wrote:
On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye@gmail.com> wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on the android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform.
How does this relate to http://bugs.python.org/issue23496?
The patches in issue 23496 address the native compilation of Android 4.4.2 on an android device using a port of gcc on this device. Some of these patches are not needed anymore on Android 5.0 and it seems that the kbox_fix.patch is needed because the KBOX application is used to build python in issue 23496. The existing issues that are relevant to the android platform are, I think: issue #26723: Add an option to skip _decimal module issue #22747: Interpreter fails in initialize on systems where HAVE_LANGINFO_H is undefined issue #16353: add function to os module for getting path to default shell issue #20306: Lack of pw_gecos field in Android's struct passwd causes cross-compilation for the pwd module to fail Xavier

Oh wow, has a year passed already? I don't have access to an Android device suitable for development, and Cyd seems to have disappeared, which is why the issue ended up abandoned. I'd be happy to try to help with the new effort if possible! -- Ryan [ERROR]: Your autotools build scripts are 200 lines longer than your program. Something’s wrong. http://kirbyfan64.github.io/ On Apr 25, 2016 3:24 PM, "Xavier de Gaye" <xdegaye@gmail.com> wrote:
On Sun, Apr 24, 2016 at 1:20 AM, Xavier de Gaye <xdegaye@gmail.com> wrote:
Starting with API level 21 (Android 5.0), the build of python3 with the official android toolchains (that is, without resorting to external libraries for wide character support) runs correctly. With the set of patches described in the patches/Makefile file at [1], the cpython test suite runs[2] on
On 04/25/2016 04:36 PM, Eric Snow wrote: the
android x86 and armv7 emulators with only few errors[3]. Those errors are listed with their corresponding error messages, this may give a raw idea of the effort needed to support this platform.
How does this relate to http://bugs.python.org/issue23496?
The patches in issue 23496 address the native compilation of Android 4.4.2 on an android device using a port of gcc on this device. Some of these patches are not needed anymore on Android 5.0 and it seems that the kbox_fix.patch is needed because the KBOX application is used to build python in issue 23496.
The existing issues that are relevant to the android platform are, I think: issue #26723: Add an option to skip _decimal module issue #22747: Interpreter fails in initialize on systems where HAVE_LANGINFO_H is undefined issue #16353: add function to os module for getting path to default shell issue #20306: Lack of pw_gecos field in Android's struct passwd causes cross-compilation for the pwd module to fail
Xavier
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/rymg19%40gmail.com

On 04/24/2016 12:20 AM, Xavier de Gaye wrote:
The license: ----------- This software is licensed under the GNU General Public License version 3 or later. ----------- Will combining your code with Python 3 be a problem? -- ~Ethan~

On 04/26/2016 04:14 PM, Ethan Furman wrote:
On 04/24/2016 12:20 AM, Xavier de Gaye wrote:
The license: ----------- This software is licensed under the GNU General Public License version 3 or later. -----------
Will combining your code with Python 3 be a problem?
This code, or part of it, could be used to setup a buildbot and in this case there would not be any conflict between the GPL v3 license and the Python license, I think. I don't see how it can be combined with Python 3. Xavier

Xavier de Gaye <xdegaye <at> gmail.com> writes:
This code, or part of it, could be used to setup a buildbot and in this case there would not be any conflict between the GPL v3 license and the Python license, I think. I don't see how it can be combined with Python 3.
For the patches on the tracker I just went by your contributor agreement. I didn't check the lineage of the patches. Can I assume that either you are re-licensing GPL-stuff written by yourself to the PSF (which is a perfectly valid use case of the agreement) or rewriting from scratch? Stefan Krah

On 04/26/2016 07:12 PM, Stefan Krah wrote:
Xavier de Gaye <xdegaye <at> gmail.com> writes:
This code, or part of it, could be used to setup a buildbot and in this case there would not be any conflict between the GPL v3 license and the Python license, I think. I don't see how it can be combined with Python 3.
For the patches on the tracker I just went by your contributor agreement. I didn't check the lineage of the patches. Can I assume that either you are re-licensing GPL-stuff written by yourself to the PSF (which is a perfectly valid use case of the agreement) or rewriting from scratch?
Yes, I am re-licensing GPL code to the PSF for all the patches written by me in the issues listed on http://bugs.python.org/issue26865#msg264310. I have only rewritten the patches from scratch in the following issues: issue #26849: android does not support versioning in SONAME (using a switch case on ac_sys_system) issue #26854: missing header on android for the ossaudiodev module (actually it's difficult to rewrite such an obvious patch) issue #26855: add platform.android_ver() for android (using configparser; Chi Hsuan Yen is proposing a more complete approach) Fixes for those three issues can also be found in other projects porting python3 to android, the ones that I know of are: * Python 3 Android at https://github.com/yan12125/python3-android, author Chi Hsuan Yen * python-for-android at https://github.com/kuri65536/python-for-android, author shimoda dragon I also browsed rapidly issue 23496 and could not find any overlap with my patches. Xavier

Xavier de Gaye <xdegaye <at> gmail.com> writes:
Yes, I am re-licensing GPL code to the PSF for all the patches written by me in the issues listed on http://bugs.python.org/issue26865#msg264310. I have only rewritten the patches from scratch in the following issues:
Thanks, this all sounds good.
issue #26854: missing header on android for the ossaudiodev module (actually it's difficult to rewrite such an obvious patch)
Indeed. :) Stefan Krah
participants (6)
-
Eric Snow
-
Ethan Furman
-
Nick Coghlan
-
Ryan Gonzalez
-
Stefan Krah
-
Xavier de Gaye