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/ |