Mercurial > emacs
annotate lisp/makefile.nt @ 30282:3d210892f575
(MAKE_CHAR): Return reasonable code even if CHARSET is undefined.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 18 Jul 2000 12:48:53 +0000 |
parents | 39e2dae95929 |
children | 7a25e378e8bc |
rev | line source |
---|---|
9803 | 1 # Hacked up Nmake makefile for GNU Emacs |
2 # Geoff Voelker (voelker@cs.washington.edu) | |
3 # Copyright (c) 1994 Free Software Foundation, Inc. | |
4 # | |
5 # This file is part of GNU Emacs. | |
6 # | |
7 # GNU Emacs is free software; you can redistribute it and/or modify | |
8 # it under the terms of the GNU General Public License as published by | |
9 # the Free Software Foundation; either version 2, or (at your option) | |
10 # any later version. | |
11 # | |
12 # GNU Emacs is distributed in the hope that it will be useful, | |
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 # GNU General Public License for more details. | |
16 # | |
17 # You should have received a copy of the GNU General Public License | |
15742 | 18 # along with GNU Emacs; see the file COPYING. If not, write to the |
19 # Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
20 # Boston, MA 02111-1307, USA. | |
9803 | 21 # |
22 | |
23 !include ..\nt\makefile.def | |
24 | |
25 all: | |
26 | |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
27 #lisp=$(MAKEDIR:\=/) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
28 lisp=. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
29 |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
30 # You can specify a different executable on the make command line, |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
31 # e.g. "make EMACS=../src/emacs ...". |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
32 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
33 EMACS = ..\bin\emacs.exe |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
34 |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
35 # Command line flags for Emacs. This must include --multibyte, |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
36 # otherwise some files will not compile. |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
37 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
38 EMACSOPT = -batch --no-init-file --no-site-file --multibyte |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
39 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
40 lisptagsfiles1 = $(lisp)/*.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
41 lisptagsfiles2 = $(lisp)/*/*.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
42 ETAGS = ..\lib-src\$(BLD)\etags |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
43 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
44 # Files which should not be compiled. |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
45 # - emacs-lisp/cl-specs.el: only contains `def-edebug-spec's so there's |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
46 # no point compiling it, although it doesn't hurt. |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
47 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
48 DONTCOMPILE = \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
49 $(lisp)/bindings.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
50 $(lisp)/cus-load.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
51 $(lisp)/cus-start.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
52 $(lisp)/emacs-lisp/cl-specs.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
53 $(lisp)/eshell/esh-maint.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
54 $(lisp)/eshell/esh-group.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
55 $(lisp)/finder-inf.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
56 $(lisp)/forms-d2.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
57 $(lisp)/forms-pass.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
58 $(lisp)/generic-x.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
59 $(lisp)/international/latin-1.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
60 $(lisp)/international/latin-2.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
61 $(lisp)/international/latin-3.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
62 $(lisp)/international/latin-4.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
63 $(lisp)/international/latin-5.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
64 $(lisp)/international/latin-8.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
65 $(lisp)/international/latin-9.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
66 $(lisp)/international/mule-conf.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
67 $(lisp)/loaddefs.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
68 $(lisp)/loadup.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
69 $(lisp)/mail/blessmail.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
70 $(lisp)/mail/sc.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
71 $(lisp)/patcomp.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
72 $(lisp)/paths.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
73 $(lisp)/play/bruce.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
74 $(lisp)/subdirs.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
75 $(lisp)/term/internal.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
76 $(lisp)/version.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
77 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
78 # Files to compile before others during a bootstrap. This is done |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
79 # to speed up the bootstrap process. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
80 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
81 COMPILE_FIRST = \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
82 $(lisp)/emacs-lisp/byte-opt.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
83 $(lisp)/emacs-lisp/bytecomp.el \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
84 $(lisp)/subr.el |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
85 |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
86 # The actual Emacs command run in the targets below. |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
87 |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
88 emacs = $(EMACS) $(EMACSOPT) |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
89 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
90 # Common command to find subdirectories |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
91 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
92 # setwins=subdirs=`find $$wd -type d -print`; \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
93 # for file in $$subdirs; do \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
94 # case $$file in */Old | */RCS | */CVS | */CVS/* | */=* ) ;; \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
95 # *) wins="$$wins $$file" ;; \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
96 # esac; \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
97 # done |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
98 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
99 # Have to define the list of subdirs manually |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
100 WINS=\ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
101 calendar \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
102 emacs-lisp \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
103 emulation \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
104 eshell \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
105 gnus \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
106 international \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
107 language \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
108 mail \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
109 net \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
110 play \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
111 progmodes \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
112 term \ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
113 textmodes |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
114 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
115 doit: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
116 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
117 cus-load.el: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
118 touch $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
119 custom-deps: cus-load.el doit |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
120 @echo Directories: $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
121 $(emacs) -l cus-dep --eval "(setq find-file-hooks nil)" -f custom-make-dependencies $(lisp) $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
122 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
123 finder-inf.el: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
124 echo (provide 'finder-inf)>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
125 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
126 finder-data: finder-inf.el doit |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
127 @echo Directories: $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
128 $(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
129 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
130 loaddefs.el: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
131 echo ;;; loaddefs.el --- automatically extracted autoloads> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
132 echo ;;; Code:>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
133 echo >> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
134 echo ;;; Local Variables:>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
135 echo ;;; version-control: never>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
136 echo ;;; no-byte-compile: t>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
137 echo ;;; no-update-autoloads: t>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
138 echo ;;; End:>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
139 echo ;;; loaddefs.el ends here>> $@ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
140 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
141 autoloads: loaddefs.el doit |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
142 @echo Directories: $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
143 $(emacs) -l autoload --eval "(setq find-file-hooks nil generated-autoload-file \"$(lisp)/loaddefs.el\")" -f batch-update-autoloads $(lisp) $(WINS) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
144 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
145 subdirs.el: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
146 $(MAKE) $(MFLAGS) -f makefile.nt update-subdirs |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
147 update-subdirs: doit |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
148 @set QWINS= |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
149 @for %d in ($(WINS)) do if not (%d)==(term) set QWINS=%QWINS% "%d" |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
150 echo ;; In load-path, after this directory should come> subdirs.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
151 echo ;; certain of its subdirectories. Here we specify them.>> subdirs.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
152 echo (normal-top-level-add-to-load-path '(%QWINS%))>> subdirs.el |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
153 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
154 updates: update-subdirs autoloads finder-data custom-deps |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
155 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
156 TAGS: $(lisptagsfiles1) $(lisptagsfiles2) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
157 $(ETAGS) $(lisptagsfiles1) $(lisptagsfiles2) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
158 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
159 TAGS-LISP: $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
160 $(ETAGS) -o TAGS-LISP $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2) |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
161 |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
162 .el.elc: |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
163 -$(emacs) -f batch-byte-compile $< |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
164 |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
165 $(DONTCOMPILE:.el=.elc): |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
166 -$(DEL) $@ |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
167 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
168 # Compile all Lisp files, except those from DONTCOMPILE. This |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
169 # compiles files unconditionally. All .elc files are made writable |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
170 # before compilation in case we checked out read-only (CVS option -r). |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
171 # Files MUST be compiled one by one. If we compile several files in a |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
172 # row we can't make sure that the compilation environment is clean. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
173 # We also set the load-path of the Emacs used for compilation to the |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
174 # current directory and its subdirectories, to make sure require's and |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
175 # load's in the files being compiled find the right files. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
176 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
177 compile-files: subdirs.el doit |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
178 -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
179 for %f in ($(COMPILE_FIRST)) do $(emacs) -f batch-byte-compile %f |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
180 for %f in ($(lisp) $(WINS)) do for %g in (%f/*.el) do $(emacs) -f batch-byte-compile %f/%g |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
181 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
182 # Backup compiled Lisp files in elc.tar.gz. If that file already |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
183 # exists, make a backup of it. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
184 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
185 backup-compiled-files: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
186 -mv $(lisp)/elc.tar.gz $(lisp)/elc.tar.gz~ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
187 -tar czf $(lisp)/elc.tar.gz $(lisp)/*.elc $(lisp)/*/*.elc |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
188 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
189 # Compile Lisp files, but save old compiled files first. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
190 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
191 compile: backup-compiled-files compile-files |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
192 |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
193 # Recompile all Lisp files which are newer than their .elc files. |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
194 # Note that this doesn't create .elc files. It only recompiles if an |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
195 # .elc is present. |
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
196 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
197 recompile: doit |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
198 $(emacs) -f batch-byte-recompile-directory . |
21596
de7ecc11ba03
(install): Copy elisp files that are not compiled.
Geoff Voelker <voelker@cs.washington.edu>
parents:
15742
diff
changeset
|
199 |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
200 # Prepare a bootstrap in the lisp subdirectory. Build loaddefs.el, |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
201 # because it's not sure it's up-to-date, and if it's not, that might |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
202 # lead to errors during the bootstrap because something fails to |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
203 # autoload as expected. Remove compiled Lisp files so that |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
204 # bootstrap-emacs will be built from sources only. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
205 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
206 bootstrap-clean: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
207 if exist $(EMACS) $(MAKE) $(MFLAGS) -f makefile.nt autoloads |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
208 -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
209 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
210 # Generate/update files for the bootstrap process. |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
211 |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
212 bootstrap: autoloads compile-files custom-deps |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
213 |
9803 | 214 # |
215 # Assuming INSTALL_DIR is defined, copy the elisp files to it | |
24320
5df541fa3e2b
(INSTALL): Copy the handful of uncompiled lisp files
Geoff Voelker <voelker@cs.washington.edu>
parents:
23833
diff
changeset
|
216 # Windows 95 makes this harder than it should be. |
9803 | 217 # |
27622
e024ab46002c
(install): Synchronize rules for compiling with Unix version.
Andrew Innes <andrewi@gnu.org>
parents:
24320
diff
changeset
|
218 install: |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
219 - mkdir $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
220 - $(DEL) .\same-dir.tst |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
221 - $(DEL) $(INSTALL_DIR)\lisp\same-dir.tst |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
222 echo SameDirTest > $(INSTALL_DIR)\lisp\same-dir.tst |
21596
de7ecc11ba03
(install): Copy elisp files that are not compiled.
Geoff Voelker <voelker@cs.washington.edu>
parents:
15742
diff
changeset
|
223 !ifdef COPY_LISP_SOURCE |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
224 if not exist .\same-dir.tst $(CP_DIR) . $(INSTALL_DIR)\lisp |
21596
de7ecc11ba03
(install): Copy elisp files that are not compiled.
Geoff Voelker <voelker@cs.washington.edu>
parents:
15742
diff
changeset
|
225 !else |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
226 if not exist .\same-dir.tst $(CP_DIR) *.elc $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
227 if not exist .\same-dir.tst $(CP) cus-load.el $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
228 if not exist .\same-dir.tst $(CP) forms*.el $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
229 if not exist .\same-dir.tst $(CP) patcomp.el $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
230 if not exist .\same-dir.tst $(CP) subdirs.el $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
231 if not exist .\same-dir.tst $(CP) version.el $(INSTALL_DIR)\lisp |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
232 if not exist .\same-dir.tst $(CP) mail\blessmail.el $(INSTALL_DIR)\lisp\mail |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
233 if not exist .\same-dir.tst $(CP) mail\sc.el $(INSTALL_DIR)\lisp\mail |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
234 if not exist .\same-dir.tst $(CP) play\bruce.el $(INSTALL_DIR)\lisp\play |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
235 if not exist .\same-dir.tst $(CP) international\latin-*.el $(INSTALL_DIR)\lisp\international |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
236 if not exist .\same-dir.tst $(CP) international\mule-conf.el $(INSTALL_DIR)\lisp\international |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
237 - $(DEL) $(INSTALL_DIR)\lisp\same-dir.tst |
23833
088714863cc9
(install) [COPY_LISP_SOURCE]: Fix end of conditional.
Geoff Voelker <voelker@cs.washington.edu>
parents:
21655
diff
changeset
|
238 !endif |
21655
cfb05eddeb55
(interdontcompile): New macro.
Geoff Voelker <voelker@cs.washington.edu>
parents:
21596
diff
changeset
|
239 |
9803 | 240 # |
241 # Maintenance | |
242 # | |
30075
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
243 clean: |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
244 - $(DEL) *~ term\*~ |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
245 - $(DEL) *.orig *.rej *.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
246 - $(DEL) emacs-lisp\*.orig emacs-lisp\*.rej emacs-lisp\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
247 - $(DEL) emulation\*.orig emulation\*.rej emulation\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
248 - $(DEL) gnus\*.orig gnus\*.rej gnus\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
249 - $(DEL) international\*.orig international\*.rej international\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
250 - $(DEL) language\*.orig language\*.rej language\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
251 - $(DEL) mail\*.orig mail\*.rej mail\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
252 - $(DEL) play\*.orig play\*.rej play\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
253 - $(DEL) progmodes\*.orig progmodes\*.rej progmodes\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
254 - $(DEL) term\*.orig term\*.rej term\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
255 - $(DEL) textmodes\*.orig textmodes\*.rej textmodes\*.crlf |
39e2dae95929
Add support for `bootstrap' and related targets.
Andrew Innes <andrewi@gnu.org>
parents:
27622
diff
changeset
|
256 - $(DEL_TREE) deleted |