r20663: Do not install smbmount man page if we didn't called configure
[abartlet/samba.git/.git] / source3 / script / installman.sh
index 2329ed5425cce4b227697f57139ab8156c856d8d..b879c79022f9d70339fd3522bcb805e8a47e1cc8 100755 (executable)
@@ -5,7 +5,7 @@
 #   modified to accomodate international man pages (inspired
 #   by Japanese edition's approach)
 
-MANDIR=$1
+MANDIR=`echo $1 | sed 's/\/\//\//g'`
 SRCDIR=$2/
 langs=$3
 
@@ -13,17 +13,25 @@ if [ $# -ge 4 ] ; then
   GROFF=$4                    # sh cmd line, including options 
 fi
 
+if test ! -d $SRCDIR../docs/manpages; then
+       echo "No manpages present.  SVN development version maybe?"
+       exit 0
+fi
+
+# Get the configured feature set
+test -f "${SRCDIR}/config.log" && \
+       eval `grep "^[[:alnum:]]*=.*" "${SRCDIR}/config.log"`
 
 for lang in $langs; do
-    if [ "X$lang" = Xen ]; then
+    if [ "X$lang" = XC ]; then
        echo Installing default man pages in $MANDIR/
        lang=.
     else
        echo Installing \"$lang\" man pages in $MANDIR/lang/$lang
     fi
 
-    langdir=$MANDIR/lang/$lang
-    for d in $MANDIR $MANDIR/lang $langdir $langdir/man1 $langdir/man5 $langdir/man7 $langdir/man8; do
+    langdir=$MANDIR/$lang
+    for d in $MANDIR $langdir $langdir/man1 $langdir/man5 $langdir/man7 $langdir/man8; do
        if [ ! -d $d ]; then
            mkdir $d
            if [ ! -d $d ]; then
@@ -36,13 +44,21 @@ for lang in $langs; do
     for sect in 1 5 7 8 ; do
        for m in $langdir/man$sect ; do
            for s in $SRCDIR../docs/manpages/$lang/*$sect; do
-           FNAME=$m/`basename $s`
+           MP_BASENAME=`basename $s`
+
+           # Check if this man page if required by the configured feature set
+           case "${MP_BASENAME}" in
+               smbsh.1) test -z "${SMBWRAPPER}" && continue ;;
+               smbmount.8) test -z "${SMBMOUNT_PROGS}" && continue ;;
+               *) ;;
+           esac
+
+           FNAME="$m/${MP_BASENAME}"
+
            # Test for writability.  Involves 
            # blowing away existing files.
  
            if (rm -f $FNAME && touch $FNAME); then
-               rm $FNAME
                if [ "x$GROFF" = x ] ; then
                    cp $s $m            # Copy raw nroff 
                else