buildroot/support/scripts
Yegor Yefremov 549bbba67f python/python3: globalize *.pyc files compilation
Currently, each python package (be it the python interpreter package
itself or external python modules) is responsible for compiling its
.py into .pyc files. Unfortunately, this is not ideal as some packages
only install .py files without compiling them into .pyc files. In this
case, if the Buildroot configuration specifies to keep only the .pyc
files, the .py files are removed and lost.

To address this, this commit changes the logic by making the
compilation of .pyc files a global operation: the python interpreter
packages register a target finalize hook that is in charge of
compiling all installed .py files.

The *.pyc generation on a per package basis is disabled in the
python-package infrastructure by passing the "--no-compile" option to
setup.py.

The *.pyc generation for the Python interpreter internal modules is
disabled through --disable-pyc-build configure option.

A small helper script is used to perform the compilation, the purpose
of this script is to abort the compilation process if one of the .py
file cannot be compiled. It has been provided by Samuel Martin and
integrated into this commit.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Cc: Samuel Martin <s.martin49@gmail.com>
[Thomas:
 - rework for python 3.5
 - integrate Samuel proposal that allows to detect compilation
   failures.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-05-26 22:07:35 +02:00
..
apply-patches.sh support/scripts/apply-patches.sh: fix whitespace 2016-01-13 22:09:08 +01:00
check-host-rpath support/scripts/check-host-rpath: also check HOST_DIR/{bin, sbin} 2016-04-21 22:17:36 +02:00
check-kernel-headers.sh check-kernel-headers: mktemp --tmpdir not available on RedHat RHEL5 2014-09-28 20:40:57 +02:00
eclipse-register-toolchain eclipse support: document script and add checks 2013-01-14 21:45:09 +01:00
expunge-gconv-modules Change /bin/bash shebangs into /usr/bin/env bash 2014-10-25 01:55:37 +02:00
gen-manual-lists.py docs/manual: fix generation of deprecated list 2015-08-02 19:18:51 +02:00
graph-build-time scripts/graph-build-time: properly warn about missing modules 2014-10-12 17:23:06 +02:00
graph-depends support/scripts: fix graph-depends when run with python3 2016-04-18 11:34:33 +02:00
hardlink-or-copy support/scripts: add helper to hardlink-or-copy 2016-05-11 23:14:37 +02:00
kconfiglib.py support: update Kconfiglib to the latest version 2015-06-11 22:10:01 +02:00
mkmakefile Makefile: Remove 'quiet' variable 2015-10-29 00:04:05 +01:00
mkusers support/mkusers: allow comments in users tables 2015-10-18 17:52:21 +02:00
pkg-stats pkg-stats: ignore linux-ext-fbtft.mk and doc-asciidoc.mk 2015-02-15 23:28:55 +01:00
pycompile.py python/python3: globalize *.pyc files compilation 2016-05-26 22:07:35 +02:00
readme.kconfiglib support: update Kconfiglib to the latest version 2015-06-11 22:10:01 +02:00
scancpan scancpan: use recommend & test flags only at first level 2016-03-15 23:16:33 +01:00
setlocalversion setlocalversion: sync with Linux kernel version (2.6.34) 2013-09-04 11:58:12 +02:00
size-stats support/scripts/size-stats: fix copy/paste error in ArgumentParser 2016-01-13 16:35:19 +01:00
size-stats-compare support/scripts: add size-stats-compare script 2016-02-07 15:52:25 +01:00
xorg-release trivial: fix typo 'informations' 2014-07-24 22:31:20 +02:00

Readme
======

Kconfiglib
----------

This python module, developped by Ulf Magnusson and released under the ISC
license, is fetched from:

https://github.com/ulfalizer/Kconfiglib
commit: a95f477eafc0b6708c3ce671fce7302ecec4f789

Kconfiglib license
~~~~~~~~~~~~~~~~~~

License (ISC)

Copyright (c) 2011-2013, Ulf Magnusson <ulfalizer@gmail.com>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.