summaryrefslogtreecommitdiff
path: root/configure.ac
blob: a678013d243e8bc73a36946018d5594ff84910f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
##############################################################################
## $Id: configure.ac,v 1.1.1.1 2004-04-25 18:47:56 behdad Exp $
## $Auther: behdad $
## $Date: 2004-04-25 18:47:56 $
## $Revision: 1.1.1.1 $
## $Source: /home/behdad/src/fdo/fribidi/togit/git/../fribidi/fribidi2/configure.ac,v $
##############################################################################
##                                               -*- Autoconf -*-
## Process this file with autoconf to produce a configure script.
## Use autoupdate to update this file for newer versions of autoconf.
## Use autoscan to check if you need to add something to this file.

AC_PREREQ(2.59)

dnl Define different version variables.
dnl
dnl Making releases:
dnl   FRIBIDI_MICRO_VERSION++;
dnl   FRIBIDI_INTERFACE_AGE++;
dnl   FRIBIDI_RPM_RELEASE = 1;
dnl
dnl If any functions have been added:
dnl   FRIBIDI_INTERFACE_AGE = 0;
dnl   FRIBIDI_INTERFACE_VERSION++;
dnl   FRIBIDI_BINARY_AGE++;
dnl
dnl If binary backwards compatibility has been broken:
dnl   FRIBIDI_BINARY_AGE = FRIBIDI_INTERFACE_AGE = 0;
dnl
dnl Building RPMs:
dnl   FRIBIDI_RPM_RELEASE++;
dnl
m4_define(fribidi_major_version, 0)dnl
m4_define(fribidi_minor_version, 19)dnl
m4_define(fribidi_micro_version, 0)dnl
m4_define(fribidi_version,fribidi_major_version.fribidi_minor_version.fribidi_micro_version)dnl
m4_define(fribidi_interface_version, 3)dnl
m4_define(fribidi_interface_age, 0)dnl
m4_define(fribidi_binary_age, 3)dnl
m4_define(fribidi_rpm_release, 1)dnl
dnl

AC_INIT([GNU FriBidi],fribidi_version(),[http://freedesktop.org/cgi-bin/bugzilla/enter_bug.cgi?product=FriBidi])
AC_REVISION([$Id: configure.ac,v 1.1.1.1 2004-04-25 18:47:56 behdad Exp $])
AC_CONFIG_SRCDIR(lib/fribidi.h)
AC_CONFIG_HEADERS(config.h)
AM_INIT_AUTOMAKE([gnits])

FRIBIDI_MAJOR_VERSION=fribidi_major_version()
FRIBIDI_MINOR_VERSION=fribidi_minor_version()
FRIBIDI_MICRO_VERSION=fribidi_micro_version()
FRIBIDI_VERSION=fribidi_version()
FRIBIDI_INTERFACE_VERSION=fribidi_interface_version()
FRIBIDI_INTERFACE_AGE=fribidi_interface_age()
FRIBIDI_BINARY_AGE=fribidi_binary_age()
FRIBIDI_RPM_RELEASE=fribidi_rpm_release

AC_SUBST(FRIBIDI_MAJOR_VERSION)
AC_SUBST(FRIBIDI_MINOR_VERSION)
AC_SUBST(FRIBIDI_MICRO_VERSION)
AC_SUBST(FRIBIDI_VERSION)
AC_SUBST(FRIBIDI_INTERFACE_VERSION)
AC_SUBST(FRIBIDI_INTERFACE_AGE)
AC_SUBST(FRIBIDI_BINARY_AGE)
AC_SUBST(FRIBIDI_RPM_RELEASE)

dnl libtool versioning.
m4_define(lt_current, fribidi_interface_version())dnl
m4_define(lt_revision, fribidi_interface_age())dnl
m4_define(lt_age, fribidi_binary_age())dnl
LT_VERSION_INFO=lt_current():lt_revision():lt_age()
LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)

AC_SUBST(LT_VERSION_INFO)
AC_SUBST(LT_CURRENT_MINUS_AGE)

dnl ==========================================================================

# Checks for Win32.
AC_MSG_CHECKING([for native Win32])
  case "$host" in
    *-*-mingw*) os_win32=yes ;;
    *) pango_os_win32=no ;;
  esac
