616
|
1 # DIST: This is the distribution Makefile for Emacs. configure can
|
|
2 # DIST: make most of the changes to this file you might want, so try
|
|
3 # DIST: that first.
|
|
4
|
|
5 # add -DUSG for SysV movemail and timer
|
|
6 # For Xenix, add the following for movemail:
|
|
7 # LOADLIBES= -lx
|
|
8 # For Mips, the following is needed for who knows what.
|
|
9 # LOADLIBES = -lmld /usr/bsd43/usr/lib/libc.a
|
|
10
|
|
11 # Avoid trouble on systems where the `SHELL' variable might be
|
|
12 # inherited from the environment.
|
|
13 SHELL = /bin/sh
|
|
14
|
|
15 # Allow the user to specify the install program.
|
|
16 INSTALL = install
|
|
17 INSTALLFLAGS =
|
|
18
|
1112
|
19 # Things that a user might actually run, which should be installed in bindir.
|
616
|
20 INSTALLABLES = etags ctags emacsclient b2m
|
|
21
|
1112
|
22 # Things that Emacs runs internally, or during the build process,
|
|
23 # which should not be installed in bindir.
|
616
|
24 UTILITIES= test-distrib wakeup make-docfile digest-doc sorted-doc \
|
1112
|
25 movemail cvtmail fakemail yow env emacsserver hexl timer
|
616
|
26
|
1112
|
27 # Like UTILITIES, but they're not system-dependent, and should not be
|
|
28 # deleted by the distclean target.
|
|
29 SCRIPTS= rcs2log vcdiff
|
|
30
|
|
31 EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS}
|
616
|
32
|
|
33 # These things are edited by ../configure; don't change anything before
|
|
34 # or including the '='; everything after that gets blown away.
|
|
35 CC=gcc
|
|
36 CFLAGS= -g -O
|
|
37 LOADLIBES=
|
|
38
|
|
39 all: ../arch-lib
|
|
40
|
|
41 ../arch-lib: ${EXECUTABLES}
|
|
42 for file in ${EXECUTABLES} ; do \
|
|
43 if [ -f $${file} ]; then \
|
|
44 if [ -f ../arch-lib/$${file} ]; then \
|
|
45 rm ../arch-lib/$${file} ; \
|
|
46 fi ; \
|
|
47 ln $${file} ../arch-lib ; \
|
|
48 fi ; \
|
|
49 done
|
|
50
|
|
51 # We don't need to install `wakeup' explicitly, because it will be copied when
|
|
52 # this whole directory is copied.
|
|
53 install: all
|
|
54 ${INSTALL} ${INSTALLFLAGS} -c emacsclient ${BINDIR}/emacsclient
|
|
55 ${INSTALL} ${INSTALLFLAGS} -c etags ${BINDIR}/etags
|
|
56 ${INSTALL} ${INSTALLFLAGS} -c ctags ${BINDIR}/ctags
|
|
57 ${INSTALL} ${INSTALLFLAGS} -c b2m ${BINDIR}/b2m
|
|
58 ${INSTALL} ${INSTALLFLAGS} -c -m 444 emacs.1 ${MANDIR}/emacs.${MANEXT}
|
|
59
|
|
60 install.sysv: all
|
|
61 -cp emacsclient ${BINDIR}/emacsclient.new
|
|
62 -chmod 755 ${BINDIR}/emacsclient.new
|
|
63 -chgrp bin ${BINDIR}/emacsclient.new
|
|
64 -chown bin ${BINDIR}/emacsclient.new
|
|
65 -mv ${BINDIR}/emacsclient.new ${BINDIR}/emacsclient
|
|
66 -cp etags ${BINDIR}/etags.new
|
|
67 -chmod 755 ${BINDIR}/etags.new
|
|
68 -chgrp bin ${BINDIR}/etags.new
|
|
69 -chown bin ${BINDIR}/etags.new
|
|
70 -mv ${BINDIR}/etags.new ${BINDIR}/etags
|
|
71 -cp ctags ${BINDIR}/ctags.new
|
|
72 -chmod 755 ${BINDIR}/ctags.new
|
|
73 -chgrp bin ${BINDIR}/ctags.new
|
|
74 -chown bin ${BINDIR}/ctags.new
|
|
75 -mv ${BINDIR}/ctags.new ${BINDIR}/ctags
|
|
76 -cp b2m ${BINDIR}/b2m.new
|
|
77 -chmod 755 ${BINDIR}/b2m.new
|
|
78 -chgrp bin ${BINDIR}/b2m.new
|
|
79 -chown bin ${BINDIR}/b2m.new
|
|
80 -mv ${BINDIR}/b2m.new ${BINDIR}/b2m
|
|
81 -cp emacs.1 ${MANDIR}/emacs.${MANEXT}.new
|
|
82 -chmod 444 ${MANDIR}/emacs.${MANEXT}.new
|
|
83 -mv ${MANDIR}/emacs.${MANEXT}.new ${MANDIR}/emacs.${MANEXT}
|
|
84
|
|
85 install.xenix:
|
|
86 cp etags ctags emacsclient ${BINDIR}
|
|
87 chmod 755 ${BINDIR}/etags ${BINDIR}/ctags
|
|
88 chmod 755 ${BINDIR}/emacsclient
|
|
89 cp b2m ${BINDIR}
|
|
90 chmod 755 ${BINDIR}/b2m
|
|
91 cp emacs.1 ${MANDIR}/emacs.${MANEXT}
|
|
92 chmod 444 ${MANDIR}/emacs.${MANEXT}
|
|
93
|
|
94
|
|
95 clean mostlyclean:
|
1112
|
96 -rm -f ${INSTALLABLES} ${UTILITIES} core *.o
|
616
|
97
|
|
98 distclean:
|
1112
|
99 -rm -f ${INSTALLABLES} ${UTILITIES} *~ \#* ../etc/DOC* core *.o
|
616
|
100 cd ../arch-lib; rm -f ${EXECUTABLES}
|
|
101
|
|
102 realclean: distclean
|
|
103 rm TAGS aixcc.c
|
|
104
|
|
105 # Test the contents of the directory.
|
|
106 check:
|
|
107 @echo "We don't have any tests for GNU Emacs yet."
|
|
108
|
|
109 TAGS: etags
|
|
110 etags *.[ch]
|
|
111
|
|
112 # This verifies that the non-ASCII characters in the file `testfile'
|
|
113 # have not been clobbered by whatever means were used to copy and
|
|
114 # distribute Emacs. If they were clobbered, all the .elc files were
|
|
115 # clobbered too.
|
|
116 test-distrib: test-distrib.c
|
|
117 $(CC) -o test-distrib test-distrib.c
|
|
118 ./test-distrib
|
|
119
|
|
120 GETOPTOBJS = getopt.o getopt1.o
|
|
121 GETOPTDEPS = $(GETOPTOBJS) getopt.h
|
|
122 getopt.o: getopt.c getopt.h
|
|
123 getopt1.o: getopt1.c getopt.h
|
|
124
|
|
125 etags: etags.c $(GETOPTDEPS)
|
638
|
126 $(CC) ${CFLAGS} -DETAGS etags.c $(GETOPTOBJS) $(LOADLIBES) -o etags
|
616
|
127
|
|
128 ctags: etags.c $(GETOPTDEPS)
|
638
|
129 $(CC) ${CFLAGS} -DCTAGS etags.c $(GETOPTOBJS) $(LOADLIBES) -o ctags
|
616
|
130
|
|
131 wakeup: wakeup.c
|
638
|
132 $(CC) ${CFLAGS} wakeup.c $(LOADLIBES) -o wakeup
|
616
|
133
|
|
134 make-docfile: make-docfile.c
|
638
|
135 $(CC) ${CFLAGS} make-docfile.c $(LOADLIBES) -o make-docfile
|
616
|
136
|
|
137 digest-doc: digest-doc.c
|
638
|
138 $(CC) ${CFLAGS} digest-doc.c $(LOADLIBES) -o digest-doc
|
616
|
139
|
|
140 sorted-doc: sorted-doc.c
|
638
|
141 $(CC) ${CFLAGS} sorted-doc.c $(LOADLIBES) -o sorted-doc
|
616
|
142
|
999
|
143 b2m: b2m.c ../src/config.h
|
638
|
144 $(CC) ${CFLAGS} b2m.c $(LOADLIBES) -o b2m
|
616
|
145
|
|
146 movemail: movemail.c ../src/config.h
|
638
|
147 $(CC) ${CFLAGS} movemail.c $(LOADLIBES) -o movemail
|
616
|
148
|
|
149 cvtmail: cvtmail.c
|
638
|
150 $(CC) ${CFLAGS} cvtmail.c $(LOADLIBES) -o cvtmail
|
616
|
151
|
|
152 fakemail: fakemail.c ../src/config.h
|
638
|
153 $(CC) ${CFLAGS} fakemail.c $(LOADLIBES) -o fakemail
|
616
|
154
|
|
155 yow: yow.c ../src/paths.h
|
638
|
156 $(CC) ${CFLAGS} yow.c $(LOADLIBES) -o yow
|
616
|
157
|
|
158 env: env.c ../src/config.h
|
638
|
159 $(CC) -DEMACS ${CFLAGS} env.c $(LOADLIBES) -o env
|
616
|
160
|
|
161 emacsserver: emacsserver.c ../src/config.h
|
638
|
162 $(CC) ${CFLAGS} emacsserver.c $(LOADLIBES) -o emacsserver
|
616
|
163
|
|
164 emacsclient: emacsclient.c ../src/config.h
|
638
|
165 $(CC) ${CFLAGS} emacsclient.c $(LOADLIBES) -o emacsclient
|
616
|
166
|
|
167 hexl: hexl.c
|
638
|
168 $(CC) ${CFLAGS} hexl.c $(LOADLIBES) -o hexl
|
616
|
169
|
|
170 timer: getdate.o timer.o
|
638
|
171 $(CC) $(CFLAGS) getdate.o timer.o -o timer
|
616
|
172
|
|
173 # These are NOT included in INSTALLABLES or UTILITIES.
|
|
174 # See ../src/ymakefile.
|
|
175 emacstool: emacstool.c
|
|
176 $(CC) emacstool.c -o emacstool ${CFLAGS} \
|
|
177 -lsuntool -lsunwindow -lpixrect $(LOADLIBES)
|
|
178
|
|
179 # For SUN Japanese Language Environment
|
|
180 nemacstool: emacstool.c
|
|
181 $(CC) -o nemacstool -DJLE ${CFLAGS} emacstool.c \
|
|
182 -lsuntool -lmle -lsunwindow -lpixrect $(LOADLIBES)
|
|
183
|
|
184 xvetool: emacstool.c
|
|
185 $(CC) -o xvetool -DXVIEW ${CFLAGS} emacstool.c \
|
|
186 -lxview -lX -I$(OPENWINHOME)/include -L$(OPENWINHOME)/lib \
|
|
187 $(LOADLIBES)
|
|
188
|
|
189 xveterm: emacstool.c
|
|
190 $(CC) -o xveterm -DXVIEW -DTTERM ${CFLAGS} emacstool.c \
|
|
191 -lxview -lolgx -lX -I$(OPENWINHOME)/include -L$(OPENWINHOME)/lib \
|
|
192 $(LOADLIBES)
|
|
193
|
|
194 aixcc: aixcc.c
|
|
195 $(CC) $(CFLAGS) -o aixcc aixcc.c
|
|
196
|
|
197 aixcc.c: aixcc.lex
|
|
198 lex aixcc.lex
|
|
199 mv lex.yy.c aixcc.c
|