Mercurial > emacs
comparison make-dist @ 20785:17bcec31f3d4
New option --no-check.
Don't do anything with cpp directory.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 27 Jan 1998 04:17:53 +0000 |
parents | 036dac77f78f |
children | 70301d94ce1e |
comparison
equal
deleted
inserted
replaced
20784:80f0f0390eb6 | 20785:17bcec31f3d4 |
---|---|
4 #### source tree. This basically creates a duplicate directory | 4 #### source tree. This basically creates a duplicate directory |
5 #### structure, and then hard links into it only those files that should | 5 #### structure, and then hard links into it only those files that should |
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 # |
13 # GNU Emacs is free software; you can redistribute it and/or modify | 13 # GNU Emacs is free software; you can redistribute it and/or modify |
14 # it under the terms of the GNU General Public License as published by | 14 # it under the terms of the GNU General Public License as published by |
35 | 35 |
36 ## Don't restrict access to any files. | 36 ## Don't restrict access to any files. |
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="" |
43 | 44 |
44 while [ $# -gt 0 ]; do | 45 while [ $# -gt 0 ]; do |
53 make_tar=yes | 54 make_tar=yes |
54 ;; | 55 ;; |
55 ## This option tells make-dist not to recompile or do analogous things. | 56 ## This option tells make-dist not to recompile or do analogous things. |
56 "--no-update" ) | 57 "--no-update" ) |
57 update=no | 58 update=no |
59 ;; | |
60 ## This option says don't check for bad file names, etc. | |
61 "--no-check" ) | |
62 check=no | |
58 ;; | 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. |
62 "--newer") | 67 "--newer") |
141 \`make-dist.tmp.NNNNN' don't contain any important information, remove | 146 \`make-dist.tmp.NNNNN' don't contain any important information, remove |
142 them, and try again." >&2 | 147 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. | 163 fi |
159 ((cd lisp; ls -1 [a-z]*.el [a-z]*/[a-z]*.el) | 164 rm -f /tmp/el /tmp/elc |
160 (cd leim; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)) > /tmp/el | 165 |
161 ((cd lisp; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc) | 166 ### Check for .el files with no corresponding .elc file. |
162 (cd leim; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)) | sed 's/\.elc$/.el/' > /tmp/elc | 167 ((cd lisp; ls -1 [a-z]*.el [a-z]*/[a-z]*.el) |
163 losers="`comm -23 /tmp/el /tmp/elc`" | 168 (cd leim; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)) > /tmp/el |
164 bogosities= | 169 ((cd lisp; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc) |
165 for file in $losers; do | 170 (cd leim; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)) | sed 's/\.elc$/.el/' > /tmp/elc |
166 file1=`echo $file | sed -e "s|.*/||"` | 171 losers="`comm -23 /tmp/el /tmp/elc`" |
167 if ! grep -q "dontcompilefiles:.* $file1\($\| \)" lisp/Makefile; then | 172 bogosities= |
168 case $file in | 173 for file in $losers; do |
169 site-init.el | site-load.el | site-start.el | default.el) | 174 file1=`echo $file | sed -e "s|.*/||"` |
170 ;; | 175 if ! grep -q "dontcompilefiles:.* $file1\($\| \)" lisp/Makefile; then |
171 term/*) | 176 case $file in |
172 ;; | 177 site-init.el | site-load.el | site-start.el | default.el) |
173 *) | 178 ;; |
174 bogosities="$file $bogosities" | 179 term/*) |
175 ;; | 180 ;; |
176 esac | 181 *) |
177 fi | 182 bogosities="$file $bogosities" |
178 done | 183 ;; |
179 if [ x"${bogosities}" != x"" ]; then | 184 esac |
180 echo "The following .el files have no corresponding .elc files:" | 185 fi |
181 echo "${bogosities}" | 186 done |
182 fi | 187 if [ x"${bogosities}" != x"" ]; then |
183 rm -f /tmp/el /tmp/elc | 188 echo "The following .el files have no corresponding .elc files:" |
184 | 189 echo "${bogosities}" |
185 ### Check for .el files that would overflow the 14-char limit if compiled. | 190 fi |
186 long=`find lisp leim -name '[a-zA-Z0-9]??????????*.el' -print` | 191 rm -f /tmp/el /tmp/elc |
187 if [ "$long" != "" ]; then | 192 |
188 echo "The following .el file names are too long:" | 193 ### Check for .el files that would overflow the 14-char limit if compiled. |
189 echo "$long" | 194 long=`find lisp leim -name '[a-zA-Z0-9]??????????*.el' -print` |
195 if [ "$long" != "" ]; then | |
196 echo "The following .el file names are too 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. |
193 if [ "x`ls -t configure configure.in | head -1`" != "xconfigure" ]; then | 202 if [ "x`ls -t configure configure.in | head -1`" != "xconfigure" ]; then |
194 echo "\`./configure.in' is newer than \`./configure'" >&2 | 203 echo "\`./configure.in' is newer than \`./configure'" >&2 |
259 echo "Creating subdirectories" | 268 echo "Creating subdirectories" |
260 for subdir in lisp site-lisp leim real-leim real-leim/CXTERM-DIC \ | 269 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 |
268 echo "Initializing \`leim' subdirectory" | 277 echo "Initializing \`leim' subdirectory" |
269 cp leim-Makefile.in ${tempdir}/leim/Makefile.in | 278 cp leim-Makefile.in ${tempdir}/leim/Makefile.in |
471 (cd etc/e | 480 (cd etc/e |
472 ln `ls -d * | grep -v 'RCS'` ../../${tempdir}/etc/e | 481 ln `ls -d * | grep -v 'RCS'` ../../${tempdir}/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 |
483 ln [a-zA-Z]* ../${tempdir}/info | 488 ln [a-zA-Z]* ../${tempdir}/info |
484 cd ../${tempdir}/info | 489 cd ../${tempdir}/info |