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