-
-
Notifications
You must be signed in to change notification settings - Fork 21
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
fix: cross-compiling and don't treat x86 as the default case #295
Conversation
None of the failures were caused by this change. |
ppc64el build was fixed if you rebase |
ef8741e
to
4065439
Compare
4a7abdf
to
510db67
Compare
My bad, leftover bracket. |
That's weird. CMake is supposed to respect CC/CXX. I don't think it even executed those |
Sorry for the delay, I'm trying to catch up with things. So changing the compiler for macOS... will we need to make sure the compiler used for Sunshine is the same one as used here? |
My change originally switched it from GCC to Clang, as that is what it was supposed to use to match the rest of the build. However, that didn't work, so I adjusted my change to keep it using GCC, but more explicitly than before. The fact that it doesn't match the rest of the build evidently wasn't a problem before, and I wouldn't expect it to be anyway. It is quite common to mix GCC and Clang binaries. |
It looks like this PR has been idle for 90 days. If it's still something you're working on or would like to pursue, please leave a comment or update your branch. Otherwise, we'll be closing this PR in 10 days to reduce our backlog. Thanks! |
Rebased. I'd still like to see this merged. |
It looks like this PR has been idle for 90 days. If it's still something you're working on or would like to pursue, please leave a comment or update your branch. Otherwise, we'll be closing this PR in 10 days to reduce our backlog. Thanks! |
Again, sorry for the delay. I'm a bit hesitant to merge this as I think the right approach for this repo is to convert it into a full cmake project, so it can be easily built as a standalone library or inside of Sunshine. |
If you set arch-specific CFLAGS, then ffmpeg's configure script may fail when it tries to use these flags against the build host's compiler. Also use CMAKE_SYSTEM_PROCESSOR to set up cross-compiling without relying on any custom variables. ffmpeg normalises its --arch option and will accept just about any string that you'll likely throw at it.
We want ffmpeg to respect the compiler chosen by CMake, but that defaults to Xcode/Clang, where GCC was used for this case previously. Simplify the logic surrounding this change by always setting CMAKE_TOOLCHAIN_FILE in the pipeline. It does nothing when set to a empty value.
628b753
to
72f953f
Compare
That would probably be a good thing for me. |
Description
If you set arch-specific
CFLAGS
, then ffmpeg's configure script may fail when it tries to use these flags against the build host's compiler.Also use
CMAKE_SYSTEM_PROCESSOR
to set up cross-compiling without relying on any custom variables. ffmpeg normalises its--arch
option and will accept just about any string that you'll likely throw at it.Type of Change
.github/...
)Checklist
Branch Updates
LizardByte requires that branches be up-to-date before merging. This means that after any PR is merged, this branch
must be updated before it can be merged. You must also
Allow edits from maintainers.