AC_MSG_RESULT([$os_win32])
AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
AC_MSG_CHECKING([for some Win32 platform])
  case "$host" in
    *-*-mingw*|*-*-cygwin*) platform_win32=yes ;;
    *) platform_win32=no ;;
  esac
AC_MSG_RESULT([$platform_win32])
AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")

# Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL
AC_LIBTOOL_WIN32_DLL
AC_PROG_LIBTOOL

# Checks for header files.
AC_HEADER_STDC
AC_HEADER_TIME
AC_CHECK_HEADERS([stdlib.h string.h strings.h inttypes.h stdbool.h wchar.h sys/times.h])

# Checks for typedefs and structures.
AC_C_CONST
AC_C_INLINE
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(void *)
AC_CHECK_SIZEOF(wchar_t)

# Checks for compiler characteristics.
changequote(,)dnl
if test "x$GCC" = "xyes"; then
  case " $CFLAGS " in
  *[\ \	]-Wall[\ \	]*) ;;
  *) CFLAGS="$CFLAGS -Wall " ;;
  esac
  case " $CFLAGS " in
  *[\ \	]-pedantic[\ \	]*) ;;
  *) CFLAGS="$CFLAGS -pedantic " ;;
  esac
fi
changequote([,])dnl

# Checks for library functions.
AC_CHECK_FUNCS([memmove memset strdup])
AC_TYPE_SIGNAL

# Checks for configure options

m4_define(debug_default,
          m4_if(m4_eval(fribidi_minor_version() % 2),1,yes,minimum))

# --enable-debug
AC_ARG_ENABLE(debug,
              AS_HELP_STRING([--enable-debug],
                             [turn on debugging @<:@default=debug_default()@:>@]),,
              enableval=debug_default())
if test x$enableval = xyes; then
	AC_DEFINE(DEBUG,1,
                  [Define to 1 if you want to include debug code in the library])
fi

# --enable-malloc
AC_ARG_ENABLE(debug,
              AS_HELP_STRING([--enable-malloc],
                             [use simple malloc instead of memory chunks]))
if test x$enable_glib = xyes; then
	AC_DEFINE(USE_SIMPLE_MALLOC,1,
                  [Define to 1 if you want to use simple mallocs instead of memory chunks])
fi

# --disable-charsets
AC_ARG_ENABLE(charsets,
              AS_HELP_STRING([--disable-charsets],
                             [exclude charset conversion codes from the library]))
if test x$enable_charsets = xno; then
	FRIBIDI_CHARSETS=0
else
	FRIBIDI_CHARSETS=1
fi
AC_SUBST(FRIBIDI_CHARSETS)
AM_CONDITIONAL(FRIBIDI_CHARSETS, test x$FRIBIDI_CHARSETS = x1)

# --without-glib
AC_ARG_WITH(glib,
              AS_HELP_STRING([--without-glib],
                             [do not use Glib]))
GLIB_PACKAGE=glib-2.0
GLIB_LIBS=
GLIB_CFLAGS=
if test x$with_glib = xyes; then
	PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE)
	FRIBIDI_USE_GLIB=1
else
if test x$with_glib = xno; then
	FRIBIDI_USE_GLIB=0
else
	PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE,
		FRIBIDI_USE_GLIB=1,
		FRIBIDI_USE_GLIB=0)
fi
fi
if test x$FRIBIDI_USER_GLIB = x0; then
	GLIB_PACKAGE=
fi
AC_SUBST(GLIB_PACKAGE)
AC_SUBST(GLIB_LIBS)
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(FRIBIDI_USE_GLIB)
AM_CONDITIONAL(FRIBIDI_USE_GLIB, test "$FRIBIDI_USE_GLIB" = 1)

# Generate output
AC_CONFIG_FILES([fribidi.pc
                 fribidi.spec
                 lib/fribidi-config.h
                 Makefile
		 tablegen/Makefile
		 tablegen/unidata/Makefile
		 charset/Makefile
                 lib/Makefile
                 bin/Makefile
		 doc/Makefile
                 test/Makefile])
AC_OUTPUT