Skip to content
Snippets Groups Projects
  • Petr Štetiar's avatar
    19938c8d
    build: switch to Python 3 · 19938c8d
    Petr Štetiar authored
    This patch switches Python used in buildroot to Python 3 as Python 2.x
    series is going to be EOL relatively soon[1].
    
     "Being the last of the Python 2.x series, 2.7 will have an extended
      period of maintenance. Specifically, 2.7 will receive bugfix support
      until January 1, 2020. After the last release, 2.7 will receive no
      support."
    
    It seems like Python 3 is going to be needed in order to support Meson
    build system which has gained some traction recently.
    
    Build tested on following targets:
    
     ath79/generic
     imx6/generic
     ipq40xx/generic
     lantiq/xway
     layerscape/armv7 (broken)
     layerscape/armv8_32b (broken)
     layerscape/armv8_64b (broken)
     mvebu/cortexa72
     ramips/mt7621
     ramips/mt7620
     sunxi/cortexa7
     x86/64
    
    Layerscape targets are unfortunately left broken as their ls-rcw
    firmware package uses Python 2 and converting it to Python 3 would take
    more then reasoanble amount of time (I've tried to fix it already) and
    would be better fixed by someone who can even run test it.
    
    Run tested on ath79 (Archer C7 v5), ipq40xx (nbg6617) and x86_64 (QEMU
    and apu2).
    
    1. https://www.python.org/dev/peps/pep-0373/
    
    
    
    Ref: PR#1937
    Cc: Yangbo Lu <yangbo.lu@nxp.com>
    Cc: Mathew McBride <matt@traverse.com.au>
    Acked-by: default avatarYousong Zhou <yszhou4tech@gmail.com>
    Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
    19938c8d
    History
    build: switch to Python 3
    Petr Štetiar authored
    This patch switches Python used in buildroot to Python 3 as Python 2.x
    series is going to be EOL relatively soon[1].
    
     "Being the last of the Python 2.x series, 2.7 will have an extended
      period of maintenance. Specifically, 2.7 will receive bugfix support
      until January 1, 2020. After the last release, 2.7 will receive no
      support."
    
    It seems like Python 3 is going to be needed in order to support Meson
    build system which has gained some traction recently.
    
    Build tested on following targets:
    
     ath79/generic
     imx6/generic
     ipq40xx/generic
     lantiq/xway
     layerscape/armv7 (broken)
     layerscape/armv8_32b (broken)
     layerscape/armv8_64b (broken)
     mvebu/cortexa72
     ramips/mt7621
     ramips/mt7620
     sunxi/cortexa7
     x86/64
    
    Layerscape targets are unfortunately left broken as their ls-rcw
    firmware package uses Python 2 and converting it to Python 3 would take
    more then reasoanble amount of time (I've tried to fix it already) and
    would be better fixed by someone who can even run test it.
    
    Run tested on ath79 (Archer C7 v5), ipq40xx (nbg6617) and x86_64 (QEMU
    and apu2).
    
    1. https://www.python.org/dev/peps/pep-0373/
    
    
    
    Ref: PR#1937
    Cc: Yangbo Lu <yangbo.lu@nxp.com>
    Cc: Mathew McBride <matt@traverse.com.au>
    Acked-by: default avatarYousong Zhou <yszhou4tech@gmail.com>
    Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
README 1.27 KiB
  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------

This is the buildsystem for the OpenWrt Linux distribution.

To build your own firmware you need a Linux, BSD or MacOSX system (case
sensitive filesystem required). Cygwin is unsupported because of the lack
of a case sensitive file system.

You need gcc, binutils, bzip2, flex, python3.5+, perl, make, find, grep, diff,
unzip, gawk, getopt, subversion, libz-dev and libc headers installed.

1. Run "./scripts/feeds update -a" to obtain all the latest package definitions
defined in feeds.conf / feeds.conf.default

2. Run "./scripts/feeds install -a" to install symlinks for all obtained
packages into package/feeds/

3. Run "make menuconfig" to select your preferred configuration for the
toolchain, target system & firmware packages.

4. Run "make" to build your firmware. This will download all sources, build
the cross-compile toolchain and then cross-compile the Linux kernel & all
chosen applications for your target system.

Sunshine!
	Your OpenWrt Community
	http://www.openwrt.org