aboutsummaryrefslogtreecommitdiff
path: root/pd/src/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'pd/src/configure.in')
-rw-r--r--pd/src/configure.in230
1 files changed, 93 insertions, 137 deletions
diff --git a/pd/src/configure.in b/pd/src/configure.in
index 1a73c3da..7d0346bf 100644
--- a/pd/src/configure.in
+++ b/pd/src/configure.in
@@ -1,14 +1,14 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(d_arithmetic.c)
-AC_SUBST(alsa)
-AC_SUBST(jack)
+AC_SUBST(alsa, yes)
+AC_SUBST(jack, no)
+AC_SUBST(portaudio, no)
AC_SUBST(PDLIB)
-AC_SUBST(DEFINES)
AC_SUBST(MORECFLAGS)
AC_SUBST(EXT)
AC_SUBST(OPT_CFLAGS)
-AC_SUBST(USE_OPT_CFLAGS)
+AC_SUBST(USE_OPT_CFLAGS, yes)
AC_SUBST(SYSSRC)
AC_SUBST(STRIPFLAG)
AC_SUBST(GUINAME)
@@ -24,8 +24,12 @@ AC_ARG_ENABLE(alsa, [ --disable-alsa disable ALSA],
alsa="no")
AC_ARG_ENABLE(jack, [ --enable-jack jack audio server],
jack="yes")
+AC_ARG_ENABLE(portaudio, [ --enable-portaudio portaudio],
+ portaudio="yes")
AC_ARG_ENABLE(debug, [ --enable-debug debugging support],
- USE_OPT_CFLAGS="NO", USE_OPT_CFLAGS="YES")
+ USE_OPT_CFLAGS="no")
+AC_ARG_ENABLE(static, [ --enable-static link statically],
+ static=yes)
dnl Checks for programs.
AC_PROG_CC
@@ -67,10 +71,6 @@ dnl Checking for `pthread_create' function in -pthread
AC_CHECK_LIB(pthread, pthread_create,PDLIB="$PDLIB -lpthread",
echo "pthreads required" || exit 1)
-dnl This should be fixed so Pd can use ALSA shared libraries where appropriate.
-if test "$alsa" != no; then
- AC_CHECK_LIB(asound,snd_pcm_info,PDLIB="$PDLIB -lasound" ; alsa="yes",alsa="")
-fi
dnl Find paths to includes and libraries for X11
AC_PATH_X
@@ -80,17 +80,11 @@ AC_CHECK_LIB(X11, XCreateWindow, LIBS="$LIBS -lX11 -L$x_libraries",
dnl look for tcl 8.x... do I really have to go through all this!?
-#AC_CHECK_HEADER(tcl.h,, echo "no tcl/tk header found" || exit 1)
-
-# FreeBSD has lots of libs there ...
-LIBS="$LIBS -L/usr/local/lib"
-
foundit=no
if test $foundit == "no";
then
AC_CHECK_HEADER(tcl.h,foundit=yes,)
fi
-
if test $foundit == "no";
then
AC_CHECK_HEADER(tcl8.7/tcl.h,
@@ -98,121 +92,89 @@ then
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.7/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.7 -I/usr/local/include/tk8.7";foundit=yes,)
-fi
-if test $foundit == "no";
-then
AC_CHECK_HEADER(tcl8.6/tcl.h,
GUIFLAGS="$GUIFLAGS -I/usr/include/tcl8.6";foundit=yes,)
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.6/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.6 -I/usr/local/include/tk8.6";foundit=yes,)
-fi
-
-if test $foundit == "no";
-then
AC_CHECK_HEADER(tcl8.5/tcl.h,
GUIFLAGS="$GUIFLAGS -I/usr/include/tcl8.5";foundit=yes,)
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.5/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.5 -I/usr/local/include/tk8.5";foundit=yes,)
-fi
-
-if test $foundit == "no";
-then
AC_CHECK_HEADER(tcl8.4/tcl.h,
GUIFLAGS="$GUIFLAGS -I/usr/include/tcl8.4";foundit=yes,)
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.4/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.4 -I/usr/local/include/tk8.4";foundit=yes,)
-fi
-
-if test $foundit == "no";
-then
AC_CHECK_HEADER(tcl8.3/tcl.h,
GUIFLAGS="$GUIFLAGS -I/usr/include/tcl8.3";foundit=yes,)
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.3/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.3 -I/usr/local/include/tk8.3";foundit=yes,)
-fi
-
-if test $foundit == "no";
-then
AC_CHECK_HEADER(tcl8.2/tcl.h,
GUIFLAGS="$GUIFLAGS -I/usr/include/tcl8.2";foundit=yes,)
fi
if test $foundit == "no";
then
- AC_CHECK_HEADER(/usr/local/include/tcl8.2/tcl.h,
- GUIFLAGS="$GUIFLAGS -I/usr/local/include/tcl8.2 -I/usr/local/include/tk8.2";foundit=yes,)
-fi
-
-if test $foundit == "no";
-then
echo no tcl header found
exit -1
fi
-
-
AC_CHECK_LIB(tcl8.7, main,,
-AC_CHECK_LIB(tcl87, main,LIBS="$LIBS -ltcl87",
AC_CHECK_LIB(tcl8.6, main,,
- AC_CHECK_LIB(tcl86, main,LIBS="$LIBS -ltcl86",
- AC_CHECK_LIB(tcl8.5, main,,
- AC_CHECK_LIB(tcl85, main,LIBS="$LIBS -ltcl85",
- AC_CHECK_LIB(tcl8.4, main,,
- AC_CHECK_LIB(tcl84, main,LIBS="$LIBS -ltcl84",
- AC_CHECK_LIB(tcl8.3, main,,
- AC_CHECK_LIB(tcl83, main,LIBS="$LIBS -ltcl83",
- AC_CHECK_LIB(tcl8.2, main,,
- AC_CHECK_LIB(tcl82, main,LIBS="$LIBS -ltcl82",
- AC_CHECK_LIB(tcl81, main,,
- AC_CHECK_LIB(tcl81, main,LIBS="$LIBS -ltcl81",
- AC_CHECK_LIB(tcl80, main,LIBS="$LIBS -ltcl80",
- AC_CHECK_LIB(tcl8.0, main))))))))))))))))
-
+ AC_CHECK_LIB(tcl8.5, main,,
+ AC_CHECK_LIB(tcl8.4, main,,
+ AC_CHECK_LIB(tcl8.3, main,,
+ AC_CHECK_LIB(tcl8.2, main,,
+ AC_CHECK_LIB(tcl8.0, main,,echo no tcl library found || exit 1)))))))
AC_CHECK_LIB(tk8.7, main,,
-AC_CHECK_LIB(tk87, main,LIBS="$LIBS -ltk87",
AC_CHECK_LIB(tk8.6, main,,
- AC_CHECK_LIB(tk86, main,LIBS="$LIBS -ltk86",
- AC_CHECK_LIB(tk8.5, main,,
- AC_CHECK_LIB(tk85, main,LIBS="$LIBS -ltk85",
- AC_CHECK_LIB(tk8.4, main,,
- AC_CHECK_LIB(tk84, main,LIBS="$LIBS -ltk84",
- AC_CHECK_LIB(tk8.3, main,,
- AC_CHECK_LIB(tk83, main,LIBS="$LIBS -ltk83",
- AC_CHECK_LIB(tk8.2, main,,
- AC_CHECK_LIB(tk82, main,LIBS="$LIBS -ltk82",
- AC_CHECK_LIB(tk81, main,,
- AC_CHECK_LIB(tk81, main,LIBS="$LIBS -ltk81",
- AC_CHECK_LIB(tk80, main,LIBS="$LIBS -ltk80",
- AC_CHECK_LIB(tk8.0, main))))))))))))))))
-
+ AC_CHECK_LIB(tk8.5, main,,
+ AC_CHECK_LIB(tk8.4, main,,
+ AC_CHECK_LIB(tk8.3, main,,
+ AC_CHECK_LIB(tk8.2, main,,
+ AC_CHECK_LIB(tk8.0, main,,echo no tk library found || exit 1)))))))
-dnl Checking for tk.h or tkstep.h - not used at the moment
-dnl AC_CHECK_HEADER(tk.h,DEFINES="$DEFINES -DTKINC=\\\"tk.h\\\"")
-dnl AC_CHECK_HEADER(tkstep.h,DEFINES="$DEFINES -DTKINC=\\\"tkstep.h\\\"")
if test `uname -s` = Linux;
then
+ dnl Ckecking for ALSA
+
+dnl This should be fixed so Pd can use ALSA shared libraries where appropriate.
+ if test x$alsa == xyes; then
+ echo yes ... alsa is... $alsa
+ AC_CHECK_LIB(asound,snd_pcm_info,PDLIB="$PDLIB -lasound" ; alsa="yes",alsa="no")
+ fi
+
+ dnl Checking for JACK
+
+ AC_CHECK_LIB(rt,shm_open,LIBS="$LIBS -lrt")
+ AC_CHECK_LIB(jack,jack_set_xrun_callback,LIBS="$LIBS -ljack";jack=xrun,jack=no)
+ AC_CHECK_LIB(jack,jack_set_error_function,LIBS="$LIBS -ljack";jack=yes,jack=no)
+
LDFLAGS="-Wl,-export-dynamic"
+ if test "$static" = "yes"; then
+ LDFLAGS="$LDFLAGS -static"
+ fi
EXT=pd_linux
- MORECFLAGS="-DDL_OPEN -DUSEAPI_PORTAUDIO -DPA_USE_OSS -DPA_LITTLE_ENDIAN \
+ MORECFLAGS="-DDL_OPEN -DPA_USE_OSS -DPA_LITTLE_ENDIAN \
-DUSEAPI_OSS \
-I../portaudio/pa_common \
- -I../portaudio/pablio -I../portaudio/portmidi-macosx -Werror"
- SYSSRC="s_midi_oss.c s_audio_pa.c s_audio_oss.c \
+ -I../portaudio/pablio -I../portaudio/portmidi-macosx \
+ -fno-strict-aliasing"
+ SYSSRC="s_midi_oss.c s_audio_oss.c"
+ if test x$alsa == "xyes";
+ then
+ SYSSRC=$SYSSRC" s_audio_alsa.c"
+ MORECFLAGS=$MORECFLAGS" -DPA_USE_ALSA -DUSEAPI_ALSA"
+ LDFLAGS=$LDFLAGS" -lasound"
+ fi
+ if test x$portaudio == "xyes";
+ then
+ MORECFLAGS="-DUSEAPI_PORTAUDIO "$MORECFLAGS
+ SYSSRC="s_audio_pa.c \
../portaudio/pa_common/pa_allocation.c \
../portaudio/pa_common/pa_converters.c \
../portaudio/pa_common/pa_cpuload.c \
@@ -226,62 +188,24 @@ then
../portaudio/pablio/ringbuffer_pd.c \
../portaudio/pa_unix/pa_unix_hostapis.c \
../portaudio/pa_unix/pa_unix_util.c \
- ../portaudio/pa_unix_oss/pa_unix_oss.c "
- STRIPFLAG=-s
- GUINAME="pd-gui"
- if test $USE_OPT_CFLAGS == "YES";
- then
- OPT_CFLAGS="-O6 -funroll-loops -fomit-frame-pointer"
- else
- OPT_CFLAGS="-g"
+ ../portaudio/pa_unix_oss/pa_unix_oss.c "$SYSSRC
+ if test x$alsa == "xyes";
+ then
+ SYSSRC=$SYSSRC" \
+ ../portaudio/pa_linux_alsa/callback_thread.c \
+ ../portaudio/pa_linux_alsa/pa_linux_alsa.c \
+ ../portaudio/pa_linux_alsa/blocking_calls.c "
+ fi
fi
- OSNUMBER=0
-fi
-
-dnl FreeBSD hack
-if test `uname -s` = FreeBSD;
-then
- LDFLAGS="-Wl,-export-dynamic -L/usr/local/lib/pth -lpthread"
- EXT=pd_linux
- MORECFLAGS="-DDL_OPEN -DUSEAPI_OSS"
- CFLAGS="$CFLAGS -I/usr/local/include"
- SYSSRC="s_midi_oss.c s_audio_oss.c "
STRIPFLAG=-s
GUINAME="pd-gui"
- GUIFLAGS="$GUIFLAGS -I/usr/X11R6/include -I/usr/local/include"
- if test $USE_OPT_CFLAGS == "YES";
+ if test x$USE_OPT_CFLAGS == "xyes";
then
OPT_CFLAGS="-O6 -funroll-loops -fomit-frame-pointer"
else
OPT_CFLAGS="-g"
fi
- OSNUMBER=0
-fi
-
-
-dnl **** note -- SGI/IRIX code is broken here!!! ***
-
-if test `uname -s` = IRIX64;
-then
- LDFLAGS="-n32 -DUNIX -DIRIX -DN32 -woff 1080,1064,1185 \
- -OPT:roundoff=3 -OPT:IEEE_arithmetic=3 -OPT:cray_ivdep=true \
- -shared -rdata_shared"
- EXT=pd_irix6
- MORECFLAGS=-DDL_OPEN
- SYSSRC=s_sgi.c
- STRIPFLAG=-s
- GUINAME="pd-gui"
- OSNUMBER=0
-fi
-
-if test `uname -s` = IRIX32;
-then
- LDFLAGS="-o32 -DUNIX -DIRIX -O2 -shared -rdata_shared"
- EXT=pd_irix5
- MORECFLAGS=-DDL_OPEN
- SYSSRC=s_sgi.c
- STRIPFLAG=-s
- GUINAME="pd-gui"
+ echo OPT_CFLAGS --------------- $OPT_CFLAGS
OSNUMBER=0
fi
@@ -315,7 +239,7 @@ then
-I/Library/Frameworks/Tk.framework/Versions/Current/Headers \
-I/Library/Frameworks/Tcl.framework/Versions/Current/Headers \
-I/Library/Frameworks/Tcl.framework/Versions/8.4/PrivateHeaders"
- if test $USE_OPT_CFLAGS == "YES";
+ if test x$USE_OPT_CFLAGS == "xyes";
then
OPT_CFLAGS="-O2"
else
@@ -323,6 +247,38 @@ then
fi
OSNUMBER=2
EXTERNTARGET=pd_darwin
+ if test x$jack == "xyes";
+ then
+ LDFLAGS=$LDFLAGS" -framework Jack"
+ MORECFLAGS=$MORECFLAGS" -DUSEAPI_JACK"
+ SYSSRC=$SYSSRC" s_audio_jack.c"
+ fi
+fi
+
+# support for jack, on either linux or darwin:
+if test x$jack == "xyes";
+then
+ MORECFLAGS=$MORECFLAGS" -DUSEAPI_JACK"
+ SYSSRC=$SYSSRC" s_audio_jack.c"
+ LDFLAGS=$LDFLAGS" -lrt -ljack"
+fi
+if test x$jack == "xrun";
+then
+ MORECFLAGS=$MORECFLAGS" -DUSEAPI_JACK -DJACK_XRUN"
+ SYSSRC=$SYSSRC" s_audio_jack.c"
+ LDFLAGS=$LDFLAGS" -lrt -ljack"
+fi
+
+# extra flags for alpha machines
+if test `uname -m | awk '{print $1}'` = alpha;
+then
+ MORECFLAGS=$MORECFLAGS" -mieee -mcpu=ev56"
+fi
+
+# test for compaq compiler---not sure what this does or how to test it.
+if test x$CC == xccc;
+then
+ MORECFLAGS=$MORECFLAGS" -g3 -D__COMPAQC__ -arch host"
fi
AC_OUTPUT(makefile)