OSDN Git Service

Version 2.4.5
[chasen-legacy/chasen.git] / configure.in
1 AC_INIT(README)
2 AC_PREREQ(2.59)
3 AM_INIT_AUTOMAKE(chasen, 2.4.5)
4 AM_CONFIG_HEADER(config.h)
5 AM_MAINTAINER_MODE
6
7 AC_PROG_CC
8 AC_PROG_CXX
9 AM_PROG_LIBTOOL
10 AC_PROG_CPP
11 AC_PROG_INSTALL
12 AC_PROG_LEX
13 AC_PROG_LN_S
14 AC_PROG_MAKE_SET
15
16 # Before making a release, the LTVERSION string should be modified.
17 # The string is of the form C:R:A.
18 # - If interfaces have been changed or added, but binary compatibility has
19 #   been preserved, change to C+1:0:A+1
20 # - If binary compatibility has been broken (eg removed or changed interfaces)
21 #   change to C+1:0:0
22 # - If the interface is the same as the previous version, change to C:R+1:A
23 LTVERSION="2:4:0"
24 AC_SUBST(LTVERSION)
25
26 dnl Checks for programs.
27 AC_ISC_POSIX
28 AC_PROG_INSTALL
29 AC_PROG_MAKE_SET
30
31 dnl Checks for header files.
32 AC_HEADER_STDC
33 AC_CHECK_HEADERS([fcntl.h limits.h stdlib.h string.h sys/param.h unistd.h])
34 AC_CHECK_HEADERS([sys/param.h sys/types.h netinet/in.h])
35 AC_CHECK_HEADERS([io.h windows.h])
36
37 # Checks for typedefs, structures, and compiler characteristics.
38 AC_C_CONST
39 AC_TYPE_OFF_T
40 AC_TYPE_SIZE_T
41
42 # Checks for library functions.
43 AC_FUNC_MALLOC
44 AC_FUNC_MEMCMP
45 AC_FUNC_MMAP
46 AC_FUNC_REALLOC
47 AC_FUNC_VPRINTF
48 AC_CHECK_FUNCS([mblen memset munmap strchr strpbrk strrchr])
49
50 AC_MSG_CHECKING([for darts.h])
51 AC_ARG_WITH(darts,
52     [  --with-darts=[DIR]      specify a path for the header file of Darts],
53     [if test "${with_darts}" = yes; then
54         vi_darts_path="/usr/local/include"
55      else
56         vi_darts_path=${with_darts}
57      fi
58      CXXFLAGS="${CXXFLAGS} -I${vi_darts_path}"
59     ])
60
61 AC_LANG_CPLUSPLUS
62
63 AC_CACHE_VAL(cl_cv_header_darts, [
64 AC_TRY_COMPILE([#include <darts.h>],[;], [cl_cv_header_darts=yes], [
65     AC_MSG_ERROR(no header of Darts. You need to get darts-0.32 or higher from http://chasen.org/~taku/software/darts/.)])])
66 AC_MSG_RESULT($cl_cv_header_darts)
67 #AC_CACHE_VAL(cl_cv_header_darts_version, [
68 #    AC_TRY_CPP([],cl_cv_header_darts_version=yes,[AC_MSG_ERROR(an old version of darts.h is found. You need to get darts-0.32 or higher from http://chasen.org/~taku/software/darts/.)])])
69 #AC_MSG_RESULT(checking for darts.h version >= 0.32... $cl_cv_header_darts_version)
70 AC_LANG_C
71
72 AC_ARG_WITH(libiconv,
73     [  --with-libiconv=[DIR]   use libiconv [in DIR]],
74     [if test x"${with_libiconv}" != x ; then
75         ICONV_CFLAGS="-I${with_libiconv}/include"
76         LIBS="$LIBS -L${with_libiconv}/lib"
77         AC_SUBST(ICONV_CFLAGS)
78      fi])
79
80 AC_CHECK_LIB(iconv, iconv, [], [
81         AC_CHECK_HEADER(iconv.h, [], AC_MSG_ERROR([ChaSen needs iconv]))])
82
83 AC_DEFUN(cl_VAR_ICONV_ARG, [
84      for CODE in $2; do
85        if (echo | iconv -f ${CODE} -t 'UTF-8' > iconv_test 2>&1); then
86          vi_iconv_arg_$1=${CODE}; break
87      fi;
88      done
89      rm -f iconv_test
90      if test x"$vi_iconv_arg_$1" = x; then
91          AC_MSG_ERROR($3)
92      fi
93      AC_DEFINE_UNQUOTED(ICONV_$1, "$vi_iconv_arg_$1")
94      ])
95
96 AC_MSG_CHECKING([iconv args])
97 cl_VAR_ICONV_ARG(EUCJP, [EUC-JP EUCJP eucJP], [cannot use EUC-JP with iconv])
98 cl_VAR_ICONV_ARG(SJIS, [SHIFT_JIS SHIFT-JIS SJIS],
99     [cannot use Shift_JIS with iconv])
100 cl_VAR_ICONV_ARG(88591, [ISO-8859-1 ISO_8859-1 8859-1 ISO8859-1],
101     [cannot use ISO-8859-1 with iconv])
102 AC_MSG_RESULT([$vi_iconv_arg_EUCJP $vi_iconv_arg_SJIS $vi_iconv_arg_88591])
103
104 dnl Checks for typedefs, structures, and compiler characteristics.
105 AC_TYPE_OFF_T
106 AC_TYPE_SIZE_T
107
108 dnl Checks for library functions.
109 AC_FUNC_MEMCMP
110 AC_FUNC_MMAP
111
112 case "$host_os" in
113     mingw* | os2*)
114     RCPATH='c:\\\\Program Files\\\\chasen\\\\etc\\\\chasenrc'
115     ;;
116     *)
117     # UNIX like-system
118     RCPATH="$sysconfdir/chasenrc"
119     ;;
120 esac
121 AC_SUBST(RCPATH)
122
123 if test -n "${GCC}"; then
124         CFLAGS="${CFLAGS} -Wall"
125 fi
126
127
128 AC_OUTPUT([ 
129             Makefile 
130             chasen-config
131             chasen/Makefile
132             mkchadic/Makefile
133             doc/Makefile 
134             lib/Makefile
135             tests/Makefile
136             chasen.spec
137           ],
138           [chmod +x chasen-config])
139
140
141 # removed the following entry from AC_OUTPUT
142 #           lib/Makefile.mingw32
143
144 # Local Variables:
145 # mode:shell-script
146 # sh-indentation:4
147 # End: