All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Gregory Anders" <greg@gpanders.com>
To: openembedded-devel@lists.openembedded.org
Subject: Upstream scipy recipe to meta-openembedded
Date: Mon, 12 Jul 2021 15:19:04 +0000	[thread overview]
Message-ID: <YOxdaI1jQgdxKTQn@gpanders.com> (raw)

Hello all,

I wrote and maintain a recipe to provide scipy in the OpenEmbedded build 
system [1]. I would like to upstream this recipe into meta-python so 
that it is more broadly available to those who need it as well as to 
reduce my own maintenance burden.

Before sending a patch, however, I'd like to solicit feedback from the 
meta-oe community on how best to integrate this recipe into the 
meta-openembedded project. If you look at the source for the recipe at 
[1] you will see that there are a few steps/hacks that need to be done 
in order to get scipy to correctly cross-compile:

1. We have to add a CMake parameter to lapack ("-DCBLAS=ON"). This 
    causes LAPACK to build the C BLAS library instead of the Fortran BLAS 
    library. This is necessary as scipy tries to link against `cblas_*` 
    functions.
2. We have to patch numpy to force it not to include rpaths in the 
    compiled shared object file. Otherwise the bitbake QA fails as it 
    detects rpaths from the build system.
3. Two variables must be set in either the local.conf or distro.conf 
    file to enable Fortran support. These can't be added in the scipy 
    recipe directly (at least, last time I tried it they couldn't be) so 
    users have to manually add these themselves.

I am by no means an expert in bitbake or in the broader OE build 
environment. If you know of a better solution to any of the problems 
outlined above, please share them. I am also more than happy to provide 
more detail if anyone has any questions.

Ultimately, the ideal goal is to have a single 'python3_scipy.bb' recipe 
file that I can send as a patch for inclusion in the meta-python layer 
rather than maintaining an entirely separate meta-scipy layer.

Thanks!

Greg

[1]: https://github.com/gpanders/meta-scipy

             reply	other threads:[~2021-07-12 15:19 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-12 15:19 Gregory Anders [this message]
2021-07-12 16:01 ` [oe] Upstream scipy recipe to meta-openembedded Khem Raj
2021-07-13 10:20   ` Zoltan Boszormenyi
2021-07-13 10:46     ` Jack Mitchell
2021-07-13 13:09       ` Gregory Anders
2021-07-15  8:44         ` Jack Mitchell
2021-07-15 13:08           ` Gregory Anders

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=YOxdaI1jQgdxKTQn@gpanders.com \
    --to=greg@gpanders.com \
    --cc=openembedded-devel@lists.openembedded.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.