home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / Programming / ICU / src / icu / source / configure.in < prev    next >
Text File  |  1999-10-25  |  5KB  |  204 lines

  1. dnl -*-m4-*-
  2. dnl configure.in for ICU
  3. dnl Stephen F. Booth
  4.  
  5. dnl Process this file with autoconf to produce a configure script
  6. AC_INIT(common/utypes.h)
  7. AC_CONFIG_HEADER(common/icucfg.h)
  8. PACKAGE="icu"
  9. AC_SUBST(PACKAGE)
  10. VERSION="1.3.1"
  11. AC_SUBST(VERSION)
  12.  
  13. dnl Checks for programs
  14. AC_PROG_CC
  15. AC_PROG_CXX
  16. AC_PROG_INSTALL
  17. AC_CHECK_PROG(AUTOCONF, autoconf, autoconf, true)
  18.  
  19. dnl Determine the host system and Makefile fragment
  20. AC_CANONICAL_HOST
  21. ICU_CHECK_MH_FRAG
  22.  
  23. dnl Checks for libraries
  24. dnl On HP/UX, don't link to -lm from a shared lib because it isn't
  25. dnl  PIC (at least on 10.2)
  26. case "${host}" in
  27.     *-*-hpux*)     AC_CHECK_LIB(m, floor, LIB_M="-lm") ;;
  28.     *)         AC_CHECK_LIB(m, floor) 
  29.             LIB_M="" ;;
  30. esac
  31. AC_SUBST(LIB_M)
  32.  
  33. dnl special pthread handling 
  34. dnl AIX uses pthreads instead of pthread, and HP/UX uses cma
  35. AC_CHECK_LIB(pthread, pthread_create)
  36. if test $ac_cv_lib_pthread_pthread_create = no; then
  37. AC_CHECK_LIB(pthreads, pthread_create)
  38. fi
  39. if test $ac_cv_lib_pthread_pthread_create = no; then
  40. AC_CHECK_LIB(cma, pthread_create)
  41. fi
  42.  
  43. dnl Checks for header files
  44. AC_CHECK_HEADERS(inttypes.h)
  45. if test $ac_cv_header_inttypes_h = no; then
  46. HAVE_INTTYPES_H=0
  47. else
  48. HAVE_INTTYPES_H=1
  49. fi
  50. AC_SUBST(HAVE_INTTYPES_H)
  51.  
  52. dnl Check for endianness
  53. AC_C_BIGENDIAN(unknown)
  54. if test $ac_cv_c_bigendian = no; then
  55. U_IS_BIG_ENDIAN=0
  56. else
  57. U_IS_BIG_ENDIAN=1
  58. fi
  59. AC_SUBST(U_IS_BIG_ENDIAN)
  60.  
  61.  
  62. dnl Checks for typedefs
  63. AC_CHECK_TYPE(int8_t,signed char)
  64. AC_CHECK_TYPE(uint8_t,unsigned char)
  65. AC_CHECK_TYPE(int16_t,signed short)
  66. AC_CHECK_TYPE(uint16_t,unsigned short)
  67. AC_CHECK_TYPE(int32_t,signed long)
  68. AC_CHECK_TYPE(uint32_t,unsigned long)
  69. AC_CHECK_TYPE(bool_t,signed char)
  70.  
  71. if test $ac_cv_type_int8_t = no; then
  72. HAVE_INT8_T=0
  73. else
  74. HAVE_INT8_T=1
  75. fi
  76. AC_SUBST(HAVE_INT8_T)
  77.  
  78. if test $ac_cv_type_uint8_t = no; then
  79. HAVE_UINT8_T=0
  80. else
  81. HAVE_UINT8_T=1
  82. fi
  83. AC_SUBST(HAVE_UINT8_T)
  84.  
  85. if test $ac_cv_type_int16_t = no; then
  86. HAVE_INT16_T=0
  87. else
  88. HAVE_INT16_T=1
  89. fi
  90. AC_SUBST(HAVE_INT16_T)
  91.  
  92. if test $ac_cv_type_uint16_t = no; then
  93. HAVE_UINT16_T=0
  94. else
  95. HAVE_UINT16_T=1
  96. fi
  97. AC_SUBST(HAVE_UINT16_T)
  98.  
  99. if test $ac_cv_type_int32_t = no; then
  100. HAVE_INT32_T=0
  101. else
  102. HAVE_INT32_T=1
  103. fi
  104. AC_SUBST(HAVE_INT32_T)
  105.  
  106. if test $ac_cv_type_uint32_t = no; then
  107. HAVE_UINT32_T=0
  108. else
  109. HAVE_UINT32_T=1
  110. fi
  111. AC_SUBST(HAVE_UINT32_T)
  112.  
  113. if test $ac_cv_type_bool_t = no; then
  114. HAVE_BOOL_T=0
  115. else
  116. HAVE_BOOL_T=1
  117. fi
  118. AC_SUBST(HAVE_BOOL_T)
  119.  
  120. dnl Enable/disable extras
  121. AC_ARG_ENABLE(extras,
  122.     [  --enable-extras         build ICU extras [default=yes]],
  123.     [case "${enableval}" in
  124.         yes) extras=true ;;
  125.         no)  extras=false ;;
  126.         *) AC_MSG_ERROR(bad value ${enableval} for --enable-extras) ;;
  127.         esac], 
  128.     extras=true)
  129. ICU_CONDITIONAL(EXTRAS, test "$extras" = true)
  130.  
  131. dnl Enable/disable tests
  132. AC_ARG_ENABLE(tests,
  133.     [  --enable-tests          build ICU tests [default=yes]],
  134.     [case "${enableval}" in
  135.         yes) tests=true ;;
  136.         no)  tests=false ;;
  137.         *) AC_MSG_ERROR(bad value ${enableval} for --enable-tests) ;;
  138.         esac], 
  139.     tests=true)
  140. ICU_CONDITIONAL(TESTS, test "$tests" = true)
  141.  
  142. dnl Enable/disable samples
  143. AC_ARG_ENABLE(samples,
  144.     [  --enable-samples        build ICU samples [default=yes]],
  145.     [case "${enableval}" in
  146.         yes) samples=true ;;
  147.         no)  samples=false ;;
  148.         *) AC_MSG_ERROR(bad value ${enableval} for --enable-samples) ;;
  149.         esac], 
  150.     samples=true)
  151. ICU_CONDITIONAL(SAMPLES, test "$samples" = true)
  152.  
  153. dnl Platform-specific Makefile setup
  154. case "${host}" in
  155.     *-*-solaris*)     platform=SOLARIS ;;
  156.     *-*-linux*)     platform=LINUX ;;
  157.     *-*-aix*)     platform=AIX ;;
  158.     *-*-hpux*)     platform=HPUX ;;
  159.     *-*-os390*)    platform=OS390 ;;
  160.     *)         platform=UNKNOWN ;;
  161. esac
  162. AC_SUBST(platform)
  163. host_frag=$icu_cv_host_frag
  164. AC_SUBST_FILE(host_frag)
  165.  
  166. dnl Handle -rpath options for shared library paths
  167. case "${host}" in
  168.     *-*-solaris*)     ld_rpath_suf=":" ;;
  169.     *-*-linux*)     ld_rpath_suf=" " ;;
  170.     *-*-aix*)     ld_rpath_suf="" ;;
  171.     *-*-hpux*)     ld_rpath_suf=":" ;;
  172.     *-*-os390*)    ld_rpath_suf=" " ;;
  173.     *)         ld_rpath_suf="" ;;
  174. esac
  175. AC_SUBST(ld_rpath_suf)
  176.  
  177. dnl On HP/UX, main() functions compiled in C don't invoke
  178. dnl static constructors in C++ libs.  Hack around that here
  179. dnl by renaming some .c files to .cpp
  180. case "${host}" in
  181.     *-*-hpux*)     
  182.         for file in tools/gencol/gencol samples/date/date \
  183.           samples/cal/cal test/cintltst/cintltst
  184.         do
  185.           if test -f $file.c; then
  186.             mv $file.c $file.cpp
  187.           fi
  188.         done
  189.     ;;
  190. esac
  191.  
  192.  
  193. dnl output the Makefiles
  194. AC_OUTPUT([Makefile \
  195.         common/Makefile common/platform.h config/Makefile i18n/Makefile \
  196.         extra/Makefile extra/ustdio/Makefile \
  197.         tools/Makefile tools/ctestfw/Makefile tools/makeconv/Makefile \
  198.         tools/genrb/Makefile tools/gencol/Makefile \
  199.         tools/rbdump/Makefile \
  200.         test/Makefile test/intltest/Makefile test/cintltst/Makefile \
  201.         test/ieeetest/Makefile \
  202.         samples/Makefile samples/date/Makefile samples/cal/Makefile \
  203.         samples/XMLConverter/Makefile])
  204.