[vlc-devel] State of broken CI for 3.0?
Steve Lhomme
robux4 at ycbcr.xyz
Tue Jun 15 06:21:50 UTC 2021
On 2021-06-15 7:59, Steve Lhomme wrote:
> On 2021-06-15 7:53, Steve Lhomme wrote:
>> On 2021-06-14 19:48, Lyndon Brown wrote:
>>> As I'm sure has been noticed, pipelines started failing across the
>>> board yesterday for mac-arm64 on the 3.0.x branch, with an error
>>> whereby the taglib module could not find taglib.h for some reason:
>>>
>>> /Users/videolan/builds/puw5iUHi/0/videolan/vlc/extras/package/macosx/..
>>> /../../modules/meta_engine/taglib.cpp:52:10: fatal error: 'taglib.h'
>>> file not found
>>>
>>> I've noticed that Felix's MRs (248, 254) are now passing CI
>>> successfully, yet mine still won't, whether I re-run the failed run,
>>> create a new pipeline from a rebase, or whether someone else does (e.g.
>>> 232 by David, 228 by Steve)...
>>>
>>> Just wondering what the status/situation is. :)
>>
>> There might be an issue with pkgconfig, the <contrib>/include/taglib
>> should be passed. Or maybe the taglib.h file in the pre-built contrib
>> is bogus. But it is extracted.
>
> taglib.pc has the pathes hardcoded. So unless it's built on the same
> machine with the same path, it cannot work. This is the content of the
> one used by the image:
>
> prefix=/Users/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19
>
> exec_prefix=/Users/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19
>
> libdir=/Users/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19/lib
>
> includedir=/Users/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19/include
>
>
> Other .pc files usually have something like this:
>
> prefix=@@CONTRIB_PREFIX@@
> exec_prefix=${prefix}
> libdir=@@CONTRIB_PREFIX@@/lib
> includedir=@@CONTRIB_PREFIX@@/include
This job [1] created the tarball of contribs. It contains a lot of
prefix=@@CONTRIB_PREFIX@@ but many are kept to their original path as well.
Looking at the job it transforms the contrib pathes to a generic value
before creating the tarball:
change_prefix.sh
/Volumes/External/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19
@@CONTRIB_PREFIX@@
But some of the pathes don't match this path, they have
/Users/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19
instead of
/Volumes/External/videolanci/builds/o5P11sBb/0/videolan/vlc/contrib/aarch64-apple-darwin19
It seems to be the case for all CMake based projects. This seems to be
an issue only on macos. A 3.0 prebuilt contrib for win64 doesn't have an
issue with the CMake based projects (there are some /usr and /usr/local
hardcoded though but they are bogus and useless no matter what).
We either have to fix CMake (long term solution) and add that extra user
path to the translated path. Or maybe there is a way to have always one
or the other ?
https://code.videolan.org/videolan/vlc/-/jobs/671427/raw
More information about the vlc-devel
mailing list