On systems where OpenGL is implemented via the NVidia driver, stage-qa fails to print this warning:
Warning: you need USE_GL+=gl
The attached patch corrects this.
See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221406
Differential D11977
Made proxydeps to treat lib/libGL-NVIDIA.so and 2 friends as part of GL yuri_rawbw.com on Aug 11 2017, 5:31 AM. Authored by Tags None Referenced Files
Details
On systems where OpenGL is implemented via the NVidia driver, stage-qa fails to print this warning:
The attached patch corrects this. See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221406
Diff Detail
Event TimelineComment Actions The only way to do this is to first create another variable, say dep_file_str, and then, at this location, assign dep_file and add the 'else' clause. This adds 2 more lines, and another variable that isn't going to be immutable either. Are you sure this should be really done? Because nonimmutability doesn't really hurt anything in this case. Comment Actions Steps to reproduce:
With the attached patch the warning turns into the correct one: Warning: you need USE_GL+=gl Comment Actions No, I can't seem to be able to reproduce the issue in poudriere, there are no ports that depend on nvidia-driver that I can find. I'll let another portmgr member decide what to do with this. Comment Actions there are no ports that depend on nvidia-driver: What are you talking about? Of course there are no ports that depend on nvidia-driver! nvidia-driver is installed on systems that have nvidia card. This just doesn't apply to poudriere. This is *only* a problem of local builds. When I run make stage-qa, it always prints this bogus warning. I have to always remember that this bogus warning is the same as USES=gl. This is ridiculous, this should just go away. There are more important things to remember. Please run the above steps locally and reproduce the problem. Comment Actions I do get the same message when building ports locally, but I have just x11/nvidia-driver install a libmap.conf that maps libGL to diff --git a/Mk/Scripts/qa.sh b/Mk/Scripts/qa.sh index 868043601a92..87f2b23d689b 100644 --- a/Mk/Scripts/qa.sh +++ b/Mk/Scripts/qa.sh @@ -677,7 +677,7 @@ proxydeps() { fi already="${already} ${dep_file}" done <<-EOT - $(ldd -a "${STAGEDIR}${file}" | \ + $(env LD_LIBMAP_DISABLE=1 ldd -a "${STAGEDIR}${file}" | \ awk '\ BEGIN {section=0}\ /^\// {section++}\ Comment Actions Yes LD_LIBMAP_DISABLE is imho the way to go as it will work for all libmap cases. While the propose approach is only working for nvidia case |