mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Alexander Dahl <post@lespocky.de>
To: Alexander Dahl <ada@thorsis.com>, ptxdist@pengutronix.de
Subject: Re: [ptxdist] Build U-Boot against host-openssl fails
Date: Mon, 25 Jul 2022 21:09:35 +0200	[thread overview]
Message-ID: <Yt7qb9h78tS+Kx7n@falbala.internal.home.lespocky.de> (raw)
In-Reply-To: <Yt64meQ9gBSWSNm+@pengutronix.de>

[-- Attachment #1: Type: text/plain, Size: 3788 bytes --]

Hello Michael,

Am Mon, Jul 25, 2022 at 05:36:57PM +0200 schrieb Michael Olbrich:
> On Mon, Jul 25, 2022 at 04:41:45PM +0200, Alexander Dahl wrote:
> > Hei hei,
> > 
> > although claiming it's optional latest U-Boot versions require OpenSSL on the 
> > host.¹  I added an option to build host-openssl with commit 
> > 0c779a60e50c40d522b1e9c20b5c75b2e57fde5a ("u-boot: Add option to depend on 
> > host-openssl") but ptxdist u-boot package still fails to link to host openssl 
> > package, message is always missing some openssl symbols.
> > 
> > I tried the same thing as barebox now in rules/u-boot.make like this:
> > 
> > +# use host pkg-config for host tools
> > +U_BOOT_PATH        := PATH=$(HOST_PATH)
> > 
> > This does not help. 
> > 
> > I'm somehow suspecting the wrong pkg-config is called.  Affected is not the 
> > target image, but the host tools (like mkimage) built alongside with the 
> > target stuff (which you 1) can not disable to build and 2) need for certain 
> > parts of the ptxdist package anyways, so not building those is no option).
> > 
> > I tried each combination of PTXCONF_U_BOOT_NEEDS_HOST_OPENSSL and 
> > CONFIG_TOOLS_LIBCRYPTO in U-Boot kconfig, all fail.
> > 
> > buildroot has a fix for building against host-openssl, but I don't understand 
> > it, and I'm not sure if the same approach would work in ptxdist.
> > 
> > Any ideas?
> > 
> > (Disclaimer: this only happens on a quite recent U-Boot, e.g. from 2022.)
> > (More disclaimer: it does not happen if libssl-dev is installed on the build 
> > host.)
> 
> This sounds like u-boot is calling /usr/bin/pkg-config instead of
> .../sysroot-host/bin/pkg-config (and not the cross pkg-config either).
> 
> Maybe /usr/bin/pkg-config is called explicitly with the whole path
> somewhere? That could be a "feature" to avoid the cross pkg-config when
> cross-compiling.

Sorry, I wanted to paste the actual part from tools/Makefile (u-boot
source) and this is it:

174 # MXSImage needs LibSSL
175 ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_TOOLS_LIBCRYPTO),)
176 HOSTCFLAGS_kwbimage.o += \
177     $(shell pkg-config --cflags libssl libcrypto 2> /dev/null || echo "")
178 HOSTLDLIBS_mkimage += \
179     $(shell pkg-config --libs libssl libcrypto 2> /dev/null || echo "-lssl -lcrypto")
180
181 # OS X deprecate openssl in favour of CommonCrypto, supress deprecation
182 # warnings on those systems
183 ifeq ($(HOSTOS),darwin)
184 HOSTCFLAGS_mxsimage.o += -Wno-deprecated-declarations
185 HOSTCFLAGS_image-sig.o += -Wno-deprecated-declarations
186 HOSTCFLAGS_rsa-sign.o += -Wno-deprecated-declarations
187 endif
188 endif

I'm not sure how I can verify what's actually called here?

Just had another look at what buildroot does.  Seems like
host-pkg-config is required, IIRC that was not used by ptxdist.  Not
sure how I can let ptxdist use host pkg-config, but I hope I'll find
out tomorrow.

Greets
Alex

> 
> Michael
> 
> > ¹ I consider this a bug, and I'm not the only one, but several attempts to fix 
> > this in upstream U-Boot did not lead to merge any fix.
> > 
> > 
> > 
> > 
> > 
> 
> -- 
> Pengutronix e.K.                           |                             |
> Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
> 31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

-- 
/"\ ASCII RIBBON | »With the first link, the chain is forged. The first
\ / CAMPAIGN     | speech censured, the first thought forbidden, the
 X  AGAINST      | first freedom denied, chains us all irrevocably.«
/ \ HTML MAIL    | (Jean-Luc Picard, quoting Judge Aaron Satie)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2022-07-25 19:10 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-25 14:41 Alexander Dahl
2022-07-25 15:36 ` Michael Olbrich
2022-07-25 19:09   ` Alexander Dahl [this message]
2022-07-26  7:43     ` Alexander Dahl
2022-07-29  6:40       ` Michael Olbrich
2022-08-03 11:20         ` Alexander Dahl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Yt7qb9h78tS+Kx7n@falbala.internal.home.lespocky.de \
    --to=post@lespocky.de \
    --cc=ada@thorsis.com \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox