mirror of
				https://github.com/cookiengineer/audacity
				synced 2025-11-04 08:04:06 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			88 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
# Search for python
 | 
						|
python=$(which python python2 python3 | tail -1)
 | 
						|
 | 
						|
# Define the target build directory
 | 
						|
prefix=$(pwd)/build
 | 
						|
 | 
						|
bypass=
 | 
						|
clean=
 | 
						|
 | 
						|
srcdir=.
 | 
						|
while [ $# -gt 0 ]
 | 
						|
do
 | 
						|
   case "${1}" in
 | 
						|
      --srcdir=*)
 | 
						|
         srcdir=${1#*=}
 | 
						|
      ;;
 | 
						|
 | 
						|
      --build)
 | 
						|
         bypass=":"
 | 
						|
      ;;
 | 
						|
 | 
						|
      --clean)
 | 
						|
         clean="yes"
 | 
						|
      ;;
 | 
						|
   esac
 | 
						|
   shift
 | 
						|
done
 | 
						|
 | 
						|
function waf
 | 
						|
{
 | 
						|
   pkg="$1"
 | 
						|
   shift
 | 
						|
 | 
						|
   mkdir -p ${pkg}
 | 
						|
   pushd >/dev/null ${pkg}
 | 
						|
 | 
						|
   if [ ! -e "waf" ]
 | 
						|
   then
 | 
						|
      cp -pr "../${srcdir}/${pkg}"/{waf,waflib} .
 | 
						|
   fi
 | 
						|
   
 | 
						|
   for f in "../${srcdir}/${pkg}"/*
 | 
						|
   do
 | 
						|
      [ ! -e "${f##*/}" ] && ln -s "${f}"
 | 
						|
   done
 | 
						|
 | 
						|
   export CFLAGS="${CFLAGS/++14/11}" # Circumvent travis setting
 | 
						|
   export PKG_CONFIG_PATH="${prefix}/lib/pkgconfig"
 | 
						|
   export LDFLAGS="${LDFLAGS} -ldl -lm"
 | 
						|
 | 
						|
   common="--prefix=${prefix} --out=build --destdir=/"
 | 
						|
 | 
						|
   if [ "${clean}" = "yes" ]
 | 
						|
   then
 | 
						|
      ${python} waf clean ${common} || exit 1
 | 
						|
   else
 | 
						|
      ${bypass} ${python} waf configure ${common} $@ || exit 1
 | 
						|
 | 
						|
      trap "rm -f .build-timestamp" EXIT
 | 
						|
      touch .build-timestamp
 | 
						|
 | 
						|
      ${python} waf build ${common} $@ || exit 1
 | 
						|
      if [ -n "$(find . -newer .build-timestamp -type f ! -name compile_commands.json)" ]
 | 
						|
      then
 | 
						|
         ${python} waf install ${common} $@ || exit 1
 | 
						|
      fi
 | 
						|
 | 
						|
      rm .build-timestamp
 | 
						|
      trap - EXIT
 | 
						|
   fi
 | 
						|
 | 
						|
   popd >/dev/null
 | 
						|
}
 | 
						|
 | 
						|
[ ! -e Makefile ] && ln -s "${srcdir}/Makefile"
 | 
						|
[ ! -e configure ] && ln -s "${srcdir}/configure"
 | 
						|
 | 
						|
waf lv2    --no-plugins --no-coverage
 | 
						|
waf serd   --static --no-shared --no-coverage --no-utils --largefile
 | 
						|
waf sord   --static --no-shared --no-coverage --no-utils
 | 
						|
waf sratom --static --no-shared --no-coverage
 | 
						|
waf lilv   --static --no-shared --no-coverage --no-utils
 | 
						|
waf suil   --static --no-shared
 | 
						|
 | 
						|
exit 0
 |