aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrançois Chavant <francois@chavant.info>2021-05-07 17:58:11 +0200
committerBaptiste Jonglez <git@bitsofnetworks.org>2021-05-30 22:32:50 +0200
commit1a41b88803366fdd8eaf773c4a10e41a0e8947db (patch)
treebcb6b7d7827ac994e2b4ac357ccbe202914b31b6
parentd484366a9e557fa12e5a7e4a69f7b272d2e10459 (diff)
downloadupstream-1a41b88803366fdd8eaf773c4a10e41a0e8947db.tar.gz
upstream-1a41b88803366fdd8eaf773c4a10e41a0e8947db.tar.bz2
upstream-1a41b88803366fdd8eaf773c4a10e41a0e8947db.zip
build: kernel2minor: work around path length limit
When building for MikroTik devices the kernel2minor tool will sometimes fail with: Can't get lstat from kernel file!: No such file or directory. This is because kernel2minor expects paths no longer than 250 chars. To work around this the include/image-commands.mk has been modified to copy the kernel to a temporary file (/tmp/tmp.XXXXXXXXXX) before calling kernel2minor. Signed-off-by: François Chavant <francois@chavant.info> (cherry picked from commit 5a9608102b3c444d0c963255f9d016a1d5469d5d)
-rw-r--r--include/image-commands.mk7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/image-commands.mk b/include/image-commands.mk
index 51e745958e..4d54a14ba4 100644
--- a/include/image-commands.mk
+++ b/include/image-commands.mk
@@ -240,8 +240,11 @@ define Build/jffs2
endef
define Build/kernel2minor
- kernel2minor -k $@ -r $@.new $(1)
- mv $@.new $@
+ $(eval temp_file := $(shell mktemp))
+ cp $@ $(temp_file)
+ kernel2minor -k $(temp_file) -r $(temp_file).new $(1)
+ mv $(temp_file).new $@
+ rm -f $(temp_file)
endef
define Build/kernel-bin