Skip to content

feat: Add support to cross-build youki on ppc64le architecture - #3578

Open
kishen-v wants to merge 1 commit into
youki-dev:mainfrom
kishen-v:ppc64le-support
Open

feat: Add support to cross-build youki on ppc64le architecture#3578
kishen-v wants to merge 1 commit into
youki-dev:mainfrom
kishen-v:ppc64le-support

Conversation

@kishen-v

@kishen-v kishen-v commented Jun 3, 2026

Copy link
Copy Markdown

Description

This PR adds the required changes to cross-build youki by adding the required target triple in scripts/build.sh.

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test updates
  • CI/CD related changes
  • Other (please describe): Architecture support.

Testing

  • Added new unit tests
  • Added new integration tests
  • Ran existing test suite
  • Tested manually (please provide steps) -
[root@kubetest2-tf1 youki]# ./scripts/build.sh -t ppc64le -x -r -c youki
* FEATURES: <default>
* TARGET: powerpc64le-unknown-linux-gnu
   Compiling proc-macro2 v1.0.106
   Compiling quote v1.0.45
   Compiling unicode-ident v1.0.24
   Compiling libc v0.2.186
...
...
   Compiling pentacle v1.1.0
   Compiling libcontainer v0.6.0 (/root/youki/crates/libcontainer)
    Finished `release` profile [optimized] target(s) in 3m 03s

youki: ELF 64-bit LSB pie executable, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=ddacc8b1e60b0e255c9ad950bf541bcd112848f0, for GNU/Linux 3.10.0, stripped

On the ppc64le host: 
# ./youki -v
youki version: 0.6.0
commit: 0.6.0-2a3fbd8a0b448616deb2a1d0c63df5803a3e7b00
spec: 1.1.0
rustc: 1.92.0

Related Issues

Fixes #

Additional Context

Signed-off-by: Kishen Viswanathan <kishen.viswanathan@ibm.com>
@utam0k

utam0k commented Jun 3, 2026

Copy link
Copy Markdown
Member

Thanks for your first contribution.
Why do you think ppc64le support is necessary? I would like to know the use cases. Adding an architecture involves more than just adding a build process.

@kishen-v

kishen-v commented Jun 3, 2026

Copy link
Copy Markdown
Author

Hey @utam0k, thanks for taking a look at the PR.

The main objective is to have a Rust-based runtime option for the ppc64le (IBM Power) architecture. Right now, these environments are limited to runc and crun. This would allow some room for flexibility along with the benefits of having a Rust-based container runtime.

I completely agree that cross-building the binary is just the first step and that enabling CI/CD workflows and architecture-specific testing is the larger effort to ensure that the runtime works as intended on the given architecture.

I'd like to weigh in on your suggestions and inputs on the preferred flow to enable youki for ppc64le.

Thanks again!

@utam0k

utam0k commented Jun 6, 2026

Copy link
Copy Markdown
Member

Do you intend to use youki there?

@kishen-v

kishen-v commented Jun 9, 2026

Copy link
Copy Markdown
Author

Hey @utam0k,

Not for immediate production deployment, but as a first step, we want to enable the platform support so we can actively try the runtime out. Having the builds in place will allow us to test the runtime and confirm that it indeed works without any issues on ppc64le.

Please let me know if this sounds reasonable to you.

Thanks!

@utam0k

utam0k commented Jun 11, 2026

Copy link
Copy Markdown
Member

I would like to know if you intend to use it yourself. Supporting a platform that is not planned for use would impose a burden on the maintainers.

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.

2 participants