package/tinyssh: fix static-only build

When using BR2_STATIC_LIBS=y, tinysshd's build was successful, but the
binary didn't work on the final target: this is because a dynamically
linked ELF was produced, on a target having no dynamic loader at all.

Using $(TARGET_CONFIGURE_OPTS) propagates all the options and not only
"CC", resulting in a correct static binary able to run on the target.

Without the patch:

> tinysshd: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV),
> dynamically linked, interpreter /lib/ld-musl-armhf.so.1, stripped

With the patch:

> tinysshd: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV),
> statically linked, stripped

Fixes: a7b3de8a3b
Signed-off-by: Martin Wetterwald <martin@wetterwald.eu>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 90e22ff48bb5705c146a64b75556157667b551d3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Martin Wetterwald 2024-07-25 19:37:09 +02:00 committed by Peter Korsgaard
parent b9e9e91b70
commit a283ca002a

View File

@ -10,7 +10,7 @@ TINYSSH_LICENSE = CC0-1.0
TINYSSH_LICENSE_FILES = LICENCE
define TINYSSH_BUILD_CMDS
$(TARGET_MAKE_ENV) CC="$(TARGET_CC)" $(MAKE) -C $(@D) cross-compile
$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) cross-compile
endef
define TINYSSH_INSTALL_TARGET_CMDS