[freerdp] install dependencies from nightly control (#11813)

* install apt dependencies from nightly package control file
* get CMake configuration from toolchain file
This commit is contained in:
Sergey Bronnikov 2024-04-19 03:07:34 +03:00 committed by GitHub
parent 963b9acb36
commit f35e03efa0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 9 additions and 29 deletions

View File

@ -17,19 +17,15 @@
FROM gcr.io/oss-fuzz-base/base-builder FROM gcr.io/oss-fuzz-base/base-builder
# See https://github.com/FreeRDP/FreeRDP/wiki/Compilation # See https://github.com/FreeRDP/FreeRDP/wiki/Compilation
RUN apt-get update && apt-get install -y \ # Install Git and base dependences.
build-essential git-core cmake ninja-build pkg-config zlib1g-dev ccache \ RUN apt-get update && apt-get install -y devscripts equivs \
libx11-dev libxext-dev libxinerama-dev libxcursor-dev libxkbfile-dev \ build-essential git-core cmake ninja-build pkg-config ccache
libxv-dev libxi-dev libxdamage-dev libxrender-dev libxrandr-dev \
libssl-dev libasound2-dev libcups2-dev libpulse-dev libcairo2-dev \
libavutil-dev libavcodec-dev libusb-1.0-0-dev libicu-dev \
libpkcs11-helper1-dev libpkcs11-helper1 libsdl2-ttf-dev \
libwayland-dev libpam0g-dev libxcb-damage0-dev ccache libxtst-dev \
libfuse-dev libsystemd-dev libsoxr-dev libsdl2-dev docbook-xsl \
libkrb5-dev krb5-multidev libcjson-dev libswscale-dev libswresample-dev \
libpcsclite-dev xsltproc libsdl2-dev
RUN git clone --depth 1 https://github.com/FreeRDP/FreeRDP.git RUN git clone --depth 1 https://github.com/FreeRDP/FreeRDP.git
WORKDIR FreeRDP WORKDIR FreeRDP
# Install all dependencies required by the nightly package.
RUN mk-build-deps --install --tool 'apt-get --yes --no-remove --no-install-recommends' packaging/deb/freerdp-nightly/control
COPY build.sh $SRC/ COPY build.sh $SRC/

View File

@ -34,20 +34,6 @@ esac
: ${LDFLAGS:="${CXXFLAGS}"} # to make sure we link with sanitizer runtime : ${LDFLAGS:="${CXXFLAGS}"} # to make sure we link with sanitizer runtime
cmake_args=( cmake_args=(
# Specific to FreeRDP.
-DWITH_SAMPLE=OFF
-DWITH_SERVER=ON
-DWITH_PROXY=OFF
-DWITH_SHADOW=OFF
-DWITH_CLIENT=OFF
-DWITH_ALSA=OFF
-DWITH_X11=OFF
-DWITH_LIBSYSTEMD=OFF
-DWITH_FUSE=OFF
-DWITH_AAD=OFF
-DWITH_FFMPEG=OFF
-DWITH_SWSCALE=OFF
# clang-15 segfaults on linking binaries when LTO is enabled, # clang-15 segfaults on linking binaries when LTO is enabled,
# see https://github.com/google/oss-fuzz/pull/10448#issuecomment-1578160436 # see https://github.com/google/oss-fuzz/pull/10448#issuecomment-1578160436
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF
@ -56,9 +42,6 @@ cmake_args=(
-DCMAKE_BUILD_TYPE=Debug -DCMAKE_BUILD_TYPE=Debug
-DBUILD_SHARED_LIBS=OFF -DBUILD_SHARED_LIBS=OFF
-DOSS_FUZZ=ON
-DBUILD_FUZZERS=ON
-DBUILD_TESTING=ON
# C compiler # C compiler
-DCMAKE_C_COMPILER="${CC}" -DCMAKE_C_COMPILER="${CC}"
@ -77,7 +60,7 @@ cmake_args=(
# Build the project and fuzzers. # Build the project and fuzzers.
rm -rf build rm -rf build
cmake "${cmake_args[@]}" -S . -B build -G Ninja cmake "${cmake_args[@]}" -S . -B build -G Ninja -C ci/cmake-preloads/config-oss-fuzz.cmake
cmake --build build --parallel --target fuzzers cmake --build build --parallel --target fuzzers
for f in $(find build/Testing/ -name 'TestFuzz*' -type f); for f in $(find build/Testing/ -name 'TestFuzz*' -type f);

View File

@ -13,5 +13,6 @@ fuzzing_engines:
- libfuzzer - libfuzzer
sanitizers: sanitizers:
- address - address
- undefined
architectures: architectures:
- x86_64 - x86_64