more echo params, doc updates and more - alex
[terminatorX.git] / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 AC_INIT(src/tX_global.h)
3 AM_INIT_AUTOMAKE(terminatorX,3.71)
4 AM_CONFIG_HEADER(config.h)
5
6 dnl AC_ARG_ENABLE(closedev, [  --enable-closedev       close audio device if not in use. [default=yes] ])
7 AC_ARG_ENABLE(sox, [  --enable-sox            use sox as input converter. [default=yes] ])
8 AC_ARG_ENABLE(mpg123, [  --enable-mpg123         use mpg123 as input converter. [default=yes] ])
9 dnl AC_ARG_ENABLE(wavonly,  [  --enable-wavonly        enable the builtin wav routines. (no sox/mpg123) ])
10 AC_ARG_ENABLE(scheduler,[  --enable-scheduler      enable rt-scheduling (req. root-priv). [default=yes] ])
11 AC_ARG_ENABLE(debug,    [  --enable-debug          enable debug output. [default=no] ])
12 dnl AC_ARG_ENABLE(flash,    [  --enable-flash          enable flashes. [default=yes] ])
13 dnl AC_ARG_ENABLE(3dnow,    [  --enable-3dnow          enables 3DNow! support. [default=no] ])
14 dnl AC_ARG_ENABLE(benchmark,[  --enable-benchmark      creates a non-functional test version [default=no] ])
15 AC_ARG_ENABLE(wav,          [  --enable-wav            enables the builtin wav-loader [default=yes] ])
16 dnl AC_ARG_ENABLE(dial,         [  --enable-dial           use dials instead of scales for effects [default=yes] ])
17 dnl AC_ARG_ENABLE(bigdial,      [  --enable-bigdial        use BIG dials [default=yes] ])
18 dnl AC_ARG_ENABLE(dga2,     [  --enable-dga2           use DGA2 instead of DGA1. (experimental) [default=no] ])
19
20 dnl Checks for programs.
21 AC_PROG_AWK
22 AC_PROG_CC
23 AC_PROG_CXX
24 AC_PROG_INSTALL
25 AC_PROG_LN_S
26 AC_PROG_RANLIB
27
28 dnl Checks for libraries.
29 AC_CHECK_LIB(m, floor,, AC_MSG_ERROR([** math-lib not installed or broken **]))
30 AC_CHECK_LIB(pthread, pthread_mutex_lock,, AC_MSG_ERROR([** POSIX threads not installed or broken **]))
31 AM_PATH_GTK(1.2.5, , AC_MSG_ERROR([** GTK 1.2.5 not installed or broken **]))
32 dnl AM_PATH_GLIB(1.2.0, , AC_MSG_ERROR([** GLIB 1.2.0 not installed or broken **]))
33
34 dnl Checks for header files.
35 AC_HEADER_STDC
36 AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/ioctl.h unistd.h)
37 AC_CHECK_HEADERS(ladspa.h,, AC_MSG_ERROR([** couldn't find ladspa.h - install the ladspa SDK - get it from http://www.ladspa.org **]))
38
39 dnl Checks for typedefs, structures, and compiler characteristics.
40 AC_C_BIGENDIAN
41 AC_TYPE_SIZE_T
42
43 dnl Checks for library functions.
44 AC_PROG_GCC_TRADITIONAL
45
46 dnl Eval args
47 if test "$enable_closedev" = "no"; then
48         AC_DEFINE(KEEP_DEV_OPEN)
49 fi
50
51
52 if test "$enable_sox" != "no"; then
53         AC_CHECK_PROG(SOX_PROG, sox, yes)
54         if test "$SOX_PROG" = "yes"; then
55                 AC_DEFINE(USE_SOX_INPUT)
56         fi
57 fi
58
59 if test "$enable_mpg123" != "no"; then
60         AC_CHECK_PROG(MPG123_PROG, mpg123, yes)
61         if test "$MPG123_PROG" = "yes"; then
62                 AC_DEFINE(USE_MPG123_INPUT)
63         fi
64 fi
65
66 if test "$enable_wav" != "no";
67 then
68         AC_DEFINE(USE_BUILTIN_WAV)
69 fi
70
71 if test "$enable_flash" = "no"; then
72         AC_DEFINE(DONT_USE_FLASH)
73 fi 
74
75 if test "$enable_3dnow" = "yes"; then
76         AC_MSG_ERROR([** 3DNOW Support is gone. **])
77 dnl     AC_DEFINE(USE_3DNOW)
78 fi 
79
80 if test "$enable_scheduler" != "no"; then
81         AC_DEFINE(USE_SCHEDULER)
82 fi
83
84 if test "$enable_debug" = yes; then
85         AC_DEFINE(ENABLE_DEBUG_OUTPUT)
86 fi
87
88 if test "$enable_benchmark" = yes; then
89         AC_DEFINE(CREATE_BENCHMARK)
90 fi
91
92 AC_MSG_CHECKING(whether to use dials)
93 if test "$enable_dial" = no; then
94         AC_MSG_RESULT(no)
95 else
96         AC_MSG_RESULT(yes)
97         AC_DEFINE(USE_DIAL)
98 fi
99
100 if test "$enable_bigdial" = yes; then
101         AC_DEFINE(USE_DIAL)
102         AC_DEFINE(USE_BIG_BUTTONS)
103 fi
104
105 if test "$enable_dga2" = yes; then
106         AC_DEFINE(USE_DGA2)
107 fi
108
109 dnl Now Check for Xlibs - I do this here as other tests fail if these run earlier
110 AC_PATH_XTRA
111
112 AC_SUBST(X_CFLAGS)
113 AC_SUBST(X_PRE_LIBS)
114 AC_SUBST(X_EXTRA_LIBS)
115 AC_SUBST(X_LIBS)
116 AC_SUBST(x_libraries)
117
118 AC_CHECK_LIB(X11, XOpenDisplay,, AC_MSG_ERROR([** X11-libs not installed or broken **]), $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
119 AC_CHECK_LIB(Xext, XShmQueryExtension,, AC_MSG_ERROR([** Xext-libs not installed or broken **]), $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
120 AC_CHECK_LIB(Xi, XOpenDevice,, AC_MSG_ERROR([** XInput not installed or broken **]), $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
121 AC_CHECK_LIB(Xxf86dga, XF86DGAQueryExtension,, AC_MSG_ERROR([** DGA not installed or broken **]), $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
122 if test "$enable_dga2" = yes; then
123         AC_CHECK_LIB(Xxf86dga, XDGASelectInput,, AC_MSG_ERROR([** DGA2 not installed. Try using dga1 instead. **]), $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
124 fi
125 AC_OUTPUT(Makefile src/Makefile gnome-support/Makefile src/gui_icons/Makefile src/smallknob/Makefile doc/Makefile doc/img/Makefile)