From 22df825526bd7f560503bbbc7fede40224643790 Mon Sep 17 00:00:00 2001 From: ru Date: Tue, 21 Mar 2006 09:05:42 +0000 Subject: A tool to generate the src.conf(5) manpage. --- tools/build/options/makeman | 185 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 tools/build/options/makeman (limited to 'tools') diff --git a/tools/build/options/makeman b/tools/build/options/makeman new file mode 100644 index 0000000..910f138 --- /dev/null +++ b/tools/build/options/makeman @@ -0,0 +1,185 @@ +#!/bin/sh +# +# This file is in the public domain. + +ident='$FreeBSD$' + +# +# show settings | options +# +show() +{ + + mode=$1; shift + case ${mode} in + settings) + yes_prefix=WITH + no_prefix=WITHOUT + ;; + options) + yes_prefix=WITHOUT + no_prefix=WITH + ;; + *) + echo "internal error" >/dev/stderr + exit 1 + ;; + esac + make "$@" -f ../../../share/mk/bsd.own.mk SRCCONF=/dev/null -V_ -dg1 | + grep ^MK_ |sort | + while read var _ val; do + opt=${var#MK_} + case ${val} in + yes) + echo ${yes_prefix}_${opt} + ;; + no) + echo ${no_prefix}_${opt} + ;; + *) + echo "make showconfig broken" >/dev/stderr + exit 1 + ;; + esac + done +} + +main() +{ + + trap 'rm -f _config _config2 _deps' exit + ident=${ident#$} + ident=${ident% $} + fbsdid='$FreeBSD$' + cat <_config + show options | + while read opt; do + if [ -f ${opt} ]; then + cat </dev/stderr + fi + show settings -D${opt} |sort >_config2 + comm -13 _config _config2 |grep -v "^${opt}$" >_deps + if [ -s _deps ]; then + cat <