[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] fuzz: avoid building twice, when running on gitlab
From: |
Darren Kenny |
Subject: |
Re: [PATCH] fuzz: avoid building twice, when running on gitlab |
Date: |
Mon, 09 Aug 2021 15:38:28 +0100 |
On Monday, 2021-08-09 at 07:16:21 -04, Alexander Bulekov wrote:
> On oss-fuzz, we build twice, to put together a build that is portable to
> the runner containers. On gitlab ci, this is wasteful and contributes to
> timeouts on the build-oss-fuzz job. Avoid building twice on gitlab, at
> the remote cost of potentially missing some cases that break oss-fuzz
> builds.
>
> Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
> ---
>
> From a couple test runs it looks like this can shave off 15-20 minutes.
>
> scripts/oss-fuzz/build.sh | 24 +++++++++++++-----------
> 1 file changed, 13 insertions(+), 11 deletions(-)
>
> diff --git a/scripts/oss-fuzz/build.sh b/scripts/oss-fuzz/build.sh
> index c1af43fded..98b56e0521 100755
> --- a/scripts/oss-fuzz/build.sh
> +++ b/scripts/oss-fuzz/build.sh
> @@ -73,17 +73,19 @@ if ! make "-j$(nproc)" qemu-fuzz-i386; then
> "\nFor example: CC=clang CXX=clang++ $0"
> fi
>
> -for i in $(ldd ./qemu-fuzz-i386 | cut -f3 -d' '); do
> - cp "$i" "$DEST_DIR/lib/"
> -done
> -rm qemu-fuzz-i386
> -
> -# Build a second time to build the final binary with correct rpath
> -../configure --disable-werror --cc="$CC" --cxx="$CXX" --enable-fuzzing \
> - --prefix="$DEST_DIR" --bindir="$DEST_DIR" --datadir="$DEST_DIR/data/" \
> - --extra-cflags="$EXTRA_CFLAGS" --extra-ldflags="-Wl,-rpath,\$ORIGIN/lib"
> \
> - --target-list="i386-softmmu"
> -make "-j$(nproc)" qemu-fuzz-i386 V=1
> +if [ "$GITLAB_CI" != "true" ]; then
> + for i in $(ldd ./qemu-fuzz-i386 | cut -f3 -d' '); do
> + cp "$i" "$DEST_DIR/lib/"
> + done
> + rm qemu-fuzz-i386
> +
> + # Build a second time to build the final binary with correct rpath
> + ../configure --disable-werror --cc="$CC" --cxx="$CXX" --enable-fuzzing \
> + --prefix="$DEST_DIR" --bindir="$DEST_DIR"
> --datadir="$DEST_DIR/data/" \
> + --extra-cflags="$EXTRA_CFLAGS"
> --extra-ldflags="-Wl,-rpath,\$ORIGIN/lib" \
> + --target-list="i386-softmmu"
> + make "-j$(nproc)" qemu-fuzz-i386 V=1
> +fi
>
> # Copy over the datadir
> cp -r ../pc-bios/ "$DEST_DIR/pc-bios"
> --
> 2.30.2
- [PATCH] fuzz: avoid building twice, when running on gitlab, Alexander Bulekov, 2021/08/09
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab,
Darren Kenny <=
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Peter Maydell, 2021/08/09
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Alexander Bulekov, 2021/08/09
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Alexander Bulekov, 2021/08/09
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Peter Maydell, 2021/08/09
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Philippe Mathieu-Daudé, 2021/08/10
- Re: [PATCH] fuzz: avoid building twice, when running on gitlab, Coiby Xu, 2021/08/10