Message ID | 20240725173709.1087549-1-martin@wetterwald.eu |
---|---|
State | Accepted |
Headers | show |
Series | [1/1] package/tinysshd: Fix static-only build | expand |
Hello Martin, On Thu, 25 Jul 2024 19:37:09 +0200 Martin Wetterwald <martin@wetterwald.eu> wrote: > 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 > > Signed-off-by: Martin Wetterwald <martin@wetterwald.eu> > --- > package/tinyssh/tinyssh.mk | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Thanks for your contribution, I've applied your patch, after fixing some small details: - package/tinyssh instead of package/tinysshd as the commit prefix. Indeed, the package name is tinyssh, not tinyssd - remove the capital letter in "Fix", as we try to have consistency between our commit titles, and the vast majority of them don't capitalize the first word - add a "Fixes:" tag that points to which commit is being fixed by your change, so that we know if your fix needs to be backported to our LTS branch or not Thanks! Thomas
>>>>> "Martin" == Martin Wetterwald <martin@wetterwald.eu> writes: > 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 > Signed-off-by: Martin Wetterwald <martin@wetterwald.eu> Committed to 2024.02.x and 2024.05.x, thanks.
diff --git a/package/tinyssh/tinyssh.mk b/package/tinyssh/tinyssh.mk index 80b6ccb850..e92ac628f2 100644 --- a/package/tinyssh/tinyssh.mk +++ b/package/tinyssh/tinyssh.mk @@ -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