use ustring more; handle embedding of "paired" files as per mantis #1362
[ardour.git] / libs / glibmm2 / configure.ac
1 # Configure.in
2 #
3 #  This file tests for various compiler features needed to configure 
4 #  the gtkmm package.  Original skeleton was provided by Stephan Kulow.
5 #  All tests were written by Tero Pulkkinen, Mirko Streckenbach, and 
6 #  Karl Nelson.
7 #
8 #  NOTE! IF YOU DO CHANGES HERE, CHECK IF YOU NEED TO MODIFY .m4 TOO!!!
9 #
10 #  Copyright 2001 Free Software Foundation
11 #  Copyright 1999 gtkmm Development Team
12 #  Copyright 1998 Stephan Kulow 
13 #
14 AC_INIT(glibmmconfig.h.in)
15 AC_PREREQ(2.50)
16
17 #########################################################################
18 #  Version and initialization
19 #########################################################################
20 GLIBMM_MAJOR_VERSION=2
21 GLIBMM_MINOR_VERSION=6
22 GLIBMM_MICRO_VERSION=1
23 GLIBMM_VERSION=$GLIBMM_MAJOR_VERSION.$GLIBMM_MINOR_VERSION.$GLIBMM_MICRO_VERSION
24 GLIBMM_RELEASE=$GLIBMM_MAJOR_VERSION.$GLIBMM_MINOR_VERSION
25 AC_DEFINE_UNQUOTED(GLIBMM_MAJOR_VERSION, $GLIBMM_MAJOR_VERSION)
26 AC_DEFINE_UNQUOTED(GLIBMM_MINOR_VERSION, $GLIBMM_MINOR_VERSION)
27 AC_DEFINE_UNQUOTED(GLIBMM_MICRO_VERSION, $GLIBMM_MICRO_VERSION)
28 AC_SUBST(GLIBMM_MAJOR_VERSION)
29 AC_SUBST(GLIBMM_MINOR_VERSION)
30 AC_SUBST(GLIBMM_MICRO_VERSION)
31 AC_SUBST(GLIBMM_VERSION)
32 AC_SUBST(GLIBMM_RELEASE)
33
34 #
35 # +1 : ? : +1  == new interface that does not break old one
36 # +1 : ? : 0   == new interface that breaks old one
37 #  ? : ? : 0   == no new interfaces, but breaks apps
38 #  ? :+1 : ?   == just some internal changes, nothing breaks but might work 
39 #                 better
40 # CURRENT : REVISION : AGE
41 LIBGLIBMM_SO_VERSION=1:13:0
42 AC_SUBST(LIBGLIBMM_SO_VERSION)
43
44 AC_CONFIG_AUX_DIR(scripts)
45
46 dnl For automake.
47 VERSION=$GLIBMM_VERSION
48 PACKAGE=glibmm
49
50 dnl Initialize automake stuff
51 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
52
53 dnl Specify a configuration file (no autoheader)
54 AM_CONFIG_HEADER(glibmmconfig.h)
55 AM_MAINTAINER_MODE
56 AL_ACLOCAL_INCLUDE(scripts)
57
58
59 #########################################################################
60 #  Configure arguments 
61 #########################################################################
62
63 #########################################################################
64 #  Environment Checks
65 #########################################################################
66 AC_PROG_CC
67 AC_PROG_CPP
68 AC_PROG_MAKE_SET
69 AC_CANONICAL_BUILD
70 AC_CANONICAL_HOST
71
72 AC_DISABLE_STATIC
73 AC_PROG_LIBTOOL
74
75 AL_PROG_GNU_M4(AC_MSG_ERROR([dnl
76 SUN m4 does not work for building gtkmm. 
77 Please install GNU m4.]))
78
79 AL_PROG_GNU_MAKE(AC_MSG_ERROR([dnl
80 SUN make does not work for building gtkmm.
81 Please install GNU make.]))
82
83 #########################################################################
84 #  Dependancy checks
85 #########################################################################
86 gtkmm_min_glib_version=2.6.0
87
88 PKG_CHECK_MODULES(GLIBMM, glib-2.0 >= ${gtkmm_min_glib_version} gobject-2.0 >= ${gtkmm_min_glib_version} gmodule-2.0 >= ${gtkmm_min_glib_version})
89 AC_SUBST(GLIBMM_CFLAGS)
90 AC_SUBST(GLIBMM_LIBS)
91
92 # gthread isn't a requirement, but we should use its CFLAGS if available.
93 PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= ${gtkmm_min_glib_version},[],[GTHREAD_CFLAGS=''; GTHREAD_LIBS=''])
94 AC_SUBST(GTHREAD_CFLAGS)
95 AC_SUBST(GTHREAD_LIBS)
96
97
98 #########################################################################
99 #  C++ checks
100 #########################################################################
101 AC_PROG_CXX
102
103 AC_LANG_CPLUSPLUS
104
105 AC_CXX_BOOL(,config_error=yes)
106 AC_CXX_NAMESPACES(,config_error=yes)
107 AC_CXX_MUTABLE(,config_error=yes)
108
109 AC_MSG_CHECKING(if C++ environment provides all required features)
110 if test "x$config_error" = xyes ; then
111   AC_MSG_RESULT([no])
112   AC_MSG_ERROR([Your compiler is not powerful enough to compile gtkmm. If it should be, see config.log for more information of why it failed.])
113 fi
114 AC_MSG_RESULT([yes])
115
116 GLIBMM_CXX_HAS_NAMESPACE_STD()
117 GLIBMM_CXX_HAS_STD_ITERATOR_TRAITS()
118 GLIBMM_CXX_HAS_SUN_REVERSE_ITERATOR()
119 GLIBMM_CXX_HAS_TEMPLATE_SEQUENCE_CTORS()
120 GLIBMM_CXX_MEMBER_FUNCTIONS_MEMBER_TEMPLATES()
121 GLIBMM_CXX_CAN_DISAMBIGUATE_CONST_TEMPLATE_SPECIALIZATIONS()
122 GLIBMM_CXX_CAN_USE_DYNAMIC_CAST_IN_UNUSED_TEMPLATE_WITHOUT_DEFINITION()
123 GLIBMM_CXX_CAN_ASSIGN_NON_EXTERN_C_FUNCTIONS_TO_EXTERN_C_CALLBACKS()
124 GLIBMM_CXX_CAN_USE_NAMESPACES_INSIDE_EXTERNC()
125 GLIBMM_CXX_ALLOWS_STATIC_INLINE_NPOS()
126
127 # Check whether --enable-debug-refcounting was given.
128 GLIBMM_ARG_ENABLE_DEBUG_REFCOUNTING()
129
130 # Evaluate the --enable-warnings=level option.
131 GTKMM_ARG_ENABLE_WARNINGS()
132
133 # Dummy conditional just to make automake-1.4 happy.
134 # We need an always-false condition in docs/Makefile.am.
135 AM_CONDITIONAL(GTKMM_FALSE,[false])
136
137 # HACK:  Assign a dummy in order to prevent execution of autoheader by the
138 # maintainer-mode rules.  That would fail since we aren't using autoheader.
139 AUTOHEADER=':'
140
141 AC_CONFIG_FILES([
142   Makefile
143
144   glibmm-2.4.pc
145   glibmm/Makefile
146 ])
147
148 AC_OUTPUT()
149