-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
[mpg123] Allow cross-compiling, fix previous builds tainting rebuilds #11535
Conversation
@Neumann-A Could you review this PR? Thanks. |
The port needs a complete rewrite to use Conclusion: |
The default set of flags used by |
Be more specific. If this is only due to |
When I had tested, it seemed to be the result of the combination of |
Test again. The configure script has both rules baked into it so it should work.... (Otherwise check your autoconf version 2.69 is required) |
By removing a bunch of flags, I got it to compile properly. Tomorrow I will verify that this is still working on macOS. This has a behaviour change: Some thoughts:
|
I've verified that it compiles successfully on macOS, including the CoreAudio module. |
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please update the version info. See documentation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM if the merge from master doesn't break anything.
Turns out all those lines were unnecessary holdovers from the old version of this port and it's all taken care of by |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
I like this PR quite a lot! let's just run the PR tests and see if we can merge :) |
|
Looks like this needs to update the scripts. |
I don't think mpg123 should use yasm in *nix, please change
to
|
The assembler is used on all platforms if it is available. On my macOS CI I have to |
…microsoft#11535) * [mpg123] Allow cross-compiling, fix previous builds tainting rebuilds * [mpg123] Rewrite to use vcpkg_configure_make * Update ports/mpg123/portfile.cmake Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * [mpg123] Use vcpkg_execute_required_process * [mpg123] Bump CONTROL version * [mpg123] Remove unneeded legacy lines and strip out trailing newline from dumpmachine * pre-install yasm on OSX. Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Closes #11164
This would support cross-compiling to triplets like
arm64-linux
from x64 if an appropriate cross-compiling configuration or toolchain file is specified in the triplet.I fixed a bug where previous builds were not cleaned up when building again. This came up when testing and I commented it; this could be separated into a different pull request.
I refactored the port a little bit to have common configure flags shared between debug and release builds; again, this could be in a different pull request.
Now for the meat of the problem I'm trying to solve: in the linked issue, JackBoosY suggests using the new
vcpkg_configure_make
. However, I found that this actually sets a bad combination of default flags for mpg123, resulting in attempting to macOS-specific CoreAudio code on Linux. I also noticed that it only attempts to detect autoconf--host
if on Windows/MSYS, so I went with my own approach here of retrieving the prefix with-dumpmachine
and passing it to configure and make.