* libass: update contact list
One contact is retired; another is currently inactive.
* libass: don't build HarfBuzz tests
They won't be used, so this just wastes resources.
* libass: upgrade to Ubuntu 20.04
The build failures on 20.04 were due to explicit listing
of static library dependencies, which have changed on 20.04:
png12 was replaced by png16, fontconfig was missing -luuid,
and png needed -lz to follow it, not precede.
Replace the explicit -l list by $(pkg-config --static --libs).
However, -lm must be filtered out as it causes linker errors:
> undefined reference to `_dl_x86_cpu_features'
While we are at it, Ubuntu 20.04 comes with new-enough FriBidi,
so we can stop building it.
It also has new-enough HarfBuzz, but it depends on libgraphite2,
which lacks a static library in the system package, and dynamically
linking against a system library does not work in OSS-Fuzz
as the shared object will not exist in the run-time environment.
Reorder the dependencies alphabetically for consistency.
https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/
I ran into this because I was getting errors locally, like:
E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/d/dpkg/libdpkg-perl_1.18.4ubuntu1.1_all.deb 404 Not Found [IP: 91.189.88.149 80]
It turns out you get these if you don't update, and the official best practices are to `run apt-get update && apt-get install`. In fact, running _any_ apt-get install command without the apt-get update && before it can result in unfortunate caching artifacts -- see "cache busting". (P.S. thanks to Peng on Freenode for helping me, I'm bad at Ubuntu.)
So:
sed -re \
's/RUN apt-get ((-y )?(install|build-dep))/RUN apt-get update \&\& apt-get \1/' -i \
projects/**/Dockerfile
I also manually fixed the cases that already ran apt-get update in their Dockerfile:
dlplibs/Dockerfile
grpc/Dockerfile
libreoffice/Dockerfile