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

cmake: toolchain: Remove deprecated 'xtools' toolchain variant #80466

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

stephanosio
Copy link
Member

This series removes the xtools toolchain variant, which has been deprecated in #51334 and since Zephyr v3.3.0, and all the references to it throughout the Zephyr codebase.

Note that the xtools toolchain variant (aka. Crosstool-NG) was originally introduced to be used with the Crosstool-NG-based Zephyr SDK toolchains.

This is no longer necessary because the current Zephyr SDK already has its own zephyr toolchain variant, which fully replaces the xtools toolchain variant, and the xtools toolchain variant serves no purpose at all.

Note that, for generic GNU toolchain, the cross-compile toolchain variant must be used and xtools toolchain variant was never intended for that purpose.

@stephanosio stephanosio force-pushed the goodbye_xtools branch 3 times, most recently from d929a40 to eeba816 Compare October 26, 2024 04:21
@stephanosio
Copy link
Member Author

The documentation compliance check failure should be ignored since we do not want to be modifying the previous release notes:

 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:76
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:77
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:183
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:184
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:211
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:267
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)

@kartben
Copy link
Collaborator

kartben commented Oct 26, 2024

The documentation compliance check failure should be ignored since we do not want to be modifying the previous release notes:

 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:76
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:77
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:183
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:184
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:211
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)
File:doc/releases/release-notes-3.3.rst
Line:267
 SphinxLint:default role used (hint: for inline literals, use double backticks) (default-role)

Given these are genuine rst "bugs" causing broken links etc. I think it wouldn't be the end of the world to fix them, now that you're editing the file. But generally speaking, I totally agree with you about not touching past release notes, and that's why I intentionally didn't touch them when introducing the linter

kartben
kartben previously approved these changes Oct 26, 2024
nandojve
nandojve previously approved these changes Oct 26, 2024
tejlmand
tejlmand previously approved these changes Oct 30, 2024
@kartben
Copy link
Collaborator

kartben commented Nov 15, 2024

It feels like it would be nice to get this in for 4.0 since carrying over deprecated stuff for too long is never a good thing, but maybe it's too late for this time around.
Thoughts @stephanosio @mmahadevan108 @dkalowsk

If this is to make it, I guess we'd want to also mention it in the release notes?

@mmahadevan108
Copy link
Collaborator

@stephanosio Kindly help fix merge conflict

@stephanosio
Copy link
Member Author

Rebased

@kartben
Copy link
Collaborator

kartben commented Nov 23, 2024

Thanks @stephanosio! Can you confirm you also addressed the boards recently added as part of your latest rebase?

@stephanosio
Copy link
Member Author

Thanks @stephanosio! Can you confirm you also addressed the boards recently added as part of your latest rebase?

Yes

kartben
kartben previously approved these changes Nov 23, 2024
@kartben kartben mentioned this pull request Nov 24, 2024
tejlmand
tejlmand previously approved these changes Nov 26, 2024
@stephanosio
Copy link
Member Author

welp, conflict again ...

The `xtools` toolchain variant, which was originally introduced to be used
with the Crosstool-NG-based Zephyr SDK toolchains and has been replaced by
the `zephyr` toolchain variant, has been marked as deprecated since Zephyr
v3.3.0.

Signed-off-by: Stephanos Ioannidis <[email protected]>
The `xtools` toolchain variant has been deprecated since Zephyr v3.3.0 and
now removed.

Signed-off-by: Stephanos Ioannidis <[email protected]>
This commit removes all references to the `xtools` toolchain variant in the
board YAML files.

Note that the `xtools` toolchain variant has been deprecated since Zephyr
v3.3.0 and now removed.

The removal process was automated using the following command line:

  git grep -l xtools -- boards/*.{yml,yaml} | \
  xargs -n 1 -P $(nproc) \
  yq -i 'del(.toolchain[] | select(. == "xtools"))'

Signed-off-by: Stephanos Ioannidis <[email protected]>
This commit removes all references to the `xtools` toolchain variant in the
twister scripts.

Note that the `xtools` toolchain variant has been deprecated since Zephyr
v3.3.0 and now removed.

Signed-off-by: Stephanos Ioannidis <[email protected]>
This commit removes the TF-M support for the `xtools` toolchain variant,
which has been deprecated since Zephyr v3.3.0 and now removed.

Note that `zephyr` toolchain variant must be used instead of `xtools` when
building with Zephyr SDK.

Signed-off-by: Stephanos Ioannidis <[email protected]>
@stephanosio
Copy link
Member Author

Rebased again. Hopefully this is the last time ...

@kartben
Copy link
Collaborator

kartben commented Nov 27, 2024

@stephanosio given this needs superpowers and will never show in the merge dashboard (and if you want to merge as-is--I would personally be fine with actually fixing the linting errors in the rst files, as they are legit "bugs"), I recommend you keep an eye on approvals and merge this yourself as soon as ready

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants