]> git.cameronkatri.com Git - mandoc.git/blobdiff - configure
more details about Mac OS X; information from Sevan Janiyan
[mandoc.git] / configure
index dbd7762a0ca9c98da3b318763d6cefd1bcce56f4..5cf4e081c2cb2a8c847ac3997b2cd9e16f7eee08 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,8 +1,8 @@
 #!/bin/sh
 #
-# $Id: configure,v 1.75 2020/06/15 01:37:15 schwarze Exp $
+# $Id: configure,v 1.81 2021/09/20 10:19:51 schwarze Exp $
 #
-# 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
 # purpose with or without fee is hereby granted, provided that the above
@@ -41,6 +41,7 @@ OSENUM=
 OSNAME=
 UTF8_LOCALE=
 
+AR=ar
 CC=cc
 CFLAGS=
 FATAL=0
@@ -55,6 +56,7 @@ BUILD_CGI=0
 BUILD_CATMAN=0
 INSTALL_LIBMANDOC=0
 
+HAVE_ATTRIBUTE=
 HAVE_CMSG=
 HAVE_DIRENT_NAMLEN=
 HAVE_EFTYPE=
@@ -67,6 +69,7 @@ HAVE_GETSUBOPT=
 HAVE_ISBLANK=
 HAVE_LESS_T=
 HAVE_MKDTEMP=
+HAVE_MKSTEMPS=
 HAVE_NANOSLEEP=
 HAVE_NTOHL=
 HAVE_O_DIRECTORY=
@@ -106,7 +109,7 @@ BIN_FROM_SBIN=
 INCLUDEDIR=
 LIBDIR=
 MANDIR=
-HOMEBREWDIR=
+READ_ALLOWED_PATH=
 
 WWWPREFIX="/var/www"
 HTDOCDIR=
@@ -118,6 +121,7 @@ BINM_MAKEWHATIS="makewhatis"
 BINM_MAN="man"
 BINM_SOELIM="soelim"
 BINM_WHATIS="whatis"
+BINM_PAGER=
 MANM_MAN="man"
 MANM_MANCONF="man.conf"
 MANM_MDOC="mdoc"
@@ -261,8 +265,8 @@ if [ -n "${CFLAGS}" ]; then
 else
        COMP="${CC} ${DEFCFLAGS} -Wno-unused -Werror"
 fi
-echo -n "tested ${CC} -W: " 1>&2
-echo -n "testing ${CC} -W: " 1>&3
+printf "%s" "tested ${CC} -W: " 1>&2
+printf "%s" "testing ${CC} -W: " 1>&3
 runtest noop WFLAG || true
 
 if [ -n "${CFLAGS}" ]; then
@@ -294,6 +298,7 @@ fi
 # --- tests for config.h  ----------------------------------------------
 
 # --- library functions ---
+runtest attribute      ATTRIBUTE       || true
 runtest cmsg           CMSG            "" "-D_XPG4_2" || true
 runtest dirent-namlen  DIRENT_NAMLEN   || true
 runtest be32toh                ENDIAN          || true
@@ -304,6 +309,7 @@ runtest getline             GETLINE         || true
 runtest getsubopt      GETSUBOPT       "" -D_GNU_SOURCE || true
 runtest isblank                ISBLANK         || true
 runtest mkdtemp                MKDTEMP         || true
+runtest mkstemps       MKSTEMPS        || true
 runtest nanosleep      NANOSLEEP       "${LD_NANOSLEEP}" "-lrt" || true
 runtest ntohl          NTOHL           || true
 runtest O_DIRECTORY    O_DIRECTORY     || true
@@ -341,18 +347,34 @@ else
        runtest fts FTS || true
 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 ---
-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
-       echo "tested less -T: yes" 1>&2
-       echo "tested less -T: yes" 1>&3
+       echo "tested ${BINM_PAGER} -T: yes" 1>&2
+       echo "tested ${BINM_PAGER} -T: yes" 1>&3
        echo 1>&3
 else
        HAVE_LESS_T=0
-       echo "tested less -T: no" 1>&2
-       echo "tested less -T: no" 1>&3
+       echo "tested ${BINM_PAGER} -T: no" 1>&2
+       echo "tested ${BINM_PAGER} -T: no" 1>&3
        echo 1>&3
 fi
 
@@ -422,10 +444,6 @@ cat << __HEREDOC__
 #error "Do not use C++.  See the INSTALL file."
 #endif
 
-#if !defined(__GNUC__) || (__GNUC__ < 4)
-#define __attribute__(x)
-#endif
-
 __HEREDOC__
 
 [ ${NEED_GNU_SOURCE} -eq 0 ] || echo "#define _GNU_SOURCE"
@@ -446,7 +464,9 @@ echo "#define MANPATH_DEFAULT \"${MANPATH_DEFAULT}\""
 echo "#define OSENUM ${OSENUM}"
 [ -n "${OSNAME}" ] && echo "#define OSNAME \"${OSNAME}\""
 [ -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_O_DIRECTORY} -eq 0 ] && echo "#define O_DIRECTORY 0"
 [ ${HAVE_PATH_MAX} -eq 0 ] && echo "#define PATH_MAX 4096"
@@ -466,6 +486,7 @@ cat << __HEREDOC__
 #define HAVE_ISBLANK ${HAVE_ISBLANK}
 #define HAVE_LESS_T ${HAVE_LESS_T}
 #define HAVE_MKDTEMP ${HAVE_MKDTEMP}
+#define HAVE_MKSTEMPS ${HAVE_MKSTEMPS}
 #define HAVE_NTOHL ${HAVE_NTOHL}
 #define HAVE_PLEDGE ${HAVE_PLEDGE}
 #define HAVE_PROGNAME ${HAVE_PROGNAME}
@@ -494,6 +515,7 @@ cat << __HEREDOC__
 #define BINM_MAN "${BINM_MAN}"
 #define BINM_SOELIM "${BINM_SOELIM}"
 #define BINM_WHATIS "${BINM_WHATIS}"
+#define BINM_PAGER "${BINM_PAGER}"
 
 __HEREDOC__
 
@@ -525,6 +547,10 @@ if [ ${HAVE_MKDTEMP} -eq 0 ]; then
        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
@@ -609,6 +635,7 @@ INSTALL_TARGETS=
 cat << __HEREDOC__
 BUILD_TARGETS  = ${BUILD_TARGETS}
 INSTALL_TARGETS        = ${INSTALL_TARGETS}
+AR             = ${AR}
 CC             = ${CC}
 CFLAGS         = ${CFLAGS}
 LDADD          = ${LDADD}