FTBFS with Taglib 2.0
According to taglib 2.0 is source compatible to 1.x as long as no deprecated functions are used: https://taglib.org/#taglib-20-release---jan-24-2024
Arch has a VLC patch here for example: https://gitlab.archlinux.org/archlinux/packaging/packages/vlc/-/blob/40b8a8a1fc24f594a0b828fbde521c644964efaf/taglib-2.patch
Build log:
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:183:26: error: unknown type name
'ulong'; did you mean 'long'?
183 | ByteVector readBlock(ulong length)
| ^~~~~
| long
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:199:36: error: unknown type name
'ulong'; did you mean 'long'?
199 | void insert(const ByteVector&, ulong, ulong)
| ^~~~~
| long
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:199:43: error: unknown type name
'ulong'; did you mean 'long'?
199 | void insert(const ByteVector&, ulong, ulong)
| ^~~~~
| long
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:203:22: error: unknown type name
'ulong'; did you mean 'long'?
203 | void removeBlock(ulong, ulong)
| ^~~~~
| long
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:203:29: error: unknown type name
'ulong'; did you mean 'long'?
203 | void removeBlock(ulong, ulong)
| ^~~~~
| long
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:240:10: error: virtual function
'tell' has a different return type ('long') than the function it overrides (which has return type 'offset_t'
(aka 'long long'))
240 | long tell() const
| ~~~~ ^
C:/msys64/clang64/include/taglib/tiostream.h:156:22: note: overridden virtual function is here
156 | virtual offset_t tell() const = 0;
| ~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:245:10: error: virtual function
'length' has a different return type ('long') than the function it overrides (which has return type 'offset_t'
(aka 'long long'))
245 | long length()
| ~~~~ ^
C:/msys64/clang64/include/taglib/tiostream.h:161:22: note: overridden virtual function is here
161 | virtual offset_t length() = 0;
| ~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:188:32: error: no member named
'null' in 'TagLib::ByteVector'
188 | return ByteVector::null;
| ~~~~~~~~~~~~^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:478:5: error: no member named
'isNull' in 'TagLib::String'
478 | SET( title, Title );
| ^~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:468:26: note: expanded from macro
'SET'
468 | if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \
| ~~~~~~~~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:479:5: error: no member named
'isNull' in 'TagLib::String'
479 | SET( artist, Artist );
| ^~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:468:26: note: expanded from macro
'SET'
468 | if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \
| ~~~~~~~~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:480:5: error: no member named
'isNull' in 'TagLib::String'
480 | SET( album, Album );
| ^~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:468:26: note: expanded from macro
'SET'
468 | if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \
| ~~~~~~~~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:481:5: error: no member named
'isNull' in 'TagLib::String'
481 | SET( comment, Description );
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:468:26: note: expanded from macro
'SET'
468 | if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \
| ~~~~~~~~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:482:5: error: no member named
'isNull' in 'TagLib::String'
482 | SET( genre, Genre );
| ^~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:468:26: note: expanded from macro
'SET'
468 | if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \
| ~~~~~~~~~~~~~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:821:5: error: no member named
'itemListMap' in 'TagLib::MP4::Tag'
821 | SET("----:com.apple.iTunes:MusicBrainz Track Id", TrackID );
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:809:14: note: expanded from macro
'SET'
809 | if( tag->itemListMap().contains(keyName) ) \
| ~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:821:5: error: no member named
'itemListMap' in 'TagLib::MP4::Tag'
821 | SET("----:com.apple.iTunes:MusicBrainz Track Id", TrackID );
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:811:21: note: expanded from macro
'SET'
811 | list = tag->itemListMap()[keyName]; \
| ~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:822:5: error: no member named
'itemListMap' in 'TagLib::MP4::Tag'
822 | SET_EXTRA("----:com.apple.iTunes:MusicBrainz Album Id", VLC_META_EXTRA_MB_ALBUMID );
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:815:14: note: expanded from macro
'SET_EXTRA'
815 | if( tag->itemListMap().contains(keyName) ) \
| ~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:822:5: error: no member named
'itemListMap' in 'TagLib::MP4::Tag'
822 | SET_EXTRA("----:com.apple.iTunes:MusicBrainz Album Id", VLC_META_EXTRA_MB_ALBUMID );
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:817:21: note: expanded from macro
'SET_EXTRA'
817 | list = tag->itemListMap()[keyName]; \
| ~~~ ^
C:/msys64/home/user/M/mingw-w64-vlc/src/vlc-3.0.20/modules/meta_engine/taglib.cpp:827:14: error: no member named
'itemListMap' in 'TagLib::MP4::Tag'
827 | if( tag->itemListMap().contains("covr") )
| ~~~ ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
Edited by Christoph Reiter