]> Dogcows Code - chaz/tint2/blob - configure.ac
adjust saturation/brightness on task icon
[chaz/tint2] / configure.ac
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3 AC_INIT([tint2], [0.7.9-svn], [http://code.google.com/p/tint2/issues])
4
5 AM_INIT_AUTOMAKE
6
7 AC_CONFIG_MACRO_DIR([m4])
8 AC_CONFIG_SRCDIR([src/tint.c])
9 AC_CONFIG_HEADERS([config.h])
10
11 # tint2
12 AC_ARG_ENABLE([battery],
13 [AS_HELP_STRING([--disable-battery], [Disable battery status plugin])],
14 [case "${enableval}" in
15 yes) battery=true ;;
16 no) battery=false ;;
17 *) AC_MSG_ERROR([bad value ${enableval} for --disable-battery]) ;;
18 esac], [battery=true])
19 AM_CONDITIONAL([ENABLE_BATTERY], [test x$battery = xtrue])
20 #
21
22 AC_ARG_ENABLE([examples],
23 [AS_HELP_STRING([--enable-examples], [Install additional tin2rc examples])],
24 [case "${enableval}" in
25 yes) examples=true ;;
26 no) examples=false ;;
27 *) AC_MSG_ERROR([bad value ${enableval} for --enable-examples]) ;;
28 esac],[examples=false])
29 AM_CONDITIONAL([INSTALL_EXAMPLES], [test x$examples = xtrue])
30
31 # tint2conf
32 AC_ARG_ENABLE([tint2conf],
33 [AS_HELP_STRING([--enable-tint2conf], [Build and install tint2conf, a GTK+2 configuration utility for tint2 (EXPERIMENTAL)])],
34 [case "${enableval}" in
35 yes) tint2conf=true ;;
36 no) tint2conf=false ;;
37 *) AC_MSG_ERROR([bad value ${enableval} for --enable-tint2conf]) ;;
38 esac],[tint2conf=false])
39 AM_CONDITIONAL([ENABLE_TINT2CONF], [test x$tint2conf = xtrue])
40 #
41
42 # Checks for programs.
43 AC_LANG([C])
44 AC_PROG_CC
45 PKG_PROG_PKG_CONFIG
46
47 # Checks for libraries.
48 PKG_CHECK_MODULES([PANGOCAIRO], [pangocairo])
49 AC_SUBST(PANGOCAIRO_CFLAGS)
50 AC_SUBST(PANGOCAIRO_LIBS)
51
52 PKG_CHECK_MODULES([PANGO], [pango])
53 AC_SUBST(PANGO_CFLAGS)
54 AC_SUBST(PANGO_LIBS)
55
56 PKG_CHECK_MODULES([CAIRO], [cairo])
57 AC_SUBST(CAIRO_CFLAGS)
58 AC_SUBST(CAIRO_LIBS)
59
60 PKG_CHECK_MODULES([GLIB2], [glib-2.0])
61 AC_SUBST(GLIB2_CFLAGS)
62 AC_SUBST(GLIB2_LIBS)
63
64 PKG_CHECK_MODULES([GOBJECT2], [gobject-2.0])
65 AC_SUBST(GOBJECT2_CFLAGS)
66 AC_SUBST(GOBJECT2_LIBS)
67
68 PKG_CHECK_MODULES([X11], [x11])
69 AC_SUBST(X11_CFLAGS)
70 AC_SUBST(X11_LIBS)
71
72 PKG_CHECK_MODULES([XINERAMA], [xinerama])
73 AC_SUBST(XINERAMA_CFLAGS)
74 AC_SUBST(XINERAMA_LIBS)
75
76 PKG_CHECK_MODULES([IMLIB2], [imlib2])
77 AC_SUBST(IMLIB2_CFLAGS)
78 AC_SUBST(IMLIB2_LIBS)
79
80 # Ensure that Imlib2 has been built with X support and reset LIBS since AC_CHECK_LIB adds -lImlib2 on success.
81 LIBS_SAVED=$LIBS
82 AC_CHECK_LIB([Imlib2], [imlib_context_set_display], [],
83 AC_MSG_ERROR([Imlib2 must be built with X support]))
84 LIBS=$LIBS_SAVED
85
86 # Checks for header files.
87 AC_PATH_X
88 AC_CHECK_HEADERS([fcntl.h locale.h stdlib.h string.h sys/time.h unistd.h])
89
90 # Checks for typedefs, structures, and compiler characteristics.
91 AC_HEADER_STDBOOL
92 AC_TYPE_INT16_T
93 AC_TYPE_INT64_T
94 AC_TYPE_INT8_T
95 AC_TYPE_PID_T
96
97 # Checks for library functions.
98 AC_FUNC_FORK
99 AC_FUNC_MALLOC
100 AC_CHECK_FUNCS([gettimeofday memset select setlocale strcasecmp strchr strdup])
101
102 # tint2conf (experimental)
103 if test "x$tint2conf" = xtrue;
104 then
105 # We want just link against stuff we really need so thats why I don't use PKG_CHECK_MODULES.
106 # gtk/glib is a bit horrible because we have to add -I directives for various features (like cairo, pango etc.)
107 # even if we don't need them.
108 # Sorry if that might be confusing %-)
109
110 # Save LIBS value and clear the variable, AC_CHECK_LIB will append all libs to LIBS on success.
111 LIBS_SAVED=$LIBS
112 LIBS=
113
114 AC_CHECK_LIB([pthread], [pthread_create], [],
115 [AC_MSG_ERROR([libpthread is missing, usually provided by glibc])])
116 AC_CHECK_LIB([glib-2.0], [g_free], [],
117 [AC_MSG_ERROR([glib-2.x is missing])])
118 AC_CHECK_LIB([gobject-2.0], [g_signal_connect_data], [],
119 [AC_MSG_ERROR([libgobject-2.0 is missing, usually provided by glib-2.x])])
120 AC_CHECK_LIB([gtk-x11-2.0], [gtk_main], [],
121 [AC_MSG_ERROR([gtk+-2.x is missing or not built with X support])])
122 AC_CHECK_LIB([gthread-2.0], [g_thread_init], [],
123 [AC_MSG_ERROR([libgthread-2.0 is missing, usually provided by glib-2.x])])
124
125 TINT2CONF_LIBS="${LIBS} ${PTHREAD_LIB} ${GLIB2_LIB} ${GOBJECT2_LIB}"
126 LIBS=$LIBS_SAVED
127
128 TINT2CONF_CFLAGS="$(${PKG_CONFIG} --cflags gtk+-x11-2.0 glib-2.0 gobject-2.0 gthread-2.0)"
129 AC_SUBST(TINT2CONF_CFLAGS)
130 AC_SUBST(TINT2CONF_LIBS)
131 fi
132 #
133
134 #
135 AM_CFLAGS="-Wall"
136 AM_LDFLAGS="-Wl,--as-needed"
137 AC_SUBST(AM_CFLAGS)
138 AC_SUBST(AM_LDFLAGS)
139
140 DISTCLEANFILES="Makefile.in"
141 AC_SUBST(DISTCLEANFILES)
142
143 AC_CONFIG_FILES([Makefile
144 doc/Makefile
145 src/Makefile
146 src/tint2conf/Makefile])
147
148 AC_OUTPUT
This page took 0.041262 seconds and 4 git commands to generate.