Skip to content

chore: bump libdjinterop to 0.27.0#15689

Closed
danielkinahan wants to merge 348 commits into
mixxxdj:2.6from
danielkinahan:main
Closed

chore: bump libdjinterop to 0.27.0#15689
danielkinahan wants to merge 348 commits into
mixxxdj:2.6from
danielkinahan:main

Conversation

@danielkinahan
Copy link
Copy Markdown
Contributor

@danielkinahan danielkinahan commented Dec 1, 2025

This adds support for exporting to Engine DJ 4.3.x versions.

mixxxbot and others added 30 commits June 24, 2025 20:03
Loop: `beatloop_activate` adopts rolling loop and quits slip mode
…ware/mixxxdj/mixxx2-7/. Compile QM files out of TS files that are used by the localized app
…_bug

Add FILE line to Cuefile to include file path for each track
…-qcheckbox-statechanged

fix: broken CI due to deprecated `QCheckBox::checkStateChanged`
…rm-opts

chore(waveform): migrate option to global namespace
fix(controller): correctly deregister player manager
…ware/mixxxdj/mixxx2-7/. Compile QM files out of TS files that are used by the localized app
daschuer and others added 15 commits November 23, 2025 15:35
Refactor MappingInfo class to use XML stream parser instead of full XmlParse
chore: rename overly technical qml command argument
ci(ANdroid): update cache before installing deps
…ware/mixxxdj/mixxx2-7/. Compile QM files out of TS files that are used by the localized app
@github-actions github-actions Bot added the build label Dec 1, 2025
@JoergAtGithub
Copy link
Copy Markdown
Member

Welcome at Mixxx!
As a first-time contributor we need you to sign the Mixxx Contributor Agreement and comment here when you have done so. It gives us permission to distribute your contribution under the GPL v2 or later license and the Apple Mac App Store. It is also helpful for us to have contact information for contributors in case we may need it in the future.

@danielkinahan
Copy link
Copy Markdown
Contributor Author

@JoergAtGithub I signed it! Very excited to be contributing here (and libdjinterop)

@JoergAtGithub
Copy link
Copy Markdown
Member

@acolombier Do you have an idea, why this doesn't work on Android?

@acolombier
Copy link
Copy Markdown
Member

I suspect the issue comes from the fact that this file was removed, and the buildchain doesn't contain a definition for it, leading to fall back to the host one, which is incompatible with the target.

Perhaps we could add a patch to restore the CMake definition?

@danielkinahan
Copy link
Copy Markdown
Contributor Author

I'm not familiar with building for android. Should we bump the sqlite3 lib version then?

@JoergAtGithub
Copy link
Copy Markdown
Member

Two points:

  1. This should go into the 2.6 branch and not into main. Please retarget this!
  2. The main branch has no Android build and CI will pass therefore. But we will run into the same issue, when we will merge 2.6 into main.

@JoergAtGithub
Copy link
Copy Markdown
Member

The Android build of the VCPKG port update passed, so it seems not to be a general issue: microsoft/vcpkg#48655

@daschuer
Copy link
Copy Markdown
Member

daschuer commented Dec 3, 2025

Interestingly Mixxx's CMake finds SQLite3:

2025-12-02T00:06:23.9259088Z -- Found SQLite3: /home/runner/buildenv/mixxx-deps-2.7-arm64-android-9dcfaf7/installed/arm64-android/include (found version "3.50.4")

I think the issue is that Sqlite3 does not provide a Config.cmake file therefore this fails:
https://github.com/xsco/libdjinterop/blob/f499a25d5bdb1dafea1e7a0e2ac1bf7d09a05359/DjInteropConfig.cmake.in#L9
https://cmake.org/cmake/help/latest/module/CMakeFindDependencyMacro.html

I just wonder how it succeeds on other targets:

2025-12-02T00:06:30.7993200Z -- Found SQLite3: /Users/runner/buildenv/mixxx-deps-2.6-arm64-osx-cross-rel-da4c207/installed/arm64-osx-min1100-release/include (found version "3.49.1") 
2025-12-02T00:08:35.3906680Z -- Found SQLite3: /Users/runner/buildenv/mixxx-deps-2.6-arm64-osx-cross-rel-da4c207/installed/arm64-osx-min1100-release/include (found suitable version "3.49.1", minimum required is "3.11") 

We should make it work with the CMake provided version:

https://github.com/Kitware/CMake/commits/93aa407481352507d6e40140318dec4f0e483855/Modules/FindSQLite3.cmake

@JoergAtGithub
Copy link
Copy Markdown
Member

JoergAtGithub commented Dec 3, 2025

I think the issue that this fails now is, that the Android build is rather new, and always got the precompiled libdjinterop version from our VCPKG buildenv. Now a higher version is requested than available in the buildenv and libdjinterop needs to build as part of the Mixxx build. I assume that this never worked.

@daschuer
Copy link
Copy Markdown
Member

daschuer commented Dec 3, 2025

Just realized that VCPKG comes with an
"share/unofficial-sqlite3/unofficial-sqlite3-config.cmake"
For: find_package(unofficial-sqlite3 CONFIG REQUIRED)
The unofficial prefix has been added at some point in the past.

@danielkinahan danielkinahan changed the base branch from main to 2.6 December 3, 2025 16:28
@danielkinahan
Copy link
Copy Markdown
Contributor Author

Made a new PR to 2.6. #15696
I will close this one

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.