Go to file
Yann E. MORIN ba6360316f core: enhance printvars
Currently, the output of printvars copntains the name of the variable,
its expanded value and its un-expanded value.

However, most of the time, we need the actual, expanded value, so it can
be re-used from a (non-Buildroot) infrastructure script, like a
post-build script, or a build-farm driver (e.g. a Jenkins job...)

Add two options that a user may set to change the output of printvars:
  - QUOTED_VARS, if set, will quote the value
  - RAW_VARS, if set, will print the unexpanded value

The new output by default only prints the expanded value now.

So that it can be used as such:

    $ make -s printvars VARS=BUSYBOX_VERSION
    BUSYBOX_VERSION=1.26.2

    $ make -s printvars VARS=BUSYBOX_RDEPENDENCIES QUOTED_VARS=YES
    BUSYBOX_RDEPENDENCIES='ncurses util-linux'

    $ make -s printvars VARS=BUSYBOX_FINAL_PATCH_DEPENDENCIES RAW_VARS=YES
    BUSYBOX_FINAL_PATCH_DEPENDENCIES=$(sort $(BUSYBOX_PATCH_DEPENDENCIES))

And it is even possible to directly evaluate it in a shell script:

    eval $(make -s printvars VARS=BUSYBOX_VERSION QUOTED_VARS=YES)

Backward compatibility of the output is not maintained. It is believed
that scripts that depended on the previous output were very fragile to
begin with, because they had to filter the non-formatted output
(splitting on spaces or braces was not really possible, because values
could contain either).

Document printvars and its options in the manual; list it in the output
of 'make help'.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-29 21:55:14 +02:00
arch arch/xtensa: add macro to extract the overlay 2017-03-26 15:49:54 +02:00
board board/csky: fixup gdb instructions in readme.txt 2017-03-23 18:25:06 +01:00
boot uboot: improve BR2_TARGET_UBOOT_SPL_NAME help text 2017-03-14 23:38:39 +01:00
configs configs: add defconfig for Nationalchip gx6605s dev board 2017-03-20 22:47:15 +01:00
docs core: enhance printvars 2017-03-29 21:55:14 +02:00
fs fs/ext2: Remove support for auto-calculation of rootfs size 2017-03-25 14:41:05 +01:00
linux linux: bump default version to 4.10.6 2017-03-26 15:59:22 +02:00
package shairport-sync: requires C++ 2017-03-29 21:53:16 +02:00
support core/br2-external: properly report unexpected errors 2017-03-26 23:44:04 +02:00
system skeleton: fix permissions on /dev/pts/ptmx 2017-03-18 15:24:56 +01:00
toolchain toolchain/helpers.mk: remove unused argument of check_arm_abi 2017-03-26 15:25:52 +02:00
.defconfig arch: remove support for sh64 2016-09-08 22:15:15 +02:00
.gitignore update gitignore 2013-05-04 12:41:55 +02:00
.gitlab-ci.yml configs: add defconfig for Nationalchip gx6605s dev board 2017-03-20 22:47:15 +01:00
.gitlab-ci.yml.in gitlab-ci: add gcc-multilib to the docker image 2017-03-10 14:22:25 +01:00
CHANGES Update for 2016.11.3 2017-03-10 12:37:14 +01:00
Config.in package: add generic support for lz archives 2017-02-15 22:11:11 +01:00
Config.in.legacy fs/ext2: Remove support for auto-calculation of rootfs size 2017-03-25 14:41:05 +01:00
COPYING COPYING: add exception about patch licensing 2016-02-26 19:50:13 +01:00
DEVELOPERS package/lensfun: new package 2017-03-28 22:47:38 +02:00
Makefile core: enhance printvars 2017-03-29 21:55:14 +02:00
Makefile.legacy Remove BR2_DEPRECATED 2016-10-15 23:14:45 +02:00
README README: add reference to submitting-patches 2016-02-01 19:16:08 +01:00

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches