Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 739498 - media-sound/mixxx: cmake based ebuild to port away from scons
Summary: media-sound/mixxx: cmake based ebuild to port away from scons
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Professional Audio Applications Maintainers
URL: https://mixxx.org/news/2020-12-14-sco...
Whiteboard:
Keywords: EBUILD, PATCH
Depends on: 762664
Blocks:
  Show dependency tree
 
Reported: 2020-08-29 14:00 UTC by jospezial
Modified: 2021-01-28 14:41 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
mixxx-9999.ebuild with cmake build system (mixxx-9999.ebuild,3.04 KB, text/plain)
2020-08-29 14:25 UTC, jospezial
Details
mixxx-9999.ebuild with cmake build system (mixxx-9999.ebuild,2.57 KB, text/plain)
2020-09-07 02:45 UTC, jospezial
Details
docs patch (mixxx-9999-docs.patch,469 bytes, patch)
2020-09-28 05:37 UTC, jospezial
Details | Diff
metainfo.patch (mixxx-9999-metainfo.patch,406 bytes, patch)
2020-09-28 05:40 UTC, jospezial
Details | Diff
udev rules patch (mixxx-9999-udev_rules.patch,462 bytes, patch)
2020-09-28 05:42 UTC, jospezial
Details | Diff
patch for long deprecated Qt::MidButton (mixxx-9999-qtdeprecated-MidButton.patch,1.54 KB, patch)
2020-09-28 05:45 UTC, jospezial
Details | Diff
mixxx-9999.ebuild with cmake build system (mixxx-9999.ebuild,2.66 KB, text/plain)
2020-09-28 06:01 UTC, jospezial
Details
metadata.xml with qtkeychain and keyfinder flags (metadata.xml,850 bytes, text/plain)
2020-09-28 06:05 UTC, jospezial
Details
mixxx-9999.ebuild with cmake build system (mixxx-9999.ebuild,2.58 KB, text/plain)
2020-11-29 12:35 UTC, jospezial
Details
udev rules patch (mixxx-9999-udev_rules.patch,452 bytes, patch)
2020-11-29 12:39 UTC, jospezial
Details | Diff
mixxx-9999.ebuild with cmake build system (mixxx-9999.ebuild,2.53 KB, text/plain)
2020-12-14 22:24 UTC, jospezial
Details
mixxx-9999.ebuild (mixxx-9999.ebuild,2.54 KB, text/plain)
2021-01-02 14:33 UTC, jospezial
Details
mixxx-9999.ebuild 2021 (mixxx-9999.ebuild,2.54 KB, text/plain)
2021-01-02 15:00 UTC, jospezial
Details
mixxx ebuild for 2.3.9999, 9999 and releases (mixxx-2.3.9999.ebuild,2.67 KB, text/plain)
2021-01-28 04:02 UTC, jospezial
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jospezial 2020-08-29 14:00:50 UTC
Upstream is changing from scons to cmake based build system.
So we should do the same. This removes the scons related dependency to Python-2.7 too.
Comment 1 jospezial 2020-08-29 14:25:22 UTC
Created attachment 657376 [details]
mixxx-9999.ebuild with cmake build system

Here is an ebuild for you for testing and plumbing.

Todo:
 src_prepare() {
-       # use multilib compatible directory for plugins
-       sed -i -e "/env.Alias('install', docs)/d;"'/unix_lib_path =/!b;n;'"s/'lib'/'$(get_libdir)'/" SConscript || die
needs to be adapted to CMakeLists.txt

USE flags for QTKEYCHAIN and libebur128?

media-libs/libshout needs upstream version bump to not use the bundled lib from mixxx.

the ebuild installs /usr/etc/udev/rules.d/mixxx-usb-uaccess.rules

/usr/share/appdata/mixxx.appdata.xml should go into /usr/share/metainfo.

I disabled the mixxx builtin optimisation to use the Portage cflags.

I don't know if there is still any python dependency, configure checks it.
No problem with python-3.8.
Comment 2 jospezial 2020-09-05 13:40:04 UTC
This mixxx works normal but on quit it crashes:

Thread 1 "mixxx" received signal SIGSEGV, Segmentation fault.
0x00007fffefb4a968 in sord_free () from /usr/lib64/libsord-0.so.0
(gdb) bt f
#0  0x00007fffefb4a968 in sord_free () at /usr/lib64/libsord-0.so.0
#1  0x00007ffff41da3dc in lilv_world_free () at /usr/lib64/liblilv-0.so.0
#2  0x0000555555b39134 in  ()
#3  0x0000555555b392a9 in  ()
#4  0x00005555557f7f90 in  ()
#5  0x00005555557f8389 in  ()
#6  0x000055555598ef49 in  ()
#7  0x0000555555990384 in  ()
#8  0x00005555556aabd1 in  ()
#9  0x00007ffff356ce2d in __libc_start_main () at /lib64/libc.so.6
#10 0x00005555556ca6da in  ()


=================================================================
                        Package Settings
=================================================================

dev-libs/sord-0.16.4::gentoo was built with the following:
USE="-doc -static-libs -test" ABI_X86="32 (64) (-x32)"
FEATURES="sandbox merge-sync strict assume-digests binpkg-docompress unmerge-logs usersync unknown-features-warn unmerge-orphans news ipc-sandbox network-sandbox userpriv protect-owned sfperms xattr pid-sandbox distlocks parallel-fetch multilib-strict fixlafiles preserve-libs usersandbox binpkg-dostrip ebuild-locks userfetch config-protect-if-modified binpkg-logs ccache qa-unresolved-soname-deps"


media-libs/lilv-0.24.8-r1::gentoo was built with the following:
USE="dyn-manifest -doc -static-libs -test" ABI_X86="32 (64) (-x32)"
FEATURES="sandbox merge-sync strict assume-digests binpkg-docompress unmerge-logs usersync unknown-features-warn unmerge-orphans news ipc-sandbox network-sandbox userpriv protect-owned sfperms xattr pid-sandbox distlocks parallel-fetch multilib-strict fixlafiles preserve-libs usersandbox binpkg-dostrip ebuild-locks userfetch config-protect-if-modified binpkg-logs ccache qa-unresolved-soname-deps"
Comment 3 jospezial 2020-09-05 13:48:51 UTC
https://bugs.gentoo.org/show_bug.cgi?id=726312
"dev-libs/sord-0.16.4 apparently broken if built using gcc-10.1.0"
Comment 4 Miroslav Šulc gentoo-dev 2020-09-05 17:22:54 UTC
please test it with dev-libs/sord-0.16.4-r1
Comment 5 jospezial 2020-09-05 19:54:53 UTC
With dev-libs/sord-0.16.4-r1 mixxx exits cleanly on quit.
Comment 6 Miroslav Šulc gentoo-dev 2020-09-06 07:42:56 UTC
thank you for the work! i looked at the ebuild and as you wrote, it still needs some work. are you willing to finish it or are you done with it?
Comment 7 jospezial 2020-09-07 02:45:13 UTC
Created attachment 658850 [details]
mixxx-9999.ebuild with cmake build system

added USE flag for qtkeychain
metadata.xml:
<flag name="qtkeychain">Enable Secure credential storage support via <pkg>dev-libs/qtkeychain</pkg></flag>


depend on media-libs/libebur128, if not found mixxx would link the bundled static.

-DCCACHE_SUPPORT="off" #to avoid double invocation of ccache
for ex.: [733/808] ccache /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++

cleanup

The wrong install paths still have to be fixed. I could create patches for that but it would be better to use sed on git ebuilds.
That is where it gets harder for me and I could need some help.
I think the path fixes should then be upstreamed.
Comment 8 Miroslav Šulc gentoo-dev 2020-09-07 03:36:21 UTC
thank you for working on it. i have few notes:
1) you could remove the rest of the commented code, there is no use for it
2) you should inherit xdg
3) you could use BDEPEND

wrt fixing the paths, i would prefer patch instead of sed. those can be both pushed upstream and also we get notified when something changes. with sed you don't know whether it still works or not.
Comment 9 jospezial 2020-09-28 05:37:36 UTC
Created attachment 662713 [details, diff]
docs patch

to have the doc USE flag working
Comment 10 jospezial 2020-09-28 05:40:17 UTC
Created attachment 662716 [details, diff]
metainfo.patch

Correct appstream dir
Comment 11 jospezial 2020-09-28 05:42:35 UTC
Created attachment 662719 [details, diff]
udev rules patch

so we can install the rule into the right dir and rename it.
Comment 12 jospezial 2020-09-28 05:45:03 UTC
Created attachment 662722 [details, diff]
patch for long deprecated Qt::MidButton
Comment 13 jospezial 2020-09-28 06:01:22 UTC
Created attachment 662725 [details]
mixxx-9999.ebuild with cmake build system

changes:
inherit xdg and udev
removed comments
new dependency and USE flag "keyfinder"
BDEPEND
PATCHES

I don't know whether the inherit of xdg is enough and needed or there is any change needed in the phases.
Cmake.eclass does a lot.
Comment 14 jospezial 2020-09-28 06:05:23 UTC
Created attachment 662728 [details]
metadata.xml with qtkeychain and keyfinder flags
Comment 15 jospezial 2020-09-28 06:16:11 UTC
media-libs/libkeyfinder is optional.
Tested with media-libs/libkeyfinder-2.2.1 from stefantalpalaru overlay.
Comment 16 Miroslav Šulc gentoo-dev 2020-09-28 07:42:38 UTC
thank you for the update. i'll try to get to it asap.
Comment 17 jospezial 2020-11-29 10:50:05 UTC
related mixxx-9999-qtdeprecated-MidButton.patch, fixed in upstream git.

https://github.com/mixxxdj/mixxx/commit/66a6345e0e7d3b7b8fd5dc99f2e0b5d6d7ac29d2
"Merge pull request #3380 from Holzhaus/qt-deprecations-warnings-5.15.2

Fix Qt 5.15.2 deprecation warnings"
Comment 18 Miroslav Šulc gentoo-dev 2020-11-29 10:53:08 UTC
sorry that i still did not get to it, busy schedule...
Comment 19 jospezial 2020-11-29 12:35:03 UTC
Created attachment 675688 [details]
mixxx-9999.ebuild with cmake build system

removed mixxx-9999-qtdeprecated-MidButton.patch, fixed in upstream git.
removed some DoubleEmptyLines and Whitespaces

Tested with pkgcheck and repoman.
Comment 20 jospezial 2020-11-29 12:39:50 UTC
Created attachment 675691 [details, diff]
udev rules patch

