e114c645c0aa4475eec6e0b82f897efdffdd5aa2
[freeglut] / configure.ac
1 # Process this file with autoconf to produce a configure script.
2
3 AC_INIT([freeglut library], [2.4.0], [freeglut-bugs@lists.sourceforge.net], [freeglut])
4 AM_INIT_AUTOMAKE
5 AC_PREREQ([2.56])
6 AC_CONFIG_SRCDIR([AUTHORS])
7 AC_CONFIG_HEADERS([config.h])
8
9 # Compatibility hack for older autoconf versions
10 m4_ifdef([AS_HELP_STRING], [], [AC_DEFUN([AS_HELP_STRING], [AC_HELP_STRING($][@)])])
11
12 # Checks for programs.
13 AC_PROG_CC
14 AC_C_CONST
15 AC_EXEEXT
16 AC_LIBTOOL_DLOPEN
17 AC_PROG_LIBTOOL
18 AC_SUBST([LIBTOOL_DEPS])
19
20 # Checks for libraries.
21 AC_PATH_XTRA
22 AC_CHECK_LIB([Xxf86vm], [XF86VidModeSwitchToMode],
23              [LIBXXF86VM=-lXxf86vm], [LIBXXF86VM=],
24              [$X_LIBS -lXext -lX11])
25 AC_SUBST([LIBXXF86VM])
26
27 # Checks for header files.
28 AC_HEADER_STDC
29 AC_CHECK_HEADERS([GL/gl.h GL/glu.h GL/glx.h fcntl.h limits.h sys/ioctl.h sys/param.h sys/time.h])
30 AC_HEADER_TIME
31
32 save_CFLAGS="$CFLAGS"
33 CFLAGS="$CFLAGS $X_CFLAGS"
34 AC_CHECK_HEADERS([X11/extensions/xf86vmode.h], [], [], [#include <X11/Xlib.h>])
35 CFLAGS="$save_CFLAGS"
36
37 # Checks for library functions.
38 AC_PROG_GCC_TRADITIONAL
39 AC_FUNC_VPRINTF
40 AC_CHECK_LIBM
41 AC_SUBST([LIBM])
42
43 # Build time configuration.
44 AC_ARG_ENABLE([replace-glut],
45 [AS_HELP_STRING([--enable-replace-glut],
46                 [be a replacement for GLUT @<:@default=yes@:>@])])
47 if test "x$enable_replace_glut" != xno; then
48   LIBRARY=glut
49   HEADER=glut.h
50 else
51   LIBRARY=freeglut
52   HEADER=
53 fi
54 AC_SUBST([LIBRARY])
55 AC_SUBST([HEADER])
56
57 AC_ARG_ENABLE([warnings],
58 [AS_HELP_STRING([--enable-warnings],
59                 [use all gcc compiler warnings @<:@default=yes@:>@])])
60 if test "x$enable_warnings" != xno -a "x$GCC" = xyes; then
61   CFLAGS="$CFLAGS -Wall -pedantic -Werror"
62 fi
63
64 # Generate output.
65 AC_CONFIG_FILES([Makefile
66                  doc/Makefile
67                  include/GL/Makefile
68                  include/Makefile
69                  progs/Makefile
70                  progs/demos/CallbackMaker/Makefile
71                  progs/demos/Fractals/Makefile
72                  progs/demos/Fractals_random/Makefile
73                  progs/demos/Lorenz/Makefile
74                  progs/demos/Makefile
75                  progs/demos/One/Makefile
76                  progs/demos/shapes/Makefile
77                  src/Makefile])
78 AC_OUTPUT