diff options
| -rwxr-xr-x | make-dist | 101 |
1 files changed, 53 insertions, 48 deletions
| @@ -6,7 +6,7 @@ | |||
| 6 | #### be distributed. This means that if you add a file with an odd name, | 6 | #### be distributed. This means that if you add a file with an odd name, |
| 7 | #### you should make sure that this script will include it. | 7 | #### you should make sure that this script will include it. |
| 8 | 8 | ||
| 9 | # Copyright (C) 1995, 1997 Free Software Foundation, Inc. | 9 | # Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc. |
| 10 | # | 10 | # |
| 11 | # This file is part of GNU Emacs. | 11 | # This file is part of GNU Emacs. |
| 12 | # | 12 | # |
| @@ -37,6 +37,7 @@ progname="$0" | |||
| 37 | umask 0 | 37 | umask 0 |
| 38 | 38 | ||
| 39 | update=yes | 39 | update=yes |
| 40 | check=yes | ||
| 40 | clean_up=no | 41 | clean_up=no |
| 41 | make_tar=no | 42 | make_tar=no |
| 42 | newer="" | 43 | newer="" |
| @@ -56,6 +57,10 @@ while [ $# -gt 0 ]; do | |||
| 56 | "--no-update" ) | 57 | "--no-update" ) |
| 57 | update=no | 58 | update=no |
| 58 | ;; | 59 | ;; |
| 60 | ## This option says don't check for bad file names, etc. | ||
| 61 | "--no-check" ) | ||
| 62 | check=no | ||
| 63 | ;; | ||
| 59 | ## This option tells make-dist to make the distribution normally, then | 64 | ## This option tells make-dist to make the distribution normally, then |
| 60 | ## remove all files older than the given timestamp file. This is useful | 65 | ## remove all files older than the given timestamp file. This is useful |
| 61 | ## for creating incremental or patch distributions. | 66 | ## for creating incremental or patch distributions. |
| @@ -143,50 +148,54 @@ them, and try again." >&2 | |||
| 143 | exit 1 | 148 | exit 1 |
| 144 | fi | 149 | fi |
| 145 | 150 | ||
| 146 | ### Check for .elc files with no corresponding .el file. | 151 | ### Find where to run Emacs. |
| 147 | ls -1 lisp/[a-z]*.el lisp/[a-z]*/[a-z]*.el \ | 152 | if [ $check = yes ]; |
| 148 | leim/[a-z]*.el leim/[a-z]*/[a-z]*.el | sed 's/\.el$/.elc/' > /tmp/el | 153 | then |
| 149 | ls -1 lisp/[a-z]*.elc lisp/[a-z]*/[a-z]*.elc \ | 154 | ### Check for .elc files with no corresponding .el file. |
| 150 | leim/[a-z]*.elc leim/[a-z]*/[a-z]*.elc > /tmp/elc | 155 | ls -1 lisp/[a-z]*.el lisp/[a-z]*/[a-z]*.el \ |
| 151 | bogosities="`comm -13 /tmp/el /tmp/elc`" | 156 | leim/[a-z]*.el leim/[a-z]*/[a-z]*.el | sed 's/\.el$/.elc/' > /tmp/el |
| 152 | if [ "${bogosities}" != "" ]; then | 157 | ls -1 lisp/[a-z]*.elc lisp/[a-z]*/[a-z]*.elc \ |
| 153 | echo "The following .elc files have no corresponding .el files:" | 158 | leim/[a-z]*.elc leim/[a-z]*/[a-z]*.elc > /tmp/elc |
| 154 | echo "${bogosities}" | 159 | bogosities="`comm -13 /tmp/el /tmp/elc`" |
| 155 | fi | 160 | if [ "${bogosities}" != "" ]; then |
| 156 | rm -f /tmp/el /tmp/elc | 161 | echo "The following .elc files have no corresponding .el files:" |
| 157 | 162 | echo "${bogosities}" | |
| 158 | ### Check for .el files with no corresponding .elc file. | ||
| 159 | ((cd lisp; ls -1 [a-z]*.el [a-z]*/[a-z]*.el) | ||
| 160 | (cd leim; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)) > /tmp/el | ||
| 161 | ((cd lisp; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc) | ||
| 162 | (cd leim; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)) | sed 's/\.elc$/.el/' > /tmp/elc | ||
| 163 | losers="`comm -23 /tmp/el /tmp/elc`" | ||
| 164 | bogosities= | ||
| 165 | for file in $losers; do | ||
| 166 | file1=`echo $file | sed -e "s|.*/||"` | ||
| 167 | if ! grep -q "dontcompilefiles:.* $file1\($\| \)" lisp/Makefile; then | ||
| 168 | case $file in | ||
| 169 | site-init.el | site-load.el | site-start.el | default.el) | ||
| 170 | ;; | ||
| 171 | term/*) | ||
| 172 | ;; | ||
| 173 | *) | ||
| 174 | bogosities="$file $bogosities" | ||
| 175 | ;; | ||
| 176 | esac | ||
| 177 | fi | 163 | fi |
| 178 | done | 164 | rm -f /tmp/el /tmp/elc |
| 179 | if [ x"${bogosities}" != x"" ]; then | 165 | |
| 180 | echo "The following .el files have no corresponding .elc files:" | 166 | ### Check for .el files with no corresponding .elc file. |
| 181 | echo "${bogosities}" | 167 | ((cd lisp; ls -1 [a-z]*.el [a-z]*/[a-z]*.el) |
| 182 | fi | 168 | (cd leim; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)) > /tmp/el |
| 183 | rm -f /tmp/el /tmp/elc | 169 | ((cd lisp; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc) |
| 170 | (cd leim; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)) | sed 's/\.elc$/.el/' > /tmp/elc | ||
| 171 | losers="`comm -23 /tmp/el /tmp/elc`" | ||
| 172 | bogosities= | ||
| 173 | for file in $losers; do | ||
| 174 | file1=`echo $file | sed -e "s|.*/||"` | ||
| 175 | if ! grep -q "dontcompilefiles:.* $file1\($\| \)" lisp/Makefile; then | ||
| 176 | case $file in | ||
| 177 | site-init.el | site-load.el | site-start.el | default.el) | ||
| 178 | ;; | ||
| 179 | term/*) | ||
| 180 | ;; | ||
| 181 | *) | ||
| 182 | bogosities="$file $bogosities" | ||
| 183 | ;; | ||
| 184 | esac | ||
| 185 | fi | ||
| 186 | done | ||
| 187 | if [ x"${bogosities}" != x"" ]; then | ||
| 188 | echo "The following .el files have no corresponding .elc files:" | ||
| 189 | echo "${bogosities}" | ||
| 190 | fi | ||
| 191 | rm -f /tmp/el /tmp/elc | ||
| 184 | 192 | ||
| 185 | ### Check for .el files that would overflow the 14-char limit if compiled. | 193 | ### Check for .el files that would overflow the 14-char limit if compiled. |
| 186 | long=`find lisp leim -name '[a-zA-Z0-9]??????????*.el' -print` | 194 | long=`find lisp leim -name '[a-zA-Z0-9]??????????*.el' -print` |
| 187 | if [ "$long" != "" ]; then | 195 | if [ "$long" != "" ]; then |
| 188 | echo "The following .el file names are too long:" | 196 | echo "The following .el file names are too long:" |
| 189 | echo "$long" | 197 | echo "$long" |
| 198 | fi | ||
| 190 | fi | 199 | fi |
| 191 | 200 | ||
| 192 | ### Make sure configure is newer than configure.in. | 201 | ### Make sure configure is newer than configure.in. |
| @@ -261,7 +270,7 @@ for subdir in lisp site-lisp leim real-leim real-leim/CXTERM-DIC \ | |||
| 261 | real-leim/SKK-DIC real-leim/skk real-leim/quail \ | 270 | real-leim/SKK-DIC real-leim/skk real-leim/quail \ |
| 262 | src src/m src/s src/bitmaps lib-src oldXMenu lwlib \ | 271 | src src/m src/s src/bitmaps lib-src oldXMenu lwlib \ |
| 263 | nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet \ | 272 | nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet \ |
| 264 | etc etc/e lock cpp info man msdos vms; do | 273 | etc etc/e lock info man msdos vms; do |
| 265 | mkdir ${tempdir}/${subdir} | 274 | mkdir ${tempdir}/${subdir} |
| 266 | done | 275 | done |
| 267 | 276 | ||
| @@ -473,10 +482,6 @@ echo "Making links to \`etc/e'" | |||
| 473 | cd ../../${tempdir}/etc/e | 482 | cd ../../${tempdir}/etc/e |
| 474 | rm -f *~ \#*\# *,v =* core) | 483 | rm -f *~ \#*\# *,v =* core) |
| 475 | 484 | ||
| 476 | echo "Making links to \`cpp'" | ||
| 477 | (cd cpp | ||
| 478 | ln cccp.c cexp.y Makefile README ../${tempdir}/cpp) | ||
| 479 | |||
| 480 | echo "Making links to \`info'" | 485 | echo "Making links to \`info'" |
| 481 | # Don't distribute backups or autosaves. | 486 | # Don't distribute backups or autosaves. |
| 482 | (cd info | 487 | (cd info |