Makefile 7.41 KB
Newer Older
Linus Tolke's avatar
Linus Tolke committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#
# $Id$
# Copyright (C) 1991  Lysator Academic Computer Association.
#
# This file is part of the LysKOM server.
# 
# LysKOM is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by 
# the Free Software Foundation; either version 1, or (at your option) 
# any later version.
# 
# LysKOM is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# for more details.
# 
# You should have received a copy of the GNU General Public License
# along with LysKOM; see the file COPYING.  If not, write to
# Lysator, c/o ISY, Linkoping University, S-581 83 Linkoping, SWEDEN,
# or the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, 
# MA 02139, USA.
#
# Please mail bug reports to bug-lyskom@lysator.liu.se. 
#
25
26
# $Id$
# $Log$
27
28
29
30
31
# Revision 38.1  1994/01/10 18:07:53  linus
# The installation method changed (again).
# The version is now contained in the Makefile.
#
# Revision 38.0  1994/01/06  01:56:09  linus
Linus Tolke's avatar
Linus Tolke committed
32
33
34
# New version
#
# Revision 36.9  1994/01/06  00:55:12  linus
Linus Tolke's avatar
Linus Tolke committed
35
36
37
# Removed installation of doc.
#
# Revision 36.8  1993/12/14  02:21:29  linus
38
39
40
# Small fixes for emacs 18.55, jump.
#
# Revision 36.7  1993/11/21  04:37:06  linus
Linus Tolke's avatar
Linus Tolke committed
41
42
43
# Better tags entry.
#
# Revision 36.6  1993/09/10  16:36:51  linus
Linus Tolke's avatar
Linus Tolke committed
44
45
46
# Removed distribution script.
#
# Revision 36.5  1993/08/31  11:22:12  linus
47
48
49
# Corrected ftp-site. compress => gzip
#
# Revision 36.4  1993/07/26  19:07:12  linus
Linus Tolke's avatar
Linus Tolke committed
50
51
52
# Buggfixes, bug-report, quit-ding
#
# Revision 36.3  1993/05/27  15:22:43  linus
Linus Tolke's avatar
Linus Tolke committed
53
54
55
# install in local/var/elisp
#
# Revision 36.2  1993/05/27  13:21:12  linus
Linus Tolke's avatar
Linus Tolke committed
56
57
58
# obel18 => diag19
#
# Revision 36.1  1993/04/26  19:35:11  linus
Linus Tolke's avatar
Linus Tolke committed
59
60
61
# New version
#
# Revision 35.22  1993/04/26  19:30:54  linus
Linus Tolke's avatar
Linus Tolke committed
62
63
64
# Rewound to before prefetch.
#
# Revision 35.21  1993/02/04  04:00:48  linus
65
66
67
# Removed the import.make dependencie of the Makefile.
#
# Revision 35.20  1992/07/30  19:49:22  linus
68
69
70
# Moved around functions to the new reading.el file.
#
# Revision 35.19  1992/07/26  23:14:02  linus
Linus Tolke's avatar
Linus Tolke committed
71
72
73
# Added prefetch.el
#
# Revision 35.18  1992/06/16  11:33:32  linus
74
75
76
# Alfa-version is replaced upon installation also.
#
# Revision 35.17  1992/05/11  01:55:38  linus
77
78
79
# support for distribution to nanny removed
#
# Revision 35.16  1992/03/28  19:54:10  linus
Linus Tolke's avatar
Linus Tolke committed
80
81
82
# Removed mv to old-versions
#
# Revision 35.15  1992/03/22  21:10:12  linus
Linus Tolke's avatar
Linus Tolke committed
83
84
85
# Moved info-dir.
#
# Revision 35.14  1992/02/10  02:53:33  linus
Linus Tolke's avatar
Linus Tolke committed
86
87
88
# mkdir replaced by $(MKDIR).
#
# Revision 35.13  1991/12/19  12:03:51  linus
Linus Tolke's avatar
Linus Tolke committed
89
90
91
# .elc-files require macros.elc.
#
# Revision 35.12  1991/12/18  04:13:37  linus
Linus Tolke's avatar
$(MAKE)    
Linus Tolke committed
92
93
94
# $(MAKE)
#
# Revision 35.11  1991/10/08  17:11:18  linus
95
96
97
# Splitting the makefile install entries to make it easier to install without doc.
#
# Revision 35.10  1991/10/05  18:15:27  linus
98
99
100
# Now handles the english version of the client also.
#
# Revision 35.9  1991/09/26  14:02:16  linus
101
102
103
104
# Install in the correct directory on the ftp-area.
#
# Revision 35.8  1991/09/16  20:33:44  linus
# r{tt namn p} todo filen i wc.
Linus Tolke's avatar
Linus Tolke committed
105
106
#
# Revision 35.7  1991/09/16  19:59:28  linus
107
108
109
# Makefile now works with clientversion-long.
#
# Revision 35.6  1991/09/16  19:31:37  linus
110
111
112
# Makefile now works with new doc-file names.
#
# Revision 35.5  1991/09/16  18:02:02  linus
Linus Tolke's avatar
Linus Tolke committed
113
114
115
116
117
118
119
# * M ci     Makefile
# * A ci     makealfa.l
# =====================================================
# makealfa.l created to make the alfa version of lyskom.elc
#
# Revision 35.4  1991/09/16  16:40:27  linus
# alfa talar om att det {r alfa i versionsnumret.
120
121
#
# Revision 35.3  1991/09/15  10:07:04  linus
Linus Tolke's avatar
Linus Tolke committed
122
123
124
# Added copyright note
#
# Revision 35.2  1991/09/13  21:42:53  linus
Linus Tolke's avatar
Linus Tolke committed
125
126
127
# Lagt till distclean.
#
# Revision 35.1  1991/08/21  15:44:47  linus
128
129
# Lagt till lyskom-clientversion-long
#
Per Cederqvist's avatar
.    
Per Cederqvist committed
130

