Add configure switch to disable use of asciidoc

Also break the build if that switch isn't used and asciidoc isn't
available.
This commit is contained in:
Sebastian Hahn 2010-03-01 03:17:48 +01:00
parent 0cd1b499b4
commit 4db5e7ae76
4 changed files with 40 additions and 27 deletions

View File

@ -15,6 +15,10 @@ Changes in version 0.2.2.10-alpha - 2010-??-??
circuits now only differ from fast ones in that they can use nodes circuits now only differ from fast ones in that they can use nodes
not marked with the Fast flag. not marked with the Fast flag.
o Minor features:
- Allow disabling building of the manpages. This speeds up the
build considerably.
o Minor bugfixes: o Minor bugfixes:
- Fix a memleak in the EXTENDCIRCUIT logic. Spotted by coverity. - Fix a memleak in the EXTENDCIRCUIT logic. Spotted by coverity.
Bugfix on 0.2.2.9-alpha. Bugfix on 0.2.2.9-alpha.
@ -31,6 +35,8 @@ Changes in version 0.2.2.10-alpha - 2010-??-??
- Fix some urls in the exit notice file and make it XHTML1.1 strict - Fix some urls in the exit notice file and make it XHTML1.1 strict
compliant. Based on a patch from Christian Kujau. compliant. Based on a patch from Christian Kujau.
- Don't use sed in asciidoc-helper anymore. - Don't use sed in asciidoc-helper anymore.
- Make the build process fail if asciidoc cannot be found, and
building with asciidoc isn't disabled.
Changes in version 0.2.2.9-alpha - 2010-02-22 Changes in version 0.2.2.9-alpha - 2010-02-22
o Directory authority changes: o Directory authority changes:

View File

@ -49,6 +49,15 @@ AC_ARG_ENABLE(transparent,
*) AC_MSG_ERROR(bad value for --enable-transparent) ;; *) AC_MSG_ERROR(bad value for --enable-transparent) ;;
esac], [transparent=true]) esac], [transparent=true])
AC_ARG_ENABLE(asciidoc,
AS_HELP_STRING(--disable-asciidoc, don't use asciidoc (disables building of manpages)),
[case "${enableval}" in
yes) asciidoc=true ;;
no) asciidoc=false ;;
*) AC_MSG_ERROR(bad value for --disable-asciidoc) ;;
esac], [asciidoc=true])
AC_ARG_ENABLE(threads, AC_ARG_ENABLE(threads,
AS_HELP_STRING(--disable-threads, disable multi-threading support)) AS_HELP_STRING(--disable-threads, disable multi-threading support))
@ -97,6 +106,20 @@ AC_CHECK_PROG([SED],[sed],[sed],[/bin/false])
dnl check for asciidoc and a2x dnl check for asciidoc and a2x
AC_PATH_PROG([ASCIIDOC], [asciidoc], none) AC_PATH_PROG([ASCIIDOC], [asciidoc], none)
AC_PATH_PROG([A2X], [a2x], none) AC_PATH_PROG([A2X], [a2x], none)
AC_PATH_PROG([XSLTPROC], [xsltproc], none)
if test x$asciidoc = xtrue ; then
if test x$ASCIIDOC = xnone ; then
AC_MSG_ERROR("Couldn't find asciidoc. reconfigure with --disable-asciidoc to build without asciidoc.")
fi
if test x$A2X = xnone ; then
AC_MSG_ERROR("Couldn't find a2x. reconfigure with --disable-asciidoc to build without a2x.")
fi
if test x$XSLTPROC = xnone ; then
AC_MSG_ERROR("Couldn't find xsltproc. reconfigure with --disable-asciidoc to build without xsltproc.")
fi
fi
AM_CONDITIONAL(USE_ASCIIDOC, test x$asciidoc = xtrue)
AC_PATH_PROG([SHA1SUM], [sha1sum], none) AC_PATH_PROG([SHA1SUM], [sha1sum], none)
AC_PATH_PROG([OPENSSL], [openssl], none) AC_PATH_PROG([OPENSSL], [openssl], none)

View File

@ -13,7 +13,11 @@
# part of the source distribution, so that people without asciidoc can # part of the source distribution, so that people without asciidoc can
# just use the .1 and .html files. # just use the .1 and .html files.
if USE_ASCIIDOC
asciidoc_files = tor tor-gencert tor-resolve torify asciidoc_files = tor tor-gencert tor-resolve torify
else
asciidoc_files =
endif
html_in = $(asciidoc_files:=.html.in) html_in = $(asciidoc_files:=.html.in)

View File

@ -17,23 +17,12 @@ output=$3
if [ "$1" = "html" ]; then if [ "$1" = "html" ]; then
input=${output%%.html.in}.1.txt input=${output%%.html.in}.1.txt
base=${output%%.html.in} base=${output%%.html.in}
if [ "$2" != none ]; then
"$2" -d manpage -o $output $input; "$2" -d manpage -o $output $input;
else
echo "==================================";
echo;
echo "The manpage in html form for $base will ";
echo "NOT be available, because asciidoc doesn't appear to be ";
echo "installed!";
echo;
echo "==================================";
fi
elif [ "$1" = "man" ]; then elif [ "$1" = "man" ]; then
input=${output%%.1.in}.1.txt input=${output%%.1.in}.1.txt
base=${output%%.1.in} base=${output%%.1.in}
if test "$2" != none; then if "$2" -f manpage $input; then
if $2 -f manpage $input; then
mv $base.1 $output; mv $base.1 $output;
else else
echo "=================================="; echo "==================================";
@ -43,15 +32,6 @@ elif [ "$1" = "man" ]; then
echo "or similar."; echo "or similar.";
echo; echo;
echo "=================================="; echo "==================================";
fi; exit 1;
else
echo "==================================";
echo;
echo "The manpage for $base will NOT be ";
echo "available, because a2x doesn't appear to be installed!";
echo;
echo "==================================";
fi fi
fi fi
touch $output; \