--- awkname
+++ awkname
@@ -5,7 +5,7 @@
 esac
 
 rc=0
-new=/tmp/$$.new; old=/tmp/$$.old
+new=$(tempfile -p new); old=$(tempfile -p old)
 
 for file in lib/emptydefn lib/unmarkup lib/toascii \
                         awk/noidx awk/totex awk/tohtml awk/noindex \
--- awk/totex.nw
+++ awk/totex.nw
@@ -24,7 +24,7 @@
 @
 On an ugly system, we have to put it in a file.
 <<invoke awk program using file>>=
-awkfile=/tmp/totex$$.awk
+awkfile=$(tempfile -p totex)
 trap 'rm -f $awkfile; exit 1' 0 1 2 15	# clean up files
 cat > $awkfile << 'EOF'
 <<awk program for conversion to {\TeX}>>
--- lib/toascii
+++ lib/toascii
@@ -7,9 +7,9 @@
                 *)      echo "This can't happen -- $i passed to toascii" 1>&2 ; exit 1 ;;
         esac
 done
-awkfile="tmp/awk$$.tmp"
-textfile="/tmp/text$$.tmp"
-tagsfile="/tmp/tags$$.tmp"
+awkfile=$(tempfile -p awk -s .tmp)
+textfile=$(tempfile -p text -s .tmp)
+tagsfile=$(tempfile -p tags -s .tmp)
 export awkfile textfile tagsfile
 trap 'rm -f $awkfile $textfile $tagsfile' 0 1 2 10 14 15
 nawk 'BEGIN { textfile=ENVIRON["textfile"]
--- shell/cpif
+++ shell/cpif
@@ -17,7 +17,7 @@
 0)		echo 'Usage: '`basename $0`' [ -eq -ne ] file...' 1>&2; exit 2
 esac
 
-new=/tmp/$$
+new=$(tempfile)
 trap 'rm -f $new; exit 1' 1 2 15	# clean up files
 
 cat >$new
--- shell/nonu
+++ shell/nonu
@@ -2,7 +2,7 @@
 LIB=/usr/public/pkg/noweb/lib
 # attempt to convert nuweb to noweb using sam
 
-tmp=/tmp/nonu$$
+tmp=$(tempfile -p nonu)
 trap '/bin/rm -f $tmp; exit 1' 1 2 15	# clean up files
 cp $1 $tmp || exit 1
 
--- shell/roff.nw
+++ shell/roff.nw
@@ -80,7 +80,7 @@
 other, and quoting each quote is ugly.  The pragmatic solution is to
 copy the awk program into a temporary file, using a shell here-document.
 <<invoke awk program>>=
-awkfile="/tmp/noweb$$.awk"
+awkfile=$(tempfile -p noweb -s .awk)
 trap 'rm -f $awkfile' 0 1 2 10 14 15
 cat > $awkfile << 'EOF'
 <<awk program>>
@@ -662,12 +662,13 @@
 
 base="`basename $1 | sed '/\./s/\.[^.]*$//'`"
 tagsfile="$base.nwt"
+tmpfile=$(tempfile -p tags)
 (echo ".so $macrodir/tmac.w"
 if [ -r "$tagsfile" ]; then 
-   cp $tagsfile /tmp/tags.$$
+   cp $tagsfile $tmpfile
    $AWK '<<action for [[tags]] line>>
-         <<functions>>' /tmp/tags.$$
-   rm -f /tmp/tags.$$
+         <<functions>>' $tmpfile
+   rm -f $tmpfile
  fi
  cat "$@") |
 ($ROFF $opts 2>$tagsfile)
--- shell/noroff
+++ shell/noroff
@@ -35,9 +35,10 @@
 
 base="`basename $1 | sed '/\./s/\.[^.]*$//'`"
 tagsfile="$base.nwt"
+tmpfile=$(tempfile -p tags)
 (echo ".so $macrodir/tmac.w"
 if [ -r "$tagsfile" ]; then 
-   cp $tagsfile /tmp/tags.$$
+   cp $tagsfile $tmpfile
    $AWK '{
 	     if      (sub(/^###TAG### /       , "")) tags[$1] = $2
 	     else if (sub(/^###BEGINCHUNKS###/, "")) printf ".de CLIST\n.CLISTBEGIN\n"
@@ -88,8 +89,8 @@
 	 #	print str3
 	 #	print convquote(str3)
 	 # }
-	 function tag(s) { if (s in tags) return tags[s]; else return "???" }' /tmp/tags.$$
-   rm -f /tmp/tags.$$
+	 function tag(s) { if (s in tags) return tags[s]; else return "???" }' $tmpfile
+   rm -f $tmpfile
  fi
  cat "$@") |
 ($ROFF $opts 2>$tagsfile)
--- shell/toroff
+++ shell/toroff
@@ -9,7 +9,7 @@
            exit 1;;
     esac
 done
-awkfile="/tmp/noweb$$.awk"
+awkfile=$(tempfile -p noweb -s .awk)
 trap 'rm -f $awkfile' 0 1 2 10 14 15
 cat > $awkfile << 'EOF'
 /^@begin docs 0$/ { if (delay) next }
--- lib/toascii.nw
+++ lib/toascii.nw
@@ -28,9 +28,9 @@
 Also arranged here is a temporary file for storage of the awk program on an
 ugly system, as discussed below.
 <<arrange temporary files>>=
-awkfile="tmp/awk$$.tmp"
-textfile="/tmp/text$$.tmp"
-tagsfile="/tmp/tags$$.tmp"
+awkfile=$(tempfile -p awk -s .tmp) || { echo "$0: Cannot create temporary file" >&2; exit 1;  }
+textfile=$(tempfile -p text -s .tmp) || { echo "$0: Cannot create temporary file" >&2; exit 1;  }
+tagsfile=$(tempfile -p tags -s .tmp) || { echo "$0: Cannot create temporary file" >&2; exit 1;  }
 export awkfile textfile tagsfile
 trap 'rm -f $awkfile $textfile $tagsfile' 0 1 2 10 14 15
 @ %def textfile tagsfile awkfile
--- shell/roff.mm
+++ shell/roff.mm
@@ -214,7 +214,7 @@
 .ADDLIST 1a
 .PRINTLIST
 
-awkfile="/tmp/noweb$$.awk"
+awkfile=$(tempfile -p noweb -s .awk) || { echo "$0: Cannot create temporary file" >&2; exit 1;  }
 trap 'rm -f $awkfile' 0 1 2 10 14 15
 cat > $awkfile \&<< 'EOF'
 \c
@@ -1628,14 +1628,15 @@
 tagsfile="$base.nwt"
 (echo ".so $macrodir/tmac.w"
 if [ -r "$tagsfile" ]; then 
-   cp $tagsfile /tmp/tags.$$
+   tagstemp=$(tempfile -p tags) || { echo "$0: Cannot create temporary file" >&2; exit 1;  }
+   cp $tagsfile $tagstemp
    $AWK '\c
 .USE "action for \*[BEGINCONVQUOTE]tags\*[ENDCONVQUOTE] line" 11c
 \&
          \c
 .USE "functions" 8a
-\&' /tmp/tags.$$
-   rm -f /tmp/tags.$$
+\&' $tagstemp
+   rm -f $tagstemp
  fi
  cat "$@") |
 ($ROFF $opts 2>$tagsfile)
