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
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(-)

-- 
2.29.2

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!

-- 
Tom
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 += \