|
1 AC_PREREQ([2.64]) |
|
2 AC_INIT([harfbuzz], |
|
3 [0.7.0], |
|
4 [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz], |
|
5 [harfbuzz], |
|
6 [http://harfbuzz.org/]) |
|
7 |
|
8 AC_CONFIG_SRCDIR([harfbuzz.pc.in]) |
|
9 AC_CONFIG_HEADERS([config.h]) |
|
10 |
|
11 AM_INIT_AUTOMAKE([1.11.1 gnu dist-bzip2 no-dist-gzip -Wall no-define]) |
|
12 AM_SILENT_RULES([yes]) |
|
13 |
|
14 # Check for programs |
|
15 AC_PROG_CC |
|
16 AM_PROG_CC_C_O |
|
17 AC_PROG_CXX |
|
18 |
|
19 # Initialize libtool |
|
20 LT_PREREQ([2.2]) |
|
21 LT_INIT([disable-static]) |
|
22 |
|
23 # Version |
|
24 m4_define(hb_version_triplet,m4_split(AC_PACKAGE_VERSION,[[.]])) |
|
25 m4_define(hb_version_major,m4_argn(1,hb_version_triplet)) |
|
26 m4_define(hb_version_minor,m4_argn(2,hb_version_triplet)) |
|
27 m4_define(hb_version_micro,m4_argn(3,hb_version_triplet)) |
|
28 HB_VERSION_MAJOR=hb_version_major |
|
29 HB_VERSION_MINOR=hb_version_minor |
|
30 HB_VERSION_MICRO=hb_version_micro |
|
31 HB_VERSION=AC_PACKAGE_VERSION |
|
32 AC_SUBST(HB_VERSION_MAJOR) |
|
33 AC_SUBST(HB_VERSION_MINOR) |
|
34 AC_SUBST(HB_VERSION_MICRO) |
|
35 AC_SUBST(HB_VERSION) |
|
36 |
|
37 # Libtool version |
|
38 m4_define([hb_version_int], |
|
39 m4_eval(hb_version_major*10000 + hb_version_minor*100 + hb_version_micro)) |
|
40 m4_if(m4_eval(hb_version_minor % 2), [1], |
|
41 dnl for unstable releases |
|
42 [m4_define([hb_libtool_revision], 0)], |
|
43 dnl for stable releases |
|
44 [m4_define([hb_libtool_revision], hb_version_micro)]) |
|
45 m4_define([hb_libtool_age], |
|
46 m4_eval(hb_version_int - hb_libtool_revision)) |
|
47 m4_define([hb_libtool_current], |
|
48 m4_eval(hb_version_major + hb_libtool_age)) |
|
49 HB_LIBTOOL_VERSION_INFO=hb_libtool_current:hb_libtool_revision:hb_libtool_age |
|
50 AC_SUBST(HB_LIBTOOL_VERSION_INFO) |
|
51 |
|
52 dnl GTK_DOC_CHECK([1.15],[--flavour no-tmpl]) |
|
53 |
|
54 # Functions and headers |
|
55 AC_CHECK_FUNCS(mprotect sysconf getpagesize mmap _setmode) |
|
56 AC_CHECK_HEADERS(unistd.h sys/mman.h io.h) |
|
57 |
|
58 # Compiler flags |
|
59 AC_CANONICAL_HOST |
|
60 if test "x$GCC" = "xyes"; then |
|
61 |
|
62 # Make symbols link locally |
|
63 LDFLAGS="$LDFLAGS -Bsymbolic-functions" |
|
64 |
|
65 # Make sure we don't link to libstdc++ |
|
66 CXXFLAGS="$CXXFLAGS -fno-rtti -fno-exceptions" |
|
67 |
|
68 case "$host" in |
|
69 arm-*-*) |
|
70 # Request byte alignment on arm |
|
71 CXXFLAGS="$CXXFLAGS -mstructure-size-boundary=8" |
|
72 ;; |
|
73 esac |
|
74 fi |
|
75 |
|
76 dnl ========================================================================== |
|
77 |
|
78 PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16, have_glib=true, have_glib=false) |
|
79 if $have_glib; then |
|
80 AC_DEFINE(HAVE_GLIB, 1, [Have glib2 library]) |
|
81 fi |
|
82 AM_CONDITIONAL(HAVE_GLIB, $have_glib) |
|
83 |
|
84 PKG_CHECK_MODULES(GTHREAD, gthread-2.0, have_gthread=true, have_gthread=false) |
|
85 if $have_gthread; then |
|
86 AC_DEFINE(HAVE_GTHREAD, 1, [Have gthread2 library]) |
|
87 fi |
|
88 AM_CONDITIONAL(HAVE_GTHREAD, $have_gthread) |
|
89 |
|
90 PKG_CHECK_MODULES(GOBJECT, gobject-2.0 glib-2.0 >= 2.16, have_gobject=true, have_gobject=false) |
|
91 if $have_gobject; then |
|
92 AC_DEFINE(HAVE_GOBJECT, 1, [Have gobject2 library]) |
|
93 GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` |
|
94 AC_SUBST(GLIB_MKENUMS) |
|
95 fi |
|
96 AM_CONDITIONAL(HAVE_GOBJECT, $have_gobject) |
|
97 |
|
98 dnl ========================================================================== |
|
99 |
|
100 PKG_CHECK_MODULES(CAIRO, cairo >= 1.8.0, have_cairo=true, have_cairo=false) |
|
101 if $have_cairo; then |
|
102 AC_DEFINE(HAVE_CAIRO, 1, [Have cairo graphics library]) |
|
103 fi |
|
104 AM_CONDITIONAL(HAVE_CAIRO, $have_cairo) |
|
105 |
|
106 PKG_CHECK_MODULES(CAIRO_FT, cairo-ft, have_cairo_ft=true, have_cairo_ft=false) |
|
107 if $have_cairo_ft; then |
|
108 AC_DEFINE(HAVE_CAIRO_FT, 1, [Have cairo-ft support in cairo graphics library]) |
|
109 fi |
|
110 AM_CONDITIONAL(HAVE_CAIRO_FT, $have_cairo_ft) |
|
111 |
|
112 dnl ========================================================================== |
|
113 |
|
114 PKG_CHECK_MODULES(ICU, icu, have_icu=true, [ |
|
115 have_icu=true |
|
116 AC_CHECK_HEADERS(unicode/uchar.h,, have_icu=false) |
|
117 AC_MSG_CHECKING([for libicuuc]) |
|
118 LIBS_old=$LIBS |
|
119 LIBS="$LIBS -licuuc" |
|
120 AC_TRY_LINK([#include <unicode/uchar.h>], |
|
121 [u_getIntPropertyValue (0, (UProperty)0);], |
|
122 AC_MSG_RESULT(yes), |
|
123 AC_MSG_RESULT(no);have_icu=false) |
|
124 LIBS=$LIBS_old |
|
125 if $have_icu; then |
|
126 ICU_CFLAGS=-D_REENTRANT |
|
127 ICU_LIBS="-licuuc" |
|
128 AC_SUBST(ICU_CFLAGS) |
|
129 AC_SUBST(ICU_LIBS) |
|
130 fi |
|
131 ]) |
|
132 if $have_icu; then |
|
133 AC_DEFINE(HAVE_ICU, 1, [Have ICU library]) |
|
134 fi |
|
135 AM_CONDITIONAL(HAVE_ICU, $have_icu) |
|
136 |
|
137 dnl ========================================================================== |
|
138 |
|
139 PKG_CHECK_MODULES(GRAPHITE, graphite2, have_graphite=true, have_graphite=false) |
|
140 if $have_graphite; then |
|
141 AC_DEFINE(HAVE_GRAPHITE, 1, [Have Graphite library]) |
|
142 fi |
|
143 AM_CONDITIONAL(HAVE_GRAPHITE, $have_graphite) |
|
144 |
|
145 dnl ========================================================================== |
|
146 |
|
147 PKG_CHECK_MODULES(FREETYPE, freetype2 >= 2.3.8, have_freetype=true, have_freetype=false) |
|
148 if $have_freetype; then |
|
149 AC_DEFINE(HAVE_FREETYPE, 1, [Have FreeType 2 library]) |
|
150 _save_libs="$LIBS" |
|
151 _save_cflags="$CFLAGS" |
|
152 LIBS="$LIBS $FREETYPE_LIBS" |
|
153 CFLAGS="$CFLAGS $FREETYPE_CFLAGS" |
|
154 AC_CHECK_FUNCS(FT_Face_GetCharVariantIndex) |
|
155 LIBS="$_save_libs" |
|
156 CFLAGS="$_save_cflags" |
|
157 fi |
|
158 AM_CONDITIONAL(HAVE_FREETYPE, $have_freetype) |
|
159 |
|
160 dnl =========================================================================== |
|
161 |
|
162 have_ot=true; |
|
163 if $have_ot; then |
|
164 AC_DEFINE(HAVE_OT, 1, [Have native OpenType Layout backend]) |
|
165 fi |
|
166 AM_CONDITIONAL(HAVE_OT, $have_ot) |
|
167 |
|
168 dnl =========================================================================== |
|
169 |
|
170 AC_CHECK_HEADERS(usp10.h windows.h, have_uniscribe=true, have_uniscribe=false) |
|
171 if $have_uniscribe; then |
|
172 UNISCRIBE_CFLAGS= |
|
173 UNISCRIBE_LIBS="-lusp10 -lgdi32" |
|
174 AC_SUBST(UNISCRIBE_CFLAGS) |
|
175 AC_SUBST(UNISCRIBE_LIBS) |
|
176 AC_DEFINE(HAVE_UNISCRIBE, 1, [Have Uniscribe backend]) |
|
177 fi |
|
178 AM_CONDITIONAL(HAVE_UNISCRIBE, $have_uniscribe) |
|
179 |
|
180 AC_CONFIG_FILES([ |
|
181 Makefile |
|
182 harfbuzz.pc |
|
183 src/Makefile |
|
184 src/hb-version.h |
|
185 util/Makefile |
|
186 test/Makefile |
|
187 ]) |
|
188 |
|
189 AC_OUTPUT |