Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider supporting armv7-unknown-linux-gnueabi/hf toolchain #1876

Open
aignas opened this issue May 4, 2024 · 2 comments · Fixed by #1837
Open

Consider supporting armv7-unknown-linux-gnueabi/hf toolchain #1876

aignas opened this issue May 4, 2024 · 2 comments · Fixed by #1837
Labels
type: feature request type: toolchain Related to the toolchains provided by rules_python

Comments

@aignas
Copy link
Collaborator

aignas commented May 4, 2024

Feature request

It seems that the latest standalone python release contains a
toolchain for armv7 for Python 3.11 and Python 3.12. In #1770 a new platform
definition has been added and it seems that the platform labels that are used
in the release are different. We have armv7-unknown-linux-gnu and the
published toolchain binaries are for:

  • armv7-unknown-linux-gnueabi
  • armv7-unknown-linux-gnueabihf

I am not sure what would be the right thing to do here yet as I am not using
armv7 toolchains yet, but maybe @UebelAndre could help us out here with providing
requirements (PRs are also welcome) on how we could use the upstream toolchains.

@UebelAndre
Copy link
Contributor

Feels like we need some support on bazelbuild/platforms#38

@aignas aignas added type: feature request type: toolchain Related to the toolchains provided by rules_python labels May 15, 2024
github-merge-queue bot pushed a commit that referenced this issue Jun 6, 2024
…epo (#1837)

With this change we add support for platform-specific wheel registration
and
doing the selection of which wheel is used at build time.

This supports:
- Different package versions for different platforms.
- Use string_flags to configure what to fetch/select:
    - only whls, only sdist or auto mode.
    - libc version and `musl` vs `glibc` selection.
    - universal2 vs arch wheels for mac.
    - target osx version selection.

Summary of changes:
- The `uv pip install` would only warn the user of yanked packages but
  would not refuse to install them. Update our implementation to better
  match the same behaviour.
- A previous PR has added the support for passing it in the
`requirements_by_platform` and this just add the necessary code to make
  sure that we can also do the dependency management when parsing the
  `whl` `METADATA` files.
- Only configure `dev_pip` deps for `linux` and `osx` platforms to not
raise
  issues later.
- Add a function for generating a `whl_library` name from a `filename`.
- Add a macro for generating all config settings for a particular set of
parameters.
- Update `render_pkg_aliases` to also use those config settings.
- Update the toolchain selection `target_settings` to use the
`py_linux_libc`
config setting. With this the user can register a `musl` linux toolchain
if
  needed. We can also use similar `flag_values` to resolve #1876.
- Integrate everything in the `pip` extension and setup cross-platform
  select statements.

Work towards #1357, #260

Stacked on #1937
@aignas aignas reopened this Sep 21, 2024
@aignas
Copy link
Collaborator Author

aignas commented Sep 21, 2024

This got accidentally closed in #1837.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature request type: toolchain Related to the toolchains provided by rules_python
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants