| dnl Licensed to the Apache Software Foundation (ASF) under one or more |
| dnl contributor license agreements. See the NOTICE file distributed with |
| dnl this work for additional information regarding copyright ownership. |
| dnl The ASF licenses this file to You under the Apache License, Version 2.0 |
| dnl (the "License"); you may not use this file except in compliance with |
| dnl the License. You may obtain a copy of the License at |
| dnl |
| dnl http://www.apache.org/licenses/LICENSE-2.0 |
| dnl |
| dnl Unless required by applicable law or agreed to in writing, software |
| dnl distributed under the License is distributed on an "AS IS" BASIS, |
| dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| dnl See the License for the specific language governing permissions and |
| dnl limitations under the License. |
| dnl run autogen.sh to generate the configure script. |
| |
| AC_PREREQ(2.59) |
| |
| AC_INIT(axis2_axiom-src, 1.7.0) |
| AC_CANONICAL_SYSTEM |
| AM_CONFIG_HEADER(config.h) |
| AM_INIT_AUTOMAKE |
| AC_PREFIX_DEFAULT(/usr/local/axis2_axiom) |
| m4_include(pkg.m4) |
| |
| dnl Checks for programs. |
| AC_PROG_CC |
| AC_PROG_CPP |
| AC_PROG_CXX |
| AC_PROG_LIBTOOL |
| AC_PROG_INSTALL |
| AC_PROG_LN_S |
| AC_PROG_MAKE_SET |
| |
| dnl check for flavours of varargs macros (test from GLib) |
| AC_MSG_CHECKING(for ISO C99 varargs macros in C) |
| AC_TRY_COMPILE([],[ |
| int a(int p1, int p2, int p3); |
| #define call_a(...) a(1,__VA_ARGS__) |
| call_a(2,3); |
| ],axis2c_have_iso_c_varargs=yes,axis2c_have_iso_c_varargs=no) |
| AC_MSG_RESULT($axis2c_have_iso_c_varargs) |
| |
| AC_MSG_CHECKING(for GNUC varargs macros) |
| AC_TRY_COMPILE([],[ |
| int a(int p1, int p2, int p3); |
| #define call_a(params...) a(1,params) |
| call_a(2,3); |
| ],axis2c_have_gnuc_varargs=yes,axis2c_have_gnuc_varargs=no) |
| AC_MSG_RESULT($axis2c_have_gnuc_varargs) |
| |
| dnl Output varargs tests |
| if test x$axis2c_have_iso_c_varargs = xyes; then |
| AC_DEFINE(HAVE_ISO_VARARGS,1,[Have ISO C99 varargs macros]) |
| fi |
| if test x$axis2c_have_gnuc_varargs = xyes; then |
| AC_DEFINE(HAVE_GNUC_VARARGS,1,[Have GNU-style varargs macros]) |
| fi |
| |
| dnl Checks for libraries. |
| AC_CHECK_LIB(dl, dlopen) |
| AC_CHECK_LIB(z, inflate) |
| |
| CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE" |
| if test "$GCC" = "yes"; then |
| CFLAGS="$CFLAGS -ansi -Wall -Wno-implicit-function-declaration " |
| fi |
| |
| AC_PATH_TOOL(PKGCONFIG, pkg-config) |
| |
| AC_MSG_CHECKING(whether to set -Werror) |
| AC_ARG_ENABLE(werror, [ --disable-werror do not treat warnings as errors during build], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| CFLAGS="$CFLAGS -Werror" |
| ;; |
| esac ], |
| ) |
| |
| |
| dnl Checks for header files. |
| AC_HEADER_STDC |
| AC_CHECK_HEADERS([stdio.h stdlib.h string.h]) |
| AC_CHECK_HEADERS([sys/socket.h]) |
| AC_CHECK_HEADERS([linux/if.h],[],[], |
| [ |
| #if HAVE_SYS_SOCKET_H |
| # include <sys/socket.h> |
| #endif |
| ]) |
| |
| dnl This is a check to see if we are running MacOS X |
| dnl It may be better to do a Darwin check |
| AC_CHECK_HEADER([sys/appleapiopts.h], |
| [AC_DEFINE([IS_MACOSX],[1],[Define to 1 if compiling on MacOS X])], |
| []) |
| |
| dnl Checks for typedefs, structures, and compiler characteristics. |
| dnl AC_C_CONST |
| |
| dnl Checks for library functions. |
| dnl AC_FUNC_MALLOC |
| dnl AC_FUNC_REALLOC |
| #AC_CHECK_FUNCS([memmove]) |
| |
| AC_MSG_CHECKING(whether to build xpath) |
| AC_ARG_ENABLE(xpath, [ --enable-xpath build xpath. default=yes], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| XPATH_DIR="xpath" |
| |
| ;; |
| esac ], |
| AC_MSG_RESULT(yes) |
| XPATH_DIR="xpath" |
| ) |
| |
| |
| AC_MSG_CHECKING(whether to build guththila xml parser library) |
| AC_ARG_ENABLE(guththila, [ --enable-guththila build guththila xml parser library wrapper. default=yes], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| WRAPPER_DIR="guththila" |
| |
| ;; |
| esac ], |
| AC_MSG_RESULT(yes) |
| WRAPPER_DIR="guththila" |
| ) |
| |
| AC_MSG_CHECKING(whether to build libxml2 xml parser library) |
| AC_ARG_ENABLE(libxml2, [ --enable-libxml2 build libxml2 xml parser library wrapper. default=no], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| CFLAGS="$CFLAGS -DAXIS2_LIBXML2_ENABLED" |
| WRAPPER_DIR="libxml2" |
| PKG_CHECK_MODULES(LIBXML2, libxml-2.0) |
| |
| ;; |
| esac ], |
| AC_MSG_RESULT(no) |
| ) |
| |
| AC_MSG_CHECKING(whether to enable code coverage statistics) |
| AC_ARG_ENABLE(coverage, [ --enable-coverage enable code coverage statistics (default=no)], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| CFLAGS="$CFLAGS" |
| CPPFLAGS="$CPPFLAGS" |
| CXXFLAGS="$CXXFLAGS" |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage" |
| CPPFLAGS="$CPPFLAGS -fprofile-arcs -ftest-coverage" |
| CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage" |
| LDFLAGS="$LDFLAGS -lgcov --coverage" |
| |
| ;; |
| esac ],[ |
| AC_MSG_RESULT(no) |
| CFLAGS="$CFLAGS" |
| CPPFLAGS="$CPPFLAGS" |
| CXXFLAGS="$CXXFLAGS"] |
| ) |
| |
| AC_MSG_CHECKING(whether to enable address sanitizer) |
| AC_ARG_ENABLE(asan, [ --enable-asan |
| enable address sanitizer (default=no)], |
| [ case "${enableval}" in |
| no) |
| AC_MSG_RESULT(no) |
| CFLAGS="$CFLAGS" |
| CPPFLAGS="$CPPFLAGS" |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| CFLAGS="$CFLAGS -fsanitize=address -fno-omit-frame-pointer" |
| CPPFLAGS="$CPPFLAGS -fsanitize=address -fno-omit-frame-pointer" |
| CXXFLAGS="$CXXFLAGS -fsanitize=address -fno-omit-frame-pointer" |
| ;; |
| esac ],[ |
| AC_MSG_RESULT(no) |
| CFLAGS="$CFLAGS" |
| CPPFLAGS="$CPPFLAGS"] |
| ) |
| |
| |
| AC_MSG_CHECKING(whether to use the Google test framework) |
| AC_ARG_WITH(gtest, |
| [ --with-gtest[=PATH] Find the gtest source files in 'PATH'.], |
| [ case "$withval" in |
| no) |
| AC_MSG_RESULT(no) |
| USE_GTEST="" |
| GTEST_DIR="" |
| GTEST="" |
| ;; |
| *) |
| AC_MSG_RESULT(yes) |
| GTEST_DIR="$withval" |
| GTEST="gtest" |
| CXXFLAGS="$CXXFLAGS -g -Wall -Wextra -pthread" |
| ;; |
| esac ], |
| AC_MSG_RESULT(no) |
| ) |
| |
| |
| AC_MSG_CHECKING(whether to build tests) |
| AC_ARG_ENABLE(tests, [ --enable-tests build tests. default=no], |
| [ case "${enableval}" in |
| yes) |
| AC_MSG_RESULT(yes) |
| TESTDIR="test" |
| ;; |
| *) |
| AC_MSG_RESULT(no) |
| TESTDIR="" |
| |
| ;; |
| esac ], |
| AC_MSG_RESULT(no) |
| TESTDIR="" |
| ) |
| |
| PKG_PROG_PKG_CONFIG(0.15) |
| CFLAGS="$CFLAGS $GUTHTHILA_CFLAGS" |
| VERSION_NO="7:0:7" |
| |
| AC_SUBST(VERSION_NO) |
| AC_SUBST(LIBXML2_CFLAGS) |
| AC_SUBST(LIBXML2_LIBS) |
| AC_SUBST(WRAPPER_DIR) |
| AC_SUBST(GUTHTHILA_LIBS) |
| AC_SUBST(TESTDIR) |
| AC_SUBST(GTEST_DIR) |
| AC_SUBST(GTEST) |
| AC_SUBST(XPATH_DIR) |
| |
| AC_CONFIG_FILES([Makefile \ |
| src/Makefile \ |
| src/parser/Makefile \ |
| src/parser/libxml2/Makefile \ |
| src/parser/guththila/Makefile \ |
| src/soap/Makefile \ |
| src/om/Makefile \ |
| src/util/Makefile \ |
| src/attachments/Makefile \ |
| src/xpath/Makefile \ |
| gtest/Makefile \ |
| test/Makefile \ |
| test/om/Makefile \ |
| test/parser/Makefile \ |
| test/soap/Makefile \ |
| test/util/Makefile \ |
| test/xpath/Makefile \ |
| include/Makefile |
| ]) |
| |
| AC_OUTPUT |