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

Allow specifying exe suffix of cross host machine #14008

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

Conversation

Jan200101
Copy link
Contributor

implements #9857

adds support for an optional exe_suffix field in the host_machine section of cross file
that property will then end up being used as the executable suffix.

the name_suffix property of executable() will override this just like it overwrote the default suffix.

Here is the cross file I've used to test this:

[binaries]
c = 'gcc'

[host_machine]
system = 'linux'
cpu_family = 'x86_64'
cpu = 'x86'
endian = 'little'
exe_suffix = 'bla'

@Jan200101 Jan200101 requested a review from jpakkane as a code owner December 14, 2024 19:54
@jpakkane
Copy link
Member

Are there use cases other than Emscripten? Because if that is the only user it seems to me that it could be solved better by having a wasm-specific option somehow. Meson needs to know that those additional files are also created for things like install to work.

@Jan200101
Copy link
Contributor Author

I can't think of one off the top of my head (I will amend this if I can think of any) but I think having this, regardless of if wasm gets more specialized options, would be useful for foreign systems that meson may not officially support.

One use case I can think of for that would be homebrew toolchains, where its common to process the resulting elf file into system specific package.
There it would be very useful to specify the executable extension to be elf instead of none at all without having to specify it in the executable() call

@dcbaker
Copy link
Member

dcbaker commented Dec 15, 2024

Off the top of my head binaries run by UEFI firmware have the .efi extension, and unless someone has gotten really productive you cannot have the UEFI environment as a build environment, only as a host.

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.

3 participants