fuzz: avoid building twice, when running on gitlab
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> Message-Id: <20210809111621.54454-1-alxndr@bu.edu> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
b063c290f3
commit
3973e7ae63
@ -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
|
||||
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
|
||||
# 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"
|
||||
|
Loading…
Reference in New Issue
Block a user