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

Windows clang-cl build #4866

Merged
merged 4 commits into from
Apr 27, 2023
Merged

Windows clang-cl build #4866

merged 4 commits into from
Apr 27, 2023

Conversation

JoergAtGithub
Copy link
Member

This is an experimental build with the clang-cl compiler that comes with VisualStudio 2019.
clang-cl is a clang compiler variant, with MSVC compatible command line interface.

The CI build fails due to a header of protobuf, which is part of the Windows buildenv. I could fix this locally by applying: protocolbuffers/protobuf@1d2e8d9

My local build succeed, passed all tests and works flawless. But it feels slower than the MSVC build - I expected the opposite after the auto-vectoization results from @daschuer in #4861

@github-actions github-actions bot added the build label Jul 22, 2022
@daschuer
Copy link
Member

It would be interesting how a mingw gcc build will perform.
We may also consider to make sample.cpp a library and compile only this with a different compiler.

@JoergAtGithub
Copy link
Member Author

Mingw is wormhole of problems, you would need to change the code at numerous places. Once I spend hours on a simple command line programm, due to differences in the implementation in the C standard function scanf.
For Mixxx you would need to compile the whole buildenv with Mingw first, because it's not ABI compatible to the other compilers. Mingw also force you, to use their own debugger, profiler etc. due to ABI incompatibilty.

Clang-cl is just a drop in for MSVC - only the compiler itself is changed and creates ABI compatible binaries, PDB files etc.

@github-actions
Copy link

This PR is marked as stale because it has been open 90 days with no activity.

@github-actions github-actions bot added the stale Stale issues that haven't been updated for a long time. label Oct 22, 2022
@JoergAtGithub JoergAtGithub changed the base branch from main to 2.4 February 5, 2023 11:39
@JoergAtGithub JoergAtGithub added code quality and removed library ui stale Stale issues that haven't been updated for a long time. labels Feb 5, 2023
@JoergAtGithub JoergAtGithub marked this pull request as ready for review February 5, 2023 16:32
@JoergAtGithub
Copy link
Member Author

I intend to delete the GitHub build action before merging.
Only the changes in CMakelists.txt and the fixes of build error/warning should be merged.

Copy link
Member

@Swiftb0y Swiftb0y left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anything left to do here?

@daschuer
Copy link
Member

After merging this, we will have two windows build for every PR, a waste of energy if we will not use it, do we?
Can we disable it before merging and only enable it when we want to check certain things?

@JoergAtGithub
Copy link
Member Author

Yes, the CI build was only for testing. I will remove it.

Copy link
Member

@Swiftb0y Swiftb0y left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

waiting for ci. thank you

@Swiftb0y Swiftb0y merged commit 36ede0c into mixxxdj:2.4 Apr 27, 2023
@JoergAtGithub JoergAtGithub deleted the clang-cl branch April 29, 2023 14:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants