The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
With all libcs I'm aware of, libdl is now either empty (Glibc, musl,
uclibc, illumos), a symlink to libc or equivalent (Apple), or does not
exist (FreeBSD, NetBSD). So explicitly linking libdl now does nothing
for the former platforms, and breaks the build for the latter
platforms.
With this patch I've removed -ldl from all overridden linker flags for
all free packages in Nixpkgs. Everything still seems to build.
Without the change build agaist -fno-common toolchains like upstream
gcc-10 fails as:
$ nix build -L --impure --expr 'with import ./. {}; rox-filer.overrideAttrs (oa: { NIX_CFLAGS_COMPILE = (oa.NIX_CFLAGS_COMPILE or "") + "-fno-common"; })'
...
ld: session.o:/build/rox-filer-2.11/ROX-Filer/build/../src/session.h:13:
multiple definition of `session_auto_respawn';
main.o:/build/rox-filer-2.11/ROX-Filer/build/../src/session.h:13:
first defined here
While at it normalized local patch against top-level source tree
to ease application of upstream patches as is.
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances