kumquat-buildroot/package/python/Config.in

132 lines
2.7 KiB
Plaintext
Raw Normal View History

2004-10-09 08:13:40 +02:00
config BR2_PACKAGE_PYTHON
2004-10-14 22:33:45 +02:00
bool "python"
depends on BR2_USE_WCHAR
# uses fork()
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_HAS_THREADS # libffi
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
select BR2_PACKAGE_LIBFFI
2004-10-09 08:13:40 +02:00
help
2004-10-14 22:33:45 +02:00
The python language interpreter.
2004-10-09 08:13:40 +02:00
2004-10-14 22:33:45 +02:00
http://www.python.org/
comment "python needs a toolchain w/ wchar, threads"
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-07 09:24:37 +01:00
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
if BR2_PACKAGE_PYTHON
choice
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
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
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
menu "core python modules"
comment "The following modules are unusual or require extra libraries"
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
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_OSSAUDIODEV
bool "ossaudiodev module"
help
ossaudiodev 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).
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
if BR2_PACKAGE_PYTHON_UNICODEDATA
choice
prompt "Python unicode database format"
default BR2_PACKAGE_PYTHON_UCS2
help
Select Python unicode database format for target
config BR2_PACKAGE_PYTHON_UCS2
bool "Universal Character Set 2-byte (UCS2)"
config BR2_PACKAGE_PYTHON_UCS4
bool "Universal Character Set 4-byte (UCS4)"
endchoice
endif
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
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
python: convert to autotargets, bump to 2.7.1, many improvements This commit does a number of changes and improvements to the Python interpreter package : * It converts the .mk file to the AUTOTARGETS infrastructure. Even though Python uses only autoconf and not automake, the AUTOTARGETS is a fairly good fit for the Python interpreter, so we make use of it. * It bumps the version to 2.7.1. As this is a minor release compared to 2.7, there are no particular changes needed because of this bump. All changes done to the package are cleanups and improvements unrelated to the version bump. * It uses the system libffi. Until now, Python was building its own libffi (a library used by interprets to build code that makes function call at runtime). Using the Python internal libffi was not working as Python was not passing the appropriate arguments down to libffi ./configure script. And it sounded better to use a system-wide libffi, that could potentially be used by other packages as well. This libffi is needed for the ctypes Python module. * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all Python-related options under a "if BR2_PACKAGE_PYTHON ... endif" condition. * Make the installation of pre-compiled Python modules (.pyc) the default, since they are smaller and do not need to be compiled on the target. It is still possible to install uncompiled modules, or both the uncompiled and pre-compiled versions. * The options to select the set of Python modules to compile has been moved to a submenu. * The codecscjk (Japanese, Korean and Chinese codecs) module is no longer enabled by default. * The commented options for gdbm and nis in Python have been removed. Those were not supported, so let's get rid of unused code. * The option for the tkinker module in Python has been removed, since we don't have a package for Tk in Buildroot. * Options for the bzip2, sqlite and zlib modules have been added, since those modules have external dependencies. * The set of patches has been completely reworked and extended, with more fine-grained patches and newer functionalities. The patches are split in two categories: - Patches that make various modifications to the Python build system to support cross-compilation or make some minor modifications. Those patches are numbered from 0 to 100. - Patches that add configuration options to the Python build system in order to enable/disable the compilation of Python extensions or modules (test modules, pydoc, lib2to3, sqlite, tk, curses, expat, codecs-cjk, nis, unicodedata, database modules, ssl, bzip2, zlib). These patches are numbered from 100 to 200. All features of the previous four patches are preserved, but they are organized differently and the patches have been renamed. This makes it difficult to see the differences from the existing patches. * The host Python interpreter is now installed in $(HOST_DIR), since it is used to build third party Python modules. * The BR2_PACKAGE_PYTHON_DEV option is removed since BR2_HAVE_DEVFILES already does the necessary work. * The "make -i install" workaround introduced by Maxime Ripard is no longer needed. It was caused by the compilation of the tests that required the unicodedata module (which wasn't built in the host Python interpreter). Since we no longer compile the Python tests, the problem doesn't exist anymore and we can avoid this "-i" option. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-26 10:28:49 +01:00
endmenu
endif