s3: Fix a "Invalid (state->nread >= 0)" warning
[Samba/id10ts.git] / source3 / script / installman.sh
blob2f799968073b4c68df3f36916932e097966c8ab1
1 #!/bin/sh
2 #5 July 96 Dan.Shearer@unisa.edu.au removed hardcoded values
4 # 13 Aug 2001 Rafal Szczesniak <mimir@spin.ict.pwr.wroc.pl>
5 # modified to accomodate international man pages (inspired
6 # by Japanese edition's approach)
8 MANDIR=`echo $1 | sed 's/\/\//\//g'`
9 SRCDIR=$2/
10 langs=$3
12 if [ $# -ge 4 ] ; then
13 GROFF=$4 # sh cmd line, including options
16 if test ! -d $SRCDIR../docs/manpages; then
17 echo "No manpages present. Development version maybe?"
18 exit 0
21 # Get the configured feature set
22 test -f "${SRCDIR}/config.log" && \
23 eval `grep "^[[:alnum:]]*=.*" "${SRCDIR}/config.log" |
24 grep -v ^MANDIR | grep -v ^SRCDIR`
26 for lang in $langs; do
27 if [ "X$lang" = XC ]; then
28 echo Installing default man pages in $MANDIR/
29 lang=.
30 else
31 echo Installing \"$lang\" man pages in $MANDIR/lang/$lang
34 langdir=$MANDIR/$lang
35 for d in $MANDIR $langdir $langdir/man1 $langdir/man5 $langdir/man7 $langdir/man8; do
36 if [ ! -d $d ]; then
37 mkdir $d
38 if [ ! -d $d ]; then
39 echo Failed to make directory $d, does $USER have privileges?
40 exit 1
43 done
45 for sect in 1 5 7 8 ; do
46 for m in $langdir/man$sect ; do
47 for s in $SRCDIR../docs/manpages/$lang/*$sect; do
48 MP_BASENAME=`basename $s`
50 # Check if this man page if required by the configured feature set
51 case "${MP_BASENAME}" in
52 smbsh.1) test -z "${SMBWRAPPER}" && continue ;;
53 *) ;;
54 esac
56 FNAME="$m/${MP_BASENAME}"
58 # Test for writability. Involves
59 # blowing away existing files.
61 if (rm -f $FNAME && touch $FNAME); then
62 if [ "x$GROFF" = x ] ; then
63 cp $s $m # Copy raw nroff
64 else
65 echo "\t$FNAME" # groff'ing can be slow, give the user
66 # a warm fuzzy.
67 $GROFF $s > $FNAME # Process nroff, because man(1) (on
68 # this system) doesn't .
70 chmod 0644 $FNAME
71 else
72 echo Cannot create $FNAME... does $USER have privileges?
74 done
75 done
76 done
77 done
78 cat << EOF
79 ======================================================================
80 The man pages have been installed. You may uninstall them using the command
81 the command "make uninstallman" or make "uninstall" to uninstall binaries,
82 man pages and shell scripts.
83 ======================================================================
84 EOF
86 exit 0