#!/bin/bash ####################################################################### # OS Setup Routines ####################################################################### setup_win32() { echo "Build environment... Microsoft Windows"; BUILD_FOR='Win32' PORTAUDIO_MAKEOPTS='-lwinmm' MORELIBS="$MORELIBS -lwinmm -mwindows" # MOREDEPS="$MOREDEPS \$(BINDIR)nojack.o" } setup_linux_gnu() { echo "Build environment... GNU/Linux"; BUILD_FOR='LinuxGNU' PORTAUDIO_MAKEOPTS='-pthread' } setup_linux_win32() { echo "Build environment... Microsoft Windows (Linux)" BUILD_FOR='Win32Linux' PORTAUDIO_MAKEOPTS='-lwinmm' GCC='i586-mingw32msvc-gcc' } setup_darwin() { echo "Build environment... Macintosh OS X"; BUILD_FOR='Darwin' JACK_MAKEOPTS='-L/sw/lib -I/sw/include' PORTAUDIO_MAKEOPTS='-L/sw/lib -I/sw/include' export CFLAGS="-no-cpp-precomp -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" export CXXFLAGS="-no-cpp-precomp -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" } ####################################################################### # Library Tests ####################################################################### find_fltk() { TEST=`fltk-config --version | awk \ 'BEGIN {FS="=";version="Unavailable"} 1==1 {version=$1} END {print version}'` if [ $? == 0 ]; then echo "Searching for FLTK... found $TEST" TMPCCARGS="$TMPCCARGS -DLIBFLTK=\"$TEST\"" else echo "Searching for FLTK... not found" echo "Can't continue." exit 1 fi } ####################################################################### # Main Configure Routine ####################################################################### main() { [[ -e Makefile ]] && make clean MORELIBS='' # Extra libraries MOREDEPS='' # Extra dependencies BUILD_FOR='' # Build architecture GCC='gcc' # GCC Command (different if building Win32 on Linux) TMPCCARGS='' # Extra CC Arguments # Check for Windows if [[ $BUILD_FOR == '' && \ ($WINDIR == "C:\\WINNT" || $WINDIR == "C:\\WINDOWS") ]]; then setup_win32 fi # Check for Linux or Win32 building on Linux if [[ $BUILD_FOR == '' && \ `if [ -e /proc/version ]; then cat /proc/version | grep Linux; fi` != "" ]] then if [ "$1" = "--os=win32" ]; then setup_linux_win32 else setup_linux_gnu fi fi # Check for Mac OS X if [[ $BUILD_FOR == '' && \ ("`echo $version|grep powerpc-apple-darwin`" != "" || \ "`echo $OSTYPE|grep darwin`" != "") ]] then setup_darwin $1 fi # Check for Essential Libraries find_fltk # Create the Makefile echo "BUILD_ARCH=$BUILD_FOR" > Makefile echo "MORELIBS=$MORELIBS" >> Makefile echo "MOREDEPS=$MOREDEPS" >> Makefile echo "TMPCCARGS=$TMPCCARGS" >> Makefile if [[ $1 == '--with-universal' ]]; then echo "UNIVERSAL=true" >> Makefile fi cat Makefile.in >> Makefile echo -e "\nConfiguration complete. If all looked OK, now run make."; } main $1