From f9de12b864cc2b2fd5c3327f9dccf16deeefb483 Mon Sep 17 00:00:00 2001 From: Sebastian Hahn Date: Sat, 27 Feb 2010 16:27:44 +0100 Subject: Ship the asciidoc-helper file in our tarballs Otherwise, the build process breaks when one of the .1.txt gets a new mtime. Suggested by weasel. --- ChangeLog | 3 +++ doc/Makefile.am | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index ab11ddb6d..7ee0ebec9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -23,6 +23,9 @@ Changes in version 0.2.2.10-alpha - 2010-??-?? fixes bug 1255. - Disallow values larger than INT32_MAX for PerConnBWRate|Burst config option. Bugfix on 0.2.2.7-alpha. + - Ship the asciidoc-helper file in the tarball, so that people can + build from source if they want to, and touching the .1.txt files + doesn't break the build. Bugfix on 0.2.2.9-alpha. o Code simplifications and refactoring: - Fix some urls in the exit notice file and make it XHTML1.1 strict diff --git a/doc/Makefile.am b/doc/Makefile.am index 492dd3bd5..cccc94823 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -19,7 +19,7 @@ html_in = $(asciidoc_files:=.html.in) man_in = $(asciidoc_files:=.1.in) -EXTRA_DIST = HACKING \ +EXTRA_DIST = HACKING asciidoc-helper.sh \ $(html_in) $(man_in) $(asciidoc_files:=.1.txt) \ tor-osx-dmg-creation.txt tor-rpm-creation.txt \ tor-win32-mingw-creation.txt -- cgit v1.2.3 From 0cd1b499b46fa112e0d81e467a0d07f79e04bbdb Mon Sep 17 00:00:00 2001 From: Sebastian Hahn Date: Sat, 27 Feb 2010 17:06:06 +0100 Subject: Simplify asciidoc-helper We don't need sed for our string manipulation, so let's get rid of it. Suggested by weasel. --- ChangeLog | 2 +- doc/Makefile.am | 4 ++-- doc/asciidoc-helper.sh | 13 ++++++++----- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7ee0ebec9..4b291047a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -30,7 +30,7 @@ Changes in version 0.2.2.10-alpha - 2010-??-?? o Code simplifications and refactoring: - Fix some urls in the exit notice file and make it XHTML1.1 strict compliant. Based on a patch from Christian Kujau. - + - Don't use sed in asciidoc-helper anymore. Changes in version 0.2.2.9-alpha - 2010-02-22 o Directory authority changes: diff --git a/doc/Makefile.am b/doc/Makefile.am index cccc94823..dbc44f0fb 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -39,7 +39,7 @@ DIST_SUBDIRS = spec # Generate the html documentation from asciidoc, but don't do # machine-specific replacements yet $(html_in) : - $(top_srcdir)/doc/asciidoc-helper.sh html @ASCIIDOC@ @SED@ $(top_srcdir)/doc/$@ + $(top_srcdir)/doc/asciidoc-helper.sh html @ASCIIDOC@ $(top_srcdir)/doc/$@ tor.html.in : tor.1.txt torify.html.in : torify.1.txt @@ -49,7 +49,7 @@ tor-resolve.html.in : tor-resolve.1.txt # Generate the manpage from asciidoc, but don't do # machine-specific replacements yet $(man_in) : - $(top_srcdir)/doc/asciidoc-helper.sh man @A2X@ @SED@ $(top_srcdir)/doc/$@ + $(top_srcdir)/doc/asciidoc-helper.sh man @A2X@ $(top_srcdir)/doc/$@ tor.1.in : tor.1.txt torify.1.in : torify.1.txt diff --git a/doc/asciidoc-helper.sh b/doc/asciidoc-helper.sh index 90a003d49..25b438cd8 100755 --- a/doc/asciidoc-helper.sh +++ b/doc/asciidoc-helper.sh @@ -4,19 +4,19 @@ # See LICENSE for licensing information # Run this to generate .html.in or .1.in files from asciidoc files. # Arguments: -# html|man asciidocpath sedpath outputfile +# html|man asciidocpath outputfile set -e -if [ $# != 4 ]; then +if [ $# != 3 ]; then exit 1; fi -output=$4 -input=`echo $output | $3 -e 's/html\.in$/1\.txt/g' -e 's/1\.in$/1\.txt/g'` -base=`echo $output | $3 -e 's/\.html\.in$//g' -e 's/\.1\.in$//g'` +output=$3 if [ "$1" = "html" ]; then + input=${output%%.html.in}.1.txt + base=${output%%.html.in} if [ "$2" != none ]; then "$2" -d manpage -o $output $input; else @@ -29,6 +29,9 @@ if [ "$1" = "html" ]; then echo "=================================="; fi elif [ "$1" = "man" ]; then + input=${output%%.1.in}.1.txt + base=${output%%.1.in} + if test "$2" != none; then if $2 -f manpage $input; then mv $base.1 $output; -- cgit v1.2.3 From 4db5e7ae7698393552c34d2c28180bbefa87fd62 Mon Sep 17 00:00:00 2001 From: Sebastian Hahn Date: Mon, 1 Mar 2010 03:17:48 +0100 Subject: Add configure switch to disable use of asciidoc Also break the build if that switch isn't used and asciidoc isn't available. --- ChangeLog | 6 ++++++ configure.in | 23 +++++++++++++++++++++++ doc/Makefile.am | 4 ++++ doc/asciidoc-helper.sh | 34 +++++++--------------------------- 4 files changed, 40 insertions(+), 27 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4b291047a..fa4057248 100644 --- a/ChangeLog +++ b/ChangeLog @@ -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 not marked with the Fast flag. + o Minor features: + - Allow disabling building of the manpages. This speeds up the + build considerably. + o Minor bugfixes: - Fix a memleak in the EXTENDCIRCUIT logic. Spotted by coverity. 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 compliant. Based on a patch from Christian Kujau. - 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 o Directory authority changes: diff --git a/configure.in b/configure.in index e045c08b3..6e73a2aad 100644 --- a/configure.in +++ b/configure.in @@ -49,6 +49,15 @@ AC_ARG_ENABLE(transparent, *) AC_MSG_ERROR(bad value for --enable-transparent) ;; 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, 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 AC_PATH_PROG([ASCIIDOC], [asciidoc], 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([OPENSSL], [openssl], none) diff --git a/doc/Makefile.am b/doc/Makefile.am index dbc44f0fb..e7edb0476 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -13,7 +13,11 @@ # part of the source distribution, so that people without asciidoc can # just use the .1 and .html files. +if USE_ASCIIDOC asciidoc_files = tor tor-gencert tor-resolve torify +else +asciidoc_files = +endif html_in = $(asciidoc_files:=.html.in) diff --git a/doc/asciidoc-helper.sh b/doc/asciidoc-helper.sh index 25b438cd8..d24b31918 100755 --- a/doc/asciidoc-helper.sh +++ b/doc/asciidoc-helper.sh @@ -17,41 +17,21 @@ output=$3 if [ "$1" = "html" ]; then input=${output%%.html.in}.1.txt base=${output%%.html.in} - if [ "$2" != none ]; then - "$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 + "$2" -d manpage -o $output $input; elif [ "$1" = "man" ]; then input=${output%%.1.in}.1.txt base=${output%%.1.in} - if test "$2" != none; then - if $2 -f manpage $input; then - mv $base.1 $output; - else - echo "=================================="; - echo; - echo "a2x is installed, but some required docbook support files are"; - echo "missing. Please install docbook-xsl and docbook-xml (Debian)"; - echo "or similar."; - echo; - echo "=================================="; - fi; + if "$2" -f manpage $input; then + mv $base.1 $output; else echo "=================================="; echo; - echo "The manpage for $base will NOT be "; - echo "available, because a2x doesn't appear to be installed!"; + echo "a2x is installed, but some required docbook support files are"; + echo "missing. Please install docbook-xsl and docbook-xml (Debian)"; + echo "or similar."; echo; echo "=================================="; + exit 1; fi fi - -touch $output; \ -- cgit v1.2.3