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

Add support for 64-bit PowerPC #116

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

taylordotfish
Copy link

This PR adds bindings for 64-bit PowerPC (target_arch = "powerpc64"). I generated the bindings on a native ppc64le system, and in line with this commit, I added a repr(align(8)) to LV2_Atom.

@glaubitz
Copy link

glaubitz commented Jun 4, 2024

This PR adds bindings for 64-bit PowerPC (target_arch = "powerpc64"). I generated the bindings on a native ppc64le system, and in line with this commit, I added a repr(align(8)) to LV2_Atom.

Can you explain how the bindings are generated? I used the command from sys/tool/README.md and it just fails with No such file or directory.

@taylordotfish
Copy link
Author

@glaubitz You may have figured it out already, but I ran:

cd sys
LIBCLANG_PATH=/usr/lib/llvm-15/lib cargo systool --lv2 lv2/ --out src/linux/powerpc64.rs -- -v

This works around two issues: the first is that the older version of bindgen used by the tool doesn't work with LLVM 16 or newer, so I manually configured LIBCLANG_PATH for LLVM 15, and the second is that the tool panics if you don't provide any extra arguments to Clang, so I just added -v.

I then manually added repr(align(8)) to LV2_Atom in the generated output, to match what was done for other architectures.

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