curl -L -O http://www.portaudio.com/archives/$PORTAUDIO_VERSION.tgz || exit 1
tar xf $PORTAUDIO_VERSION.tgz || exit 1
cd portaudio
+ #
+ # Fix some problems with Xcode 4 and PortAudio's configure
+ # script - patch the configure script and rebuild it.
+ #
+ # "autoreconf -if" is what the PortAudio README.configure.txt
+ # file says to use; I'm guessing it's required in order to
+ # adapt to the libtool *you* have installed rather than the
+ # one installed on the machine on which the PortAudio tarball
+ # was built.
+ #
+ # However, it appears that, as PortAudio doesn't use
+ # automake, it removes config.guess and config.sub and
+ # *doesn't replace them* as it doesn't run "automake --add-missing".
+ # We therefore do so ourselves.
+ #
+ patch -p0 configure.in <../../macosx-support-lib-patches/portaudio-configure.in.patch
+ autoreconf -if
+ automake --add-missing
+ #
+ # And also un-comment an include that's required on Lion.
+ #
+ patch -p0 include/pa_mac_core.h <../../macosx-support-lib-patches/portaudio-pa_mac_core.h.patch
./configure || exit 1
make -j 3 || exit 1
$DO_MAKE_INSTALL || exit 1
--- /dev/null
+--- configure.in.dist 2011-11-10 20:06:17.000000000 -0800
++++ configure.in 2012-08-11 13:57:51.000000000 -0700
+@@ -208,23 +208,63 @@
+ LIBS="-framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon"
+
+ if test "x$enable_mac_universal" = "xyes" ; then
+- if [[ -d /Developer/SDKs/MacOSX10.5.sdk ]] ; then
+- mac_version_min="-mmacosx-version-min=10.3"
+- mac_arches="-arch i386 -arch ppc -arch x86_64 -arch ppc64"
+- mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.5.sdk"
+- elif [[ -d /Developer/SDKs/MacOSX10.6.sdk ]] ; then
+- mac_version_min="-mmacosx-version-min=10.4"
+- mac_arches="-arch i386 -arch x86_64"
+- mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.6.sdk"
+- elif [[ -d /Developer/SDKs/MacOSX10.7.sdk ]] ; then
+- mac_version_min="-mmacosx-version-min=10.4"
+- mac_arches="-arch i386 -arch x86_64"
+- mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.7.sdk"
+- else
+- mac_version_min="-mmacosx-version-min=10.3"
+- mac_arches="-arch i386 -arch ppc"
+- mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+- fi
++ case "xcodebuild -version | sed -n 's/Xcode \(.*\)/\1/p'" in
++
++ [12]*|3.0|3.1)
++ dnl In pre-3.2 versions of Xcode, xcodebuild doesn't
++ dnl support -sdk, so we can't use that to look for
++ dnl SDKs. However, in those versions of Xcode, the
++ dnl SDKs are under /Developer/SDKs, so we can just look
++ dnl there. Also, we assume they had no SDKs later
++ dnl than 10.5, as 3.2 was the version that came with
++ dnl 10.6, at least if the Wikipedia page for Xcode
++ dnl is to be believed.
++ if [[ -d /Developer/SDKs/MacOSX10.5.sdk ]] ; then
++ mac_version_min="-mmacosx-version-min=10.3"
++ mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.5.sdk"
++ else
++ mac_version_min="-mmacosx-version-min=10.3"
++ mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
++ fi
++ ;;
++
++ *)
++ dnl In 3.2 and later, xcodebuild supports -sdk, and, in
++ dnl 4.3 and later, the SDKs aren't under /Developer/SDKs
++ dnl as there *is* no /Developer, so we use -sdk to check
++ dnl what SDKs are available and to get the full path of
++ dnl the SDKs.
++ if xcodebuild -version -sdk macosx10.5 Path >/dev/null 2>&1 ; then
++ mac_version_min="-mmacosx-version-min=10.3"
++ mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.5 Path`"
++ elif xcodebuild -version -sdk macosx10.6 Path >/dev/null 2>&1 ; then
++ mac_version_min="-mmacosx-version-min=10.4"
++ mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.6 Path`"
++ elif xcodebuild -version -sdk macosx10.7 Path >/dev/null 2>&1 ; then
++ mac_version_min="-mmacosx-version-min=10.4"
++ mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.7 Path`"
++ else
++ AC_MSG_ERROR([Couldn't find 10.5, 10.6, or 10.7 SDK])
++ fi
++ esac
++
++ dnl Pick which architectures to build for based on what
++ dnl the compiler supports.
++ mac_arches=""
++ for arch in i386 x86_64 ppc ppc64
++ do
++ save_CFLAGS="$CFLAGS"
++ CFLAGS="$CFLAGS -arch $arch"
++ AC_TRY_COMPILE([], [return 0;],
++ [
++ if [[ -z "$mac_arches" ]] ; then
++ mac_arches="-arch $arch"
++ else
++ mac_arches="$mac_arches -arch $arch"
++ fi
++ ])
++ CFLAGS="$save_CFLAGS"
++ done
+ else
+ mac_arches=""
+ mac_sysroot=""