22
|
1 ###############################################################################
|
|
2 #
|
|
3 # File: Makefile
|
|
4 # Release: $efs release: 1.15 $
|
118
|
5 # Version: $Revision: 1.6 $
|
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 \
|
24
|
92 efs-cp-p.elc
|
114
|
93 CORESRC = efs-defun.el efs-ovwrt.el efs-fnh.el efs-cu.el efs-netrc.el \
|
|
94 efs.el efs-dired.el efs-report.el \
|
|
95 efs-cp-p.el \
|
|
96 efs-dump.el
|
22
|
97 DOBJS = default-dir.elc dired.elc dired-mob.elc dired-oas.elc \
|
|
98 dired-rgxp.elc dired-shell.elc dired-vir.elc dired-xy.elc \
|
|
99 dired-grep.elc dired-uu.elc \
|
|
100 dired-cmpr.elc dired-diff.elc dired-help.elc dired-sex.elc
|
114
|
101 DSRC = default-dir.el dired.el dired-mob.el dired-oas.el \
|
|
102 dired-rgxp.el dired-shell.el dired-vir.el dired-xy.el \
|
|
103 dired-grep.el dired-uu.el \
|
|
104 dired-cmpr.el dired-diff.el dired-help.el dired-sex.el
|
22
|
105 EFSOBJS = $(COREOBJS) efs-auto.elc \
|
|
106 efs-cms.elc efs-cms-knet.elc efs-dos-distinct.elc efs-nos-ve.elc \
|
|
107 efs-gwp.elc efs-kerberos.elc efs-hell.elc efs-ka9q.elc \
|
|
108 efs-mpe.elc efs-mts.elc efs-mvs.elc efs-netware.elc \
|
|
109 efs-pc.elc efs-ti-explorer.elc efs-ti-twenex.elc \
|
|
110 efs-tops-20.elc efs-dl.elc efs-guardian.elc efs-coke.elc \
|
|
111 efs-vms.elc efs-vos.elc efs-plan9.elc efs-ms-unix.elc
|
114
|
112 EFSSRC = $(CORESRC) efs-auto.el \
|
|
113 efs-cms.el efs-cms-knet.el efs-dos-distinct.el efs-nos-ve.el \
|
|
114 efs-gwp.el efs-kerberos.el efs-hell.el efs-ka9q.el \
|
|
115 efs-mpe.el efs-mts.el efs-mvs.el efs-netware.el \
|
|
116 efs-pc.el efs-ti-explorer.el efs-ti-twenex.el \
|
|
117 efs-tops-20.el efs-dl.el efs-guardian.el efs-coke.el \
|
|
118 efs-vms.el efs-vos.el efs-plan9.el efs-ms-unix.el
|
22
|
119 VMOBJS = efs-vm.elc
|
114
|
120 VMSRC = efs-vm.el
|
116
|
121 MULEOBJS = dired-mule.elc efs-dired-mule.elc
|
|
122 MULESRC = dired-mule.el efs-dired-mule.el
|
|
123 GEOBJS = dired-fsf.elc \
|
|
124 passwd.elc diff.elc auto-save.elc \
|
|
125 $(MULEOBJS)
|
|
126 GESRC = dired-fsf.el \
|
|
127 passwd.el diff.el auto-save.el \
|
|
128 $(MULESRC)
|
|
129 XEOBJS = dired-faces.elc dired-xemacs.elc \
|
|
130 $(VMOBJS)
|
|
131 XESRC = dired-faces.el dired-xemacs.el \
|
|
132 $(VMSRC) $(MULESRC)
|
22
|
133 OBJS = $(DOBJS) $(EFSOBJS) $(VMOBJS) $(GEOBJS) $(XEOBJS) \
|
24
|
134 efs-18.elc efs-19.elc efs-19.23.elc \
|
22
|
135 efs-l19.11.elc efs-x19.15.elc \
|
24
|
136 emacs-19.elc fn-handler.elc \
|
|
137 reporter.elc
|
22
|
138
|
|
139 # fixup.el is never byte-compiled. It would do no harm, but be a waste
|
|
140 # of time.
|
|
141
|
|
142 ## Specify new rules.
|
|
143
|
|
144 .SUFFIXES: .elc .el .texi .info
|
|
145
|
|
146 .el.elc:
|
|
147 BDIR=$(BDIR) CWD=$(CWD) VMDIR=$(VMDIR) \
|
118
|
148 $(EMACS) -batch -no-site-file -l $(CWD)/fixup -f batch-byte-compile $(CWD)/$<
|
22
|
149
|
|
150 .texi.info:
|
|
151 $(EMACS) -batch -f batch-texinfo-format $(CWD)/$<
|
|
152
|
|
153 ## targets
|
|
154
|
|
155 # What lazy fingers buys you
|
|
156 default: $(VERSION) dired
|
|
157
|
|
158 # .elc files depend on .el source
|
|
159 # Do this in this brain-dead way because different makes do pattern
|
|
160 # rules differently. grumble grumble...
|
|
161 #
|
|
162 # dired
|
|
163 dired.elc: dired.el
|
|
164 dired-mob.elc: dired-mob.el
|
|
165 dired-oas.elc: dired-oas.el
|
|
166 dired-rgxp.elc: dired-rgxp.el
|
|
167 dired-shell.elc: dired-shell.el
|
|
168 dired-vir.elc: dired-vir.el
|
|
169 dired-xy.elc: dired-xy.el
|
|
170 dired-grep.elc: dired-grep.el
|
|
171 dired-uu.elc: dired-uu.el
|
|
172 dired-fsf.elc: dired-fsf.el
|
|
173 dired-cmpr.elc: dired-cmpr.el
|
|
174 dired-help.elc: dired-help.el
|
|
175 dired-diff.elc: dired-diff.el
|
|
176 dired-sex.elc: dired-sex.el
|
|
177 dired-mule.elc: dired-mule.el
|
|
178 dired-xemacs.elc: dired-xemacs.el
|
24
|
179 dired-faces.elc: dired-faces.el
|
22
|
180 default-dir.elc: default-dir.el
|
24
|
181 diff.elc: diff.el
|
22
|
182 # efs core files
|
|
183 efs.elc: efs.el
|
|
184 efs-defun.elc: efs-defun.el
|
|
185 efs-cp-p.elc: efs-cp-p.el
|
|
186 efs-cu.elc: efs-cu.el
|
|
187 efs-netrc.elc: efs-netrc.el
|
|
188 efs-auto.elc: efs-auto.el
|
|
189 efs-dired.elc: efs-dired.el
|
|
190 efs-dired-mule.elc: efs-dired-mule.el
|
|
191 efs-report.elc: efs-report.el
|
|
192 efs-ovwrt.elc: efs-ovwrt.el
|
|
193 efs-fnh.elc: efs-fnh.el
|
|
194 # efs multi-OS and FTP server support
|
|
195 efs-cms.elc: efs-cms.el
|
|
196 efs-cms-knet.elc: efs-cms-knet.el
|
|
197 efs-coke.elc: efs-coke.el
|
|
198 efs-dos-distinct.elc: efs-dos-distinct.el
|
|
199 efs-nos-ve.elc: efs-nos-ve.el
|
|
200 efs-gwp.elc: efs-gwp.el
|
|
201 efs-hell.elc: efs-hell.el
|
|
202 efs-ka9q.elc: efs-ka9q.el
|
|
203 efs-kerberos.elc: efs-kerberos.el
|
|
204 efs-mpe.elc: efs-mpe.el
|
|
205 efs-mts.elc: efs-mts.el
|
|
206 efs-mvs.elc: efs-mvs.el
|
|
207 efs-netware.elc: efs-netware.el
|
|
208 efs-pc.elc: efs-pc.el
|
|
209 efs-ti-explorer.elc: efs-ti-explorer.el
|
|
210 efs-ti-twenex.elc: efs-ti-twenex.el
|
|
211 efs-tops-20.elc: efs-tops-20.el
|
|
212 efs-dl.elc: efs-dl.el
|
|
213 efs-vms.elc: efs-vms.el
|
|
214 efs-vos.elc: efs-vos.el
|
|
215 efs-guardian.elc: efs-guardian.el
|
|
216 efs-plan9.elc: efs-plan9.el
|
|
217 efs-ms-unix.elc: efs-ms-unix.el
|
|
218 # efs support for different Emacs versions
|
24
|
219 efs-18.elc: efs-18.el
|
|
220 efs-19.elc: efs-19.el
|
|
221 efs-19.23.elc: efs-19.23.el
|
22
|
222 efs-l19.11.elc: efs-l19.11.el
|
|
223 efs-x19.15.elc: efs-x19.15.el
|
|
224 # efs vm support
|
|
225 efs-vm.elc: efs-vm.el
|
|
226 # backward compatibility files
|
|
227 fn-handler.elc: fn-handler.el
|
|
228 emacs-19.elc: emacs-19.el
|
114
|
229 # auto-save package
|
|
230 auto-save.elc: auto-save.el
|
22
|
231
|
|
232 # Core targets
|
|
233 core: $(COREOBJS)
|
|
234
|
|
235 # Extra perks
|
|
236 auto: core efs-auto.elc
|
|
237 cms: core efs-cms.elc
|
|
238 cms-knet: core efs-cms-knet.elc
|
|
239 dos-distinct: core efs-dos-distinct.elc
|
|
240 nos-ve: core efs-nos-ve.elc
|
|
241 gwp: core efs-gwp.elc
|
|
242 hell: core efs-hell.elc
|
|
243 ka9q: core efs-ka9q.elc
|
|
244 kerberos: core efs-kerberos.elc
|
|
245 mpe: core efs-mpe.elc
|
|
246 mts: core efs-mts.elc
|
|
247 mvs: core efs-mvs.elc
|
|
248 netware: core efs-netware.elc
|
|
249 pc: core efs-pc.elc
|
|
250 ti-explorer: core efs-ti-explorer.elc
|
|
251 ti-twenex: core efs-ti-twenex.elc
|
|
252 tops-20: core efs-tops-20.elc
|
|
253 dl: core efs-dl.elc
|
|
254 vms: core efs-vms.elc
|
|
255 vos: core efs-vos.elc
|
|
256 guardian: core efs-guardian.elc
|
|
257 plan9: core efs-plan9.elc
|
|
258 coke: core efs-coke.elc
|
|
259 vm: core $(VMOBJS)
|
|
260
|
|
261 # The grand tour
|
|
262 efs: $(EFSOBJS)
|
|
263 dired: $(DOBJS)
|
|
264 all: $(OBJS)
|
114
|
265 info: efs.info
|
22
|
266
|
|
267 # Making for a specific emacs version
|
24
|
268 18: emacs-19.elc fn-handler.elc efs dired efs-18.elc dired-mule.elc \
|
|
269 efs-dired-mule.elc reporter.elc passwd.elc diff.elc auto-save.elc
|
|
270 19: fn-handler.elc efs dired efs-19.elc $(GEOBJS)
|
|
271 19.23: efs dired efs-19.23.elc $(GEOBJS)
|
22
|
272 l19.11: efs dired efs-l19.11.elc $(XEOBJS)
|
|
273 x19.15: efs dired efs-x19.15.elc $(XEOBJS)
|
116
|
274 x20: efs dired efs-x19.15.elc $(XEOBJS) $(MULEOBJS)
|
22
|
275
|
|
276 # Installation
|
|
277 install:
|
|
278 @echo "Installing in $(LISPDIR)..."
|
|
279 cp *.elc $(LISPDIR)
|
116
|
280 cp efs.info $(INFODIR)
|
22
|
281 install_src:
|
|
282 @echo "Installing in $(LISPDIR)..."
|
|
283 cp `ls *.el | grep -v "fixup"` $(LISPDIR)
|
116
|
284 cp efs.texi $(TEXIDIR)
|
114
|
285 install_xemacs:
|
|
286 @echo "Installing source in $(LISPDIR)..."
|
|
287 cp $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el $(LISPDIR)
|
|
288 cp Makefile README fixup.el $(LISPDIR)
|
116
|
289 cp efs.texi $(TEXIDIR)
|
114
|
290 diff_xemacs:
|
|
291 for f in $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el \
|
116
|
292 Makefile README fixup.el; do \
|
114
|
293 if [ -e $(LISPDIR)/$$f ]; \
|
|
294 then\
|
|
295 diff -c $(LISPDIR)/$$f $$f; \
|
|
296 else \
|
|
297 diff -c /dev/null $$f; \
|
|
298 fi \
|
|
299 done
|
22
|
300 install_all: install_src install
|
|
301 clean:
|
|
302 rm -f $(OBJS)
|
|
303
|
|
304 ## end of Makefile ##
|