buildroot/package/python/Config.in
Thomas De Schampheleire be084204eb Config.in files: add missing dependencies to toolchain option comments
When a package A depends on config option B and toolchain option C, then
the comment that is given when C is not fulfilled should also depend on B.
For example:

config BR2_PACKAGE_A
	depends on BR2_B
	depends on BR2_LARGEFILE
	depends on BR2_WCHAR

comment "A needs a toolchain w/ largefile, wchar"
	depends on !BR2_LARGEFILE || !BR2_WCHAR

This comment should actually be:

comment "A needs a toolchain w/ largefile, wchar"
	depends on BR2_B
	depends on !BR2_LARGEFILE || !BR2_WCHAR

or if possible (typically when B is a package config option declared in that
same Config.in file):

if BR2_B

comment "A needs a toolchain w/ largefile, wchar"
	depends on !BR2_LARGEFILE || !BR2_WCHAR

[other config options depending on B]

endif

Otherwise, the comment would be visible even though the other dependencies
are not met.

This patch adds such missing dependencies, and changes existing such
dependencies from
  depends on BR2_BASE_DEP && !BR2_TOOLCHAIN_USES_GLIBC
to
  depends on BR2_BASE_DEP
  depends on !BR2_TOOLCHAIN_USES_GLIBC
so that (positive) base dependencies are separate from the (negative)
toolchain dependencies. This strategy makes it easier to write such comments
(because one can simply copy the base dependency from the actual package
config option), but also avoids complex and long boolean expressions.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
 (untested)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-10 23:59:57 +01:00

108 lines
2.2 KiB
Plaintext

config BR2_PACKAGE_PYTHON
bool "python"
depends on BR2_USE_WCHAR
# uses fork()
depends on BR2_USE_MMU
select BR2_PACKAGE_LIBFFI
help
The python language interpreter.
http://www.python.org/
comment "python needs a toolchain w/ wchar"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR
if BR2_PACKAGE_PYTHON
choice
prompt "python module format to install"
default BR2_PACKAGE_PYTHON_PYC_ONLY
help
Select Python module format to install on target (py, pyc or both)
config BR2_PACKAGE_PYTHON_PY_ONLY
bool ".py sources only"
config BR2_PACKAGE_PYTHON_PYC_ONLY
bool ".pyc compiled sources only"
config BR2_PACKAGE_PYTHON_PY_PYC
bool ".py sources and .pyc compiled"
endchoice
menu "core python modules"
comment "The following modules are unusual or require extra libraries"
config BR2_PACKAGE_PYTHON_BZIP2
select BR2_PACKAGE_BZIP2
bool "bzip2 module"
help
bzip2 module for Python
config BR2_PACKAGE_PYTHON_BSDDB
select BR2_PACKAGE_BERKELEYDB
bool "bsddb module"
help
bsddb module for Python.
config BR2_PACKAGE_PYTHON_CODECSCJK
bool "codecscjk module"
help
Chinese/Japanese/Korean codecs module for Python (large).
config BR2_PACKAGE_PYTHON_CURSES
select BR2_PACKAGE_NCURSES
bool "curses module"
help
curses module for Python.
config BR2_PACKAGE_PYTHON_PYEXPAT
select BR2_PACKAGE_EXPAT
bool "pyexpat"
help
pyexpat module for Python.
config BR2_PACKAGE_PYTHON_READLINE
select BR2_PACKAGE_READLINE
bool "readline"
help
readline module for Python (required for command-line
editing in the Python shell).
config BR2_PACKAGE_PYTHON_SSL
select BR2_PACKAGE_OPENSSL
bool "ssl"
help
_ssl module for Python (required for https in urllib etc).
config BR2_PACKAGE_PYTHON_UNICODEDATA
bool "unicodedata module"
default y
help
Unicode character database (used by stringprep module) (large).
config BR2_PACKAGE_PYTHON_SQLITE
bool "sqlite module"
select BR2_PACKAGE_SQLITE
help
SQLite database support
config BR2_PACKAGE_PYTHON_ZLIB
bool "zlib module"
select BR2_PACKAGE_ZLIB
help
zlib support in Python
config BR2_PACKAGE_PYTHON_HASHLIB
bool "hashlib module"
select BR2_PACKAGE_OPENSSL
help
hashlib support in Python
endmenu
endif