5dfeaeff3fb1e824d0cff67fe6bc59d4271c934a
[platform/upstream/libxslt.git] / configure.in
1 AC_INIT(libxslt/xslt.c)
2
3 LIBXSLT_MAJOR_VERSION=0
4 LIBXSLT_MINOR_VERSION=13
5 LIBXSLT_MICRO_VERSION=0
6 PACKAGE=libxslt
7
8 LIBXSLT_VERSION=$LIBXSLT_MAJOR_VERSION.$LIBXSLT_MINOR_VERSION.$LIBXSLT_MICRO_VERSION
9 LIBXSLT_VERSION_INFO=`expr $LIBXSLT_MAJOR_VERSION + $LIBXSLT_MINOR_VERSION`:$LIBXSLT_MICRO_VERSION:$LIBXSLT_MINOR_VERSION
10
11 LIBXSLT_VERSION_NUMBER=`expr $LIBXSLT_MAJOR_VERSION \* 10000 + $LIBXSLT_MINOR_VERSION \* 100 + $LIBXSLT_MICRO_VERSION`
12
13 AC_SUBST(LIBXSLT_MAJOR_VERSION)
14 AC_SUBST(LIBXSLT_MINOR_VERSION)
15 AC_SUBST(LIBXSLT_MICRO_VERSION)
16 AC_SUBST(LIBXSLT_VERSION)
17 AC_SUBST(LIBXSLT_VERSION_INFO)
18 AC_SUBST(LIBXSLT_VERSION_NUMBER)
19 VERSION=${LIBXSLT_VERSION}
20
21 AM_CONFIG_HEADER(config.h)
22 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
23 AM_MAINTAINER_MODE
24
25 dnl
26 dnl Check the environment
27 dnl
28
29 AC_ISC_POSIX
30 AC_PROG_CC
31 AC_STDC_HEADERS
32 AC_ARG_PROGRAM
33 AM_PROG_LIBTOOL
34
35 dnl
36 dnl Math detection
37 dnl
38
39 AC_CHECK_HEADERS(sys/types.h sys/time.h stdlib.h unistd.h string.h)
40 AC_CHECK_HEADERS(ieeefp.h nan.h math.h fp_class.h float.h ansidecl.h)
41 AC_CHECK_FUNC(isnan, , AC_CHECK_LIB(m, isnan,
42   [M_LIBS="-lm"; AC_DEFINE(HAVE_ISNAN)]))
43
44 AC_CHECK_FUNC(isinf, , AC_CHECK_LIB(m, isinf,
45   [M_LIBS="-lm"; AC_DEFINE(HAVE_ISINF)]))
46
47 AC_CHECK_FUNC(pow, , AC_CHECK_LIB(m, pow,
48   [M_LIBS="-lm"; AC_DEFINE(HAVE_POW)]))
49
50 AC_CHECK_FUNC(floor, , AC_CHECK_LIB(m, pow,
51   [M_LIBS="-lm"; AC_DEFINE(HAVE_FLOOR)]))
52
53 AC_CHECK_FUNC(fabs, , AC_CHECK_LIB(m, pow,
54   [M_LIBS="-lm"; AC_DEFINE(HAVE_FABS)]))
55
56 dnl
57 dnl Perl is just needed for generating some data for XSLtmark
58 dnl
59
60 AC_CHECK_PROG(PERL, perl, perl, false)
61 AM_CONDITIONAL(WITH_PERL, test "$PERL" != "false")
62
63 dnl
64 dnl Debug for DV (-Wunreachable-code)
65 dnl
66 if test "${LOGNAME}" = "veillard" -a "`pwd`" = "/u/veillard/XSLT" ; then
67     if test "${with_mem_debug}" = "" ; then
68         with_mem_debug="yes"
69     fi
70     CFLAGS="-Wall -g -O -ansi -pedantic -W -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline "
71 fi
72
73 AC_ARG_WITH(debug, [  --with-debug            Add the debugging code (on)])
74 if test "$with_debug" = "no" ; then
75     echo Disabling debug support
76     WITH_XSLT_DEBUG=0
77 else    
78     WITH_XSLT_DEBUG=1
79 fi
80 AC_SUBST(WITH_XSLT_DEBUG)
81
82 AC_ARG_WITH(mem_debug, [  --with-mem-debug        Add the memory debugging module (off)])
83 if test "$with_mem_debug" = "yes" ; then
84     echo Enabling memory debug support
85     WITH_MEM_DEBUG=1
86 else    
87     WITH_MEM_DEBUG=0
88 fi
89 AC_SUBST(WITH_MEM_DEBUG)
90
91 dnl
92 dnl The following new parameters were added to offer
93 dnl the ability to specify the location of the libxml
94 dnl library during linking and compilation.
95 dnl Mathieu Lacage 30/03/2000
96 dnl
97 LIBXML_PREFIX=""
98 AC_ARG_WITH(libxml-prefix,
99         [  --with-libxml-prefix=[PFX]           Specify location of libxml],
100         LIBXML_PREFIX=$withval
101 )
102         
103 AC_ARG_WITH(libxml-include-prefix,
104         [  --with-libxml-include-prefix=[PFX]   Specify location of libxml headers],
105         LIBXML_CFLAGS="-I$withval"
106 )
107
108 AC_ARG_WITH(libxml-libs-prefix,
109         [  --with-libxml-libs-prefix=[PFX]      Specify location of libxml libs],
110         LIBXML_LIBS="-L$withval -lxml -lz"
111 )
112
113
114 dnl No internationalization (yet ?)
115 dnl 
116 dnl ALL_LINGUAS="it ko fr de es no ga sv pt ja fi cs"
117 dnl AM_GNU_GETTEXT
118 dnl 
119 dnl AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
120
121 AC_SUBST(CFLAGS)
122 AC_SUBST(CPPFLAGS)
123 AC_SUBST(LDFLAGS)
124
125 dnl
126 dnl find libxml
127 dnl
128 XML_CONFIG="xml2-config"
129 LIBXML_REQUIRED_VERSION=2.3.12
130 AC_MSG_CHECKING(for libxml libraries >= $LIBXML_REQUIRED_VERSION) 
131 if test "x$LIBXML_PREFIX" != "x"
132 then
133         if ${LIBXML_PREFIX}/bin/xml2-config --libs print > /dev/null 2>&1
134         then
135                 XML_CONFIG=${LIBXML_PREFIX}/bin/xml2-config
136         else
137                 XML_CONFIG=xml2-config
138         fi
139 fi
140
141 AC_DEFUN(VERSION_TO_NUMBER,
142 [`$1 | sed -e 's/libxml //' | awk 'BEGIN { FS = "."; } { printf "%d", ([$]1 * 1000 + [$]2) * 1000 + [$]3;}'`])
143
144 dnl
145 dnl test version and init our variables
146 dnl
147 if test "x$XML_CONFIG" != "x"
148 then
149         vers=VERSION_TO_NUMBER($XML_CONFIG --version)
150         if test "$vers" -ge VERSION_TO_NUMBER(echo $LIBXML_REQUIRED_VERSION)
151         then
152                 LIBXML_LIBS="`$XML_CONFIG --libs`"
153                 LIBXML_CFLAGS="`$XML_CONFIG --cflags`"
154                 AC_MSG_RESULT(found)
155         else
156                 AC_MSG_ERROR(You need at least libxml2 $LIBXML_REQUIRED_VERSION for this version of libxslt)
157         fi
158 else
159         AC_MSG_ERROR(Could not find libxml2 anywhere, check ftp://xmlsoft.org/.)
160 fi
161
162
163 AC_SUBST(XML_CONFIG)
164 AC_SUBST(LIBXML_LIBS)
165 AC_SUBST(LIBXML_CFLAGS)
166
167 XSLT_LIBDIR='-L${libdir}'
168 XSLT_INCLUDEDIR='-I${includedir}'
169 EXTRA_LIBS="$LIBXML_LIBS $M_LIBS"
170 XSLT_LIBS="-lxslt $LIBXML_LIBS $M_LIBS"
171
172 AC_SUBST(XSLT_LIBDIR)
173 AC_SUBST(XSLT_INCLUDEDIR)
174 AC_SUBST(EXTRA_LIBS)
175 AC_SUBST(XSLT_LIBS)
176
177 AC_OUTPUT([
178 Makefile
179 libxslt/Makefile
180 libxslt/xsltconfig.h
181 libxslt/xsltwin32config.h
182 tests/Makefile
183 tests/docs/Makefile
184 tests/REC1/Makefile
185 tests/REC2/Makefile
186 tests/REC/Makefile
187 tests/general/Makefile
188 tests/namespaces/Makefile
189 tests/numbers/Makefile
190 tests/documents/Makefile
191 tests/xmlspec/Makefile
192 tests/multiple/Makefile
193 tests/XSLTMark/Makefile
194 tests/docbook/Makefile
195 doc/Makefile
196 xslt-config
197 libxslt.spec
198 ])