This is a fix-up of commit f369375419.
During simplification I misused realpath: after a clean checkout,
PREFIX/lib would not exist yet and thus realpath fails.
* libphonenumber: upgrade build to base builder
* libphonenumber: fix typo
* clean up libphonenumber build
* libphonenumber: minor cleanup
* libphonenumber: last fix
* nettle: Use fixed --libdir
When building with autoconf 2.69 in Ubuntu 20.04, the build script
fails to detect the library installation location:
+ export LIBNETTLE_A_PATH=
+ LIBNETTLE_A_PATH=
++ realpath ../nettle-with-libgmp-install/lib/libhogweed.a
realpath: ../nettle-with-libgmp-install/lib/libhogweed.a: No such file or directory
Instead of guessing where the static libraries are installed, this
patch makes it always installed in the same location.
* nettle: Use default focal image
* Use uninstrumented spirv-as for corpus prep
Using an instrumented version of spirv-as for corpus preparation is very
slow, and can also lead to issues where a bug in spirv-as gets picked up
by instrumentation and causes corpus preparation to fail when we would
rather it succeeded despite the bug.
* Disable msan
Disabling msan for now so that fuzzing using other sanitizers can
proceed.
AddressSanitizer/LeakSanitizer has begun to report partial leaks
due to the library being initialized but never finalized. It's not
clear why only part of the memory is reported and why this hasn't
happened before now, but this is a somewhat legitimate report,
so add finalization calls to release all memory.
The libFuzzer API provides no shutdown cleanup hook,
so use a static variable with a C++ destructor.
Fixes https://github.com/google/oss-fuzz/issues/6440.
Add the required copyright header while we are at it.
This code appeared in https://github.com/google/oss-fuzz/pull/34
together with all the other files that do have the copyright header,
and this license seems to have been already required at the time,
so this should not constitute a licensing change.
* 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.
* varnish: Drop the downstream build system patch
I made sure future changes upstream would less likely break OSS-Fuzz
builds by adding an explicit --enable-oss-fuzz configure option.
* varnish: Reduce build parallelism
The partial build performed seems to be subject to races with 32 CPUs.
* varnish: This is a C project, not C++
Not sure how much this matters, it may change environment variables set
during the build with for example CFLAGS instead of CXXFLAGS. Or it
might just be for statistics reasons? Anyway, this is a C project.