Develop and Download Open Source Software

Browse CVS Repository

Contents of /freewnn/FreeWnn/configure.in

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.38 - (show annotations) (download)
Tue Jun 10 10:39:08 2003 UTC (20 years, 10 months ago) by aono
Branch: MAIN
Changes since 1.37: +5 -11 lines
Some configure.in change.

- Fixed usage of AC_CHECK_TYPES (socklen_t check).
- (Temporally?) removed *BSD-specific section (and some other one).
- Respect CDEBUGFLAGS even if --disable-debug.

1 dnl
2 dnl $Id: configure.in,v 1.37 2003/06/08 03:09:48 hiroo Exp $
3 dnl
4
5 dnl
6 dnl FreeWnn is a network-extensible Kana-to-Kanji conversion system.
7 dnl This file is part of FreeWnn.
8 dnl
9 dnl Copyright Kyoto University Research Institute for Mathematical Sciences
10 dnl 1987, 1988, 1989, 1990, 1991, 1992
11 dnl Copyright OMRON Corporation. 1987, 1988, 1989, 1990, 1991, 1992, 1999
12 dnl Copyright ASTEC, Inc. 1987, 1988, 1989, 1990, 1991, 1992
13 dnl Copyright FreeWnn Project 1999, 2000, 2001, 2002, 2003
14 dnl
15 dnl Maintainer: FreeWnn Project <freewnn@tomo.gr.jp>
16 dnl
17 dnl This program is free software; you can redistribute it and/or modify
18 dnl it under the terms of the GNU General Public License as published by
19 dnl the Free Software Foundation; either version 2 of the License, or
20 dnl (at your option) any later version.
21 dnl
22 dnl This program is distributed in the hope that it will be useful,
23 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
24 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 dnl GNU General Public License for more details.
26 dnl
27 dnl You should have received a copy of the GNU General Public License
28 dnl along with this program; if not, write to the Free Software
29 dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
30 dnl
31
32 dnl
33 dnl Process this file with autoconf to produce a configure script.
34 dnl
35 AC_INIT(Wnn/conv/cvt_head.h)
36 AC_CONFIG_HEADER(config.h)
37
38 dnl ====================================================================
39 dnl Check optional features
40 dnl ====================================================================
41
42 AC_CANONICAL_HOST
43
44 dnl build and install libraries, server or client
45
46 AC_ARG_ENABLE(debug,
47 [ --enable-debug enable debug options [default=no]],
48 [case "${enableval}" in
49 yes) debug=true ;;
50 no) debug=false ;;
51 *) AC_MSG_ERROR(bad value for --enable-debug)
52 esac], debug=false)
53
54 AC_ARG_ENABLE(libraries,
55 [ --enable-libraries build and install libraries [default=yes]],
56 [case "${enableval}" in
57 yes) libraries=true ;;
58 no) libraries=false ;;
59 *) AC_MSG_ERROR(bad value for --enable-libraries) ;;
60 esac], libraries=true)
61
62 AC_ARG_ENABLE(server,
63 [ --enable-server build and install server [default=yes]],
64 [case "${enableval}" in
65 yes) server=true ;;
66 no) server=false ;;
67 *) AC_MSG_ERROR(bad value for --enable-server) ;;
68 esac], server=true)
69
70 AC_ARG_ENABLE(client,
71 [ --enable-client build and install clients [default=no]],
72 [case "${enableval}" in
73 yes) client=true ;;
74 no) client=false ;;
75 *) AC_MSG_ERROR(bad value for --enable-client) ;;
76 esac], client=false)
77
78 if test $libraries = true; then
79 SUBDIRS="\$(LIB_SUBDIRS)"
80 WNNMANDIR="\$(LIB_WNNMANDIR)"
81 fi
82 if test $server = true; then
83 SUBDIRS="$SUBDIRS \$(SERVER_SUBDIRS)"
84 WNNMANDIR="$WNNMANDIR \$(SERVER_WNNMANDIR)"
85 fi
86 if test $client = true; then
87 SUBDIRS="$SUBDIRS \$(CLIENT_SUBDIRS)"
88 dnl currently client is only uum and its man is in SERVER_WNNMANDIR
89 dnl WNNMANDIR=$WNNMANDIR \$(CLIENT_WNNMANDIR)"
90 fi
91
92 AC_SUBST(SUBDIRS)
93 AC_SUBST(WNNMANDIR)
94
95 dnl For Severs
96
97 AC_ARG_ENABLE(Wnn,
98 [ --enable-Wnn build and install Wnn [default=yes]],
99 [case "${enableval}" in
100 yes) Wnn="Wnn";;
101 no) Wnn="" ;;
102 *) AC_MSG_ERROR(bad value for --enable-Wnn) ;;
103 esac], Wnn="Wnn")
104 AC_SUBST(Wnn)
105
106 if test "$server" = true -a "$Wnn" = Wnn; then
107 # JSERVER_SUBDIRS1="\$(JSERVER_SUBDIRS1)"
108 JSERVER_SUBDIRS2="\$(JSERVER_SUBDIRS2)"
109 else
110 # JSERVER_SUBDIRS1=""
111 JSERVER_SUBDIRS2=""
112 fi
113 dnl AC_SUBST(JSERVER_SUBDIRS1)
114 AC_SUBST(JSERVER_SUBDIRS2)
115
116 AC_ARG_ENABLE(cWnn,
117 [ --enable-cWnn build and install cWnn [default=yes]],
118 [case "${enableval}" in
119 yes) cWnn="cWnn" ;;
120 no) cWnn="" ;;
121 *) AC_MSG_ERROR(bad value for --enable-cWnn) ;;
122 esac], cWnn="cWnn")
123 AC_SUBST(cWnn)
124
125 AC_ARG_ENABLE(kWnn,
126 [ --enable-kWnn build and install kWnn [default=yes]],
127 [case "${enableval}" in
128 yes) kWnn="kWnn" ;;
129 no) kWnn="" ;;
130 *) AC_MSG_ERROR(bad value for --enable-kWnn) ;;
131 esac], kWnn="kWnn")
132 AC_SUBST(kWnn)
133
134 dnl For a library libwnn
135
136 dnl AC_ARG_WITH(libwnn,
137 dnl [ --with-libwnn use installed Wnn library [default=no]],
138 dnl [case "${withval}" in
139 dnl yes|no) with_libwnn=${withval};;
140 dnl *) AC_MSG_ERROR(invalid argument to --with-libwnn) ;;
141 dnl esac], with_libwnn=no)
142 dnl
143
144 AC_ARG_WITH(libwnn,
145 [ --with-libwnn use installed Wnn library [default=no]],
146 [ with_libwnn="${withval}"
147 AC_ARG_WITH(wnn-includes,
148 [ --with-wnn-includes=DIR WNN include files are in DIR],
149 [wnnincludedir="-I${withval}"], [wnnincludedir=''])
150 AC_ARG_WITH(wnn-libraries,
151 [ --with-wnn-libraries=DIR Search for WNN libraries in DIR[default=/usr/local/lib]],
152 [wnnlibdir="${withval}"], [wnnlibdir='/usr/local/lib'])
153 if test "X${with_libwnn}" = X-lwnn; then
154 WNNJLIB="-L${wnnlibdir} -lwnn"
155 elif test X"`echo ${with_libwnn} | grep '^/.*'`" != X ; then
156 WNNJLIB="${with_libwnn}"
157 else
158 WNNJLIB="${wnnlibdir}/libwnn.a"
159 fi
160 DEPWNNJLIB=""
161 HINSI_DATA="\$(JWNNWNNDIR)/hinsi.data"
162 ],
163 [ WNNJLIB="\$(WNNJLIBSRC)/libwnn.la"
164 DEPWNNJLIB="\$(WNNJLIB)"
165 HINSI_DATA="\$(WNNJDSRC)/hinsi.data"
166 ])
167 AC_SUBST(WNNJLIB)
168 AC_SUBST(DEPWNNJLIB)
169 AC_SUBST(HINSI_DATA)
170
171 AC_ARG_WITH(libcwnn,
172 [ --with-libcwnn use installed cWnn library [default=no]],
173 [
174 AC_ARG_WITH(cwnn-includes,
175 [ --with-cwnn-includes=DIR CWNN include files are in DIR],
176 [cwnnincludedir="-I${withval}"], [cwnnincludedir=''])
177 AC_ARG_WITH(cwnn-libraries,
178 [ --with-cwnn-libraries=DIR Search for CWNN libraries in DIR[default=/usr/local/lib]],
179 [cwnnlibdir="${withval}"], [cwnnlibdir='/usr/local/lib'])
180 if test "X${with_libcwnn}" = X-lcwnn; then
181 CWNNJLIB="-L${cwnnlibdir} -lcwnn"
182 elif test X"`echo ${with_libcwnn} | grep '^/.*'`" != X ; then
183 CWNNJLIB="${with_libcwnn}"
184 else
185 CWNNJLIB="${cwnnlibdir}/libcwnn.a"
186 fi
187 DEPCWNNJLIB=""
188 CHINSI_DATA="\$(CWNNWNNDIR)/cixing.data"
189 THINSI_DATA="\$(TWNNTDSRC)/cixing.data"
190 ],
191 [ CWNNJLIB="\$(CWNNJLIBSRC)/libcwnn.la"
192 DEPCWNNJLIB="\$(CWNNJLIB)"
193 CHINSI_DATA="\$(CWNNCDSRC)/cixing.data"
194 THINSI_DATA="\$(TWNNTDSRC)/cixing.data"
195 ])
196 AC_SUBST(CWNNJLIB)
197 AC_SUBST(DEPCWNNJLIB)
198 AC_SUBST(CHINSI_DATA)
199 AC_SUBST(THINSI_DATA)
200
201 AC_ARG_WITH(libkwnn,
202 [ --with-libkwnn use installed kWnn library [default=no]],
203 [
204 AC_ARG_WITH(kwnn-includes,
205 [ --with-kwnn-includes=DIR KWNN include files are in DIR],
206 [kwnnincludedir="-I${withval}"], [kwnnincludedir=''])
207 AC_ARG_WITH(kwnn-libraries,
208 [ --with-kwnn-libraries=DIR Search for KWNN libraries in DIR[default=/usr/local/lib]],
209 [kwnnlibdir="${withval}"], [kwnnlibdir='/usr/local/lib'])
210 if test "X${with_libkwnn}" = X-lkwnn; then
211 KWNNJLIB="-L${kwnnlibdir} -lkwnn"
212 elif test X"`echo ${with_libkwnn} | grep '^/.*'`" != X ; then
213 KWNNJLIB="${with_libkwnn}"
214 else
215 KWNNJLIB="${kwnnlibdir}/libkwnn.a"
216 fi
217 DEPKWNNJLIB=""
218 KHINSI_DATA="\$(KWNNWNNDIR)/hinsi.data"
219 ],
220 [ KWNNJLIB="\$(KWNNJLIBSRC)/libkwnn.la"
221 DEPKWNNJLIB="\$(KWNNJLIB)"
222 KHINSI_DATA="\$(KWNNKDSRC)/hinsi.data"
223 ])
224 AC_SUBST(KWNNJLIB)
225 AC_SUBST(DEPKWNNJLIB)
226 AC_SUBST(KHINSI_DATA)
227
228 dnl
229 dnl Build Options
230 dnl
231
232 AC_ARG_ENABLE(ipv6,
233 [ --enable-ipv6 build and install IPv6 [default=no]],
234 [case "${enableval}" in
235 yes) ipv6="-DINET6";;
236 no) ipv6="" ;;
237 *) AC_MSG_ERROR(bad value for --enable-ipv6) ;;
238 esac], ipv6="")
239 AC_SUBST(ipv6)
240
241 AC_ARG_ENABLE(unsafe-path,
242 [ --enable-unsafe-path allow creating files in an arbitrary path [default=no]],
243 [case "${enableval}" in
244 yes) unsafe_path=true;;
245 no) unsafe_path=false;;
246 *) AC_MSG_ERROR(bad value for --enable-unsafe-path) ;;
247 esac], unsafe_path=false)
248 AC_SUBST(unsafe_path)
249
250 if test ${unsafe_path} = true; then
251 AC_DEFINE(WNN_ALLOW_UNSAFE_PATH, 1,
252 [Define to allow writing to other than JSERVERDIR.])
253 fi
254
255 dnl
256 dnl Checks for cc and cpp.
257 dnl
258 AC_PROG_CC
259
260 dnl System specific options
261 dnl Now that we are using autoconf, CCOPTIONS should be nuked...
262 case $host in
263 *-*-linux*)
264 CCOPTIONS="-Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE"
265 ;;
266 *-*-darwin*)
267 # Unfortunately, autoconf (at least 2.57) does not recognize
268 # proper CPP. (Normal cpp-precomp nor auto-retrying in basic mode does
269 # not work with pubdic+ processing.) So define here ....
270 CPP=${CPP:-"gcc -E -no-cpp-precomp"}
271 ;;
272 *-*-sunos*)
273 if test $GCC = yes; then
274 CCOPTIONS="-Dsun -Dsparc"
275 else
276 CCOPTIONS=""
277 fi
278 ;;
279 *-*-solaris2.*)
280 # Will 'solaris*' be OK?
281 if test $GCC = yes; then
282 CCOPTIONS="-Dsun -D`uname -p` -DSVR4 -DSYSV"
283 else
284 CCOPTIONS="-Xc -xF -xcg92 -Dsun -D`uname -p` -DSVR4 -DSYSV"
285 fi
286 ;;
287 *-*-hpux*)
288 if test $GCC = yes; then
289 CCOPTIONS="-Dhpux -DSYSV"
290 else
291 CCOPTIONS="-Ae -Dhpux -DSYSV"
292 fi
293 ;;
294 i[[34567]]86-pc-beos*)
295 CCOPTIONS="-DBEOS -D_POSIX_SOURCE -D_BSD_SOURCE"
296 ;;
297 powerpc-*-beos*)
298 CCOPTIONS="-DBEOS -D_POSIX_SOURCE -D_BSD_SOURCE"
299 ;;
300 *-*-aix*)
301 CCOPTIONS="-DSYSV"
302 ;;
303 *)
304 dnl AC_MSG_WARN("It is not reported if FreeWnn works on this system. But continuing...")
305 dnl AC_MSG_WARN([(It may or may not work if you set CCOPTIONS properly.)])
306 ;;
307 esac
308
309 dnl Checking if we use gcc or not
310 if test $debug = true; then
311 if test $GCC = yes; then
312 CDEBUGFLAGS=${CDEBUGFLAGS:-"-g2 -O2 -Wall -fstack-check"}
313 else
314 CDEBUGFLAGS=${CDEBUGFLAGS:-""}
315 fi
316 INSTPGMFLAGS=
317 else
318 CDEBUGFLAGS=${CDEBUGFLAGS:-""}
319 INSTPGMFLAGS="-s"
320 fi
321 AC_SUBST(CCOPTIONS)
322 AC_SUBST(CDEBUGFLAGS)
323 AC_SUBST(INSTPGMFLAGS)
324
325 echo "Set CDEBUGFLAGS and CCOPTIONS to following:"
326 echo ' CDEBUGFLAGS="'"$CDEBUGFLAGS"'"'
327 echo ' CCOPTIONS="'"$CCOPTIONS"'"'
328
329 dnl ��������������������������������configure������������CPP������������
330 dnl ������������������������������������CPP������������������������
331 dnl ��CPP=${CPP:-"/usr/ccs/lib/cpp"}������������������������������������
332 dnl ����������������
333 AC_PROG_CPP
334
335 dnl
336 dnl Checks for programs.
337 dnl
338 dnl ### AC_PROG_YACC
339 dnl ### AC_PROG_LEX
340 AC_PROG_INSTALL
341 AC_PROG_LN_S
342 AC_PROG_MAKE_SET
343 AC_PROG_LIBTOOL
344 AC_SUBST(LIBTOOL_DEPS)
345
346 dnl Checks for libraries.
347 dnl ### dnl Replace `main' with a function in -lX11:
348 dnl ### AC_CHECK_LIB(X11, main)
349 dnl ### dnl Replace `main' with a function in -lcurses:
350 dnl ### AC_CHECK_LIB(curses, main)
351
352 AC_CHECK_LIB(crypt, crypt)
353 AC_CHECK_LIB(socket, connect)
354 AC_CHECK_LIB(bind, getservbyname)
355 AC_CHECK_LIB(nsl, gethostbyname)
356
357 dnl
358 dnl Checks for header files.
359 dnl
360 AC_PATH_X
361 AC_HEADER_STDC
362 AC_HEADER_SYS_WAIT
363 AC_HEADER_TIME
364 AC_CHECK_HEADERS(fcntl.h syslog.h unistd.h utmp.h utmpx.h \
365 sys/file.h sys/ioctl.h sys/time.h sys/types.h sys/param.h \
366 malloc.h strings.h memory.h \
367 curses.h ncurses.h sgtty.h term.h termio.h termios.h \
368 )
369
370 dnl
371 dnl Checks for typedefs, structures, and compiler characteristics.
372 dnl
373 AC_TYPE_MODE_T
374 AC_HEADER_TIME
375
376 dnl AC_CHECK_TYPES(time_t,,
377 dnl AC_DEFINE(time_t, long, [Define missing time_t.]),
378 dnl [INCLUDES = time.h])
379 AC_CHECK_TYPES(socklen_t,,
380 AC_DEFINE(socklen_t, int, [Define missing socklen_t.]),
381 [#include <sys/socket.h>])
382
383 dnl
384 dnl Checks for symbol
385 dnl
386
387 dnl
388 dnl Checks for library functions.
389 dnl
390 AC_PROG_GCC_TRADITIONAL
391
392 dnl idea borrowed from EB Library http://www.sra.co.jp/people/m-kasahr/eb/
393 AC_TYPE_SIGNAL
394 if test "$ac_cv_type_signal" = void; then
395 AC_DEFINE(RETSIGTYPE_VOID, 1, [Define if the signal function returns void.])
396 fi
397
398 AC_FUNC_MEMCMP
399 AC_CHECK_FUNCS(getpgid getpgrp setpgrp wait3)
400 AC_FUNC_GETPGRP
401 AC_FUNC_SETPGRP
402 dnl FreeWnn do not use the 3rd parameter of wait3().
403 dnl AC_FUNC_WAIT3
404
405 AC_CHECK_FUNCS(random drand48 fchmod getopt killpg \
406 FD_SET \
407 gethostname select socket closesocket setsockopt send recv \
408 getdtablesize getrlimit syslog vsyslog setenv snprintf)
409 dnl for bcopy/index -> memcpy/strchr conversion (preparation):
410 AC_CHECK_FUNCS(bcopy bzero bcmp index rindex \
411 memcpy memmove memset strchr strrchr)
412
413 dnl Check fallback functions for jserver (should use AC_REPLACE_FUNCS?)
414 JS_SUPPORTOBJS=
415 AC_CHECK_FUNCS(mkdir vasprintf, ,
416 [JS_SUPPORTOBJS="${JS_SUPPORTOBJS} ${ac_func}.o"])
417 AC_SUBST(JS_SUPPORTOBJS)
418
419
420 dnl
421 dnl TCP Wrapper.
422 dnl
423 AC_MSG_CHECKING(whether to use libwrap)
424 AC_ARG_WITH(libwrap,
425 [ --with-libwrap[=PATH] Compile in libwrap (tcp_wrappers) support.],
426 [ case "$withval" in
427 no)
428 AC_MSG_RESULT(no)
429 ;;
430 yes)
431 AC_MSG_RESULT(yes)
432 AC_CHECK_LIB(wrap, request_init, [
433 LIBS="-lwrap $LIBS"
434 AC_DEFINE(HAVE_LIBWRAP, 1,
435 [Define libwrap (TCP Wrapper) support.]) ])
436 CFLAGS="-DHAVE_LIBWRAP $CFLAGS"
437 ;;
438 *)
439 AC_MSG_RESULT(yes)
440 if test -d "$withval"; then
441 WRAPINCLUDES="-I$withval"
442 WRAPLIBS="-L$withval -lwrap"
443 else
444 WRAPINCLUDES="$withval"
445 fi
446 OLDLIBS="$LIBS"
447 CFLAGS="-DHAVE_LIBWRAP $WRAPINCLUDES $CFLAGS"
448 LIBS="$WRAPLIBS $LIBS"
449
450 AC_TRY_LINK([ int allow_severity; int deny_severity; ],
451 [ hosts_access(); ],
452 [],
453 [ AC_MSG_ERROR(Could not find the $withval library. You must first install tcp_wrappers.) ])
454 ;;
455 esac ],
456 AC_MSG_RESULT(no)
457 )
458
459
460 dnl
461 dnl Creating Makefiles.
462 dnl
463 # mkdir -p Contrib/dic/gerodic in case builddir != srcdir
464 for dir in Contrib Contrib/dic Contrib/dic/gerodic; do
465 if test ! -d $dir; then
466 echo "creating $dir ..."
467 mkdir $dir
468 fi
469 done
470
471 dnl
472 dnl Generate Makefiles
473 dnl
474
475 dnl Generic
476
477 makefiles_generic="makerule.mk Makefile"
478
479 dnl Japanese
480
481 if test "x${Wnn}" = "xWnn"; then
482 makefiles_wnn="Wnn/Makefile Wnn/conv/Makefile Wnn/include/Makefile \
483 Wnn/jd/Makefile Wnn/jd/rk/Makefile Wnn/jd/rk.vi/Makefile \
484 Wnn/jlib/Makefile Wnn/jlib.V3/Makefile Wnn/jserver/Makefile \
485 Wnn/jutil/Makefile Wnn/ld/Makefile Wnn/ld/rk/Makefile \
486 Wnn/romkan/Makefile Wnn/uum/Makefile \
487 Wnn/man/Makefile Wnn/man/2.env/Makefile Wnn/man/3.libwnn/Makefile \
488 Wnn/man/4.cmd/Makefile Wnn/man/6.jutil/Makefile \
489 Wnn/man/2.env/dic/Makefile Wnn/man/2.env/wnn/Makefile \
490 Wnn/man/3.libwnn/jl_lib/Makefile Wnn/man/3.libwnn/js_lib/Makefile \
491 Wnn/man/3.libwnn/misc_lib/Makefile Wnn/man/3.libwnn/rk_lib/Makefile"
492 makefiles_wnn_dic="Contrib/dic/gerodic/Makefile Wnn/pubdicplus/Makefile \
493 Wnn/wnncons/Makefile Wnn/wnncons/dic/Makefile"
494 fi
495
496 dnl Chinese and Taiwanese
497
498 if test "x$cWnn" = "xcWnn"; then
499 makefiles_cwnn="cWnn/Makefile cWnn/conv/Makefile cWnn/etc/Makefile \
500 cWnn/cd/Makefile cWnn/cd/rk/Makefile \
501 cWnn/cd/rk_p/Makefile cWnn/cd/rk_z/Makefile \
502 cWnn/td/Makefile cWnn/td/rk/Makefile \
503 cWnn/td/rk_z/Makefile cWnn/td/rk_p/Makefile \
504 cWnn/include/Makefile cWnn/jlib/Makefile \
505 cWnn/jserver/Makefile cWnn/jutil/Makefile \
506 cWnn/man/Makefile cWnn/man/1.intro/Makefile cWnn/man/2.env/Makefile \
507 cWnn/man/4.cmd/Makefile cWnn/man/6.jutil/Makefile \
508 cWnn/romkan/Makefile cWnn/uum/Makefile"
509 makefiles_cwnn_dic="cWnn/cdic/Makefile cWnn/tdic/Makefile"
510 fi
511
512 dnl Korean
513
514 if test "x$kWnn" = "xkWnn"; then
515 makefiles_kwnn="kWnn/Makefile kWnn/conv/Makefile kWnn/etc/Makefile \
516 kWnn/include/Makefile kWnn/jlib/Makefile kWnn/jutil/Makefile \
517 kWnn/jserver/Makefile kWnn/kd/Makefile kWnn/kd/rk/Makefile \
518 kWnn/romkan/Makefile kWnn/uum/Makefile"
519 makefiles_kwnn_dic="kWnn/kdic/Makefile"
520 fi
521
522 AC_OUTPUT(${makefiles_generic} \
523 ${makefiles_wnn} ${makefiles_wnn_dic} \
524 ${makefiles_cwnn} ${makefiles_cwnn_dic} \
525 ${makefiles_kwnn} ${makefiles_kwnn_dic})

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26