openwrt/include
Huangbin Zhan 2f8ac8bcea
build: image: use printf for ModelNameLimit16
Fix syntax error on macos, for substr is undefined results according to
the POSIX standard.

From expr on macos:
 According to the POSIX standard, the use of string arguments length,
 substr, index, or match produces undefined results.  In this version of
 expr, these arguments are treated just as their respective string values.

By a simple test Makefile:

define ModelNameLimit16
$(shell expr substr "$(word 2, $(subst _, ,$(1)))" 1 16)
endef

define ModelNameLimit16_2
$(shell printf %.16s "$(word 2, $(subst _, ,$(1)))")
endef

hello:
	echo $(call ModelNameLimit16, technicolor_tg582n-telecom-italia)
	echo $(call ModelNameLimit16_2, technicolor_tg582n-telecom-italia)

The same output is produced.

echo tg582n-telecom-i
tg582n-telecom-i
echo tg582n-telecom-i
tg582n-telecom-i

Signed-off-by: Huangbin Zhan <zhanhb88@gmail.com>
[ wrap commit description to 80 columns and improve it ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2022-10-13 15:57:35 +02:00
..
site Revert "build: use config.site generated by autoconf-lean, drop hardcoded sitefiles" 2021-03-02 11:35:45 +00:00
autotools.mk libiconv-stub: remove 2022-07-15 15:21:44 +02:00
bpf.mk treewide: drop use of which 2022-01-17 09:14:26 +01:00
cmake.mk treewide: drop use of which 2022-01-17 09:14:26 +01:00
debug.mk build: use SPDX license tags 2021-02-05 14:54:47 +01:00
depends.mk build: make find_md5 reproducible with AUTOREMOVE 2022-09-30 22:26:51 +02:00
device_table.txt image: ensure that /dev/console exist in rootfs images 2013-08-27 12:02:58 +00:00
download.mk rules.mk: move DOWNLOAD_CHECK_CERTIFICATE to include/download.mk 2022-10-05 17:49:19 +02:00
feeds.mk build: ensure that dash isn't prepended twice to abi version suffix 2021-06-15 09:58:33 +02:00
hardened-ld-pie.specs build: add hardened builds with PIE (ASLR) support 2018-01-27 16:46:45 +01:00
hardening.mk build: use SPDX license tags 2021-02-05 14:54:47 +01:00
host-build.mk build: make find_md5 reproducible with AUTOREMOVE 2022-09-30 22:26:51 +02:00
image-commands.mk build: image: use printf for ModelNameLimit16 2022-10-13 15:57:35 +02:00
image.mk imagebuilder: clean KDIR_TMP before building 2022-09-10 21:07:24 +02:00
kernel-5.10 kernel: bump 5.10 to 5.10.147 2022-10-09 22:18:24 +02:00
kernel-5.15 kernel: bump 5.15 to 5.15.72 2022-10-09 22:26:16 +02:00
kernel-build.mk build: make find_md5 reproducible with AUTOREMOVE 2022-09-30 22:26:51 +02:00
kernel-defaults.mk uml: headers are not exportable 2022-09-24 23:52:14 +02:00
kernel-version.mk kernel: split kernel version to dedicated files 2022-01-13 23:46:39 +00:00
kernel.mk kernel: filter -no-plt from KCFLAGS 2022-06-21 16:41:17 +01:00
logo.png include: update logo with better kerning 2021-01-18 09:31:39 -10:00
logo.svg include: update logo with better kerning 2021-01-18 09:31:39 -10:00
meson.mk tools/meson: update to 0.61.4 2022-04-09 15:56:04 +02:00
netfilter.mk kernel: kmod-ipt-ulog: Remove package 2022-08-10 21:36:17 +02:00
nls.mk libiconv-stub: remove 2022-07-15 15:21:44 +02:00
openssl-engine.mk openssl: move engine.mk to INCLUDE_DIR 2022-03-23 23:13:51 +00:00
package-bin.mk build: allow package to be built for all variants 2021-11-15 00:38:46 +01:00
package-defaults.mk build: use SPDX license tags 2021-02-05 14:54:47 +01:00
package-dumpinfo.mk build: drop ABI version from metadata 2021-02-14 19:41:52 +01:00
package-ipkg.mk tools: build bash on macOS and use it for ipkg-build 2022-01-27 13:38:48 +01:00
package-seccomp.mk build: use SPDX license tags 2021-02-05 14:54:47 +01:00
package.mk build: make find_md5 reproducible with AUTOREMOVE 2022-09-30 22:26:51 +02:00
prereq-build.mk include/prereq-build: fix ldconfig-stub symlink on macos and BSD OSs 2022-09-27 16:54:42 +02:00
prereq.mk treewide: drop use of which 2022-01-17 09:14:26 +01:00
quilt.mk quilt.mk: fix typo in the Host section 2022-03-19 16:13:58 +01:00
rootfs.mk build: reduce cleanup binary calls in rootfs.mk 2020-12-05 22:07:00 -10:00
scan.awk build: propagate override information to .packageinfo 2015-02-09 12:09:31 +00:00
scan.mk build: fix find warning with SCAN_EXTRA 2022-06-05 15:38:27 +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 package to be built for all variants 2021-11-15 00:38:46 +01:00
target.mk build: fix issues with targets installed via feeds 2022-09-27 13:41:12 +02:00
toolchain-build.mk toolchain: fix dangling symlink to self in FixupLibdir 2022-07-01 19:17:36 +02:00
toplevel.mk build: export STAGING_DIR_HOST in toplevel make code 2022-09-05 11:17:19 +02:00
trusted-firmware-a.mk trusted-firmware-a.mk: pass DTC path similar to u-boot.mk 2022-08-28 19:01:55 +01:00
u-boot.mk u-boot.mk: add LOCALVERSION (explicitly specify OpenWrt build) 2022-02-28 23:54:52 +01:00
uclibc++.mk uclibc++: remove 2021-10-24 18:20:50 +02:00
unpack.mk include: use cpio from staging dir 2021-02-28 00:09:09 +00:00
verbose.mk verbose.mk: print ERROR messages in non-verbose 2022-02-28 23:52:13 +01:00
version.mk build: use SPDX license tags 2021-02-05 14:54:47 +01:00