Imported Upstream version 1.22.3
[platform/upstream/groff.git] / configure.ac
1 # Autoconf configuration file for groff.
2 # Copyright (C) 1989-2014 Free Software Foundation, Inc.
3 #
4 # This file is part of groff.
5 #
6 # groff is free software; you can redistribute it and/or modify it under
7 # the terms of the GNU General Public License as published by the Free
8 # Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # groff is distributed in the hope that it will be useful, but WITHOUT ANY
12 # WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 # for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #
19 # Process this file with autoconf to produce a configure script.
20
21 dnl Use `VERSION' and `REVISION' files to get version.
22 m4_define([GROFF_VERSION_DATA], m4_include([VERSION]))
23 m4_define([GROFF_REVISION_DATA], m4_include([REVISION]))
24
25 dnl Strip off newline characters.
26 m4_define([GROFF_VERSION],
27           m4_substr(GROFF_VERSION_DATA,
28                     [0], m4_decr(m4_len(GROFF_VERSION_DATA))))
29 m4_define([GROFF_REVISION],
30           m4_substr(GROFF_REVISION_DATA,
31                     [0], m4_decr(m4_len(GROFF_REVISION_DATA))))
32
33 dnl Don't use revision if it is zero.
34 m4_define([GROFF_VERSION_STRING],
35           m4_if(m4_eval(GROFF_REVISION[ > 0]),
36                 [1],
37                 GROFF_VERSION[.]GROFF_REVISION,
38                 GROFF_VERSION))
39
40 AC_INIT([groff],
41         GROFF_VERSION_STRING,
42         [bug-groff@gnu.org],
43         [groff-]GROFF_VERSION_STRING)
44 AC_PREREQ([2.62])
45
46 AC_CONFIG_HEADERS([src/include/config.h:src/include/config.hin])
47 AC_CONFIG_SRCDIR([src/roff/groff/groff.cpp])
48
49 AC_USE_SYSTEM_EXTENSIONS
50
51 # checks for programs
52 AC_PROG_CC
53 AC_PROG_CXX
54 GROFF_CXX_CHECK
55 GROFF_EBCDIC
56 GROFF_OS390
57 GROFF_CMD_FILES
58 GROFF_X11
59 GROFF_APPRESDIR_OPTION
60 GROFF_APPRESDIR_DEFAULT
61 GROFF_LIBPROGRAMDIR_DEFAULT
62 GROFF_GROFFERDIR_OPTION
63 GROFF_GROFFERDIR_DEFAULT
64 GROFF_GLILYPONDDIR_DEFAULT
65 GROFF_GPINYINDIR_DEFAULT
66 GROFF_GROGDIR_DEFAULT
67 GROFF_PERL
68 GROFF_PRINT
69 # GROFF_REFER
70 GROFF_REFERDIR_DEFAULT
71 AC_PROG_EGREP
72 GROFF_PROG_YACC
73 GROFF_DOC_CHECK
74 GROFF_MAKEINFO
75 AC_PROG_RANLIB
76 GROFF_INSTALL_SH
77 GROFF_INSTALL_INFO
78 AC_PROG_INSTALL
79 AC_PROG_LN_S
80
81 # use a dummy substitution if no csh hack is necessary to avoid errors
82 # with non-GNU sed programs
83 GROFF_CSH_HACK([SH_SCRIPT_SED_CMD='1s/.*/:/'], [SH_SCRIPT_SED_CMD='1s/a/a/'])
84 AC_SUBST([SH_SCRIPT_SED_CMD])
85
86 # checks for headers
87 AC_CHECK_HEADERS([stddef.h stdlib.h unistd.h dirent.h limits.h sys/dir.h \
88                   string.h strings.h math.h sys/time.h direct.h process.h])
89 GROFF_ISC_SYSV3
90 GROFF_POSIX
91
92 # checks for header stuff
93 GROFF_SRAND
94 GROFF_NEED_DECLARATION([gettimeofday])
95 GROFF_NEED_DECLARATION([hypot])
96 GROFF_NEED_DECLARATION([popen])
97 GROFF_NEED_DECLARATION([pclose])
98 GROFF_NEED_DECLARATION([putenv])
99 GROFF_NEED_DECLARATION([rand])
100 GROFF_NEED_DECLARATION([snprintf])
101 GROFF_NEED_DECLARATION([srand])
102 GROFF_NEED_DECLARATION([strcasecmp])
103 GROFF_NEED_DECLARATION([strncasecmp])
104 GROFF_NEED_DECLARATION([vfprintf])
105 GROFF_NEED_DECLARATION([vsnprintf])
106 GROFF_SYS_NERR
107 GROFF_SYS_ERRLIST
108 GROFF_OSFCN_H
109 GROFF_LIMITS_H
110 GROFF_INTTYPES_H
111
112 # checks for typedefs
113 GROFF_UNSIGNED_LONG_LONG
114 GROFF_UINTMAX_T
115 GROFF_TIME_T
116 GROFF_TYPE_SIGNAL
117 GROFF_STRUCT_EXCEPTION
118
119 # check endianness
120 AC_C_BIGENDIAN
121
122 # checks for libraries
123 GROFF_LIBC
124 GROFF_LIBM
125
126 AC_LANG_PUSH([C++])
127 AM_ICONV
128 AC_LANG_POP([C++])
129
130 # we need LIBEXT
131 AC_SUBST([LIBEXT],[$acl_libext])
132
133 # checks for functions
134 AC_FUNC_MMAP
135 saved_libs="$LIBS"
136 LIBS="$LIBS $LIBC $LIBM"
137 AC_REPLACE_FUNCS([fmod getcwd putenv snprintf strcasecmp \
138                   strerror strncasecmp strtol])
139 # vsnprintf is in the same source file as snprintf
140 AC_CHECK_FUNCS([vsnprintf], [], [AC_LIBOBJ([snprintf])])
141 LIBS="$saved_libs"
142 AC_CHECK_FUNCS([gettimeofday isatty kill rename setlocale strsep])
143 GROFF_MKSTEMP
144 AC_CHECK_DECLS([sys_siglist, getc_unlocked])
145 AM_LANGINFO_CODESET
146
147 # checks for compiler characteristics
148 GROFF_ARRAY_DELETE
149 GROFF_TRADITIONAL_CPP
150
151 # checks for operating system services
152 GROFF_WCOREFLAG
153
154 # other random stuff
155 GROFF_BROKEN_SPOOLER_FLAGS
156 GROFF_PAGE
157 GROFF_G
158 GROFF_TMAC
159 GROFF_TARGET_PATH_SEPARATOR
160 GROFF_HTML_PROGRAMS
161 GROFF_PDFDOC_PROGRAMS
162 GROFF_PNMTOPS_NOSETPAGE
163 gl_GLIBC21
164 gl_LOCALCHARSET
165
166 AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h])
167 AC_CONFIG_FILES([Makefile doc/Makefile src/utils/xtotroff/Makefile])
168 AC_CONFIG_FILES([contrib/gdiffmk/tests/runtests],
169                 [chmod +x contrib/gdiffmk/tests/runtests])
170 AC_CONFIG_FILES([test-groff], [chmod +x test-groff])
171 AC_OUTPUT
172
173 echo "
174 ${PACKAGE_NAME} version ${PACKAGE_VERSION}
175 ----------------------------------------------------------------------
176  Prefix            : ${prefix}
177  Compiler          : ${CC} ${CFLAGS} ${CPPFLAGS}"
178 if test "x$groff_no_x" = "xyes"; then
179 echo "\
180  X11 support       : no"
181 else
182 echo "\
183  X11 support       : yes
184  X11 resources dir : $appresdir"
185 fi
186 if test "x$doc" = x; then
187 echo "\
188  Doc build         : no"
189 else
190 echo "\
191  Doc build         : ${doc} "
192 fi
193 echo "\
194 ----------------------------------------------------------------------"
195
196 GROFF_APPRESDIR_CHECK