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

Upgrade to libdjinterop 0.21.0 #13233

Closed
wants to merge 1 commit into from
Closed

Conversation

mr-smidge
Copy link
Contributor

No description provided.

@mr-smidge
Copy link
Contributor Author

The build errors confuse me. From the macOS build:

Undefined symbols for architecture x86_64:
  "djinterop::crate::create_sub_crate(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)", referenced from:
      mixxx::EnginePrimeExportJob::run() in libmixxx-lib.a(engineprimeexportjob.cpp.o)
  "djinterop::database::create_root_crate(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) const", referenced from:
      mixxx::EnginePrimeExportJob::run() in libmixxx-lib.a(engineprimeexportjob.cpp.o)

These two functions changed their signature from accepting std::string by value to const ref instead. The header and source files are internally consistent within libdjinterop in the 0.21.0 tag.

Is there something cached in these builds that would somehow pick up the old signature?

@daschuer
Copy link
Member

Is there something cached in these builds that would somehow pick up the old signature?

Yes, the vcpkg build environment has probably the headers of the old version. We need to update this anyway, because the windows build fails with the downloaded source for some reasons.

@mr-smidge
Copy link
Contributor Author

Yes, the vcpkg build environment has probably the headers of the old version. We need to update this anyway, because the windows build fails with the downloaded source for some reasons.

Ok, I'm not sure how to resolve this - @daschuer are you ok to make (or show me how to make) the necessary changes to get this through?

@daschuer
Copy link
Member

It is best to create a vcpkg upstream PR and then cherry-pick it from our https://github.com/mixxxdj/vcpkg branches.
The previous version update was merged by this PR: microsoft/vcpkg#38298

@daschuer daschuer added this to the 2.5-beta milestone May 15, 2024
@mr-smidge
Copy link
Contributor Author

PR to for libdjinterop 0.21.0 in vcpkg: microsoft/vcpkg#38888

@daschuer
Copy link
Member

Great, thank you. Now we need to cherry pick it to our own vcpkg repro. To the 2.4 and 2.5 branch.

@mr-smidge
Copy link
Contributor Author

Here we go - hopefully I've done this right:

@acolombier
Copy link
Contributor

I think you will have to rebase your branch against main since the attributed milestone for that PR is 2.5. This means you shouldn't need a VPKG update for 2.4- @daschuer do you confirm?

@daschuer
Copy link
Member

The 2.4 target is correct, because 2.4 and main builds are broken.

@mr-smidge
Copy link
Contributor Author

@daschuer Now that the vcpkg PRs are merged, please can you re-run the failed actions? I don't appear to have permission to do this. Thanks!

@JoergAtGithub
Copy link
Member

I doubt that the rerun will be enough, because we need to adjust the buildenv hashes before.

@mr-smidge
Copy link
Contributor Author

mr-smidge commented May 26, 2024

I doubt that the rerun will be enough, because we need to adjust the buildenv hashes before.

@JoergAtGithub I'm not familiar with what this means, but the Windows build is already failing with a similar error to before, so I suspect you're right. What steps need to be taken now?

@JoergAtGithub
Copy link
Member

You need to do similar changes as in #12067 , otherwise the Mixxx build will not download the new buildenv zip files.

@daschuer
Copy link
Member

I have cherry-picked this to #13288 #13289

@daschuer
Copy link
Member

Thank you for your help.

@daschuer daschuer closed this May 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants