New submission from Jonathan Hosmer:
When disabled_module_list contains all the module names that are not built by
Modules/Setup.dist, self.extensions in setup.py will be an empty list and when
build_extensions tries to determine the max length of all extension names it
raises a ValueError with the following traceback:
Traceback (most recent call last):
File "./setup.py", line 2143, in
main()
File "./setup.py", line 2138, in main
'Lib/smtpd.py']
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/core.py",
line 152, in setup
dist.run_commands()
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/dist.py",
line 953, in run_commands
self.run_command(cmd)
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/dist.py",
line 972, in run_command
cmd_obj.run()
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/command/build.py",
line 127, in run
self.run_command(cmd_name)
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/cmd.py",
line 326, in run_command
self.distribution.run_command(command)
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/dist.py",
line 972, in run_command
cmd_obj.run()
File
"/Users/pythonforios/Python_for_iOS/trunk/Python_for_iOS/python2.7/Lib/distutils/command/build_ext.py",
line 339, in run
self.build_extensions()
File "./setup.py", line 282, in build_extensions
longest = max([len(e.name) for e in self.extensions])
ValueError: max() arg is an empty sequence
make: *** [sharedmods] Error 1
~~~ An example disabled_module_list from setup.py: ~~~
disabled_module_list = [
# Modules not compatible/not applicable for the iOS
'dl', 'nis', 'gdbm', 'spwd', '_bsddb', '_curses', '_tkinter', 'readline',
'bsddb185', 'ossaudiodev', 'sunaudiodev', '_curses_panel', 'linuxaudiodev',
# Modules appended to inittab before embedded initialization
'_multiprocessing', 'future_builtins', '_ctypes_test', '_testcapi', '_sqlite3',
'_hashlib', '_hotshot', '_scproxy', '_pybsddb', 'imageop', '_ctypes',
'_lsprof', '_heapq', '_yaml', '_json', 'math', 'zlib', '_io', 'bz2', 'dbm'
]
~~~ Example Modules/Setup.dist: ~~~
DESTLIB=$(LIBDEST)
MACHDESTLIB=$(BINLIBDEST)
DESTPATH=
SITEPATH=
TESTPATH=
MACHDEPPATH=:plat-$(MACHDEP)
EXTRAMACHDEPPATH=
TKPATH=:lib-tk
OLDPATH=:lib-old
COREPYTHONPATH=$(DESTPATH)$(SITEPATH)$(TESTPATH)$(MACHDEPPATH)$(EXTRAMACHDEPPATH)$(TKPATH)$(OLDPATH)
PYTHONPATH=$(COREPYTHONPATH)
*static*
posix posixmodule.c
errno errnomodule.c
pwd pwdmodule.c
_sre _sre.c
_codecs _codecsmodule.c
zipimport zipimport.c
_symtable symtablemodule.c
array arraymodule.c
cmath cmathmodule.c _math.c
_struct _struct.c
time timemodule.c -lm
operator operator.c
_weakref _weakref.c
_random _randommodule.c
_collections _collectionsmodule.c
itertools itertoolsmodule.c
strop stropmodule.c
_functools _functoolsmodule.c
_elementtree -I$(srcdir)/Modules/expat -DHAVE_EXPAT_CONFIG_H -DUSE_PYEXPAT_CAPI
_elementtree.c
datetime datetimemodule.c
_bisect _bisectmodule.c
unicodedata unicodedata.c
_locale _localemodule.c
fcntl fcntlmodule.c
grp grpmodule.c
select selectmodule.c
mmap mmapmodule.c
_csv _csv.c
_socket socketmodule.c
SSL=/usr/local/OpenSSL_for_iOS
_ssl _ssl.c -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl -L$(SSL)/lib
-lssl -lcrypto
crypt cryptmodule.c
termios termios.c
resource resource.c
audioop audioop.c
imageop imageop.c
_md5 md5module.c md5.c
_sha shamodule.c
_sha256 sha256module.c
_sha512 sha512module.c
timing timingmodule.c
syslog syslogmodule.c
binascii binascii.c
parser parsermodule.c
cStringIO cStringIO.c
cPickle cPickle.c
fpectl fpectlmodule.c
fpetest fpetestmodule.c
pyexpat expat/xmlparse.c expat/xmlrole.c expat/xmltok.c pyexpat.c
-I$(srcdir)/Modules/expat -DHAVE_EXPAT_CONFIG_H -DUSE_PYEXPAT_CAPI
_multibytecodec cjkcodecs/multibytecodec.c
_codecs_cn cjkcodecs/_codecs_cn.c
_codecs_hk cjkcodecs/_codecs_hk.c
_codecs_iso2022 cjkcodecs/_codecs_iso2022.c
_codecs_kr cjkcodecs/_codecs_kr.c
_codecs_tw cjkcodecs/_codecs_tw.c
_codecs_jp cjkcodecs/_codecs_jp.c
xxsubtype xxsubtype.c
--
components: Build
messages: 176142
nosy: jhosmer
priority: normal
severity: normal
status: open
title: setup.py throws a ValueError when self.extensions is empty
type: compile error
versions: Python 2.6, Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 3.4
___
Python tracker
<http://bugs.python.org/issue16537>
___
___
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com