# Autoconf configuration file for groff.
-# Copyright (C) 1989-2014 Free Software Foundation, Inc.
+# Copyright (C) 1989-2023 Free Software Foundation, Inc.
#
# This file is part of groff.
#
# Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
-# groff is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# groff is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Process this file with autoconf to produce a configure script.
-dnl Use `VERSION' and `REVISION' files to get version.
-m4_define([GROFF_VERSION_DATA], m4_include([VERSION]))
-m4_define([GROFF_REVISION_DATA], m4_include([REVISION]))
-
-dnl Strip off newline characters.
-m4_define([GROFF_VERSION],
- m4_substr(GROFF_VERSION_DATA,
- [0], m4_decr(m4_len(GROFF_VERSION_DATA))))
-m4_define([GROFF_REVISION],
- m4_substr(GROFF_REVISION_DATA,
- [0], m4_decr(m4_len(GROFF_REVISION_DATA))))
-
-dnl Don't use revision if it is zero.
-m4_define([GROFF_VERSION_STRING],
- m4_if(m4_eval(GROFF_REVISION[ > 0]),
- [1],
- GROFF_VERSION[.]GROFF_REVISION,
- GROFF_VERSION))
-
-AC_INIT([groff],
- GROFF_VERSION_STRING,
- [bug-groff@gnu.org],
- [groff-]GROFF_VERSION_STRING)
-AC_PREREQ([2.62])
+AC_INIT([GNU roff],
+ m4_esyscmd([build-aux/git-version-gen --prefix "" .tarball-version]),
+ http://savannah.gnu.org/bugs/?group=groff,
+ [groff])
+
+AC_PREREQ([2.64])
+
+# SHORT_VERSION contains only the number of REVISION before the first
+# '.'; e.g., if REVISION is '3.real.434-5aafd' then SHORT_VERSION is
+# 'x.yy.3', where x and yy are MAJOR_VERSION and MINOR_VERSION,
+# respectively.
+AC_SUBST([SHORT_VERSION],
+ m4_bregexp(AC_PACKAGE_VERSION,[^\(\w+\.\w+\.\w+\).*$],[\1]))
+
+# Directories where the helper scripts should be found. This must be
+# consistent with the variable build_aux in bootstrap.conf.
+AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([src/include/config.h:src/include/config.hin])
AC_CONFIG_SRCDIR([src/roff/groff/groff.cpp])
AC_USE_SYSTEM_EXTENSIONS
+AM_INIT_AUTOMAKE([subdir-objects])
+
+AM_SILENT_RULES([yes])
+
# checks for programs
AC_PROG_CC
AC_PROG_CXX
+gl_EARLY
+gl_INIT
GROFF_CXX_CHECK
GROFF_EBCDIC
GROFF_OS390
GROFF_CMD_FILES
GROFF_X11
-GROFF_APPRESDIR_OPTION
-GROFF_APPRESDIR_DEFAULT
+GROFF_APPDEFDIR_OPTION
+GROFF_APPDEFDIR_DEFAULT
GROFF_LIBPROGRAMDIR_DEFAULT
-GROFF_GROFFERDIR_OPTION
-GROFF_GROFFERDIR_DEFAULT
GROFF_GLILYPONDDIR_DEFAULT
GROFF_GPINYINDIR_DEFAULT
-GROFF_GROGDIR_DEFAULT
GROFF_PERL
GROFF_PRINT
# GROFF_REFER
GROFF_REFERDIR_DEFAULT
AC_PROG_EGREP
GROFF_PROG_YACC
-GROFF_DOC_CHECK
-GROFF_MAKEINFO
+GROFF_PROG_M4
+GROFF_PROG_MAKEINFO
+GROFF_PROG_TEXI2DVI
+GROFF_USE_TEX_CHECK
AC_PROG_RANLIB
GROFF_INSTALL_SH
GROFF_INSTALL_INFO
AC_PROG_INSTALL
AC_PROG_LN_S
+AC_PROG_MKDIR_P
+GROFF_PROG_XPMTOPPM
+PKG_PROG_PKG_CONFIG
+GROFF_UCHARDET
# use a dummy substitution if no csh hack is necessary to avoid errors
# with non-GNU sed programs
-GROFF_CSH_HACK([SH_SCRIPT_SED_CMD='1s/.*/:/'], [SH_SCRIPT_SED_CMD='1s/a/a/'])
+GROFF_CSH_HACK([SH_SCRIPT_SED_CMD='1s/.*/:/'],
+ [SH_SCRIPT_SED_CMD='1s/a/a/'])
AC_SUBST([SH_SCRIPT_SED_CMD])
# checks for headers
-AC_CHECK_HEADERS([stddef.h stdlib.h unistd.h dirent.h limits.h sys/dir.h \
- string.h strings.h math.h sys/time.h direct.h process.h])
+AC_CHECK_HEADERS([stdbool.h stddef.h stdlib.h unistd.h dirent.h \
+ limits.h sys/dir.h string.h strings.h math.h \
+ sys/time.h direct.h process.h])
GROFF_ISC_SYSV3
GROFF_POSIX
# checks for header stuff
GROFF_SRAND
GROFF_NEED_DECLARATION([gettimeofday])
-GROFF_NEED_DECLARATION([hypot])
GROFF_NEED_DECLARATION([popen])
GROFF_NEED_DECLARATION([pclose])
GROFF_NEED_DECLARATION([putenv])
GROFF_NEED_DECLARATION([rand])
-GROFF_NEED_DECLARATION([snprintf])
GROFF_NEED_DECLARATION([srand])
GROFF_NEED_DECLARATION([strcasecmp])
GROFF_NEED_DECLARATION([strncasecmp])
GROFF_NEED_DECLARATION([vfprintf])
-GROFF_NEED_DECLARATION([vsnprintf])
GROFF_SYS_NERR
GROFF_SYS_ERRLIST
GROFF_OSFCN_H
AC_FUNC_MMAP
saved_libs="$LIBS"
LIBS="$LIBS $LIBC $LIBM"
-AC_REPLACE_FUNCS([fmod getcwd putenv snprintf strcasecmp \
+AC_REPLACE_FUNCS([fmod getcwd putenv strcasecmp \
strerror strncasecmp strtol])
-# vsnprintf is in the same source file as snprintf
-AC_CHECK_FUNCS([vsnprintf], [], [AC_LIBOBJ([snprintf])])
LIBS="$saved_libs"
-AC_CHECK_FUNCS([gettimeofday isatty kill rename setlocale strsep])
+AC_CHECK_FUNCS([gettimeofday isatty kill rename setlocale strdup \
+ strsep])
GROFF_MKSTEMP
+AC_CHECK_DECLS([strsignal, getc_unlocked])
AC_CHECK_DECLS([sys_siglist, getc_unlocked])
AM_LANGINFO_CODESET
# checks for operating system services
GROFF_WCOREFLAG
+# URW fonts extra dir
+GROFF_URW_FONTS_PATH
+
+# use groff's own malloc-based allocator for C++ new/delete operators
+GROFF_USE_GROFF_ALLOCATOR
+
# other random stuff
GROFF_BROKEN_SPOOLER_FLAGS
GROFF_PAGE
GROFF_G
GROFF_TMAC
+GROFF_WITH_COMPATIBILITY_WRAPPERS
GROFF_TARGET_PATH_SEPARATOR
-GROFF_HTML_PROGRAMS
-GROFF_PDFDOC_PROGRAMS
+GROFF_CHECK_GROHTML_PROGRAMS
+GROFF_PDFROFF_DEPENDENCIES_CHECK
+GROFF_GROPDF_DEPENDENCIES_CHECK
+GROFF_PNMTOOLS_CAN_BE_QUIET
GROFF_PNMTOPS_NOSETPAGE
+GROFF_MAKE_DEFINES_RM
+GROFF_DIFF_D
+GROFF_HAVE_TEST_EF_OPTION
+GROFF_BASH
+GROFF_GHOSTSCRIPT_VERSION_CHECK
gl_GLIBC21
gl_LOCALCHARSET
-AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h])
-AC_CONFIG_FILES([Makefile doc/Makefile src/utils/xtotroff/Makefile])
-AC_CONFIG_FILES([contrib/gdiffmk/tests/runtests],
- [chmod +x contrib/gdiffmk/tests/runtests])
+AM_CONDITIONAL([BUILD_WINSCRIPTS], [test -n "$make_winscripts"])
+
+# If X11 is not available, don't build:
+# font/devX75
+# font/devX75-12
+# font/devX100
+# font/devX100-12
+# src/devices/xditview
+# src/utils/xtotroff
+# src/libs/libxutil
+AM_CONDITIONAL([WITHOUT_X11], [test "$groff_no_x" = yes])
+
+AM_CONDITIONAL([MAKE_DEFINES_RM], [test "$groff_make_defines_rm" = yes])
+
+# Some programs have a "g" prefix if an existing troff installation is
+# detected.
+AM_CONDITIONAL([USEPROGRAMPREFIX], [test "$g" = g])
+
+AM_CONDITIONAL([USE_GROHTML], [test "$use_grohtml" = yes])
+AM_CONDITIONAL([USE_PDFROFF], [test "$use_pdfroff" = yes])
+AM_CONDITIONAL([USE_GROPDF], [test "$use_gropdf" = yes])
+AM_CONDITIONAL([USE_GROFF_ALLOCATOR],
+ [test "$groff_use_own_allocator" = yes])
+AM_CONDITIONAL([HAVE_GHOSTSCRIPT], [test "$GHOSTSCRIPT" != no \
+ && test "$GHOSTSCRIPT" != missing])
+AM_CONDITIONAL([HAVE_URW_FONTS], [test "$groff_have_urw_fonts" = yes ])
+AM_CONDITIONAL([HAVE_TEXI2DVI], [test "$groff_have_texi2dvi" = yes ])
+AM_CONDITIONAL([USE_TEX], [test "$groff_use_tex" = yes ])
+
+AC_CONFIG_FILES([Makefile])
AC_CONFIG_FILES([test-groff], [chmod +x test-groff])
AC_OUTPUT
echo "
-${PACKAGE_NAME} version ${PACKAGE_VERSION}
+$PACKAGE_NAME version $PACKAGE_VERSION
----------------------------------------------------------------------
- Prefix : ${prefix}
- Compiler : ${CC} ${CFLAGS} ${CPPFLAGS}"
-if test "x$groff_no_x" = "xyes"; then
-echo "\
- X11 support : no"
-else
-echo "\
- X11 support : yes
- X11 resources dir : $appresdir"
+ installation directory prefix : $prefix"
+if test -n "$g"
+then
+ echo "\
+ command name prefix : $g"
+ if test -n "$tmac_wrap"
+ then
+ echo "\
+ prefix used for macro packages : $tmac_wrap"
+ fi
fi
-if test "x$doc" = x; then
echo "\
- Doc build : no"
+ C++ compiler and options : $CXX $CXXFLAGS $CPPFLAGS
+ use libgroff's memory allocator : $groff_use_own_allocator
+ C compiler and options : $CC $CFLAGS $CPPFLAGS
+ Perl interpreter version : $perl_version"
+if test "$groff_no_x" = yes
+then
+ echo "\
+ X11 support : disabled"
else
+ echo "\
+ X11 support : enabled
+ X11 app defaults directory : $appdefdir"
+fi
echo "\
- Doc build : ${doc} "
+ 'groff -l' uses print spooler : $groff_have_spooler
+ use URW fonts for PDF output : $groff_have_urw_fonts"
+if test "$groff_have_urw_fonts" = yes
+then
+ echo "\
+ URW fonts directory : $urwfontsdir"
fi
echo "\
+ preconv can use uchardet library : $groff_have_uchardet
+ can build groff.dvi, groff.pdf : $groff_use_tex
----------------------------------------------------------------------"
-GROFF_APPRESDIR_CHECK
+GROFF_APPDEFDIR_NOTICE
+GROFF_AWK_NOTICE
+GROFF_GHOSTSCRIPT_AVAILABILITY_NOTICE
+GROFF_GHOSTSCRIPT_VERSION_NOTICE
+GROFF_URW_FONTS_NOTICE
+GROFF_UCHARDET_NOTICE
+GROFF_GROHTML_PROGRAM_NOTICE
+GROFF_PDFROFF_PROGRAM_NOTICE
+GROFF_GROPDF_PROGRAM_NOTICE