33 lines
		
	
	
		
			896 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			33 lines
		
	
	
		
			896 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| 
								 | 
							
								#!/bin/bash -eu
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This script is called by the oss-fuzz main project when compiling the fuzz
							 | 
						||
| 
								 | 
							
								# targets. This script is regression tested by ci_oss.sh.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Save off the current folder as the build root.
							 | 
						||
| 
								 | 
							
								export BUILD_ROOT=$PWD
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo "CC: ${CC:-}"
							 | 
						||
| 
								 | 
							
								echo "CXX: ${CXX:-}"
							 | 
						||
| 
								 | 
							
								echo "LIB_FUZZING_ENGINE: ${LIB_FUZZING_ENGINE:-}"
							 | 
						||
| 
								 | 
							
								echo "CFLAGS: ${CFLAGS:-}"
							 | 
						||
| 
								 | 
							
								echo "CXXFLAGS: ${CXXFLAGS:-}"
							 | 
						||
| 
								 | 
							
								echo "OUT: ${OUT:-}"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export MAKEFLAGS+="-j$(nproc)"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Install dependencies
							 | 
						||
| 
								 | 
							
								apt-get -y install autoconf autogen automake libtool pkg-config python
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# For now, do not install the following libraries (as they won't be in the
							 | 
						||
| 
								 | 
							
								# final image):
							 | 
						||
| 
								 | 
							
								# libasound2-dev libflac-dev libogg-dev libopus-dev libvorbis-dev
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Compile the fuzzer.
							 | 
						||
| 
								 | 
							
								autoreconf -vif
							 | 
						||
| 
								 | 
							
								./configure --disable-shared --enable-ossfuzzers
							 | 
						||
| 
								 | 
							
								make V=1
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Copy the fuzzer to the output directory.
							 | 
						||
| 
								 | 
							
								cp -v ossfuzz/sndfile_fuzzer $OUT/
							 | 
						||
| 
								 | 
							
								cp -v ossfuzz/sndfile_alt_fuzzer $OUT/
							 |