summaryrefslogtreecommitdiffstats
path: root/defaultenv/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* kbuild: Use ls(1) instead of stat(1) to obtain file sizeMichael Forney2019-05-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | stat(1) is not standardized and different implementations have their own (conflicting) flags for querying the size of a file. ls(1) provides the same information (value of st.st_size) in the 5th column, except when the file is a character or block device. This output is standardized[0]. The -n option turns on -l, which writes lines formatted like "%s %u %s %s %u %s %s\n", <file mode>, <number of links>, <owner name>, <group name>, <size>, <date and time>, <pathname> but instead of writing the <owner name> and <group name>, it writes the numeric owner and group IDs (this avoids /etc/passwd and /etc/group lookups as well as potential field splitting issues). The <size> field is specified as "the value that would be returned for the file in the st_size field of struct stat". To avoid duplicating logic in several locations in the tree, create scripts/file-size.sh and update callers to use that instead of stat(1). [0] http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html#tag_20_73_10 Signed-off-by: Michael Forney <forney@google.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> [afa: imported script and adjusted barebox stat(1) callsites] Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* defaultenv: Fix dependenciesSascha Hauer2019-02-271-1/+3
| | | | | | | | | | | | | The defaultenv should be rebuilt once a file in it has changed. the genenv script always generates the environment file to a temporary file. Only if it has changed to the last target file the temporary file is moved over the target file. This means we always have to call genenv, thus replace "if_changed" with "cmd". With this dependencies are correctly tracked. New or changed files result in new image builds whereas unchanged environments do not unnecessarily result in new images. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* build: fix that defaultenv is always rebuiltSam Ravnborg2018-01-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From fcffd0176b3394cc664d9bf5b31b053253323bfb Mon Sep 17 00:00:00 2001 From: Sam Ravnborg <sam@ravnborg.org> Date: Tue, 26 Dec 2017 16:47:16 +0100 Subject: [PATCH 1/4] build: fix that defaultenv is always rebuilt Using following pattern: target: prerequisite FORCE $(call cmd,foo) is almost always wrong. Due to FORCE target will be rebuilt using cmd_foo no mater the timestamps. The following pattern: target: prerequisite FORCE $(call if_changed,foo) Will call cmd_foo only if: - target is not updated - or command to built target has changed But to make this work target must be added to the list af targets built. This can be done by assigning target to extra-y or targets. Use the latter pattern for defaultenv to avoid rebuilding the environmentt for each build. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* defaultenv: generate force-built-in (zero) environment fileJan Luebbe2015-02-041-1/+7
| | | | | Signed-off-by: Jan Luebbe <jlu@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* defaultenv: Add boot option for DFUSascha Hauer2014-02-281-0/+1
| | | | | | | | | | | DFU is for device firmware upgrade, but for development purposes it's sometmes useful to just start a kernel vie DFU. This adds a boot option for doing this and also the corresponding counterpart on the host. With this it's possible to boot a system with: scripts/dfuboot.sh -k linuximage -d dtb -c "root=ubi0:root ubi.mtd=ubi rootfstype=ubifs ignore_loglevel" Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* defaultenv: Allow multiple defaultenvironment overlaysSascha Hauer2014-02-281-0/+23
We can compile barebox for multiple boards at once, but currently they all share a single default environment. This patch adds a defaultenv_append() which boards can call to customize the default environment during runtime. Each board now generate default environment snippets using bbenv-y and add them during runtime with defaultenv_append() Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>