0
|
1 # what Emacs version to build VM for.
|
|
2 # Allowed values are 18 and 19.
|
|
3 #
|
|
4 # Currently only vm-isearch-forward depends on this being
|
|
5 # correct. You can use the same VM .elc files under v18 and v19
|
|
6 # Emacs if you don't care about vm-isearch-forward.
|
|
7 #
|
|
8 # Note that .elc files compiled with the v19 byte compiler won't
|
|
9 # work under v18 Emacs, but v18 .elcs will work under v19. So
|
|
10 # point this at your v18 Emacs binary if you want compatible .elc
|
|
11 # files.
|
|
12 EMACS_VERSION = 19
|
|
13
|
|
14 # what emacs is called on your system
|
|
15 EMACS = ../../src/xemacs
|
|
16
|
|
17 # where the Info file should go
|
|
18 INFODIR = ../../info
|
|
19
|
|
20 # where the vm.elc, tapestry.elc, etc. files should go
|
|
21 #LISPDIR = /usr/local/lib/emacs/site-lisp
|
|
22
|
|
23 # where the toolbar pixmaps should go.
|
|
24 # vm-toolbar-pixmap-directory must point to the same place.
|
|
25 PIXMAPDIR = /usr/local/lib/emacs/etc/vm
|
|
26
|
|
27 ############## no user servicable parts beyond this point ###################
|
|
28
|
|
29 # no csh please
|
|
30 SHELL = /bin/sh
|
|
31
|
|
32 # byte compiler options
|
|
33 BYTEOPTS = ./vm-byteopts.el
|
|
34
|
|
35 # have to preload the files that contain macro definitions or the
|
|
36 # byte compiler will compile everything that references them
|
|
37 # incorrectly. also preload a file that sets byte compiler options.
|
|
38 PRELOADS = -l $(BYTEOPTS) -l ./vm-message.el -l ./vm-misc.el -l ./vm-vars.el -l ./vm-version.el
|
|
39
|
|
40 # compile with noninteractive and relatively clean environment
|
|
41 BATCHFLAGS = -batch -q -no-site-file
|
|
42
|
|
43 # files that contain key macro definitions. almost everything
|
|
44 # depends on them because the byte-compiler inlines macro
|
|
45 # expansions. everything also depends on the byte compiler
|
|
46 # options file since this might do odd things like turn off
|
|
47 # certain compiler optimizations.
|
|
48 CORE = vm-message.el vm-misc.el vm-byteopts.el
|
|
49
|
|
50 OBJECTS = \
|
|
51 vm-delete.elc vm-digest.elc vm-easymenu.elc vm-edit.elc vm-folder.elc \
|
|
52 vm-license.elc vm-mark.elc vm-menu.elc vm-message.elc \
|
|
53 vm-minibuf.elc vm-misc.elc vm-mouse.elc \
|
|
54 vm-motion.elc vm-page.elc vm-pop.elc vm-reply.elc \
|
|
55 vm-save.elc \
|
|
56 vm-search.elc vm-sort.elc vm-summary.elc vm-startup.elc vm-thread.elc \
|
|
57 vm-toolbar.elc \
|
|
58 vm-undo.elc vm-vars.elc vm-version.elc vm-virtual.elc vm-window.elc
|
|
59
|
|
60 SOURCES = \
|
|
61 vm-delete.el vm-digest.el vm-easymenu.el vm-edit.el vm-folder.el \
|
|
62 vm-license.el vm-mark.el vm-menu.el vm-message.el \
|
|
63 vm-minibuf.el vm-misc.el vm-mouse.el \
|
|
64 vm-motion.el vm-page.el vm-pop.el vm-reply.el vm-save.el \
|
|
65 vm-search.el vm-sort.el vm-startup.el vm-summary.el vm-thread.el \
|
|
66 vm-toolbar.el \
|
|
67 vm-undo.el vm-vars.el vm-version.el vm-virtual.el vm-window.el
|
|
68
|
|
69 vm: vm.elc
|
|
70
|
|
71 vm.elc: .autoload
|
|
72
|
|
73 .noautoload: $(OBJECTS) tapestry.elc
|
|
74 @echo "building vm.elc (with all modules included)..."
|
|
75 @cat $(OBJECTS) tapestry.elc > vm.elc
|
|
76 # in case the -f flag doesn't exist (e.g. on HPUX)
|
|
77 -chmod +w .noautoload
|
|
78 touch -f .noautoload || touch .noautoload
|
|
79
|
|
80 .autoload: vm-autoload.elc $(OBJECTS) tapestry.elc
|
|
81 @echo "building vm.elc (with all modules set to autoload)..."
|
|
82 @echo "(require 'vm-startup)" > vm.elc
|
|
83 @echo "(require 'vm-vars)" >> vm.elc
|
|
84 @echo "(require 'vm-version)" >> vm.elc
|
|
85 @echo "(require 'vm-autoload)" >> vm.elc
|
|
86 # in case the -f flag doesn't exist (e.g. on HPUX)
|
|
87 -chmod +w .autoload
|
|
88 touch -f .autoload || touch .autoload
|
|
89
|
|
90 all: vm.info vm
|
|
91
|
|
92 debug: $(SOURCES) tapestry.el
|
|
93 @echo "building vm.elc (uncompiled, no autoloads)..."
|
|
94 @cat $(SOURCES) tapestry.el > vm.elc
|
|
95
|
|
96 #install: all
|
|
97 # cp vm.info $(INFODIR)/vm
|
|
98 # cp *.elc $(LISPDIR)
|
|
99 # cp pixmaps/*.xpm $(PIXMAPDIR)
|
|
100
|
|
101 clean:
|
|
102 rm -f vm-autoload.el vm-autoload.elc $(OBJECTS) tapestry.elc
|
|
103
|
|
104 vm.info: vm.texinfo
|
|
105 @echo "making vm.info..."
|
|
106 @$(EMACS) $(BATCHFLAGS) vm.texinfo -l texinfmt -f texinfo-format-buffer -f save-buffer
|
|
107
|
|
108 vm-autoload.elc: $(SOURCES)
|
|
109 @echo scanning sources to build autoload definitions...
|
|
110 @echo "(provide 'vm-autoload)" > vm-autoload.el
|
|
111 @$(EMACS) $(BATCHFLAGS) -l ./make-autoloads -f print-autoloads $(SOURCES) >> vm-autoload.el
|
|
112 @echo compiling vm-autoload.el...
|
|
113 @$(EMACS) $(BATCHFLAGS) -l $(BYTEOPTS) -f batch-byte-compile vm-autoload.el
|
|
114
|
|
115 vm-delete.elc: vm-delete.el $(CORE)
|
|
116 @echo compiling vm-delete.el...
|
|
117 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-delete.el
|
|
118
|
|
119 vm-digest.elc: vm-digest.el $(CORE)
|
|
120 @echo compiling vm-digest.el...
|
|
121 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-digest.el
|
|
122
|
|
123 vm-edit.elc: vm-edit.el $(CORE)
|
|
124 @echo compiling vm-edit.el...
|
|
125 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-edit.el
|
|
126
|
|
127 vm-folder.elc: vm-folder.el $(CORE)
|
|
128 @echo compiling vm-folder.el...
|
|
129 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-folder.el
|
|
130
|
|
131 vm-license.elc: vm-license.el $(CORE)
|
|
132 @echo compiling vm-license.el...
|
|
133 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-license.el
|
|
134
|
|
135 vm-mark.elc: vm-mark.el $(CORE)
|
|
136 @echo compiling vm-mark.el...
|
|
137 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-mark.el
|
|
138
|
|
139 vm-menu.elc: vm-menu.el vm-easymenu.el $(CORE)
|
|
140 @echo compiling vm-menu.el...
|
|
141 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -l ./vm-easymenu.el -f batch-byte-compile vm-menu.el
|
|
142
|
|
143 vm-message.elc: vm-message.el $(CORE)
|
|
144 @echo compiling vm-message.el...
|
|
145 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-message.el
|
|
146
|
|
147 vm-minibuf.elc: vm-minibuf.el $(CORE)
|
|
148 @echo compiling vm-minibuf.el...
|
|
149 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-minibuf.el
|
|
150
|
|
151 vm-misc.elc: vm-misc.el $(CORE)
|
|
152 @echo compiling vm-misc.el...
|
|
153 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-misc.el
|
|
154
|
|
155 vm-mouse.elc: vm-mouse.el $(CORE)
|
|
156 @echo compiling vm-mouse.el...
|
|
157 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-mouse.el
|
|
158
|
|
159 vm-motion.elc: vm-motion.el $(CORE)
|
|
160 @echo compiling vm-motion.el...
|
|
161 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-motion.el
|
|
162
|
|
163 vm-page.elc: vm-page.el $(CORE)
|
|
164 @echo compiling vm-page.el...
|
|
165 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-page.el
|
|
166
|
|
167 vm-pop.elc: vm-pop.el $(CORE)
|
|
168 @echo compiling vm-pop.el...
|
|
169 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-pop.el
|
|
170
|
|
171 vm-reply.elc: vm-reply.el $(CORE)
|
|
172 @echo compiling vm-reply.el...
|
|
173 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-reply.el
|
|
174
|
|
175 vm-save.elc: vm-save.el $(CORE)
|
|
176 @echo compiling vm-save.el...
|
|
177 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-save.el
|
|
178
|
|
179 vm-search.el: Makefile vm-search$(EMACS_VERSION).el
|
|
180 @echo making vm-search.el...
|
|
181 @{ test -f vm-search.el && \
|
|
182 cmp -s vm-search.el vm-search$(EMACS_VERSION).el && \
|
|
183 touch vm-search.el ; } || \
|
|
184 { rm -f vm-search.el; cp vm-search$(EMACS_VERSION).el vm-search.el ; }
|
|
185
|
|
186 vm-search.elc: vm-search.el $(CORE)
|
|
187 @echo compiling vm-search.el...
|
|
188 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-search.el
|
|
189
|
|
190 vm-sort.elc: vm-sort.el $(CORE)
|
|
191 @echo compiling vm-sort.el...
|
|
192 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-sort.el
|
|
193
|
|
194 vm-startup.elc: vm-startup.el $(CORE)
|
|
195 @echo compiling vm-startup.el...
|
|
196 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-startup.el
|
|
197
|
|
198 vm-summary.elc: vm-summary.el $(CORE)
|
|
199 @echo compiling vm-summary.el...
|
|
200 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-summary.el
|
|
201
|
|
202 vm-thread.elc: vm-thread.el $(CORE)
|
|
203 @echo compiling vm-thread.el...
|
|
204 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-thread.el
|
|
205
|
|
206 vm-toolbar.elc: vm-toolbar.el $(CORE)
|
|
207 @echo compiling vm-toolbar.el...
|
|
208 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-toolbar.el
|
|
209
|
|
210 vm-undo.elc: vm-undo.el $(CORE)
|
|
211 @echo compiling vm-undo.el...
|
|
212 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-undo.el
|
|
213
|
|
214 vm-vars.elc: vm-vars.el $(CORE)
|
|
215 @echo compiling vm-vars.el...
|
|
216 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-vars.el
|
|
217
|
|
218 vm-version.elc: vm-version.el $(CORE)
|
|
219 @echo compiling vm-version.el...
|
|
220 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-version.el
|
|
221
|
|
222 vm-virtual.elc: vm-virtual.el $(CORE)
|
|
223 @echo compiling vm-virtual.el...
|
|
224 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-virtual.el
|
|
225
|
|
226 vm-window.elc: vm-window.el $(CORE)
|
|
227 @echo compiling vm-window.el...
|
|
228 @$(EMACS) $(BATCHFLAGS) $(PRELOADS) -f batch-byte-compile vm-window.el
|
|
229
|
|
230 tapestry.elc: tapestry.el
|
|
231 @echo compiling tapestry.el...
|
|
232 @$(EMACS) $(BATCHFLAGS) -l $(BYTEOPTS) -f batch-byte-compile tapestry.el
|
|
233
|
|
234 vm-easymenu.elc: vm-easymenu.el
|
|
235 @echo compiling vm-easymenu.el...
|
|
236 @$(EMACS) $(BATCHFLAGS) -l $(BYTEOPTS) -f batch-byte-compile vm-easymenu.el
|