Difference between revisions of "Buildroot:Python2Packages"

From eLinux.org
Jump to: navigation, search
Line 26: Line 26:
 
These packages use Python in their build process (hence requiring host-python)
 
These packages use Python in their build process (hence requiring host-python)
  
* waf buildsystem: The waf build system in itself is now compatible with Python3; but the wscript (build definition file) provided by some packages is still syntactically incompatible with Python3
+
=== waf ===
 +
 
 +
The waf build system in itself is now compatible with Python3; but the wscript (build definition file) provided by some packages is still syntactically incompatible with Python3. Because Buildroot has a dedicated waf infrastructure, it is difficult to handle each of these packages individually: the `waf-package` infrastructure in itself depends on host-python, and we cannot upgrade it to host-python3 until all the waf packages can actually be built under Python3 only. Buildroot currently has the following waf-based packages:
 +
 
 +
* aubio: Seems to build properly with host-python3
 +
* glmark2
 +
* gstreamer1/gst1-imx
 +
* jack2
 +
* libimxvpuapi
 +
* mpv
 +
* norm
 +
 
 +
=== Scons ===
 +
 
 +
Similarly to waf, SCons in itself is compatible with Python3, but build definition files can be Python3 incompatible. However, because there is no dedicated SCons infrastructure, each package can be handled individually. Buildroot currently has the following SCons based packages:
 +
 
 +
* alljoyn-base
 +
* alljoyn-tcl-base
 +
* alljoyn-tcl
 +
* alljoyn
 +
* benejson
 +
* gpsd: Patch sent for upgrade to host-python3 http://patchwork.ozlabs.org/patch/1185026/
 +
* mongodb

Revision as of 08:42, 27 October 2019

In an effort to follow the Python2 deprecation on the 1st of January 2020, here is a listing of current Buildroot packages that depend on Python2 (as of master during the Buildroot developer days at ELCE2019)

Non Python packages

These packages integrate with Python2: either they contain scripts written in Python, or they install Python libraries as byproducts.

Python packages

(TBD) These packages are Python libraries that can then be imported by Python scripts

Python in the build system

These packages use Python in their build process (hence requiring host-python)

waf

The waf build system in itself is now compatible with Python3; but the wscript (build definition file) provided by some packages is still syntactically incompatible with Python3. Because Buildroot has a dedicated waf infrastructure, it is difficult to handle each of these packages individually: the `waf-package` infrastructure in itself depends on host-python, and we cannot upgrade it to host-python3 until all the waf packages can actually be built under Python3 only. Buildroot currently has the following waf-based packages:

  • aubio: Seems to build properly with host-python3
  • glmark2
  • gstreamer1/gst1-imx
  • jack2
  • libimxvpuapi
  • mpv
  • norm

Scons

Similarly to waf, SCons in itself is compatible with Python3, but build definition files can be Python3 incompatible. However, because there is no dedicated SCons infrastructure, each package can be handled individually. Buildroot currently has the following SCons based packages: