diff mbox series

[v2,1/4] tools/Makefile: FIT_CIPHER requires libssl

Message ID 20201208041216.888902-2-joel@jms.id.au
State Accepted
Commit 5d40d5f12edac9ffccce955509f4cb4a7aa763a2
Delegated to: Tom Rini
Headers show
Series mkimage usability fixes | expand

Commit Message

Joel Stanley Dec. 8, 2020, 4:12 a.m. UTC
If CONFIG_FIT_CIPHER is enabled without CONFIG_FIT_SIGNATURE then
mkimage/dumpimage will fail to link:

 /usr/bin/ld: tools/common/image-cipher.o: in function `fit_image_decrypt_data':
 image-cipher.c:(.text+0x9a): undefined reference to `image_get_host_blob'
 /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x10): undefined reference to `EVP_aes_128_cbc'
 /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x40): undefined reference to `EVP_aes_192_cbc'
 /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x70): undefined reference to `EVP_aes_256_cbc'
 /usr/bin/ld: tools/lib/aes/aes-encrypt.o: in function `image_aes_encrypt':
 aes-encrypt.c:(.text+0x22): undefined reference to `EVP_CIPHER_CTX_new'
 /usr/bin/ld: aes-encrypt.c:(.text+0x6f): undefined reference to `EVP_EncryptInit_ex'
 /usr/bin/ld: aes-encrypt.c:(.text+0x8d): undefined reference to `EVP_EncryptUpdate'
 /usr/bin/ld: aes-encrypt.c:(.text+0xac): undefined reference to `EVP_CIPHER_CTX_free'
 /usr/bin/ld: aes-encrypt.c:(.text+0xf2): undefined reference to `EVP_EncryptFinal_ex'
 collect2: error: ld returned 1 exit status

Signed-off-by: Joel Stanley <joel@jms.id.au>
---
 tools/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Philippe REYNES Dec. 8, 2020, 3:25 p.m. UTC | #1
Hi Joel,


Le 08/12/2020 à 05:12, Joel Stanley a écrit :
> If CONFIG_FIT_CIPHER is enabled without CONFIG_FIT_SIGNATURE then
> mkimage/dumpimage will fail to link:
>
>   /usr/bin/ld: tools/common/image-cipher.o: in function `fit_image_decrypt_data':
>   image-cipher.c:(.text+0x9a): undefined reference to `image_get_host_blob'
>   /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x10): undefined reference to `EVP_aes_128_cbc'
>   /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x40): undefined reference to `EVP_aes_192_cbc'
>   /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x70): undefined reference to `EVP_aes_256_cbc'
>   /usr/bin/ld: tools/lib/aes/aes-encrypt.o: in function `image_aes_encrypt':
>   aes-encrypt.c:(.text+0x22): undefined reference to `EVP_CIPHER_CTX_new'
>   /usr/bin/ld: aes-encrypt.c:(.text+0x6f): undefined reference to `EVP_EncryptInit_ex'
>   /usr/bin/ld: aes-encrypt.c:(.text+0x8d): undefined reference to `EVP_EncryptUpdate'
>   /usr/bin/ld: aes-encrypt.c:(.text+0xac): undefined reference to `EVP_CIPHER_CTX_free'
>   /usr/bin/ld: aes-encrypt.c:(.text+0xf2): undefined reference to `EVP_EncryptFinal_ex'
>   collect2: error: ld returned 1 exit status
>
> Signed-off-by: Joel Stanley <joel@jms.id.au>
     Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>

> ---
>   tools/Makefile | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/Makefile b/tools/Makefile
> index 253a6b97065b..99a931312cd8 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -154,7 +154,7 @@ HOSTCFLAGS_kwbimage.o += -DCONFIG_KWB_SECURE
>   endif
>   
>   # MXSImage needs LibSSL
> -ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE),)
> +ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE)$(CONFIG_FIT_CIPHER),)
>   HOSTCFLAGS_kwbimage.o += \
>   	$(shell pkg-config --cflags libssl libcrypto 2> /dev/null || echo "")
>   HOSTLDLIBS_mkimage += \

Regards,

Philippe
Tom Rini Jan. 23, 2021, 5:46 p.m. UTC | #2
On Tue, Dec 08, 2020 at 02:42:13PM +1030, Joel Stanley wrote:

> If CONFIG_FIT_CIPHER is enabled without CONFIG_FIT_SIGNATURE then
> mkimage/dumpimage will fail to link:
> 
>  /usr/bin/ld: tools/common/image-cipher.o: in function `fit_image_decrypt_data':
>  image-cipher.c:(.text+0x9a): undefined reference to `image_get_host_blob'
>  /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x10): undefined reference to `EVP_aes_128_cbc'
>  /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x40): undefined reference to `EVP_aes_192_cbc'
>  /usr/bin/ld: tools/common/image-cipher.o:(.data.rel+0x70): undefined reference to `EVP_aes_256_cbc'
>  /usr/bin/ld: tools/lib/aes/aes-encrypt.o: in function `image_aes_encrypt':
>  aes-encrypt.c:(.text+0x22): undefined reference to `EVP_CIPHER_CTX_new'
>  /usr/bin/ld: aes-encrypt.c:(.text+0x6f): undefined reference to `EVP_EncryptInit_ex'
>  /usr/bin/ld: aes-encrypt.c:(.text+0x8d): undefined reference to `EVP_EncryptUpdate'
>  /usr/bin/ld: aes-encrypt.c:(.text+0xac): undefined reference to `EVP_CIPHER_CTX_free'
>  /usr/bin/ld: aes-encrypt.c:(.text+0xf2): undefined reference to `EVP_EncryptFinal_ex'
>  collect2: error: ld returned 1 exit status
> 
> Signed-off-by: Joel Stanley <joel@jms.id.au>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/tools/Makefile b/tools/Makefile
index 253a6b97065b..99a931312cd8 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -154,7 +154,7 @@  HOSTCFLAGS_kwbimage.o += -DCONFIG_KWB_SECURE
 endif
 
 # MXSImage needs LibSSL
-ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE),)
+ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE)$(CONFIG_FIT_CIPHER),)
 HOSTCFLAGS_kwbimage.o += \
 	$(shell pkg-config --cflags libssl libcrypto 2> /dev/null || echo "")
 HOSTLDLIBS_mkimage += \