22
|
1 ###############################################################################
|
|
2 #
|
|
3 # File: Makefile
|
|
4 # Release: $efs release: 1.15 $
|
193
|
5 # Version: $Revision: 1.9 $
|
22
|
6 # RCS:
|
|
7 # Description: Makefile for byte-compiling efs and dired.
|
|
8 # Author: Andy Norman, HPLabs, Bristol, UK.
|
|
9 # Created: Sat Jan 30 00:18:56 1993
|
|
10 # Language: Text (make script)
|
|
11 #
|
|
12 ###############################################################################
|
|
13
|
|
14 ## Installation Instructions
|
|
15 ############################
|
|
16 # 1. Edit the configuration variables below.
|
|
17 # EMACS should be the name of the emacs program on your system.
|
|
18 # VERSION should be the emacs version. This must be one of:
|
|
19 # 18 for all versions of Emacs 18.
|
|
20 # 19 for all versions of the original GNU Emacs from FSF between
|
|
21 # 19.1 and 19.22, inclusive.
|
|
22 # 19.23 for version 19.23 and later of the original GNU Emacs from FSF
|
|
23 # l19.11 for XEmacs 19.11 trhu 19.14
|
116
|
24 # x19.15 for XEmacs 19.15
|
|
25 # x20 for XEmacs 20.1 and later
|
22
|
26 # LISPDIR should be the directory in which you want the .elc
|
|
27 # files installed.
|
|
28 # BDIR should be the directory containing the .elc files for the
|
|
29 # byte-compiler. Although efs byte-compiles and works with the
|
|
30 # Emacs V18 byte-compiler, it is strongly recommended to use
|
|
31 # Jamie Zawinski's V19 byte-compiler. This byte-compiler is
|
|
32 # standard with Lucid Emacs, XEmacs, and GNU Emacs V19, so in this
|
|
33 # case you can set BDIR to nothing.
|
|
34 # VMDIR should be set to the directory containing the .elc files for
|
|
35 # VM. If you aren't using VM, then set this to nothing.
|
|
36 #
|
|
37 # 2. To byte-compile the entire package, except for VM support (efs-vm.el),
|
|
38 # run make VERSION, where VERSION is the emacs version that you are
|
|
39 # compiling for. It must be one of:
|
|
40 # 18 for Emacs 18
|
|
41 # 19 for the original GNU Emacs from FSF, versions 19.1 through
|
|
42 # 19.22, inclusive
|
|
43 # 19.23 for the original GNU Emacs from FSF, version 19.23 and later.
|
|
44 # l19.11 for Lucid XEmacs 19.11 thru 19.14
|
116
|
45 # x19.15 for XEmacs 19.15
|
|
46 # x20 for XEmacs 20.1 and later
|
22
|
47 #
|
|
48 # If you have set the VERSION variable correctly, then typing just
|
|
49 # make will suffice.
|
|
50 #
|
|
51 # 3. To byte-compile everything, including VM support, run make all.
|
|
52 #
|
|
53 # 4. To byte-compile all the efs files, except for VM support,
|
|
54 # run make efs.
|
|
55 #
|
|
56 # 5. To byte-compile only the core efs files run make core.
|
|
57 #
|
|
58 # 6. To byte compile an efs-XXX.el file, run make XXX.
|
|
59 # This means that VM support can be compiled by running make vm.
|
|
60 #
|
|
61 # 7. To byte compile only dired, run make dired.
|
|
62 #
|
|
63 # 8. To byte-compile only efs-auto.el, for autoloading efs, run make auto.
|
|
64 #
|
|
65
|
|
66 ## Edit these variables according to your configuration.
|
|
67
|
|
68 # Name of Emacs program
|
|
69 EMACS=xemacs
|
|
70 # Emacs version. This must be set to one of 18, 19, 19.23,
|
|
71 # l19.11, x19.15
|
|
72 VERSION=x19.15
|
|
73 # Current working directory
|
|
74 CWD=`pwd`
|
|
75 # Directory in which to install the lisp files
|
|
76 LISPDIR=
|
116
|
77 # Directory in which to install the info files
|
|
78 INFODIR=
|
|
79 # Directory in which to install the Texinfo file
|
|
80 TEXIDIR=
|
22
|
81 # Directory containing byte-compiler. This is used by fixup.el
|
|
82 BDIR=
|
|
83 # Directory containing VM's .elc files.
|
|
84 VMDIR=
|
|
85 # Bourne shell executable, please.
|
|
86 SHELL=/bin/sh
|
|
87
|
|
88 ###### It should not be necessary to edit anything below this line. ######
|
|
89
|
|
90 COREOBJS = efs-defun.elc efs-ovwrt.elc efs-fnh.elc efs-cu.elc efs-netrc.elc \
|
|
91 efs.elc efs-dired.elc efs-report.elc \
|
146
|
92 efs-cp-p.elc \
|
|
93 efs-dump.elc
|
114
|
94 CORESRC = efs-defun.el efs-ovwrt.el efs-fnh.el efs-cu.el efs-netrc.el \
|
|
95 efs.el efs-dired.el efs-report.el \
|
|
96 efs-cp-p.el \
|
|
97 efs-dump.el
|
22
|
98 DOBJS = default-dir.elc dired.elc dired-mob.elc dired-oas.elc \
|
|
99 dired-rgxp.elc dired-shell.elc dired-vir.elc dired-xy.elc \
|
|
100 dired-grep.elc dired-uu.elc \
|
|
101 dired-cmpr.elc dired-diff.elc dired-help.elc dired-sex.elc
|
114
|
102 DSRC = default-dir.el dired.el dired-mob.el dired-oas.el \
|
|
103 dired-rgxp.el dired-shell.el dired-vir.el dired-xy.el \
|
|
104 dired-grep.el dired-uu.el \
|
|
105 dired-cmpr.el dired-diff.el dired-help.el dired-sex.el
|
22
|
106 EFSOBJS = $(COREOBJS) efs-auto.elc \
|
|
107 efs-cms.elc efs-cms-knet.elc efs-dos-distinct.elc efs-nos-ve.elc \
|
|
108 efs-gwp.elc efs-kerberos.elc efs-hell.elc efs-ka9q.elc \
|
|
109 efs-mpe.elc efs-mts.elc efs-mvs.elc efs-netware.elc \
|
|
110 efs-pc.elc efs-ti-explorer.elc efs-ti-twenex.elc \
|
|
111 efs-tops-20.elc efs-dl.elc efs-guardian.elc efs-coke.elc \
|
|
112 efs-vms.elc efs-vos.elc efs-plan9.elc efs-ms-unix.elc
|
114
|
113 EFSSRC = $(CORESRC) efs-auto.el \
|
|
114 efs-cms.el efs-cms-knet.el efs-dos-distinct.el efs-nos-ve.el \
|
|
115 efs-gwp.el efs-kerberos.el efs-hell.el efs-ka9q.el \
|
|
116 efs-mpe.el efs-mts.el efs-mvs.el efs-netware.el \
|
|
117 efs-pc.el efs-ti-explorer.el efs-ti-twenex.el \
|
|
118 efs-tops-20.el efs-dl.el efs-guardian.el efs-coke.el \
|
|
119 efs-vms.el efs-vos.el efs-plan9.el efs-ms-unix.el
|
22
|
120 VMOBJS = efs-vm.elc
|
114
|
121 VMSRC = efs-vm.el
|
116
|
122 MULEOBJS = dired-mule.elc efs-dired-mule.elc
|
|
123 MULESRC = dired-mule.el efs-dired-mule.el
|
|
124 GEOBJS = dired-fsf.elc \
|
|
125 passwd.elc diff.elc auto-save.elc \
|
|
126 $(MULEOBJS)
|
|
127 GESRC = dired-fsf.el \
|
|
128 passwd.el diff.el auto-save.el \
|
|
129 $(MULESRC)
|
|
130 XEOBJS = dired-faces.elc dired-xemacs.elc \
|
|
131 $(VMOBJS)
|
|
132 XESRC = dired-faces.el dired-xemacs.el \
|
|
133 $(VMSRC) $(MULESRC)
|
22
|
134 OBJS = $(DOBJS) $(EFSOBJS) $(VMOBJS) $(GEOBJS) $(XEOBJS) \
|
24
|
135 efs-18.elc efs-19.elc efs-19.23.elc \
|
22
|
136 efs-l19.11.elc efs-x19.15.elc \
|
24
|
137 emacs-19.elc fn-handler.elc \
|
|
138 reporter.elc
|
22
|
139
|
|
140 # fixup.el is never byte-compiled. It would do no harm, but be a waste
|
|
141 # of time.
|
|
142
|
|
143 ## Specify new rules.
|
|
144
|
|
145 .SUFFIXES: .elc .el .texi .info
|
|
146
|
|
147 .el.elc:
|
|
148 BDIR=$(BDIR) CWD=$(CWD) VMDIR=$(VMDIR) \
|
118
|
149 $(EMACS) -batch -no-site-file -l $(CWD)/fixup -f batch-byte-compile $(CWD)/$<
|
22
|
150
|
|
151 .texi.info:
|
|
152 $(EMACS) -batch -f batch-texinfo-format $(CWD)/$<
|
|
153
|
|
154 ## targets
|
|
155
|
|
156 # What lazy fingers buys you
|
|
157 default: $(VERSION) dired
|
|
158
|
|
159 # .elc files depend on .el source
|
|
160 # Do this in this brain-dead way because different makes do pattern
|
|
161 # rules differently. grumble grumble...
|
|
162 #
|
|
163 # dired
|
|
164 dired.elc: dired.el
|
|
165 dired-mob.elc: dired-mob.el
|
|
166 dired-oas.elc: dired-oas.el
|
|
167 dired-rgxp.elc: dired-rgxp.el
|
|
168 dired-shell.elc: dired-shell.el
|
|
169 dired-vir.elc: dired-vir.el
|
|
170 dired-xy.elc: dired-xy.el
|
|
171 dired-grep.elc: dired-grep.el
|
|
172 dired-uu.elc: dired-uu.el
|
|
173 dired-fsf.elc: dired-fsf.el
|
|
174 dired-cmpr.elc: dired-cmpr.el
|
|
175 dired-help.elc: dired-help.el
|
|
176 dired-diff.elc: dired-diff.el
|
|
177 dired-sex.elc: dired-sex.el
|
|
178 dired-mule.elc: dired-mule.el
|
|
179 dired-xemacs.elc: dired-xemacs.el
|
24
|
180 dired-faces.elc: dired-faces.el
|
22
|
181 default-dir.elc: default-dir.el
|
24
|
182 diff.elc: diff.el
|
22
|
183 # efs core files
|
|
184 efs.elc: efs.el
|
|
185 efs-defun.elc: efs-defun.el
|
|
186 efs-cp-p.elc: efs-cp-p.el
|
|
187 efs-cu.elc: efs-cu.el
|
|
188 efs-netrc.elc: efs-netrc.el
|
|
189 efs-auto.elc: efs-auto.el
|
|
190 efs-dired.elc: efs-dired.el
|
|
191 efs-dired-mule.elc: efs-dired-mule.el
|
|
192 efs-report.elc: efs-report.el
|
|
193 efs-ovwrt.elc: efs-ovwrt.el
|
|
194 efs-fnh.elc: efs-fnh.el
|
|
195 # efs multi-OS and FTP server support
|
|
196 efs-cms.elc: efs-cms.el
|
|
197 efs-cms-knet.elc: efs-cms-knet.el
|
|
198 efs-coke.elc: efs-coke.el
|
|
199 efs-dos-distinct.elc: efs-dos-distinct.el
|
|
200 efs-nos-ve.elc: efs-nos-ve.el
|
|
201 efs-gwp.elc: efs-gwp.el
|
|
202 efs-hell.elc: efs-hell.el
|
|
203 efs-ka9q.elc: efs-ka9q.el
|
|
204 efs-kerberos.elc: efs-kerberos.el
|
|
205 efs-mpe.elc: efs-mpe.el
|
|
206 efs-mts.elc: efs-mts.el
|
|
207 efs-mvs.elc: efs-mvs.el
|
|
208 efs-netware.elc: efs-netware.el
|
|
209 efs-pc.elc: efs-pc.el
|
|
210 efs-ti-explorer.elc: efs-ti-explorer.el
|
|
211 efs-ti-twenex.elc: efs-ti-twenex.el
|
|
212 efs-tops-20.elc: efs-tops-20.el
|
|
213 efs-dl.elc: efs-dl.el
|
|
214 efs-vms.elc: efs-vms.el
|
|
215 efs-vos.elc: efs-vos.el
|
|
216 efs-guardian.elc: efs-guardian.el
|
|
217 efs-plan9.elc: efs-plan9.el
|
|
218 efs-ms-unix.elc: efs-ms-unix.el
|
|
219 # efs support for different Emacs versions
|
24
|
220 efs-18.elc: efs-18.el
|
|
221 efs-19.elc: efs-19.el
|
|
222 efs-19.23.elc: efs-19.23.el
|
22
|
223 efs-l19.11.elc: efs-l19.11.el
|
|
224 efs-x19.15.elc: efs-x19.15.el
|
|
225 # efs vm support
|
|
226 efs-vm.elc: efs-vm.el
|
|
227 # backward compatibility files
|
|
228 fn-handler.elc: fn-handler.el
|
|
229 emacs-19.elc: emacs-19.el
|
114
|
230 # auto-save package
|
|
231 auto-save.elc: auto-save.el
|
22
|
232
|
|
233 # Core targets
|
|
234 core: $(COREOBJS)
|
|
235
|
|
236 # Extra perks
|
|
237 auto: core efs-auto.elc
|
|
238 cms: core efs-cms.elc
|
|
239 cms-knet: core efs-cms-knet.elc
|
|
240 dos-distinct: core efs-dos-distinct.elc
|
|
241 nos-ve: core efs-nos-ve.elc
|
|
242 gwp: core efs-gwp.elc
|
|
243 hell: core efs-hell.elc
|
|
244 ka9q: core efs-ka9q.elc
|
|
245 kerberos: core efs-kerberos.elc
|
|
246 mpe: core efs-mpe.elc
|
|
247 mts: core efs-mts.elc
|
|
248 mvs: core efs-mvs.elc
|
|
249 netware: core efs-netware.elc
|
|
250 pc: core efs-pc.elc
|
|
251 ti-explorer: core efs-ti-explorer.elc
|
|
252 ti-twenex: core efs-ti-twenex.elc
|
|
253 tops-20: core efs-tops-20.elc
|
|
254 dl: core efs-dl.elc
|
|
255 vms: core efs-vms.elc
|
|
256 vos: core efs-vos.elc
|
|
257 guardian: core efs-guardian.elc
|
|
258 plan9: core efs-plan9.elc
|
|
259 coke: core efs-coke.elc
|
|
260 vm: core $(VMOBJS)
|
|
261
|
|
262 # The grand tour
|
|
263 efs: $(EFSOBJS)
|
|
264 dired: $(DOBJS)
|
|
265 all: $(OBJS)
|
114
|
266 info: efs.info
|
22
|
267
|
|
268 # Making for a specific emacs version
|
24
|
269 18: emacs-19.elc fn-handler.elc efs dired efs-18.elc dired-mule.elc \
|
|
270 efs-dired-mule.elc reporter.elc passwd.elc diff.elc auto-save.elc
|
|
271 19: fn-handler.elc efs dired efs-19.elc $(GEOBJS)
|
|
272 19.23: efs dired efs-19.23.elc $(GEOBJS)
|
22
|
273 l19.11: efs dired efs-l19.11.elc $(XEOBJS)
|
|
274 x19.15: efs dired efs-x19.15.elc $(XEOBJS)
|
116
|
275 x20: efs dired efs-x19.15.elc $(XEOBJS) $(MULEOBJS)
|
22
|
276
|
|
277 # Installation
|
|
278 install:
|
|
279 @echo "Installing in $(LISPDIR)..."
|
|
280 cp *.elc $(LISPDIR)
|
116
|
281 cp efs.info $(INFODIR)
|
22
|
282 install_src:
|
|
283 @echo "Installing in $(LISPDIR)..."
|
|
284 cp `ls *.el | grep -v "fixup"` $(LISPDIR)
|
116
|
285 cp efs.texi $(TEXIDIR)
|
114
|
286 install_xemacs:
|
|
287 @echo "Installing source in $(LISPDIR)..."
|
|
288 cp $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el $(LISPDIR)
|
|
289 cp Makefile README fixup.el $(LISPDIR)
|
116
|
290 cp efs.texi $(TEXIDIR)
|
114
|
291 diff_xemacs:
|
|
292 for f in $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el \
|
116
|
293 Makefile README fixup.el; do \
|
114
|
294 if [ -e $(LISPDIR)/$$f ]; \
|
|
295 then\
|
|
296 diff -c $(LISPDIR)/$$f $$f; \
|
|
297 else \
|
|
298 diff -c /dev/null $$f; \
|
|
299 fi \
|
|
300 done
|
22
|
301 install_all: install_src install
|
|
302 clean:
|
|
303 rm -f $(OBJS)
|
|
304
|
169
|
305 autoloads: auto-autoloads.el
|
|
306
|
|
307 auto-autoloads.el: $(EFSSRC) $(DSRC) efs-x19.15.el $(XESRC) $(MULESRC)
|
|
308 $(EMACS) -batch -q -no-site-file \
|
|
309 -eval '(setq autoload-target-directory "'`pwd`'/")' \
|
193
|
310 -eval '(setq autoload-package-name "efs")' \
|
169
|
311 -l autoload \
|
|
312 -f batch-update-autoloads $?
|
|
313
|
22
|
314 ## end of Makefile ##
|