diff options
| author | Stefan Monnier | 2010-12-10 19:13:08 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2010-12-10 19:13:08 -0500 |
| commit | 2c302df3a13236bfbf8ea1b771d13618fcda8d71 (patch) | |
| tree | f26dc9f22861dc37610de319d05255de058c221b /make-dist | |
| parent | 0c747cb143fa227e78f350ac353d703f489209df (diff) | |
| parent | 175069efeb080517afefdd44a06f7a779ea8c25c (diff) | |
| download | emacs-2c302df3a13236bfbf8ea1b771d13618fcda8d71.tar.gz emacs-2c302df3a13236bfbf8ea1b771d13618fcda8d71.zip | |
Merge from trunk
Diffstat (limited to 'make-dist')
| -rwxr-xr-x | make-dist | 95 |
1 files changed, 38 insertions, 57 deletions
| @@ -130,7 +130,6 @@ fi | |||
| 130 | ### (Accept only absolute file names.) | 130 | ### (Accept only absolute file names.) |
| 131 | if [ $update = yes ]; | 131 | if [ $update = yes ]; |
| 132 | then | 132 | then |
| 133 | unset EMACS_UNIBYTE | ||
| 134 | if [ -f src/emacs ]; | 133 | if [ -f src/emacs ]; |
| 135 | then | 134 | then |
| 136 | EMACS=`pwd`/src/emacs | 135 | EMACS=`pwd`/src/emacs |
| @@ -186,72 +185,66 @@ them, and try again." >&2 | |||
| 186 | exit 1 | 185 | exit 1 |
| 187 | fi | 186 | fi |
| 188 | 187 | ||
| 189 | ### Find where to run Emacs. | 188 | if [ $check = yes ]; then |
| 190 | if [ $check = yes ]; | ||
| 191 | then | ||
| 192 | ### Check for .elc files with no corresponding .el file. | ||
| 193 | ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \ | 189 | ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \ |
| 194 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | 190 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ |
| 195 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | 191 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ |
| 196 | leim/[a-z]*/[a-z]*.el | sed 's/\.el$/.elc/' > /tmp/el | 192 | leim/[a-z]*/[a-z]*.el > /tmp/el |
| 193 | |||
| 197 | ls -1 lisp/[a-zA-Z]*.elc lisp/[a-z]*/[a-zA-Z0-9]*.elc \ | 194 | ls -1 lisp/[a-zA-Z]*.elc lisp/[a-z]*/[a-zA-Z0-9]*.elc \ |
| 198 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \ | 195 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \ |
| 199 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \ | 196 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \ |
| 200 | leim/[a-z]*/[a-z]*.elc > /tmp/elc | 197 | leim/[a-z]*/[a-z]*.elc > /tmp/elc |
| 201 | bogosities="`comm -13 /tmp/el /tmp/elc`" | 198 | |
| 202 | if [ "${bogosities}" != "" ]; then | 199 | ## Check for .elc files with no corresponding .el file. |
| 200 | sed 's/\.el$/.elc/' /tmp/el > /tmp/elelc | ||
| 201 | |||
| 202 | bogosities="`comm -13 /tmp/elelc /tmp/elc`" | ||
| 203 | if [ x"${bogosities}" != x"" ]; then | ||
| 203 | echo "The following .elc files have no corresponding .el files:" | 204 | echo "The following .elc files have no corresponding .el files:" |
| 204 | echo "${bogosities}" | 205 | echo "${bogosities}" |
| 205 | fi | 206 | fi |
| 206 | rm -f /tmp/el /tmp/elc | ||
| 207 | 207 | ||
| 208 | ### Check for .el files with no corresponding .elc file. | 208 | ### Check for .el files with no corresponding .elc file. |
| 209 | ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \ | 209 | sed 's/\.elc$/.el/' /tmp/elc > /tmp/elcel |
| 210 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | 210 | losers="`comm -23 /tmp/el /tmp/elcel`" |
| 211 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | 211 | |
| 212 | leim/[a-z]*/[a-z]*.el > /tmp/el | 212 | rm -f /tmp/el /tmp/elc /tmp/elcel /tmp/elelc |
| 213 | ls -1 lisp/[a-zA-Z]*.elc lisp/[a-z]*/[a-zA-Z0-9]*.elc \ | 213 | |
| 214 | lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | ||
| 215 | lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \ | ||
| 216 | leim/[a-z]*/[a-z]*.elc | sed 's/\.elc$/.el/' > /tmp/elc | ||
| 217 | losers="`comm -23 /tmp/el /tmp/elc`" | ||
| 218 | bogosities= | 214 | bogosities= |
| 219 | for file in $losers; do | 215 | for file in $losers; do |
| 220 | if ! grep -q "no-byte-compile: t" $file; then | 216 | grep -q "no-byte-compile: t" $file && continue |
| 221 | case $file in | 217 | case $file in |
| 222 | site-init.el | site-load.el | site-start.el | default.el) | 218 | site-init.el | site-load.el | site-start.el | default.el) continue ;; |
| 223 | ;; | 219 | esac |
| 224 | *) | 220 | |
| 225 | bogosities="$file $bogosities" | 221 | bogosities="$file $bogosities" |
| 226 | ;; | 222 | |
| 227 | esac | ||
| 228 | fi | ||
| 229 | done | 223 | done |
| 230 | if [ x"${bogosities}" != x"" ]; then | 224 | if [ x"${bogosities}" != x"" ]; then |
| 231 | echo "The following .el files have no corresponding .elc files:" | 225 | echo "The following .el files have no corresponding .elc files:" |
| 232 | echo "${bogosities}" | 226 | echo "${bogosities}" |
| 233 | fi | 227 | fi |
| 234 | rm -f /tmp/el /tmp/elc | ||
| 235 | fi | 228 | fi |
| 236 | 229 | ||
| 237 | ### Make sure configure is newer than configure.in. | 230 | if [ $update = yes ]; then |
| 238 | if [ "x`ls -t configure configure.in | sed q`" != "xconfigure" ]; then | ||
| 239 | echo "\`./configure.in' is newer than \`./configure'" >&2 | ||
| 240 | echo "Running autoconf" >&2 | ||
| 241 | autoconf || { x=$?; echo Autoconf FAILED! >&2; exit $x; } | ||
| 242 | fi | ||
| 243 | 231 | ||
| 244 | ### Make sure src/stamp-h.in is newer than configure.in. | 232 | ## Make sure configure is newer than configure.in. |
| 245 | if [ "x`ls -t src/stamp-h.in configure.in | sed q`" != "xsrc/stamp-h.in" ]; then | 233 | if [ "x`ls -t configure configure.in | sed q`" != "xconfigure" ]; then |
| 246 | echo "\`./configure.in' is newer than \`./src/stamp-h.in'" >&2 | 234 | echo "\`./configure.in' is newer than \`./configure'" >&2 |
| 247 | echo "Running autoheader" >&2 | 235 | echo "Running autoconf" >&2 |
| 248 | autoheader || { x=$?; echo Autoheader FAILED! >&2; exit $x; } | 236 | autoconf || { x=$?; echo Autoconf FAILED! >&2; exit $x; } |
| 249 | rm -f src/stamp-h.in | 237 | fi |
| 250 | echo timestamp > src/stamp-h.in | 238 | |
| 251 | fi | 239 | ## Make sure src/stamp-h.in is newer than configure.in. |
| 240 | if [ "x`ls -t src/stamp-h.in configure.in | sed q`" != "xsrc/stamp-h.in" ]; then | ||
| 241 | echo "\`./configure.in' is newer than \`./src/stamp-h.in'" >&2 | ||
| 242 | echo "Running autoheader" >&2 | ||
| 243 | autoheader || { x=$?; echo Autoheader FAILED! >&2; exit $x; } | ||
| 244 | rm -f src/stamp-h.in | ||
| 245 | echo timestamp > src/stamp-h.in | ||
| 246 | fi | ||
| 252 | 247 | ||
| 253 | if [ $update = yes ]; | ||
| 254 | then | ||
| 255 | echo "Updating Info files" | 248 | echo "Updating Info files" |
| 256 | (cd doc/emacs; make info) | 249 | (cd doc/emacs; make info) |
| 257 | (cd doc/misc; make info) | 250 | (cd doc/misc; make info) |
| @@ -268,19 +261,7 @@ then | |||
| 268 | 261 | ||
| 269 | echo "Recompiling Lisp files" | 262 | echo "Recompiling Lisp files" |
| 270 | $EMACS -batch -f batch-byte-recompile-directory lisp leim | 263 | $EMACS -batch -f batch-byte-recompile-directory lisp leim |
| 271 | fi | 264 | fi # $update = yes |
| 272 | |||
| 273 | ## What is this file for? It goes in srcdir, not the tarfile. | ||
| 274 | ## Why does it exclude term/ ? | ||
| 275 | echo "Making lisp/MANIFEST" | ||
| 276 | |||
| 277 | files=`find lisp -type f -name '*.el'` | ||
| 278 | for file in $files; do | ||
| 279 | case "$file" in | ||
| 280 | */subdirs.el|*/default.el|*/loaddefs.el|*/term/*) continue ;; | ||
| 281 | esac | ||
| 282 | sed -n 's/^;;; //p; q' $file | ||
| 283 | done | sort > lisp/MANIFEST | ||
| 284 | 265 | ||
| 285 | echo "Creating staging directory: \`${tempparent}'" | 266 | echo "Creating staging directory: \`${tempparent}'" |
| 286 | 267 | ||