version 1.74, 2020/06/14 23:40:31 |
version 1.82, 2022/04/14 16:43:43 |
|
|
# |
# |
# $Id$ |
# $Id$ |
# |
# |
# Copyright (c) 2014-2020 Ingo Schwarze <schwarze@openbsd.org> |
# Copyright (c) 2014-2021 Ingo Schwarze <schwarze@openbsd.org> |
# |
# |
# Permission to use, copy, modify, and distribute this software for any |
# Permission to use, copy, modify, and distribute this software for any |
# purpose with or without fee is hereby granted, provided that the above |
# purpose with or without fee is hereby granted, provided that the above |
Line 37 SOURCEDIR=`dirname "${0}"` |
|
Line 37 SOURCEDIR=`dirname "${0}"` |
|
|
|
MANPATH_BASE="/usr/share/man:/usr/X11R6/man" |
MANPATH_BASE="/usr/share/man:/usr/X11R6/man" |
MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/local/man" |
MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/local/man" |
|
DEBUG_MEMORY=0 |
OSENUM= |
OSENUM= |
OSNAME= |
OSNAME= |
UTF8_LOCALE= |
UTF8_LOCALE= |
|
|
|
AR=ar |
CC=cc |
CC=cc |
CFLAGS= |
CFLAGS= |
FATAL=0 |
FATAL=0 |
|
|
BUILD_CATMAN=0 |
BUILD_CATMAN=0 |
INSTALL_LIBMANDOC=0 |
INSTALL_LIBMANDOC=0 |
|
|
|
HAVE_ATTRIBUTE= |
HAVE_CMSG= |
HAVE_CMSG= |
HAVE_DIRENT_NAMLEN= |
HAVE_DIRENT_NAMLEN= |
HAVE_EFTYPE= |
HAVE_EFTYPE= |
|
|
HAVE_ISBLANK= |
HAVE_ISBLANK= |
HAVE_LESS_T= |
HAVE_LESS_T= |
HAVE_MKDTEMP= |
HAVE_MKDTEMP= |
|
HAVE_MKSTEMPS= |
HAVE_NANOSLEEP= |
HAVE_NANOSLEEP= |
HAVE_NTOHL= |
HAVE_NTOHL= |
HAVE_O_DIRECTORY= |
HAVE_O_DIRECTORY= |
Line 96 NEED_GNU_SOURCE=0 |
|
Line 100 NEED_GNU_SOURCE=0 |
|
NEED_OPENBSD_SOURCE=0 |
NEED_OPENBSD_SOURCE=0 |
NEED_XPG4_2=0 |
NEED_XPG4_2=0 |
|
|
|
DEBUG_OBJS= |
|
MANDOC_COBJS= |
|
SOELIM_COBJS= |
|
|
PREFIX="/usr/local" |
PREFIX="/usr/local" |
BINDIR= |
BINDIR= |
SBINDIR= |
SBINDIR= |
|
|
INCLUDEDIR= |
INCLUDEDIR= |
LIBDIR= |
LIBDIR= |
MANDIR= |
MANDIR= |
HOMEBREWDIR= |
READ_ALLOWED_PATH= |
|
|
WWWPREFIX="/var/www" |
WWWPREFIX="/var/www" |
HTDOCDIR= |
HTDOCDIR= |
Line 115 BINM_MAKEWHATIS="makewhatis" |
|
Line 123 BINM_MAKEWHATIS="makewhatis" |
|
BINM_MAN="man" |
BINM_MAN="man" |
BINM_SOELIM="soelim" |
BINM_SOELIM="soelim" |
BINM_WHATIS="whatis" |
BINM_WHATIS="whatis" |
|
BINM_PAGER= |
MANM_MAN="man" |
MANM_MAN="man" |
MANM_MANCONF="man.conf" |
MANM_MANCONF="man.conf" |
MANM_MDOC="mdoc" |
MANM_MDOC="mdoc" |
Line 258 if [ -n "${CFLAGS}" ]; then |
|
Line 267 if [ -n "${CFLAGS}" ]; then |
|
else |
else |
COMP="${CC} ${DEFCFLAGS} -Wno-unused -Werror" |
COMP="${CC} ${DEFCFLAGS} -Wno-unused -Werror" |
fi |
fi |
echo -n "tested ${CC} -W: " 1>&2 |
printf "%s" "tested ${CC} -W: " 1>&2 |
echo -n "testing ${CC} -W: " 1>&3 |
printf "%s" "testing ${CC} -W: " 1>&3 |
runtest noop WFLAG || true |
runtest noop WFLAG || true |
|
|
if [ -n "${CFLAGS}" ]; then |
if [ -n "${CFLAGS}" ]; then |
|
|
# --- tests for config.h ---------------------------------------------- |
# --- tests for config.h ---------------------------------------------- |
|
|
# --- library functions --- |
# --- library functions --- |
|
runtest attribute ATTRIBUTE || true |
runtest cmsg CMSG "" "-D_XPG4_2" || true |
runtest cmsg CMSG "" "-D_XPG4_2" || true |
runtest dirent-namlen DIRENT_NAMLEN || true |
runtest dirent-namlen DIRENT_NAMLEN || true |
runtest be32toh ENDIAN || true |
runtest be32toh ENDIAN || true |
Line 301 runtest getline GETLINE || true |
|
Line 311 runtest getline GETLINE || true |
|
runtest getsubopt GETSUBOPT "" -D_GNU_SOURCE || true |
runtest getsubopt GETSUBOPT "" -D_GNU_SOURCE || true |
runtest isblank ISBLANK || true |
runtest isblank ISBLANK || true |
runtest mkdtemp MKDTEMP || true |
runtest mkdtemp MKDTEMP || true |
|
runtest mkstemps MKSTEMPS || true |
runtest nanosleep NANOSLEEP "${LD_NANOSLEEP}" "-lrt" || true |
runtest nanosleep NANOSLEEP "${LD_NANOSLEEP}" "-lrt" || true |
runtest ntohl NTOHL || true |
runtest ntohl NTOHL || true |
runtest O_DIRECTORY O_DIRECTORY || true |
runtest O_DIRECTORY O_DIRECTORY || true |
Line 325 runtest vasprintf VASPRINTF "" -D_GNU_SOURCE || true |
|
Line 336 runtest vasprintf VASPRINTF "" -D_GNU_SOURCE || true |
|
|
|
# --- fts --- |
# --- fts --- |
if [ "${1}" = "-depend" ]; then |
if [ "${1}" = "-depend" ]; then |
|
DEBUG_MEMORY=1 |
HAVE_FTS=0 |
HAVE_FTS=0 |
HAVE_FTS_COMPARE_CONST=0 |
HAVE_FTS_COMPARE_CONST=0 |
echo "tested fts: HAVE_FTS=0 (for make depend)" 1>&2 |
echo "tested fts: HAVE_FTS=0 (for make depend)" 1>&2 |
|
|
runtest fts FTS || true |
runtest fts FTS || true |
fi |
fi |
|
|
|
# --- pager --- |
|
manual= |
|
if [ -n "${BINM_PAGER}" ]; then |
|
manual=" (manual)" |
|
elif less test-noop.c 1>/dev/null 2>&3; then |
|
BINM_PAGER=less |
|
echo "tested less: yes" 1>&2 |
|
echo "tested less: yes" 1>&3 |
|
else |
|
BINM_PAGER=more |
|
echo "tested less: no" 1>&2 |
|
echo "tested less: no" 1>&3 |
|
fi |
|
echo "selected BINM_PAGER=${BINM_PAGER}${manual}" 1>&2 |
|
echo "selected BINM_PAGER=${BINM_PAGER}${manual}" 1>&3 |
|
|
# --- tagging support in the pager --- |
# --- tagging support in the pager --- |
if ismanual "less -T" LESS_T ${HAVE_LESS_T}; then |
if ismanual "${BINM_PAGER} -T" LESS_T ${HAVE_LESS_T}; then |
: |
: |
elif less -ET /dev/null test-noop.c 1>/dev/null 2>&3; then |
elif ${BINM_PAGER} -T /dev/null test-noop.c 1>/dev/null 2>&3; then |
HAVE_LESS_T=1 |
HAVE_LESS_T=1 |
echo "tested less -T: yes" 1>&2 |
echo "tested ${BINM_PAGER} -T: yes" 1>&2 |
echo "tested less -T: yes" 1>&3 |
echo "tested ${BINM_PAGER} -T: yes" 1>&3 |
echo 1>&3 |
echo 1>&3 |
else |
else |
HAVE_LESS_T=0 |
HAVE_LESS_T=0 |
echo "tested less -T: no" 1>&2 |
echo "tested ${BINM_PAGER} -T: no" 1>&2 |
echo "tested less -T: no" 1>&3 |
echo "tested ${BINM_PAGER} -T: no" 1>&3 |
echo 1>&3 |
echo 1>&3 |
fi |
fi |
|
|
Line 419 cat << __HEREDOC__ |
|
Line 447 cat << __HEREDOC__ |
|
#error "Do not use C++. See the INSTALL file." |
#error "Do not use C++. See the INSTALL file." |
#endif |
#endif |
|
|
#if !defined(__GNUC__) || (__GNUC__ < 4) |
|
#define __attribute__(x) |
|
#endif |
|
|
|
__HEREDOC__ |
__HEREDOC__ |
|
|
[ ${NEED_GNU_SOURCE} -eq 0 ] || echo "#define _GNU_SOURCE" |
[ ${NEED_GNU_SOURCE} -eq 0 ] || echo "#define _GNU_SOURCE" |
|
|
echo "#define MAN_CONF_FILE \"/etc/${MANM_MANCONF}\"" |
echo "#define MAN_CONF_FILE \"/etc/${MANM_MANCONF}\"" |
echo "#define MANPATH_BASE \"${MANPATH_BASE}\"" |
echo "#define MANPATH_BASE \"${MANPATH_BASE}\"" |
echo "#define MANPATH_DEFAULT \"${MANPATH_DEFAULT}\"" |
echo "#define MANPATH_DEFAULT \"${MANPATH_DEFAULT}\"" |
|
if [ ${DEBUG_MEMORY} -ne 0 ]; then |
|
echo "#define DEBUG_MEMORY ${DEBUG_MEMORY}" |
|
DEBUG_OBJS=mandoc_dbg.o |
|
fi |
echo "#define OSENUM ${OSENUM}" |
echo "#define OSENUM ${OSENUM}" |
[ -n "${OSNAME}" ] && echo "#define OSNAME \"${OSNAME}\"" |
[ -n "${OSNAME}" ] && echo "#define OSNAME \"${OSNAME}\"" |
[ -n "${UTF8_LOCALE}" ] && echo "#define UTF8_LOCALE \"${UTF8_LOCALE}\"" |
[ -n "${UTF8_LOCALE}" ] && echo "#define UTF8_LOCALE \"${UTF8_LOCALE}\"" |
[ -n "${HOMEBREWDIR}" ] && echo "#define HOMEBREWDIR \"${HOMEBREWDIR}\"" |
[ -n "${READ_ALLOWED_PATH}" ] \ |
|
&& echo "#define READ_ALLOWED_PATH \"${READ_ALLOWED_PATH}\"" |
|
[ ${HAVE_ATTRIBUTE} -eq 0 ] && echo "#define __attribute__(x)" |
[ ${HAVE_EFTYPE} -eq 0 ] && echo "#define EFTYPE EINVAL" |
[ ${HAVE_EFTYPE} -eq 0 ] && echo "#define EFTYPE EINVAL" |
[ ${HAVE_O_DIRECTORY} -eq 0 ] && echo "#define O_DIRECTORY 0" |
[ ${HAVE_O_DIRECTORY} -eq 0 ] && echo "#define O_DIRECTORY 0" |
[ ${HAVE_PATH_MAX} -eq 0 ] && echo "#define PATH_MAX 4096" |
[ ${HAVE_PATH_MAX} -eq 0 ] && echo "#define PATH_MAX 4096" |
Line 463 cat << __HEREDOC__ |
|
Line 493 cat << __HEREDOC__ |
|
#define HAVE_ISBLANK ${HAVE_ISBLANK} |
#define HAVE_ISBLANK ${HAVE_ISBLANK} |
#define HAVE_LESS_T ${HAVE_LESS_T} |
#define HAVE_LESS_T ${HAVE_LESS_T} |
#define HAVE_MKDTEMP ${HAVE_MKDTEMP} |
#define HAVE_MKDTEMP ${HAVE_MKDTEMP} |
|
#define HAVE_MKSTEMPS ${HAVE_MKSTEMPS} |
#define HAVE_NTOHL ${HAVE_NTOHL} |
#define HAVE_NTOHL ${HAVE_NTOHL} |
#define HAVE_PLEDGE ${HAVE_PLEDGE} |
#define HAVE_PLEDGE ${HAVE_PLEDGE} |
#define HAVE_PROGNAME ${HAVE_PROGNAME} |
#define HAVE_PROGNAME ${HAVE_PROGNAME} |
Line 491 cat << __HEREDOC__ |
|
Line 522 cat << __HEREDOC__ |
|
#define BINM_MAN "${BINM_MAN}" |
#define BINM_MAN "${BINM_MAN}" |
#define BINM_SOELIM "${BINM_SOELIM}" |
#define BINM_SOELIM "${BINM_SOELIM}" |
#define BINM_WHATIS "${BINM_WHATIS}" |
#define BINM_WHATIS "${BINM_WHATIS}" |
|
#define BINM_PAGER "${BINM_PAGER}" |
|
|
__HEREDOC__ |
__HEREDOC__ |
|
|
Line 499 if [ ${HAVE_ERR} -eq 0 ]; then |
|
Line 531 if [ ${HAVE_ERR} -eq 0 ]; then |
|
echo "extern void errx(int, const char *, ...);" |
echo "extern void errx(int, const char *, ...);" |
echo "extern void warn(const char *, ...);" |
echo "extern void warn(const char *, ...);" |
echo "extern void warnx(const char *, ...);" |
echo "extern void warnx(const char *, ...);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_err.o" |
|
SOELIM_COBJS="${SOELIM_COBJS} compat_err.o" |
fi |
fi |
|
if [ ${HAVE_FTS} -eq 0 ]; then |
[ ${HAVE_GETLINE} -eq 0 ] && \ |
MANDOC_COBJS="${MANDOC_COBJS} compat_fts.o" |
|
fi |
|
if [ ${HAVE_GETLINE} -eq 0 ]; then |
echo "extern ssize_t getline(char **, size_t *, FILE *);" |
echo "extern ssize_t getline(char **, size_t *, FILE *);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_getline.o" |
[ ${HAVE_GETSUBOPT} -eq 0 ] && \ |
SOELIM_COBJS="${SOELIM_COBJS} compat_getline.o" |
|
fi |
|
if [ ${HAVE_GETSUBOPT} -eq 0 ]; then |
echo "extern int getsubopt(char **, char * const *, char **);" |
echo "extern int getsubopt(char **, char * const *, char **);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_getsubopt.o" |
[ ${HAVE_ISBLANK} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_ISBLANK} -eq 0 ]; then |
echo "extern int isblank(int);" |
echo "extern int isblank(int);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_isblank.o" |
[ ${HAVE_MKDTEMP} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_MKDTEMP} -eq 0 ]; then |
echo "extern char *mkdtemp(char *);" |
echo "extern char *mkdtemp(char *);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_mkdtemp.o" |
|
fi |
|
if [ ${HAVE_MKSTEMPS} -eq 0 ]; then |
|
echo "extern int mkstemps(char *, int);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_mkstemps.o" |
|
fi |
|
if [ ${HAVE_OHASH} -eq 0 ]; then |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_ohash.o" |
|
fi |
if [ ${HAVE_PROGNAME} -eq 0 ]; then |
if [ ${HAVE_PROGNAME} -eq 0 ]; then |
echo "extern const char *getprogname(void);" |
echo "extern const char *getprogname(void);" |
echo "extern void setprogname(const char *);" |
echo "extern void setprogname(const char *);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_progname.o" |
|
SOELIM_COBJS="${SOELIM_COBJS} compat_progname.o" |
fi |
fi |
|
if [ ${HAVE_REALLOCARRAY} -eq 0 ]; then |
[ ${HAVE_REALLOCARRAY} -eq 0 ] && \ |
|
echo "extern void *reallocarray(void *, size_t, size_t);" |
echo "extern void *reallocarray(void *, size_t, size_t);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_reallocarray.o" |
[ ${HAVE_RECALLOCARRAY} -eq 0 ] && \ |
SOELIM_COBJS="${SOELIM_COBJS} compat_reallocarray.o" |
|
fi |
|
if [ ${HAVE_RECALLOCARRAY} -eq 0 ]; then |
echo "extern void *recallocarray(void *, size_t, size_t, size_t);" |
echo "extern void *recallocarray(void *, size_t, size_t, size_t);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_recallocarray.o" |
[ ${HAVE_STRCASESTR} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRCASESTR} -eq 0 ]; then |
echo "extern char *strcasestr(const char *, const char *);" |
echo "extern char *strcasestr(const char *, const char *);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strcasestr.o" |
[ ${HAVE_STRLCAT} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRINGLIST} -eq 0 ]; then |
|
SOELIM_COBJS="${SOELIM_COBJS} compat_stringlist.o" |
|
fi |
|
if [ ${HAVE_STRLCAT} -eq 0 ]; then |
echo "extern size_t strlcat(char *, const char *, size_t);" |
echo "extern size_t strlcat(char *, const char *, size_t);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strlcat.o" |
[ ${HAVE_STRLCPY} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRLCPY} -eq 0 ]; then |
echo "extern size_t strlcpy(char *, const char *, size_t);" |
echo "extern size_t strlcpy(char *, const char *, size_t);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strlcpy.o" |
[ ${HAVE_STRNDUP} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRNDUP} -eq 0 ]; then |
echo "extern char *strndup(const char *, size_t);" |
echo "extern char *strndup(const char *, size_t);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strndup.o" |
[ ${HAVE_STRSEP} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRSEP} -eq 0 ]; then |
echo "extern char *strsep(char **, const char *);" |
echo "extern char *strsep(char **, const char *);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strsep.o" |
[ ${HAVE_STRTONUM} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_STRTONUM} -eq 0 ]; then |
echo "extern long long strtonum(const char *, long long, long long, const char **);" |
echo "extern long long strtonum(const char *, long long, long long, const char **);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_strtonum.o" |
[ ${HAVE_VASPRINTF} -eq 0 ] && \ |
fi |
|
if [ ${HAVE_VASPRINTF} -eq 0 ]; then |
echo "extern int vasprintf(char **, const char *, va_list);" |
echo "extern int vasprintf(char **, const char *, va_list);" |
|
MANDOC_COBJS="${MANDOC_COBJS} compat_vasprintf.o" |
|
fi |
echo "file config.h: written" 1>&2 |
echo "file config.h: written" 1>&2 |
echo "file config.h: written" 1>&3 |
echo "file config.h: written" 1>&3 |
|
|
Line 580 INSTALL_TARGETS= |
|
Line 642 INSTALL_TARGETS= |
|
cat << __HEREDOC__ |
cat << __HEREDOC__ |
BUILD_TARGETS = ${BUILD_TARGETS} |
BUILD_TARGETS = ${BUILD_TARGETS} |
INSTALL_TARGETS = ${INSTALL_TARGETS} |
INSTALL_TARGETS = ${INSTALL_TARGETS} |
|
AR = ${AR} |
CC = ${CC} |
CC = ${CC} |
CFLAGS = ${CFLAGS} |
CFLAGS = ${CFLAGS} |
LDADD = ${LDADD} |
LDADD = ${LDADD} |
LDFLAGS = ${LDFLAGS} |
LDFLAGS = ${LDFLAGS} |
|
DEBUG_OBJS = ${DEBUG_OBJS} |
|
MANDOC_COBJS = ${MANDOC_COBJS} |
|
SOELIM_COBJS = ${SOELIM_COBJS} |
STATIC = ${STATIC} |
STATIC = ${STATIC} |
PREFIX = ${PREFIX} |
PREFIX = ${PREFIX} |
BINDIR = ${BINDIR} |
BINDIR = ${BINDIR} |