]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/dialog/configure.in
MFC
[FreeBSD/FreeBSD.git] / contrib / dialog / configure.in
1 dnl $Id: configure.in,v 1.68 2011/10/20 21:02:43 tom Exp $
2 dnl Process this file with autoconf to produce a configure script.
3 dnl ---------------------------------------------------------------------------
4 dnl Copyright 1999-2010,2011 -- Thomas E. Dickey
5 dnl
6 dnl Permission is hereby granted, free of charge, to any person obtaining a
7 dnl copy of this software and associated documentation files (the
8 dnl "Software"), to deal in the Software without restriction, including
9 dnl without limitation the rights to use, copy, modify, merge, publish,
10 dnl distribute, distribute with modifications, sublicense, and/or sell
11 dnl copies of the Software, and to permit persons to whom the Software is
12 dnl furnished to do so, subject to the following conditions:
13 dnl 
14 dnl The above copyright notice and this permission notice shall be included
15 dnl in all copies or portions of the Software.
16 dnl 
17 dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
21 dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
22 dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
23 dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 dnl 
25 dnl Except as contained in this notice, the name(s) of the above copyright
26 dnl holders shall not be used in advertising or otherwise to promote the
27 dnl sale, use or other dealings in this Software without prior written
28 dnl authorization.
29 dnl ---------------------------------------------------------------------------
30 AC_PREREQ(2.13.20020210)
31 AC_INIT(dialog.h)
32 AC_CONFIG_HEADER(dlg_config.h:config.hin)
33
34 AC_ARG_PROGRAM
35
36 DESTDIR=
37 AC_SUBST(DESTDIR)
38
39 dnl
40 dnl Checks for programs.
41 dnl
42 AC_PROG_CC
43 AC_PROG_CPP
44 AC_PROG_GCC_TRADITIONAL
45 AC_PROG_MAKE_SET
46 AC_PROG_RANLIB
47 AC_PROG_INSTALL
48 CF_PROG_LINT
49
50 dnl needed for CF_WITH_LIBTOOL
51 AC_CHECK_TOOL(AR, ar, ar)
52
53 AC_ISC_POSIX
54 AC_C_CONST
55
56 CF_MAKEFLAGS
57 CF_MAKE_TAGS
58 CF_DISABLE_ECHO
59 CF_PROG_EXT
60 CF_PATHSEP
61 CF_LIB_PREFIX
62 CF_XOPEN_SOURCE
63 CF_LARGEFILE
64
65 CF_WITH_WARNINGS
66
67 dnl
68 dnl Allow dialog program and library to be renamed.
69 AC_ARG_WITH(package,
70         [  --with-package=XXX      rename dialog to XXX, library to libXXX.a, etc],
71         [PACKAGE=$withval],
72         [PACKAGE=dialog])
73 CF_VERSION_INFO(dialog,$PACKAGE)
74
75 dnl
76 dnl If package is renamed, it is useful to have the dlg_XXX headers in a
77 dnl subdirectory (using the package name) so that multiple versions of the
78 dnl headers can coexist.
79 AC_ARG_ENABLE(header-subdir,
80         [  --enable-header-subdir  install dlg_XXX headers to subdirectory],
81         [SUB_INC=$enableval],
82         [SUB_INC=no])
83 AC_SUBST(SUB_INC)
84
85 dnl
86 dnl Checks for libraries.
87 dnl
88 EXTRAOBJS=""
89 CF_BUNDLED_INTL(makefile,enable)
90 CF_MATH_LIB(,sqrt(x))
91
92 CF_WITH_NO_LEAKS
93
94 CF_ARG_MSG_ENABLE([if you want --trace option],
95         trace,
96         [  --disable-trace         do not support --trace option],
97         [EXTRAOBJS="$EXTRAOBJS trace\$o"
98          AC_DEFINE(HAVE_DLG_TRACE)],,yes)
99
100 LIBTOOL_MAKE="#"
101 CF_WITH_LIBTOOL
102 if test "$with_libtool" = "yes" ; then
103         OBJEXT="lo"
104         LIBTOOL_MAKE=
105         CF_WITH_LIBTOOL_OPTS
106 fi
107 AC_SUBST(LIBTOOL_MAKE)
108
109 CF_WITH_CURSES_DIR
110
111 use_ncurses=no
112 AC_ARG_WITH(ncurses,
113         [  --with-ncurses          compile/link with ncurses library],
114         [use_ncurses=ncurses])
115 AC_ARG_WITH(ncursesw,
116         [  --with-ncursesw         compile/link with wide-char ncurses library],
117         [use_ncurses=ncursesw])
118 if test $use_ncurses != no ; then
119         cf_wide_curses=yes
120         if test $use_ncurses = ncursesw ; then
121                 CF_UTF8_LIB
122         fi
123         CF_NCURSES_CONFIG($use_ncurses)
124 else
125         cf_wide_curses=no
126         CF_CURSES_CONFIG
127 fi
128
129 cf_all_widgets=yes
130 CF_ARG_MSG_ENABLE([if you want extra dialogs],
131         extras,
132         [  --disable-extras        do not include extra dialogs],
133         [cf_all_widgets=yes],[cf_all_widgets=no],yes)
134
135 CF_ARG_MSG_ENABLE([if you want config-file support],
136         rc-file,
137         [  --disable-rc-file       do not include config-file support],
138         [EXTRAOBJS="$EXTRAOBJS rc\$o"
139          AC_DEFINE(HAVE_RC_FILE)],,$cf_all_widgets)
140
141 CF_ARG_MSG_ENABLE([if you want Xdialog-style dialogs],
142         Xdialog,
143         [  --disable-Xdialog       do not include Xdialog-style dialogs],
144         [EXTRAOBJS="$EXTRAOBJS calendar\$o fselect\$o timebox\$o"
145          AC_DEFINE(HAVE_XDIALOG)],,$cf_all_widgets)
146
147 CF_ARG_MSG_ENABLE([if you want the form dialog],
148         form,
149         [  --disable-form          do not include the form dialog],
150         [EXTRAOBJS="$EXTRAOBJS formbox\$o"
151          AC_DEFINE(HAVE_DLG_FORMBOX)],,$cf_all_widgets)
152
153 CF_ARG_MSG_ENABLE([if you want the gauge dialog],
154         gauge,
155         [  --disable-gauge         do not include the gauge dialogs],
156         [EXTRAOBJS="$EXTRAOBJS guage\$o pause\$o prgbox\$o progressbox\$o"
157          AC_DEFINE(HAVE_DLG_GAUGE)],,$cf_all_widgets)
158
159 CF_ARG_MSG_ENABLE([if you want the tailbox dialog],
160         tailbox,
161         [  --disable-tailbox       do not include the tailbox dialog],
162         [EXTRAOBJS="$EXTRAOBJS tailbox\$o"
163          AC_DEFINE(HAVE_DLG_TAILBOX)],,$cf_all_widgets)
164
165 CF_ARG_MSG_ENABLE([if you want the mixedform dialog],
166         mixedform,
167         [  --disable-mixedform     do not include the mixedform dialog],
168         [EXTRAOBJS="$EXTRAOBJS mixedform\$o"
169          AC_DEFINE(HAVE_DLG_MIXEDFORM)],,$cf_all_widgets)
170
171 CF_ARG_MSG_ENABLE([if you want the mixedgauge dialog],
172         mixedgauge,
173         [  --disable-mixedgauge    do not include the mixedgauge dialog],
174         [EXTRAOBJS="$EXTRAOBJS mixedgauge\$o"
175          AC_DEFINE(HAVE_MIXEDGAUGE)],,$cf_all_widgets)
176
177 CF_ARG_MSG_ENABLE([if you want the wide-curses features],
178         widec,
179         [  --enable-widec          enable wide-curses features],
180         [AC_DEFINE(USE_WIDE_CURSES)],,$cf_wide_curses)
181
182 AC_SUBST(EXTRAOBJS)
183
184 dnl
185 dnl Checks for header files.
186 dnl
187 AC_HEADER_STDC
188 AC_HEADER_TIME
189 AC_HEADER_DIRENT
190 AC_CHECK_HEADERS(search.h unctrl.h unistd.h)
191 CF_CURSES_TERM_H
192
193 dnl
194 dnl Checks for library functions.
195 dnl
196 AC_TYPE_SIGNAL
197 AC_CHECK_FUNCS(\
198 _nc_free_and_exit \
199 btowc \
200 mblen \
201 mbrlen \
202 mbrtowc \
203 mbtowc \
204 strcasecmp \
205 strftime \
206 tsearch \
207 waitpid \
208 wcsrtombs \
209 wcstombs \
210 wctob \
211 wctomb \
212 )
213
214 CF_CURSES_FUNCS(\
215 flushinp \
216 getattrs \
217 getbegx \
218 getbegy \
219 getbegyx \
220 getcurx \
221 getcury \
222 getmaxx \
223 getmaxy \
224 getmaxyx \
225 getparx \
226 getpary \
227 getparyx \
228 use_default_colors \
229 wchgat \
230 wget_wch \
231 )
232
233 AC_CHECK_FUNC(start_color,[AC_DEFINE(HAVE_COLOR)])
234 CF_CURSES_CHTYPE
235 CF_CURSES_WACS_SYMBOLS
236 CF_CURSES_WGETPARENT
237 CF_FUNC_WAIT
238 CF_MBSTATE_T
239
240 CF_HEADERS_SH(DLG,dlg_config.h)
241
242 AC_TRY_LINK([#include <locale.h>],[setlocale(LC_ALL, "")],[AC_DEFINE(HAVE_SETLOCALE)])
243
244 CF_DISABLE_RPATH_HACK
245
246 AC_OUTPUT(dialog-config makefile $EXTRA_OUTPUT $SUB_MAKEFILE samples/install/makefile,,,sort -u)