Naive concatenation of $LD_LIBRARY_PATH can result in an empty
colon-delimited segment; this tells glibc to load libraries from the
current directory, which is definitely wrong, and may be a security
vulnerability if the current directory is untrusted. (See #67234, for
example.) Fix this throughout the tree.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
The build was fixed in two ways, by both this patch and a substitution.
Let's keep the substitition instead of the patch as the patches may disappear.
This reverts commit ccc8c73ea0.
because it's ancient, it relies on ancient APIs that Apple has deprecated
for literally years. Our new CoreFoundation cleanup means those APIs are no longer here, so let's kill the functionality. Eventually support for it
got removed from upstream too, so it's not as if we're doing anything too
awful here.
* Implement libGL as a symlink package which uses libraries from libglvnd and
headers from Mesa (since ones from libglvnd are outdated).
* Use libGL_driver.driverLink treewide; add FHS paths where possible.
Since keeping `installPhase = ""` to signify "use the default installPhase" will
be surprising, this deletes the installPhase and rebuilds qt4 on all platforms.
Fixes#30238
qmake needs uic to extract dependency information from .ui files. In -fast mode
qmake generates Makefiles for each subproject after the previous subproject is
built, and by the time it encounters subprojects with .ui files, uic is
available to provide dependency information. In -no-fast mode qmake builds
subprojects in the same order, but generates all Makefiles beforehand, without
uic, and they miss dependencies.
Previously the last of these commands:
```
make -j sub-tools-bootstrap
make -j sub-uic sub-moc sub-rcc
make -C tools/designer/src/lib .obj/release-shared/moc_qtgradientviewdialog.o
```
failed with this error:
```
In file included from .uic/release-shared/ui_qtgradientviewdialog.h:63:0,
from .moc/release-shared/../../../../../shared/qtgradienteditor/qtgradientviewdialog.h:47,
from .moc/release-shared/moc_qtgradientviewdialog.cpp:9:
../../../shared/qtgradienteditor/qtgradientview.h:47:31: fatal error: ui_qtgradientview.h: No such file or directory
```
because uic did not ensure that the build of moc_qtgradientviewdialog.o happens
after the build of moc_qtgradientview.o.