openwrtv3/include
Jo-Philipp Wich b9aca834e8 at91: fix image building with CONFIG_TARGET_MULTI_PROFILE
The current image build code has a number of race conditions and interface
contract violations in the custom image build steps:

 - Build/install-zImage, solely used by at91, relies on $(PROFILE_SANITIZED)
   which is not available when building with CONFIG_TARGET_MULTI_PROFILE

 - Build/at91-sdcard, which may run concurrently, creates scratch files at
   fixed locations and manipulates target files directly which can lead
   to file corruption and other unexpected failures

Rename the install-zImage macro to at91-install-zImage and move it to the
at91 image Makefile since this target is the sole user. Also utilize "$@"
as output file name and switch the usage of $(PROFILE_SANITIZED) to
$(DEVICE_NAME) in order to fix naming under multi profile builds.

Fix the at91-sdcard macro to construct scratch file paths relative to "$@",
which is guaranteed to be unique and store the final artifact output in "$@"
as well, instead of inside $(BIN_DIR). The generic image build code takes
care of moving a build steps "$@" output to the final destination in a
concurrency-safe manner.

Finally remove the broken install-zImage from the generic image-commands
Makefile.

Fixes: d7a679a036 ("at91: Install zImage.")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-14 15:47:16 +01:00
..
site include/site: add powerpc64 config 2017-10-24 13:24:04 +02:00
autotools.mk treewide: fix build depends to refer to source package names 2018-01-13 19:54:44 +01:00
cmake.mk cmake: skip build system check on compile 2017-02-21 13:03:20 +01:00
debug.mk include: remove trailing whitespaces 2015-03-29 07:29:18 +00:00
depends.mk build: add missing wildcard for ignoring .pkgdir in dependency checks 2017-02-05 22:17:30 +01:00
device_table.txt
download.mk downloads.mk: introduce name-agnostic PROJECT_GIT variable 2018-01-10 21:27:31 +01:00
feeds.mk merge: properly remove %n / %N references 2017-12-09 16:01:14 +01:00
hardened-ld-pie.specs build: add hardened builds with PIE (ASLR) support 2018-01-27 16:46:45 +01:00
hardening.mk build: add hardened builds with PIE (ASLR) support 2018-01-27 16:46:45 +01:00
host-build.mk build: allow PKG_PREPARED_DEPENDS and PKG_CONFIG_DEPENDS to be changed after including package.mk 2017-12-12 12:45:28 +01:00
image-commands.mk at91: fix image building with CONFIG_TARGET_MULTI_PROFILE 2018-02-14 15:47:16 +01:00
image-legacy.mk image: fix ar71xx legacy images 2017-07-15 07:02:59 +02:00
image.mk build: replace uses of OpenWrt with $(VERSION_DIST) 2018-02-05 10:15:53 +01:00
kernel-build.mk Config-devel.in: rename symbol KERNEL_GIT_BRANCH -> KERNEL_GIT_REF 2018-01-27 16:46:45 +01:00
kernel-defaults.mk config: don't define the same symbol twice 2018-01-17 11:07:17 +01:00
kernel-version.mk kernel: bump 4.14 to 4.14.18 2018-02-08 18:43:13 +01:00
kernel.mk kernel: include: remove last .0 from kernel versions again 2017-12-16 22:15:23 +01:00
netfilter.mk iptables: Support building connlabel module 2018-02-13 10:01:52 +01:00
nls.mk treewide: fix build depends to refer to source package names 2018-01-13 19:54:44 +01:00
package-bin.mk build: use if-then to avoid non-zero return codes in bin/ packaging code 2017-01-23 13:49:45 +01:00
package-defaults.mk build: cleanup SSP_SUPPORT configure option 2018-01-27 19:02:48 +01:00
package-dumpinfo.mk include/package-dumpinfo.mk: don't duplicate source package information for every binary package 2018-01-13 19:54:45 +01:00
package-ipkg.mk build: allow defining license information per binary package 2017-11-25 20:02:04 +01:00
package-seccomp.mk include: add a seccomp filter install wrapper 2015-03-26 10:57:56 +00:00
package.mk include/package.mk: remove old configured stamps before attempting configuration 2017-12-28 12:24:25 +01:00
prereq-build.mk merge: etc: update remaining files 2017-12-08 19:41:18 +01:00
prereq.mk build: do not overwrite already existing host commands 2015-09-16 12:38:16 +00:00
quilt.mk kernel: split patches folder up into backport, pending and hack folders 2017-08-05 08:46:36 +02:00
rootfs.mk procd: fix procd_lock() when prepare_roofs 2018-01-28 09:51:06 +08:00
scan.awk build: propagate override information to .packageinfo 2015-02-09 12:09:31 +00:00
scan.mk build: get rid of host.mk 2017-02-26 13:31:44 +01:00
scons.mk build: use CXXFLAGS if defined 2016-10-13 17:04:43 +02:00
shell.sh build: use mkhash to replace various quirky md5sum/openssl calls 2017-01-05 11:09:12 +01:00
subdir.mk build: allow building an individual subdir without dependencies using NO_DEPS=1 2017-02-21 13:03:20 +01:00
target.mk target.mk: let profile remove from DEFAULT_PACKAGES 2018-02-13 13:02:03 +01:00
toolchain-build.mk build: stop overriding STAGING_DIR_HOST for toolchain build 2017-05-25 19:01:07 +02:00
toplevel.mk include/toplevel.mk: Add xconfig target 2017-11-02 15:58:45 +01:00
u-boot.mk u-boot.mk: add HOST_LDFLAGS to UBOOT_MAKE_FLAGS 2018-02-10 20:52:31 +01:00
uclibc++.mk
unpack.mk build: unzip: perform operations quietly 2017-01-05 11:09:13 +01:00
verbose.mk build: tell users to do non-paralle builds on errors 2015-04-16 12:18:26 +00:00
version.mk treewide: combine VERSION_SED and VERSION_SED_SCRIPT 2018-02-02 13:59:34 +01:00