| dnl Process this file with autoconf to produce a configure script |
| AC_INIT(src/xalanc/PlatformSupport/PlatformSupportDefinitions.hpp) |
| |
| dnl Checks for programs |
| AC_PROG_CC |
| AC_PROG_CXX |
| AC_PROG_INSTALL |
| AC_CHECK_PROG(AUTOCONF, autoconf, autoconf, true) |
| |
| |
| dnl Check for gcc problems |
| |
| if test "$CXX" = "g++" -o "$CXX" = "c++"; then |
| |
| AC_MSG_CHECKING([whether -fno-elide-constructors works correctly]) |
| |
| old_cxxflags=$CXXFLAGS |
| CXXFLAGS="$CXXFLAGS -fno-elide-constructors" |
| |
| AC_LANG_CPLUSPLUS |
| |
| AC_TRY_COMPILE([#include <vector>], |
| [], |
| [AC_MSG_RESULT([yes])], |
| CXXFLAGS=$old_cxxflags |
| [AC_MSG_RESULT([no])]); |
| |
| fi |
| |
| dnl |
| dnl Do not know how to use this macro, so comment it out. |
| dnl |
| dnl special pthread handling (AIX uses pthreads instead of pthread) |
| dnl AC_CHECK_LIB(pthread, pthread_create) |
| dnl if test $ac_cv_lib_pthread_pthread_create = no; then |
| dnl AC_CHECK_LIB(pthreads, pthread_create) |
| dnl fi |
| dnl |
| |
| dnl Determine the host system and Makefile fragment |
| AC_CANONICAL_HOST |
| |
| dnl Platform-specific Makefile setup |
| case "${host}" in |
| *-*-solaris*) platform=SOLARIS ;; |
| *-*-linux*) platform=LINUX ;; |
| *-*-freebsd*) platform=FREEBSD ;; |
| *-*-netbsd*) platform=NETBSD ;; |
| *-*-irix*) platform=IRIX ;; |
| *-*-aix*) platform=AIX ;; |
| ia64-hp*) platform=HPUX ; osver=HPUX11 ; osvariant=IA64;; |
| *-*-hp*) platform=HPUX ; |
| case "${host}" in |
| *-*-hpux11*) osver=HPUX11;; |
| *-*-hpux10*) osver=HPUX10;; |
| *) osver=HPUX11;; |
| esac;; |
| *-*-mvs*) platform=OS390 ;; |
| *-*-osf*) platform=TRU64 ;; |
| *-apple-darwin*) platform=MACOSX ;; |
| *-*-os400*) platform=OS400 ;; |
| *-*-OS400*) platform=OS400 ;; |
| *-*-cygwin*) platform=CYGWIN ;; |
| *) platform=UNKNOWN ;; |
| esac |
| |
| dnl Checks for libraries |
| if test "$platform" != "OS400"; then |
| AC_CHECK_LIB(m, floor) |
| fi |
| |
| dnl check if mbstowcs is available and can correctly count only |
| AC_HEADER_STDC |
| AC_CHECK_FUNCS([mbstowcs],,,) |
| if test x"$ac_cv_func_mbstowcs" = x"no"; then |
| WCSTOMBS="-DXALAN_USE_XERCES_LOCAL_CODEPAGE_TRANSCODERS" |
| else |
| AC_MSG_CHECKING(if mbstowcs can count only) |
| AC_TRY_RUN([ |
| #if STDC_HEADERS |
| #include <stdlib.h> |
| #endif |
| |
| int main(int argc, char *argv[]) |
| { |
| wchar_t in[5] = { 0x74, 0x65, 0x73, 0x74, 0x00 }; |
| |
| if (wcstombs(0, in, 0) == -1) { |
| exit(1); |
| } |
| |
| exit(0); |
| }], [AC_MSG_RESULT(yes)], |
| [WCSTOMBS="-DXALAN_USE_XERCES_LOCAL_CODEPAGE_TRANSCODERS"; |
| AC_MSG_RESULT(no)], |
| [WCSTOMBS="-DXALAN_USE_XERCES_LOCAL_CODEPAGE_TRANSCODERS"; |
| AC_MSG_RESULT(cross-compiling default)]) |
| fi |
| |
| |
| AC_SUBST(platform) |
| |
| cxx=${CXX} |
| AC_SUBST(cxx) |
| |
| cc=${CC} |
| AC_SUBST(cc) |
| |
| AC_SUBST(prefix) |
| dnl Not used: |
| AC_SUBST(osver) |
| |
| AC_SUBST(osvariant) |
| |
| cxxflags=${CXXFLAGS} |
| AC_SUBST(cxxflags) |
| |
| dnl Not used: |
| cppflags=${CPPFLAGS} |
| AC_SUBST(cppflags) |
| |
| cflags=${CFLAGS} |
| AC_SUBST(cflags) |
| |
| ldflags=${LDFLAGS} |
| AC_SUBST(ldflags) |
| |
| libs=${LIBS} |
| AC_SUBST(libs) |
| |
| transcoder=${TRANSCODER} |
| AC_SUBST(transcoder) |
| |
| xalan_locale_system=${XALAN_LOCALE_SYSTEM} |
| AC_SUBST(xalan_locale_system) |
| xalan_locale=${XALAN_LOCALE} |
| AC_SUBST(xalan_locale) |
| wcstombs=${WCSTOMBS} |
| AC_SUBST(wcstombs) |
| |
| dnl Not used: |
| threads=${THREADS} |
| AC_SUBST(threads) |
| |
| bitstobuild=${BITSTOBUILD} |
| AC_SUBST(bitstobuild) |
| |
| dnl output the Makefiles |
| if test ! -d src; then |
| mkdir src |
| fi |
| AC_OUTPUT([Makefile.incl \ |
| Makefile \ |
| src/xalanc/Makefile \ |
| src/xalanc/Utils/Makefile \ |
| src/xalanc/Utils/MsgCreator/Makefile \ |
| src/xalanc/Utils/XalanMsgLib/Makefile \ |
| samples/Makefile \ |
| Tests/Makefile]) |
| |
| |