libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

1-build.sh (903B)


      1 #!/bin/bash
      2 set -exuo pipefail
      3 
      4 # The in-process fuzzing harnesses of src/fuzz.  See src/fuzz/README and
      5 # src/fuzz/BUILD-INTEGRATION.md.
      6 #
      7 # --enable-fuzzing requires --enable-static (configure enforces it):
      8 # fuzz_str and fuzz_auth_header call functions that are internal to the
      9 # library and therefore not exported from the shared object, so the
     10 # harnesses link against the static archive.  --enable-static is the
     11 # default, but say it explicitly so the job does not silently break if
     12 # that default ever changes.
     13 #
     14 # The harnesses carry three oracles - the sanitizers, an
     15 # MHD_set_panic_func() tripwire and a body-framing oracle - and only the
     16 # first of those needs the sanitizers to be switched on, so this job is
     17 # always built with them.
     18 
     19 ./bootstrap
     20 ./configure \
     21     --enable-fuzzing \
     22     --enable-static \
     23     --enable-asserts \
     24     --enable-sanitizers=address,undefined
     25 make -j"$(nproc)"