[issue21668] The select and time modules uses libm functions without linking against it

2016-04-20 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 7530caa5ed1a by Victor Stinner in branch 'default':
Issue #21668: Add also Chi Hsuan Yen to Misc/ACKS
https://hg.python.org/cpython/rev/7530caa5ed1a

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-20 Thread STINNER Victor

STINNER Victor added the comment:

> Xavier de Gaye: "The patch should be acknowledged in Misc/NEWS to Chi Hsuan 
> Yen and not to me."

Oh sorry. I see 4 authors in attached patches, I picked the latest. Thank you 
to all authors for your contribution on this issue ;-) I fixed the author in 
Misc/NEWS.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-20 Thread Roundup Robot

Roundup Robot added the comment:

New changeset f76753f26982 by Victor Stinner in branch 'default':
Issue #21668: Fix author of the patch.
https://hg.python.org/cpython/rev/f76753f26982

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-20 Thread Xavier de Gaye

Xavier de Gaye added the comment:

The patch should be acknowledged in Misc/NEWS to Chi Hsuan Yen and not to me.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-19 Thread STINNER Victor

STINNER Victor added the comment:

I pushed ext_modules_libm.patch with the helper function proposed by Chi Hsuan 
Yen in 
https://github.com/yan12125/python3-android/blob/038271d/mk/python/modules-link-libm.patch.

Tell me if it's not enough. I hope that it will make CPython a little bit more 
portable ;-)

--
resolution:  -> fixed
status: open -> closed
versions: +Python 3.6 -Python 3.4

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-19 Thread Roundup Robot

Roundup Robot added the comment:

New changeset f92fea23161d by Victor Stinner in branch '3.5':
setup.py: add missing libm dependency
https://hg.python.org/cpython/rev/f92fea23161d

New changeset 3a9b47b062b9 by Victor Stinner in branch 'default':
Merge 3.5: Issue #21668
https://hg.python.org/cpython/rev/3a9b47b062b9

--
nosy: +python-dev

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-19 Thread Chi Hsuan Yen

Chi Hsuan Yen added the comment:

The approach with a helper function is better. See 
https://github.com/yan12125/python3-android/blob/038271d/mk/python/modules-link-libm.patch.

By the way, I have verified there are no libraries referencing libm functions 
with 
https://github.com/yan12125/python3-android/blob/cpython-hg/devscripts/import_all.py

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2016-04-19 Thread Xavier de Gaye

Xavier de Gaye added the comment:

The _datetime module also calls functions in libm: delta_new() uses
round() and accum() uses modf().

The attached patch updates setup.py for all the modules that use libm.

--
nosy: +xdegaye
Added file: http://bugs.python.org/file42514/ext_modules_libm.patch

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2015-11-26 Thread Chi Hsuan Yen

Chi Hsuan Yen added the comment:

Bump. For rev c6930661599b timemodule.c and selectmodule.c no longer calls libm 
functions, while audioop.c and _ctypes_test.c still do. I have my updated patch 
here based on previous patches. Note that the introduction of 
detect_math_libs() is my naive try. Its naming and position in setup.py may 
need more consideration.

Here's the result before and after my patch.

Before:
shell@GT-N7000:/data/local/tmp $ python3
Python 3.6.0a0 (default:6a8fbb97c8d8+, Nov 26 2015, 18:42:29) 
[GCC 4.9 20140827 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import select 
>>> import time
>>> import audioop
Traceback (most recent call last):
  File "", line 1, in 
ImportError: dlopen failed: cannot locate symbol "floor" referenced by 
"audioop.cpython-36m-arm-linux-gnueabi.so"...
>>> import _ctypes_test
Traceback (most recent call last):
  File "", line 1, in 
ImportError: dlopen failed: cannot locate symbol "sqrt" referenced by 
"_ctypes_test.cpython-36m-arm-linux-gnueabi.so"...
>>> 

After:

shell@GT-N7000:/data/local/tmp $ python3
Python 3.6.0a0 (default:c6930661599b+, Nov 26 2015, 19:10:15) 
[GCC 4.9 20140827 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import time
>>> import selectr
Traceback (most recent call last):
  File "", line 1, in 
ImportError: No module named 'selectr'
>>> import select 
>>> import audioop
>>> import _ctypes_test
>>> 

Tested on Samsung Galaxy Note GT-N7000 with my custom build of CyanogenMod 11.0

--
nosy: +Chi Hsuan Yen
Added file: http://bugs.python.org/file41168/python-hg-modules-link-libm.patch

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2015-11-26 Thread Chi Hsuan Yen

Chi Hsuan Yen added the comment:

Well, the hg revision of Python in two tests are different, because I `hg pull 
-u` each time I build.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-10-27 Thread Matt Frank

Changes by Matt Frank matthew.i.fr...@intel.com:


--
nosy: +WanderingLogic
Added file: 
http://bugs.python.org/file37041/audioop_ctypes_test_link_with_libm.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-10-27 Thread Matt Frank

Matt Frank added the comment:

Additionally,

* audioop calls floor()
* _ctypes_test calls sqrt()

Patch attached.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-10-27 Thread Matt Frank

Changes by Matt Frank matthew.i.fr...@intel.com:


--
nosy: +freakboy3742

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-10-27 Thread STINNER Victor

STINNER Victor added the comment:

  audioop_ctypes_test_link_with_libm.patch 

+ libraries=['m'])

Why not using math_libs here? It would also be nice to add a comment explaining 
why libm is needed in each module.

Can someone please combine both patches?

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-10-27 Thread Matt Frank

Matt Frank added the comment:

  audioop_ctypes_test_link_with_libm.patch 
 + libraries=['m'])
 Why not using math_libs here?

math_libs is defined in detect_modules().  But the _ctypes_test
extension is defined in a different function: detect_ctypes().

The other option, would be to define math_libs=['m'] directly above this line 
and then use it once.  I didn't think that added clarity, but I'd be happy to 
do it that way if it fits better with standard style.

 It would also be nice to add a comment explaining why libm is needed in each 
 module.

Done.

 Can someone please combine both patches?

Done.

--
Added file: 
http://bugs.python.org/file37042/time_select_audioop_ctypes_test_link_with_libm.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-06-05 Thread Fredrik Fornwall

New submission from Fredrik Fornwall:

The select and time modules use functions from libm, but do not link against it.

* selectmodule.c calls ceil(3) in pyepoll_poll()
* timemodule.c calls fmod(3) and floor(3) in floatsleep()

--
components: Build, Cross-Build
files: time_and_select_module_link_with_libm.patch
keywords: patch
messages: 219813
nosy: Fredrik.Fornwall
priority: normal
severity: normal
status: open
title: The select and time modules uses libm functions without linking against 
it
type: crash
versions: Python 3.4, Python 3.5
Added file: 
http://bugs.python.org/file35490/time_and_select_module_link_with_libm.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-06-05 Thread Fredrik Fornwall

Fredrik Fornwall added the comment:

Note: This causes problems at least when running on android, where the system 
is unable to find the symbols when loading the modules at runtime.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21668] The select and time modules uses libm functions without linking against it

2014-06-05 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
nosy: +haypo

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21668
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com