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