Dockerfile (1621B)
1 # Copyright 2026 Google LLC 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 # 15 ################################################################################ 16 # 17 # OSS-Fuzz Dockerfile for GNU libmicrohttpd. 18 # 19 # This file becomes projects/libmicrohttpd/Dockerfile in the google/oss-fuzz 20 # repository; the Apache-2.0 header above is the one OSS-Fuzz requires for 21 # files living in that repository. 22 23 FROM gcr.io/oss-fuzz-base/base-builder 24 25 # libmicrohttpd is an autotools project and the git checkout ships no 26 # 'configure', so the autotools themselves are build dependencies. 27 # No other dependency is needed: build.sh configures with --disable-https, 28 # --disable-curl and --disable-doc, which removes GnuTLS, libcurl and 29 # texinfo from the picture (see build.sh for the reasoning). 30 RUN apt-get update && \ 31 apt-get install -y --no-install-recommends \ 32 autoconf \ 33 automake \ 34 libtool \ 35 make \ 36 pkg-config \ 37 zip && \ 38 rm -rf /var/lib/apt/lists/* 39 40 RUN git clone --depth 1 https://git.gnunet.org/libmicrohttpd.git libmicrohttpd 41 42 WORKDIR $SRC/libmicrohttpd 43 44 COPY build.sh $SRC/