131
132
CLIENTVERSION = 0.38.1

133
134
135
GENERIC-CLEAN = *~ *.o core
GENERIC-DIST-CLEAN = TAGS
MKDIR = /bin/mkdir
Linus Tolke's avatar
Linus Tolke committed
136

Per Cederqvist's avatar
.    
Per Cederqvist committed
137
RM = /usr/gnu/bin/rm -vf
138

Linus Tolke's avatar
Linus Tolke committed
139
# for compiling using emacs 19!
140
EMACS-BATCH = emacs -batch
Per Cederqvist's avatar
.    
Per Cederqvist committed
141
142

# NOTE: lyskom-rest.el must be the last file in PARTS-EL and SRC-ELC.
143
PARTS-EL = komtypes.el clienttypes.el startup.el \
Linus Tolke's avatar
Linus Tolke committed
144
	reading.el \
Per Cederqvist's avatar
.    
Per Cederqvist committed
145
146
147
148
149
	internal.el parse.el services.el cache.el\
	commands1.el commands2.el review.el edit-text.el \
	view-text.el async.el completing-read.el \
	prioritize.el flags.el \
	elib-string.el \
150
	lyskom-rest.el
151
152
153
154
155
156
157
HEADER-EL = macros.el vars.el
HEADER-ELC = macros.elc vars.elc
SWEDISH-EL = swedish-strings.el
SWEDISH-ELC = swedish-strings.elc
ENGLISH-EL = english-strings.el
ENGLISH-ELC = english-strings.elc
SRC-ELC = komtypes.elc clienttypes.elc startup.elc \
Linus Tolke's avatar
Linus Tolke committed
158
	reading.elc \
Per Cederqvist's avatar
.    
Per Cederqvist committed
159
160
161
162
163
	internal.elc parse.elc services.elc cache.elc\
	commands1.elc commands2.elc review.elc edit-text.elc \
	view-text.elc async.elc completing-read.elc \
	prioritize.elc flags.elc \
	elib-string.elc \
164
	lyskom-rest.elc 
Per Cederqvist's avatar
.    
Per Cederqvist committed
165
166
167
168
PARTS-ELC = $(SRC-ELC)

.SUFFIXES : .el .elc
.el.elc:
169
	$(EMACS-BATCH) -l `pwd`/macros -l `pwd`/vars -f batch-byte-compile $*.el
Per Cederqvist's avatar
.    
Per Cederqvist committed
170
171
172

all: lyskom.elc

173
174
175
# influenced by autoconf? Yes.
vars.el: vars.el.in Makefile
	sed 's/@@CLIENTVERSION@@/$(CLIENTVERSION)/' < vars.el.in > vars.el
176
177
178

lyskom.elc: $(HEADER-ELC) $(SWEDISH-ELC) $(PARTS-ELC)
	cat $(HEADER-ELC) $(SWEDISH-ELC) $(PARTS-ELC) > lyskom.elc
Linus Tolke's avatar
Linus Tolke committed
179

180
181
english-lyskom.elc: $(HEADER-ELC) $(ENGLISH-ELC) $(PARTS-ELC)
	cat $(HEADER-ELC) $(ENGLISH-ELC) $(PARTS-ELC) > english-lyskom.elc
Per Cederqvist's avatar
.    
Per Cederqvist committed
182

183
184
lyskom.el: $(HEADER-EL) $(SWEDISH-EL) $(PARTS-EL)
	cat $(HEADER-EL) $(SWEDISH-EL) $(PARTS-EL) > lyskom.el