rebased to git head
Comment 21 jospezial 2020-11-29 12:43:32 UTC
(In reply to Miroslav Šulc from comment #18)
> sorry that i still did not get to it, busy schedule...

Null problemo!
Comment 22 jospezial 2020-12-14 22:24:26 UTC
Created attachment 678319 [details]
mixxx-9999.ebuild with cmake build system

Upstream has removed scons from 2.3 and main branch.
New config option DINSTALL_USER_UDEV_RULES=OFF makes udev rules patch obsolete.
appstream metainfo dir fixed
Comment 23 jospezial 2020-12-14 22:28:57 UTC
There are new tags for 2.3-beta and 2.4-alpha
Comment 24 jospezial 2020-12-17 08:29:26 UTC
Hello Miroslav,
Would you like to merge media-libs/libkeyfinder from

https://github.com/stefantalpalaru/gentoo-overlay/tree/master/media-libs/libkeyfinder
into ::gentoo?
https://bugs.gentoo.org/760030
He bumped it to the latest version with cmake support.
Comment 25 jospezial 2020-12-30 04:01:19 UTC
Mixxx depends on openssl or libressl if the bundled libshout is used.
And the bundled libshout is used because the system installed version is buggy.
Comment 26 jospezial 2020-12-30 15:45:50 UTC
(In reply to jospezial from comment #25)
> Mixxx depends on openssl or libressl if the bundled libshout is used.
> And the bundled libshout is used because the system installed version is
> buggy.

https://bugs.launchpad.net/mixxx/+bug/1833225 should be fixed now in latest upstream releases.

I have tried now with libshout-2.4.5 (not yet in tree, bug 762664),
but configure still says it wants to use the bundled internal libshout.

-- Found Shout: /usr/lib64/libshout.so  
-- Installed libshout version is suffering from bug lp1833225
-- Using internal libshout
-- Found OpenSSL: /usr/lib64/libcrypto.so (found version "1.1.1i")


https://github.com/mixxxdj/mixxx/blob/main/CMakeLists.txt has the lines:

    if(Shout_FOUND AND Shout_VERSION VERSION_LESS 2.4.4)
        message(STATUS "Installed libshout version is suffering from bug lp1833225")
    endif()
    if(NOT Shout_FOUND OR Shout_VERSION VERSION_LESS 2.4.4)
      # Fall back to internal libraray in the lib tree
      message(STATUS "Using internal libshout")


/usr/lib64/pkgconfig/shout.pc has
Version: 2.4.5
What is wrong?
I can't find something like a config.log . What is the right file with ninja?
Comment 27 jospezial 2020-12-30 15:54:17 UTC
The so-name of the lib is completely different, but higher.

lrwxrwxrwx 1 root root     17 30. Dez 12:54 /usr/lib64/libshout.so -> libshout.so.3.2.0
lrwxrwxrwx 1 root root     17 30. Dez 12:54 /usr/lib64/libshout.so.3 -> libshout.so.3.2.0
-rwxr-xr-x 1 root root 126880 30. Dez 12:54 /usr/lib64/libshout.so.3.2.0
Comment 28 jospezial 2020-12-31 23:57:55 UTC
I commented about libshout at
https://github.com/mixxxdj/mixxx/pull/2714#issuecomment-753219898
Comment 29 jospezial 2021-01-02 14:33:15 UTC
Created attachment 680674 [details]
mixxx-9999.ebuild

>=media-libs/libshout-2.4.5

System libshout version detection has been fixed upstream.

I have the feeling the ebuild and the other 2 files are ready to be merged to the tree.

When mixxx-2.3 or 2.4 is released, the ebuild only needs to be copied.

What do you think about git based pre-release snapshot versions of mixxx-2.3?
This would invite more people for testing the new features.
Comment 30 Miroslav Šulc gentoo-dev 2021-01-02 14:38:06 UTC
i hope i'll get to the review of mixxx-9999.ebuild tomorrow, but can't promise... i agree with you that a pre-release makes sense in this case.

thank you for your work so far! :-)
Comment 31 jospezial 2021-01-02 15:00:28 UTC
Created attachment 680689 [details]
mixxx-9999.ebuild 2021

Happy new year!
Comment 32 Miroslav Šulc gentoo-dev 2021-01-03 14:06:15 UTC
(In reply to jospezial from comment #31)
> Created attachment 680689 [details]
> mixxx-9999.ebuild 2021
> 
> Happy new year!

so i took your ebuild and prepared it for commit, but currently it fails to compile. idk whether the upstream repo is broken for compilation atm or the issue is elsewhere. here's the issue i have:

FAILED: CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o 
/usr/bin/x86_64-pc-linux-gnu-g++ -DMIXXX_BUILD_RELEASE -DNDEBUG -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_QML_LIB -DQT_SQL_LIB -DQT_SVG_LIB -DQT_TABLET_SUPPORT -DQT_TESTCASE_BUILDDIR=\"/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999_build\" -DQT_TESTLIB_LIB -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DQT_X11EXTRAS_LIB -DQT_XML_LIB -DSETTINGS_FILE=\"mixxx.cfg\" -DSETTINGS_PATH=\".mixxx/\" -DSFC_SUPPORTS_SET_COMPRESSION_LEVEL -DUNIX_SHARE_PATH=\"/usr/share/mixxx\" -D__BATTERY__ -D__BULK__ -D__FAAD__ -D__FFMPEG__ -D__LILV__ -D__LINUX__ -D__MAD__ -D__MODPLUG__ -D__MP4V2__ -D__OPUS__ -D__SNDFILE__ -D__SQLITE3__ -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__UNIX__ -D__VINYLCONTROL__ -D__WV__ -Dx86_64 -Imixxx-lib_autogen/include -I/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src -Isrc -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/fidlib -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/googletest-1.10.x/googletest/include -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/portaudio -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/rigtorp/SPSCQueue/include -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/replaygain -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/reverb -isystem /usr/include/glib-2.0 -isystem /usr/lib64/glib-2.0/include -isystem /usr/include/opus -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/kaitai -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/mp3guessenc-0.27.4 -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtOpenGL -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtQml -isystem /usr/include/qt5/QtSql -isystem /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtTest -isystem /usr/include/qt5/QtXml -isystem /usr/include/qt5/QtX11Extras -isystem /usr/include/qt5/QtDBus -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/qm-dsp -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/qm-dsp/include -isystem /usr/include/taglib -isystem /usr/include/libupower-glib -isystem /usr/include/libusb-1.0 -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/xwax  -march=native -O2 -pipe -frecord-gcc-switches -pipe -Wall -Wextra -Woverloaded-virtual -Wfloat-conversion -Werror=return-type -pthread -fPIC -std=gnu++17 -MD -MT CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o -MF CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o.d -o CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o -c /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp
In file included from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp:1:
/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.h: In member function ‘std::shared_ptr<BroadcastManager> mixxx::CoreServices::getBroadcastManager() const’:
/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.h:64:16: error: ‘m_pBroadcastManager’ was not declared in this scope; did you mean ‘getBroadcastManager’?
   64 |         return m_pBroadcastManager;
      |                ^~~~~~~~~~~~~~~~~~~
      |                getBroadcastManager
In file included from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/track/taglib/trackmetadata_ape.h:5,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/track/taglib/trackmetadata.h:8,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/metadatasourcetaglib.h:5,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/soundsource.h:6,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/soundsourceprovider.h:9,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/soundsourceproviderregistry.h:5,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/soundsourceproxy.h:3,
                 from /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp:27:
...
Comment 33 jospezial 2021-01-03 15:24:08 UTC
(In reply to Miroslav Šulc from comment #32)
> (In reply to jospezial from comment #31)
> > Created attachment 680689 [details]
> > mixxx-9999.ebuild 2021
> > 
> > Happy new year!
> 
> so i took your ebuild and prepared it for commit, but currently it fails to
> compile. idk whether the upstream repo is broken for compilation atm or the
> issue is elsewhere. here's the issue i have:
> 
> FAILED: CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o 
> /usr/bin/x86_64-pc-linux-gnu-g++ -DMIXXX_BUILD_RELEASE -DNDEBUG
> -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB
> -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_QML_LIB -DQT_SQL_LIB
> -DQT_SVG_LIB -DQT_TABLET_SUPPORT
> -DQT_TESTCASE_BUILDDIR=\"/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-
> 9999_build\" -DQT_TESTLIB_LIB -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB
> -DQT_X11EXTRAS_LIB -DQT_XML_LIB -DSETTINGS_FILE=\"mixxx.cfg\"
> -DSETTINGS_PATH=\".mixxx/\" -DSFC_SUPPORTS_SET_COMPRESSION_LEVEL
> -DUNIX_SHARE_PATH=\"/usr/share/mixxx\" -D__BATTERY__ -D__BULK__ -D__FAAD__
> -D__FFMPEG__ -D__LILV__ -D__LINUX__ -D__MAD__ -D__MODPLUG__ -D__MP4V2__
> -D__OPUS__ -D__SNDFILE__ -D__SQLITE3__ -D__STDC_CONSTANT_MACROS
> -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__UNIX__ -D__VINYLCONTROL__
> -D__WV__ -Dx86_64 -Imixxx-lib_autogen/include
> -I/var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src -Isrc -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/fidlib -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/googletest-1.10.
> x/googletest/include -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/portaudio
> -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/rigtorp/
> SPSCQueue/include -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/replaygain
> -isystem /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/reverb
> -isystem /usr/include/glib-2.0 -isystem /usr/lib64/glib-2.0/include -isystem
> /usr/include/opus -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/kaitai -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/mp3guessenc-0.27.
> 4 -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtConcurrent -isystem
> /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem
> /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem
> /usr/include/qt5/QtOpenGL -isystem /usr/include/qt5/QtWidgets -isystem
> /usr/include/qt5/QtQml -isystem /usr/include/qt5/QtSql -isystem
> /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtTest -isystem
> /usr/include/qt5/QtXml -isystem /usr/include/qt5/QtX11Extras -isystem
> /usr/include/qt5/QtDBus -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/qm-dsp -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/qm-dsp/include
> -isystem /usr/include/taglib -isystem /usr/include/libupower-glib -isystem
> /usr/include/libusb-1.0 -isystem
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/lib/xwax 
> -march=native -O2 -pipe -frecord-gcc-switches -pipe -Wall -Wextra
> -Woverloaded-virtual -Wfloat-conversion -Werror=return-type -pthread -fPIC
> -std=gnu++17 -MD -MT CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o -MF
> CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o.d -o
> CMakeFiles/mixxx-lib.dir/src/coreservices.cpp.o -c
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp
> In file included from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp:
> 1:
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.h:
> In member function ‘std::shared_ptr<BroadcastManager>
> mixxx::CoreServices::getBroadcastManager() const’:
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.h:
> 64:16: error: ‘m_pBroadcastManager’ was not declared in this scope; did you
> mean ‘getBroadcastManager’?
>    64 |         return m_pBroadcastManager;
>       |                ^~~~~~~~~~~~~~~~~~~
>       |                getBroadcastManager
> In file included from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/track/taglib/
> trackmetadata_ape.h:5,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/track/taglib/
> trackmetadata.h:8,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/
> metadatasourcetaglib.h:5,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/
> soundsource.h:6,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/
> soundsourceprovider.h:9,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/
> soundsourceproviderregistry.h:5,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/sources/
> soundsourceproxy.h:3,
>                  from
> /var/tmp/portage/media-sound/mixxx-9999/work/mixxx-9999/src/coreservices.cpp:
> 27:
> ...

Can't reproduce that error.
What is your version of taglib?

That is the only version in ::gentoo
media-libs/taglib-1.11.1_p20190920-r1::gentoo was built with the following:
USE="-debug -examples -test" ABI_X86="32 (64) (-x32)"
FEATURES="usersandbox qa-unresolved-soname-deps distlocks binpkg-logs xattr merge-sync unmerge-logs news ipc-sandbox pid-sandbox ccache parallel-fetch userfetch fixlafiles protect-owned usersync unknown-features-warn strict unmerge-orphans preserve-libs multilib-strict binpkg-dostrip config-protect-if-modified assume-digests userpriv binpkg-docompress sfperms ebuild-locks sandbox network-sandbox"

ls -l /usr/lib64/libtag.so.1.17.0 
-rwxr-xr-x 1 root root 1048576 11. Nov 11:09 /usr/lib64/libtag.so.1.17.0
Comment 34 Miroslav Šulc gentoo-dev 2021-01-03 15:26:56 UTC
i have the same: media-libs/taglib-1.11.1_p20190920-r1::gentoo  USE="-debug -examples -test" ABI_X86="32 (64) (-x32)"
Comment 35 jospezial 2021-01-03 17:05:35 UTC
Please attach your mixxx build.log.

emerge --info gcc libshout readline cmake

=================================================================
                        Package Settings
=================================================================

sys-devel/gcc-10.2.0-r5::gentoo was built with the following:
USE="(cxx) fortran graphite jit (multilib) nls nptl openmp pch (pie) sanitize ssp vtv zstd (-ada) -d -debug -doc (-fixed-point) -go (-hardened) (-libssp) -lto -objc -objc++ -objc-gc -pgo -systemtap -test -vanilla" ABI_X86="(64)"
CFLAGS="-march=native -mtune=native -pipe -O2"
CXXFLAGS="-march=native -mtune=native -pipe -O2"
FEATURES="binpkg-dostrip sandbox ccache assume-digests preserve-libs xattr binpkg-docompress config-protect-if-modified merge-sync unknown-features-warn userpriv multilib-strict qa-unresolved-soname-deps unmerge-logs fixlafiles userfetch binpkg-logs news distlocks ebuild-locks strict unmerge-orphans network-sandbox usersandbox protect-owned parallel-fetch sfperms usersync ipc-sandbox pid-sandbox"


media-libs/libshout-2.4.5::gentoo was built with the following:
USE="speex theora -libressl -static-libs" ABI_X86="(64) -32 (-x32)"


sys-libs/readline-8.1::gentoo was built with the following:
USE="(split-usr) (unicode) utils -static-libs" ABI_X86="32 (64) (-x32)"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -L."


dev-util/cmake-3.19.2::gentoo was built with the following:
USE="ncurses qt5 -doc -emacs -test" ABI_X86="(64)"
FEATURES="merge-sync qa-unresolved-soname-deps usersandbox unmerge-orphans ipc-sandbox ccache usersync strict userfetch unknown-features-warn distlocks unmerge-logs binpkg-docompress ebuild-locks preserve-libs multilib-strict binpkg-dostrip binpkg-logs sandbox fixlafiles userpriv parallel-fetch config-protect-if-modified assume-digests xattr protect-owned news sfperms pid-sandbox network-sandbox"
Comment 36 jospezial 2021-01-03 17:12:34 UTC
reproducible with USE="-shout"
Comment 37 jospezial 2021-01-03 17:27:57 UTC
The taglib deprecated warnings are annoying but unrelated.
Other distros don't have our taglib snapshot version or have older, then they don't see it.
Comment 38 Miroslav Šulc gentoo-dev 2021-01-03 17:28:49 UTC
(In reply to jospezial from comment #36)
> reproducible with USE="-shout"

confirmed. just successfully emerged with this:

media-sound/mixxx-9999::gentoo  USE="aac ffmpeg lv2 mp3 opus shout wavpack -doc -hid -keyfinder -mp4 -qtkeychain"
Comment 40 Larry the Git Cow gentoo-dev 2021-01-04 09:17:43 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95405ee565634ef39e06dd44566141e2da623b70

commit 95405ee565634ef39e06dd44566141e2da623b70
Author:     Miroslav Šulc <fordfrog@gentoo.org>
AuthorDate: 2021-01-04 09:16:02 +0000
Commit:     Miroslav Šulc <fordfrog@gentoo.org>
CommitDate: 2021-01-04 09:17:38 +0000

    media-sond/mixxx: live migrated to cmake + some improvements
    
    thanks to jospezial@gmx.de for the updated ebuild
    
    Bug: https://bugs.gentoo.org/739498
    Package-Manager: Portage-3.0.12, Repoman-3.0.2
    Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>

 media-sound/mixxx/files/mixxx-9999-docs.patch |  20 +++++
 media-sound/mixxx/metadata.xml                |   2 +
 media-sound/mixxx/mixxx-9999.ebuild           | 101 ++++++++++++--------------
 3 files changed, 67 insertions(+), 56 deletions(-)
Comment 41 Miroslav Šulc gentoo-dev 2021-01-04 09:20:37 UTC
i committed the ebuild as the issue is at upstream, not in the ebuild itself. i'm not closing this bug yet as the goal is to have a versioned ebuild of mixxx in the tree, either a pre-release or officially released one.

thank you for working on this :-)
Comment 42 jospezial 2021-01-04 21:55:29 UTC
Thank you for merging the ebuild and correcting the dependencies versions.
Will try to add a prerelease version into that ebuild. I like universal ebuilds! :-)

For USE="-shout":
https://github.com/mixxxdj/mixxx/commit/2904dfd1c79e0771022aa3c5400babf3a65bda36
"Merge pull request #3514 from daschuer/no_broadcast

Remove getBroadcastManager() if Mixxx is build without broadcast support

    main (#3514)"
Comment 43 jospezial 2021-01-08 05:16:37 UTC
pre-release ebuilds with git-r3.eclass and date are not so easy as I thought.
https://bugs.gentoo.org/764422
I don't want to use a static commit hash in the ebuild.
Comment 44 jospezial 2021-01-28 01:28:11 UTC
https://forums.gentoo.org/viewtopic-t-1128972.html?sid=26d01360103e42114cf3f57cdb0fbf57

Please add -DENGINEPRIME="OFF"

"Support for library export to Denon Engine Prime"

Without the change it looks for installed or tries to clone https://github.com/xsco/libdjinterop.git/
Comment 45 jospezial 2021-01-28 01:33:05 UTC
There is no libdjinterop ebuild yet. I don't know if we want it.
Comment 46 jospezial 2021-01-28 04:02:52 UTC
Created attachment 684939 [details]
mixxx ebuild for 2.3.9999, 9999 and releases

Most of the upstream changes go first into the 2.3 branch and later into main.

-DENGINEPRIME="OFF" added for main branch only
Comment 47 Larry the Git Cow gentoo-dev 2021-01-28 12:12:22 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fdadb26eb2d9387d3ed37eb6f7ed397ed08e20c3

commit fdadb26eb2d9387d3ed37eb6f7ed397ed08e20c3
Author:     Miroslav Šulc <fordfrog@gentoo.org>
AuthorDate: 2021-01-28 12:12:07 +0000
Commit:     Miroslav Šulc <fordfrog@gentoo.org>
CommitDate: 2021-01-28 12:12:07 +0000

    media-libs/mixxx: updated live + added 2.3.9999
    
    by jospezial <jospezial@gmx.de>
    
    Bug: https://bugs.gentoo.org/739498
    Package-Manager: Portage-3.0.14, Repoman-3.0.2
    Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>

 media-sound/mixxx/mixxx-2.3.9999.ebuild | 131 ++++++++++++++++++++++++++++++++
 media-sound/mixxx/mixxx-9999.ebuild     |  12 ++-
 2 files changed, 142 insertions(+), 1 deletion(-)
Comment 48 jospezial 2021-01-28 14:39:45 UTC
Because of heavy upstream development with good commits everyday it would be hard to maintain up to date snapshot releases.
The live ebuilds are in good shape for now. Closing this bug.
I will open new bug reports if something changes.