diff options
author | unknown <joerg@trift2.> | 2007-04-17 12:18:17 +0200 |
---|---|---|
committer | unknown <joerg@trift2.> | 2007-04-17 12:18:17 +0200 |
commit | 5c9123b5fc78716ac9bac51ce93fb5f84da88e42 (patch) | |
tree | 426e7e8594a2cd63f984ddbf844802fd8cd4f310 /configure.in | |
parent | 3e8252ffc6ff28df8b0dbadcfea6ca506a731cbf (diff) | |
download | mariadb-git-5c9123b5fc78716ac9bac51ce93fb5f84da88e42.tar.gz |
Let the "configure" options that control table handlers (NDB, InnoDB) or features ("embedded")
also control the list of man pages installed, so that they correspond better to the binaries.
This is the second version of this fix, including review comments.
configure.in:
Several of our man pages are specific to parts (table handlers, features, ...)
which are controlled by "configure" options, so there are builds which do not
include these parts.
For such builds, remove those specific man pages from the list of man pages
to be installed, so that the man pages correspond better to the binaries.
In this patch, do it for NDB (modify Kent's approach), "embedded", and InnoDB.
Ensure that the handling of the man pages is determined only after the options
have been processed, the old nandling (NDB only) was done too early.
This is the second version of this fix, including review comments.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 76 |
1 files changed, 54 insertions, 22 deletions
diff --git a/configure.in b/configure.in index 9b5abe39a6f..76352b06d62 100644 --- a/configure.in +++ b/configure.in @@ -2376,28 +2376,6 @@ AC_ARG_WITH(man, [with_man=yes] ) -if test X"$with_man" = Xyes -then - man_dirs="man" - if test X"$have_ndbcluster" = Xyes - then - man1_files=`ls $srcdir/man/*.1 | sed -e 's;^.*man/;;'` - man8_files=`ls $srcdir/man/*.8 | sed -e 's;^.*man/;;'` - else - man1_files=`ls $srcdir/man/*.1 | grep -v '/ndb' | sed -e 's;^.*man/;;'` - man8_files=`ls $srcdir/man/*.8 | grep -v '/ndb' | sed -e 's;^.*man/;;'` - fi - man1_files=`echo $man1_files` - man8_files=`echo $man8_files` -else - man_dirs="" - man1_files="" - man8_files="" -fi -AC_SUBST(man_dirs) -AC_SUBST(man1_files) -AC_SUBST(man8_files) - # Shall we build the bench code? AC_ARG_WITH(bench, [ --without-bench Skip building of the benchmark suite.], @@ -2532,6 +2510,60 @@ MYSQL_CHECK_BLACKHOLEDB MYSQL_CHECK_NDBCLUSTER MYSQL_CHECK_FEDERATED +# Include man pages, if desired, adapted to the configured parts. +if test X"$with_man" = Xyes +then + # First, create the list of all man pages present. + MANLISTFIL=manlist.$$ + TMPLISTFIL=`echo $MANLISTFIL | sed -e 's/manlist/tmplist/'` + if test -f $MANLISTFIL -o -f $TMPLISTFIL + then + echo "Temp file '$MANLISTFIL' or '$TMPLISTFIL' already exists in '`pwd`' - aborting" + exit 1 + fi + touch $MANLISTFIL $TMPLISTFIL + + ls $srcdir/man/*.[[18]] > $MANLISTFIL + + # Then, remove all those pages from the list which are specific to parts + # (table handlers, features, ...) which are not configured in this run. + AC_MSG_CHECKING("for man pages to remove") + MAN_DROP="dropping" + if test X"$have_ndbcluster" != Xyes + then + MAN_DROP="$MAN_DROP ndbcluster" + grep -v '/ndb' $MANLISTFIL > $TMPLISTFIL ; mv -f $TMPLISTFIL $MANLISTFIL + fi + if test X"$with_embedded_server" != Xyes + then + MAN_DROP="$MAN_DROP embedded" + grep -v 'embedded' $MANLISTFIL > $TMPLISTFIL ; mv -f $TMPLISTFIL $MANLISTFIL + fi + if test X"$have_innodb" != Xyes + then + MAN_DROP="$MAN_DROP innodb" + grep -v 'inno' $MANLISTFIL > $TMPLISTFIL ; mv -f $TMPLISTFIL $MANLISTFIL + fi + AC_MSG_RESULT([$MAN_DROP]) + + # Finally, split the man pages into sections 1 and 8. + # Get rid of line breaks. + man1_files=`sed -n -e '/\.1$/s/^.*man\///p' <$MANLISTFIL` + man8_files=`sed -n -e '/\.8$/s/^.*man\///p' <$MANLISTFIL` + + man_dirs="man" + man1_files=`echo $man1_files` + man8_files=`echo $man8_files` + rm -f $MANLISTFIL +else + man_dirs="" + man1_files="" + man8_files="" +fi +AC_SUBST(man_dirs) +AC_SUBST(man1_files) +AC_SUBST(man8_files) + # If we have threads generate some library functions and test programs sql_server_dirs= server_scripts= |