Per Cederqvist's avatar
.    
Per Cederqvist committed
185

Linus Tolke's avatar
Linus Tolke committed
186
$(SRC-ELC) $(SWEDISH-ELC) $(ENGLISH-ELC): macros.elc
Per Cederqvist's avatar
.    
Per Cederqvist committed
187
188
189
190
191
192
193
194
195
196
197
198
199
200

elc-files: $(HEADER-ELC) $(PARTS-ELC) 


#Detta kr{ver gnu-make. Tyv{rr funkade inte $(SRC-ELC)-prylen l{ngre ner alls.
#Kanske denna $(SRC-ELC) pryl fungerar.
#$(SRC-ELC) :%.elc: %.el macros.elc
#	$(EMACS-BATCH) -l ./macros.elc -f batch-byte-compile $<

#$(SRC-ELC):
#	$(EMACS-BATCH) -l ./macros.el -f batch-byte-compile $*.el


wc:
201
	@wc $(HEADER-EL) $(PARTS-EL) $(SWEDISH-EL) $(ENGLISH-EL)
Linus Tolke's avatar
Linus Tolke committed
202
	@wc ../doc/elisp-client.latexinfo ChangeLog ../misc/todo
Per Cederqvist's avatar
.    
Per Cederqvist committed
203

Linus Tolke's avatar
Linus Tolke committed
204
TAGS: $(HEADER-EL) $(PARTS-EL) $(SWEDISH-EL) $(ENGLISH-EL)
205
	etags $(HEADER-EL) $(PARTS-EL) $(SWEDISH-EL) $(ENGLISH-EL)
Per Cederqvist's avatar
.    
Per Cederqvist committed
206
207

doc:
Linus Tolke's avatar
$(MAKE)    
Linus Tolke committed
208
	(cd ../doc ; $(MAKE) elisp-client elisp-client.txt ; )
Per Cederqvist's avatar
.    
Per Cederqvist committed
209

210
install: installnodoc installdoc
Per Cederqvist's avatar
.    
Per Cederqvist committed
211

212
213
214
215
216
217
218
219
installatlysator: lyskom-$(CLIENTVERSION).elc lyskom.el
	# Lysator
	cp lyskom.el /usr/local/lib/emacs/site-lisp/lyskom.el
	cp lyskom-$(CLIENTVERSION).elc /usr/local/lib/emacs/site-lisp/lyskom.elc

lyskom-$(CLIENTVERSION).elc: lyskom.el
	$(EMACS-BATCH) -f batch-byte-compile lyskom.el
	mv lyskom.elc lyskom-$(CLIENTVERSION).elc
Linus Tolke's avatar
Linus Tolke committed
220

221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
lyskom.elc-compatibility: lyskom.el
	$(EMACS-BATCH) -l ./compatibility.el -f batch-byte-compile lyskom.el
	mv lyskom.elc lyskom.elc-compatibility

lyskom-$(CLIENTVERSION).el.gz: lyskom.el
	gzip -9 < lyskom.el > lyskom-$(CLIENTVERSION).el.gz

lyskom-$(CLIENTVERSION).elc.gz: lyskom-$(CLIENTVERSION).elc
	gzip -9 < lyskom-$(CLIENTVERSION).elc > lyskom-$(CLIENTVERSION).elc.gz

installatftp: lyskom-$(CLIENTVERSION).el.gz lyskom-$(CLIENTVERSION).elc.gz
	touch lyskom-$(CLIENTVERSION).elc.gz # Do we have confidence problems?
	mv lyskom-$(CLIENTVERSION).el.gz lyskom-$(CLIENTVERSION).elc.gz \
		/usr/ftp/pub/lyskom/elisp-client

.PHONY: installnodoc
installnodoc: installatlysator installatftp
238

Linus Tolke's avatar
Linus Tolke committed
239
# This is now the responsability of the Makefile in the doc-dir.
240
installdoc: doc
Linus Tolke's avatar
Linus Tolke committed
241
	( cd ../doc; make install )
Per Cederqvist's avatar
.    
Per Cederqvist committed
242

243
244
245
246
247
248
smallclean:
	$(RM) lyskom-$(CLIENTVERSION).el.gz lyskom-$(CLIENTVERSION).elc.gz
	$(RM) lyskom-$(CLIENTVERSION).elc lyskom.el

clean: smallclean
	$(RM) *~ *.elc $(GENERIC-CLEAN)
Per Cederqvist's avatar
.    
Per Cederqvist committed
249

Linus Tolke's avatar
Linus Tolke committed
250
distclean: clean
251
	$(RM) $(GENERIC-DIST-CLEAN) Topdir.make */Topdir.make vars.el