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.40 - (show annotations) (download)
Fri May 21 13:55:53 2004 UTC (19 years, 10 months ago) by aono
Branch: MAIN
Changes since 1.39: +17 -17 lines
Commit from my work area: Change indention of help string in configure.
(Cosmetic issue only.)

1 dnl
2 dnl $Id: configure.in,v 1.39 2003/06/11 11:16:05 aono 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 #if HAVE_SYS_TYPES_H
382 # include <sys/types.h>
383 #endif
384 #include <sys/socket.h>])
385
386 dnl
387 dnl Checks for symbol
388 dnl
389
390 dnl
391 dnl Checks for library functions.
392 dnl
393 AC_PROG_GCC_TRADITIONAL
394
395 dnl idea borrowed from EB Library http://www.sra.co.jp/people/m-kasahr/eb/
396 AC_TYPE_SIGNAL
397 if test "$ac_cv_type_signal" = void; then
398 AC_DEFINE(RETSIGTYPE_VOID, 1, [Define if the signal function returns void.])
399 fi
400
401 AC_FUNC_MEMCMP
402 AC_CHECK_FUNCS(getpgid getpgrp setpgrp wait3)
403 AC_FUNC_GETPGRP
404 AC_FUNC_SETPGRP
405 dnl FreeWnn do not use the 3rd parameter of wait3().
406 dnl AC_FUNC_WAIT3
407
408 AC_CHECK_FUNCS(random drand48 fchmod getopt killpg \
409 FD_SET \
410 gethostname select socket closesocket setsockopt send recv \
411 getdtablesize getrlimit syslog vsyslog setenv snprintf)
412 dnl for bcopy/index -> memcpy/strchr conversion (preparation):
413 AC_CHECK_FUNCS(bcopy bzero bcmp index rindex \
414 memcpy memmove memset strchr strrchr)
415
416 dnl Check fallback functions for jserver (should use AC_REPLACE_FUNCS?)
417 JS_SUPPORTOBJS=
418 AC_CHECK_FUNCS(mkdir vasprintf, ,
419 [JS_SUPPORTOBJS="${JS_SUPPORTOBJS} ${ac_func}.o"])
420 AC_SUBST(JS_SUPPORTOBJS)
421
422
423 dnl
424 dnl TCP Wrapper.
425 dnl
426 AC_MSG_CHECKING(whether to use libwrap)
427 AC_ARG_WITH(libwrap,
428 [ --with-libwrap[=PATH] Compile in libwrap (tcp_wrappers) support.],
429 [ case "$withval" in
430 no)
431 AC_MSG_RESULT(no)
432 ;;
433 yes)
434 AC_MSG_RESULT(yes)
435 AC_CHECK_LIB(wrap, request_init, [
436 LIBS="-lwrap $LIBS"
437 AC_DEFINE(HAVE_LIBWRAP, 1,
438 [Define libwrap (TCP Wrapper) support.]) ])
439 CFLAGS="-DHAVE_LIBWRAP $CFLAGS"
440 ;;
441 *)
442 AC_MSG_RESULT(yes)
443 if test -d "$withval"; then
444 WRAPINCLUDES="-I$withval"
445 WRAPLIBS="-L$withval -lwrap"
446 else
447 WRAPINCLUDES="$withval"
448 fi
449 OLDLIBS="$LIBS"
450 CFLAGS="-DHAVE_LIBWRAP $WRAPINCLUDES $CFLAGS"
451 LIBS="$WRAPLIBS $LIBS"
452
453 AC_TRY_LINK([ int allow_severity; int deny_severity; ],
454 [ hosts_access(); ],
455 [],
456 [ AC_MSG_ERROR(Could not find the $withval library. You must first install tcp_wrappers.) ])
457 ;;
458 esac ],
459 AC_MSG_RESULT(no)
460 )
461
462
463 dnl
464 dnl Creating Makefiles.
465 dnl
466 # mkdir -p Contrib/dic/gerodic in case builddir != srcdir
467 for dir in Contrib Contrib/dic Contrib/dic/gerodic; do
468 if test ! -d $dir; then
469 echo "creating $dir ..."
470 mkdir $dir
471 fi
472 done
473
474 dnl
475 dnl Generate Makefiles
476 dnl
477
478 dnl Generic
479
480 makefiles_generic="makerule.mk Makefile"
481
482 dnl Japanese
483
484 if test "x${Wnn}" = "xWnn"; then
485 makefiles_wnn="Wnn/Makefile Wnn/conv/Makefile Wnn/include/Makefile \
486 Wnn/jd/Makefile Wnn/jd/rk/Makefile Wnn/jd/rk.vi/Makefile \
487 Wnn/jlib/Makefile Wnn/jlib.V3/Makefile Wnn/jserver/Makefile \
488 Wnn/jutil/Makefile Wnn/ld/Makefile Wnn/ld/rk/Makefile \
489 Wnn/romkan/Makefile Wnn/uum/Makefile \
490 Wnn/man/Makefile Wnn/man/2.env/Makefile Wnn/man/3.libwnn/Makefile \
491 Wnn/man/4.cmd/Makefile Wnn/man/6.jutil/Makefile \
492 Wnn/man/2.env/dic/Makefile Wnn/man/2.env/wnn/Makefile \
493 Wnn/man/3.libwnn/jl_lib/Makefile Wnn/man/3.libwnn/js_lib/Makefile \
494 Wnn/man/3.libwnn/misc_lib/Makefile Wnn/man/3.libwnn/rk_lib/Makefile"
495 makefiles_wnn_dic="Contrib/dic/gerodic/Makefile Wnn/pubdicplus/Makefile \
496 Wnn/wnncons/Makefile Wnn/wnncons/dic/Makefile"
497 fi
498
499 dnl Chinese and Taiwanese
500
501 if test "x$cWnn" = "xcWnn"; then
502 makefiles_cwnn="cWnn/Makefile cWnn/conv/Makefile cWnn/etc/Makefile \
503 cWnn/cd/Makefile cWnn/cd/rk/Makefile \
504 cWnn/cd/rk_p/Makefile cWnn/cd/rk_z/Makefile \
505 cWnn/td/Makefile cWnn/td/rk/Makefile \
506 cWnn/td/rk_z/Makefile cWnn/td/rk_p/Makefile \
507 cWnn/include/Makefile cWnn/jlib/Makefile \
508 cWnn/jserver/Makefile cWnn/jutil/Makefile \
509 cWnn/man/Makefile cWnn/man/1.intro/Makefile cWnn/man/2.env/Makefile \
510 cWnn/man/4.cmd/Makefile cWnn/man/6.jutil/Makefile \
511 cWnn/romkan/Makefile cWnn/uum/Makefile"
512 makefiles_cwnn_dic="cWnn/cdic/Makefile cWnn/tdic/Makefile"
513 fi
514
515 dnl Korean
516
517 if test "x$kWnn" = "xkWnn"; then
518 makefiles_kwnn="kWnn/Makefile kWnn/conv/Makefile kWnn/etc/Makefile \
519 kWnn/include/Makefile kWnn/jlib/Makefile kWnn/jutil/Makefile \
520 kWnn/jserver/Makefile kWnn/kd/Makefile kWnn/kd/rk/Makefile \
521 kWnn/romkan/Makefile kWnn/uum/Makefile"
522 makefiles_kwnn_dic="kWnn/kdic/Makefile"
523 fi
524
525 AC_OUTPUT(${makefiles_generic} \
526 ${makefiles_wnn} ${makefiles_wnn_dic} \
527 ${makefiles_cwnn} ${makefiles_cwnn_dic} \
528 ${makefiles_kwnn} ${makefiles_kwnn_dic})

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