1export USE_APPLE_PB_SUPPORT = all
2
3ifneq "" "$(SDKROOT)"
4  SDK = -isysroot $(SDKROOT)
5  CC = $(shell xcrun -find -sdk $(SDKROOT) cc)
6  DSYMUTIL = $(shell xcrun -find -sdk ${SDKROOT} dsymutil)
7else
8  DSYMUTIL = dsymutil
9endif
10
11OFLAG = -Os
12CFLAGS = $(OFLAG) -g -I$(SRCROOT) -I$(SRCROOT)/../include -I$(OFILE_DIR) \
13	-Wall -DNeXT_MOD $(SDK)
14LIBSTUFF_DIR = -L$(SYMROOT)/../../libstuff
15LIBSTUFF = -lstuff
16
17MKDIRS = /bin/mkdir -p
18
19SRCROOT = .
20SYMROOT = .
21OBJROOT = .
22SYM_DIRS = $(SYMROOT)/driver_dir \
23	   $(SYMROOT)/a68_dir \
24	   $(SYMROOT)/a88_dir \
25	   $(SYMROOT)/a386_dir \
26 	   $(SYMROOT)/ax86_64_dir \
27	   $(SYMROOT)/appc_dir \
28	   $(SYMROOT)/appc64_dir \
29	   $(SYMROOT)/a860_dir \
30	   $(SYMROOT)/ahppa_dir \
31	   $(SYMROOT)/asparc_dir \
32	   $(SYMROOT)/aarm_dir 
33
34OFILE_DIRS = $(OBJROOT)/driver_dir \
35	     $(OBJROOT)/a68_dir \
36	     $(OBJROOT)/a88_dir \
37	     $(OBJROOT)/a386_dir \
38 	     $(OBJROOT)/ax86_64_dir \
39	     $(OBJROOT)/appc_dir \
40	     $(OBJROOT)/appc64_dir \
41	     $(OBJROOT)/a860_dir \
42	     $(OBJROOT)/ahppa_dir \
43	     $(OBJROOT)/asparc_dir \
44	     $(OBJROOT)/aarm_dir
45
46BINDIR = /bin
47USRBINDIR = /usr/bin
48LIBDIR = /usr/libexec/as
49LOCLIBDIR = /usr/local/libexec/as
50
51DWARF = dwarf2dbg.c
52CFILES = app.c as.c atof-generic.c atof-ieee.c expr.c fixes.c flonum-const.c \
53	 flonum-copy.c flonum-mult.c frags.c hash.c hex-value.c input-file.c \
54	 input-scrub.c layout.c messages.c obstack.c read.c sections.c \
55	 symbols.c write_object.c xmalloc.c $(DWARF)
56
57CFILES_m68k = m68k.c
58CFILES_m88k = m88k.c
59CFILES_i860 = i860.c
60CFILES_i386 = i386.c
61CFILES_ppc = ppc.c
62CFILES_hppa = hppa.c hppa-aux.c
63CFILES_sparc = sparc.c
64CFILES_arm = arm.c
65
66HFILES = app.h as.h atof-ieee.h bignum.h expr.h fixes.h flonum.h frags.h \
67	 hash.h hex_value.h i386-opcode.h i386.h i860-opcode.h input-file.h \
68	 input-scrub.h layout.h m68k-opcode.h m88k-opcode.h ppc-opcode.h md.h \
69	 messages.h obstack.h read.h relax.h sections.h struc-symbol.h \
70	 symbols.h write_object.h xmalloc.h hppa-aux.h hppa-opcode.h \
71	 sparc-opcode.h arch64_32.h dwarf2dbg.h filenames.h arm_reloc.h
72
73CHECK_FILES = m68k-check.c m88k-check.c i860-check.c i386-check.c ppc-check.c \
74	      hppa-check.c sparc-check.c arm-check.c
75
76INSTALL_FILES = Makefile notes $(CFILES) $(CFILES_m68k) $(CFILES_m88k) \
77		$(CFILES_i860) $(CFILES_i386) $(CFILES_ppc) $(CFILES_hppa) \
78		$(CFILES_sparc) $(CFILES_arm) $(HFILES) $(CHECK_FILES) \
79		driver.c COPYING cctools.plist
80
81OBJS = $(CFILES:.c=.o)
82OBJS_m68k = $(CFILES_m68k:.c=.o)
83OBJS_m88k = $(CFILES_m88k:.c=.o)
84OBJS_i860 = $(CFILES_i860:.c=.o)
85OBJS_i386 = $(CFILES_i386:.c=.o)
86OBJS_ppc = $(CFILES_ppc:.c=.o)
87OBJS_hppa = $(CFILES_hppa:.c=.o)
88OBJS_sparc = $(CFILES_sparc:.c=.o)
89OBJS_arm = $(CFILES_arm:.c=.o)
90
91all:	$(OFILE_DIRS) $(SYM_DIRS) driver_build a68_build a88_build a386_build \
92	ax86_64_build a860_build appc_build appc64_build ahppa_build \
93	aarm_build asparc_build
94
95all_test:	a68_test a88_test a860_test a386_test appc_test ahppa_test
96
97driver_build:	$(OBJROOT)/driver_dir
98	@if [ $(SRCROOT) = . ];						\
99	then								\
100	    cd driver_dir;  $(MAKE) -f ../Makefile driver VPATH=..	\
101		CFLAGS="-g -I../../include $(OFLAG) $(SDK)" 		\
102		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFILE_DIR=.	\
103		RC_FLAGS="$(RC_CFLAGS)" DEP_DIR=driver_dir;		\
104	else								\
105	    cd $(OBJROOT)/driver_dir; $(MAKE) -f $(SRCROOT)/Makefile	\
106		driver VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/driver_dir \
107		SYMROOT=$(SYMROOT)/driver_dir SRCROOT=$(SRCROOT)	\
108		CFLAGS="-g -I$(SRCROOT)/../include $(OFLAG) $(SDK)"	\
109		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
110		RC_FLAGS="$(RC_CFLAGS)" DEP_DIR=driver_dir;		\
111	fi
112
113a68_build:	$(OBJROOT)/a68_dir
114	@if [ $(SRCROOT) = . ];						\
115	then								\
116	    cd a68_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.	\
117		SRCROOT=.. TARGET_OBJS="$(OBJS_m68k)" DEP_DIR=a68_dir	\
118		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG) \
119		RC_CFLAGS="$(RC_CFLAGS)"				\
120		COPTS="-DM68K -DBUILTIN_MMUS";				\
121	else								\
122	    cd $(OBJROOT)/a68_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
123		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/a68_dir		\
124		SYMROOT=$(SYMROOT)/a68_dir SRCROOT=$(SRCROOT)		\
125		TARGET_OBJS="$(OBJS_m68k)"				\
126		COPTS="-DM68K -DBUILTIN_MMUS"				\
127		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
128		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=a68_dir;		\
129	fi
130
131a68_test: a68_dir
132	cd a68_dir; $(MAKE) -f ../Makefile m68k-check VPATH=.. OFILE_DIR=. \
133		SRCROOT=.. COPTS="-DM68K -DBUILTIN_MMUS"
134	cd a68_dir; $(MAKE) -f ../Makefile test
135
136a88_build:	$(OBJROOT)/a88_dir
137	@if [ $(SRCROOT) = . ];						\
138	then								\
139	    cd a88_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.	\
140		SRCROOT=.. TARGET_OBJS="$(OBJS_m88k)" DEP_DIR=a88_dir	\
141		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
142		COPTS="-DM88K -Dm88110" RCFLAGS=$(RCFLAGS);		\
143	else								\
144	    cd $(OBJROOT)/a88_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
145		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/a88_dir		\
146		SYMROOT=$(SYMROOT)/a88_dir SRCROOT=$(SRCROOT)		\
147		TARGET_OBJS="$(OBJS_m88k)" COPTS="-DM88K -Dm88110"	\
148		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
149		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=a88_dir;		\
150	fi
151
152a88_test: a88_dir
153	cd a88_dir; $(MAKE) -f ../Makefile m88k-check VPATH=.. OFILE_DIR=. \
154		SRCROOT=.. COPTS="-DM88K -Dm88110"
155	cd a88_dir; $(MAKE) -f ../Makefile test
156
157a386_build:	$(OBJROOT)/a386_dir
158	@if [ $(SRCROOT) = . ];						\
159	then								\
160	    cd a386_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.	\
161		SRCROOT=.. TARGET_OBJS="$(OBJS_i386)" DEP_DIR=a386_dir	\
162		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
163		COPTS="-DI386 -Di486 -Di586 -Di686"			\
164		RC_CFLAGS="$(RC_CFLAGS)";				\
165	else								\
166	    cd $(OBJROOT)/a386_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
167		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/a386_dir		\
168		SYMROOT=$(SYMROOT)/a386_dir SRCROOT=$(SRCROOT)		\
169		TARGET_OBJS="$(OBJS_i386)"				\
170		COPTS="-DI386 -Di486 -Di586 -Di686"			\
171		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
172		RC_CFLAGS="$(RC_CFLAGS)"  DEP_DIR=a386_dir;		\
173	fi
174
175a386_test: a386_dir
176	cd a386_dir; $(MAKE) -f ../Makefile i386-check VPATH=.. OFILE_DIR=. \
177		SRCROOT=.. COPTS="-DI386 -Di486 -Di586 -Di686"
178	cd a386_dir; $(MAKE) -f ../Makefile test
179
180
181ax86_64_build:	$(OBJROOT)/ax86_64_dir
182	@if [ $(SRCROOT) = . ];						\
183 	then								\
184 	    cd ax86_64_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=. \
185 		SRCROOT=.. TARGET_OBJS="$(OBJS_i386)" DEP_DIR=ax86_64_dir \
186 		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
187 		COPTS="-DI386 -Di486 -Di586 -Di686 -DARCH64"		\
188 		RC_CFLAGS="$(RC_CFLAGS)" LIBSTUFF="-lstuff";		\
189 	else								\
190 	    cd $(OBJROOT)/ax86_64_dir; $(MAKE) -f $(SRCROOT)/Makefile as \
191 		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/ax86_64_dir	\
192 		SYMROOT=$(SYMROOT)/ax86_64_dir SRCROOT=$(SRCROOT)	\
193 		TARGET_OBJS="$(OBJS_i386)" LIBSTUFF="-lstuff"		\
194 		COPTS="-DI386 -Di486 -Di586 -Di686 -DARCH64"		\
195 		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
196 		RC_CFLAGS="$(RC_CFLAGS)"  DEP_DIR=ax86_64_dir;		\
197 	fi
198 
199ax86_64_test: ax86_64_dir
200	cd ax86_64_dir; $(MAKE) -f ../Makefile x86_64-check VPATH=.. \
201	    OFILE_DIR=. SRCROOT=.. COPTS="-DI386 -Di486 -Di586 -Di686 -DARCH64"
202	cd ax86_64_dir; $(MAKE) -f ../Makefile test
203
204a860_build:	$(OBJROOT)/a860_dir
205	@if [ $(SRCROOT) = . ];						\
206	then								\
207	    cd a860_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.	\
208		SRCROOT=.. TARGET_OBJS="$(OBJS_i860)" DEP_DIR=a860_dir	\
209		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
210		RC_CFLAGS="$(RC_CFLAGS)" COPTS="-DI860";		\
211	else								\
212	    cd $(OBJROOT)/a860_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
213		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/a860_dir		\
214		SYMROOT=$(SYMROOT)/a860_dir SRCROOT=$(SRCROOT)		\
215		TARGET_OBJS="$(OBJS_i860)" COPTS="-DI860"		\
216		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
217		RC_CFLAGS="$(RC_CFLAGS)"  DEP_DIR=a860_dir;		\
218	fi
219
220a860_test: a860_dir
221	cd a860_dir; $(MAKE) -f ../Makefile i860-check VPATH=.. OFILE_DIR=. \
222		SRCROOT=.. COPTS="-DI860"
223	cd a860_dir; $(MAKE) -f ../Makefile test ASFLAGS=-W
224
225appc_build:	$(OBJROOT)/appc_dir
226	@if [ $(SRCROOT) = . ];						\
227	then								\
228	    cd appc_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.	\
229		SRCROOT=.. TARGET_OBJS="$(OBJS_ppc)" DEP_DIR=appc_dir	\
230		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG) \
231		RC_CFLAGS="$(RC_CFLAGS)" COPTS="-DPPC";			\
232	else								\
233	    cd $(OBJROOT)/appc_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
234		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/appc_dir		\
235		SYMROOT=$(SYMROOT)/appc_dir SRCROOT=$(SRCROOT)		\
236		TARGET_OBJS="$(OBJS_ppc)" COPTS="-DPPC"			\
237		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
238		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=appc_dir;		\
239	fi
240
241appc64_build:	$(OBJROOT)/appc64_dir
242	@if [ $(SRCROOT) = . ];						\
243	then								\
244	    cd appc64_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=. \
245		SRCROOT=.. TARGET_OBJS="$(OBJS_ppc)" DEP_DIR=appc64_dir	\
246		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
247		RC_CFLAGS="$(RC_CFLAGS)" OFLAG=$(OFLAG)			\
248		COPTS="-DPPC -DARCH64" LIBSTUFF="-lstuff";		\
249	else								\
250	    cd $(OBJROOT)/appc64_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
251		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/appc64_dir	\
252		SYMROOT=$(SYMROOT)/appc64_dir SRCROOT=$(SRCROOT)	\
253		TARGET_OBJS="$(OBJS_ppc)" COPTS="-DPPC -DARCH64"	\
254		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
255		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=appc64_dir		\
256		LIBSTUFF="-lstuff";					\
257	fi
258
259appc_test: appc_dir
260	cd appc_dir; $(MAKE) -f ../Makefile ppc-check VPATH=.. OFILE_DIR=. \
261		SRCROOT=.. COPTS="-DPPC"
262	cd appc_dir; $(MAKE) -f ../Makefile test
263
264ahppa_build:	$(OBJROOT)/ahppa_dir
265	@if [ $(SRCROOT) = . ];						\
266	then								\
267	    cd ahppa_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.\
268		SRCROOT=.. TARGET_OBJS="$(OBJS_hppa)" DEP_DIR=ahppa_dir	\
269		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
270		RC_CFLAGS="$(RC_CFLAGS)" COPTS="-DHPPA";		\
271	else								\
272	    cd $(OBJROOT)/ahppa_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
273		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/ahppa_dir		\
274		SYMROOT=$(SYMROOT)/ahppa_dir SRCROOT=$(SRCROOT)		\
275		TARGET_OBJS="$(OBJS_hppa)" COPTS="-DHPPA"		\
276		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
277		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=ahppa_dir;		\
278	fi
279
280ahppa_test: ahppa_dir
281	cd ahppa_dir; $(MAKE) -f ../Makefile hppa-check VPATH=.. OFILE_DIR=. \
282		SRCROOT=.. COPTS="-DHPPA"
283	cd ahppa_dir; $(MAKE) -f ../Makefile test
284
285asparc_build:	$(OBJROOT)/asparc_dir
286	@if [ $(SRCROOT) = . ];						\
287	then								\
288	    cd asparc_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=.\
289		SRCROOT=.. TARGET_OBJS="$(OBJS_sparc)" DEP_DIR=asparc_dir\
290		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
291		RC_CFLAGS="$(RC_CFLAGS)" COPTS="-DSPARC";		\
292	else								\
293	    cd $(OBJROOT)/asparc_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
294		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/asparc_dir	\
295		SYMROOT=$(SYMROOT)/asparc_dir SRCROOT=$(SRCROOT)	\
296		TARGET_OBJS="$(OBJS_sparc)" COPTS="-DSPARC"		\
297		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
298		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=asparc_dir;		\
299	fi
300
301asparc_test: asparc_dir
302	cd asparc_dir; $(MAKE) -f ../Makefile sparc-check VPATH=.. \
303		OFILE_DIR=. SRCROOT=.. COPTS="-DSPARC"
304	cd asparc_dir; $(MAKE) -f ../Makefile test
305
306aarm_build:	$(OBJROOT)/aarm_dir
307	@if [ $(SRCROOT) = . ];						\
308	then								\
309	    cd aarm_dir; $(MAKE) -f ../Makefile as VPATH=.. OFILE_DIR=. \
310		SRCROOT=.. TARGET_OBJS="$(OBJS_arm)" DEP_DIR=aarm_dir	\
311		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)" OFLAG=$(OFLAG)	\
312		RC_CFLAGS="$(RC_CFLAGS)" COPTS="-DARM";			\
313	else								\
314	    cd $(OBJROOT)/aarm_dir; $(MAKE) -f $(SRCROOT)/Makefile as	\
315		VPATH=$(SRCROOT) OFILE_DIR=$(OBJROOT)/aarm_dir		\
316		SYMROOT=$(SYMROOT)/aarm_dir SRCROOT=$(SRCROOT)		\
317		TARGET_OBJS="$(OBJS_arm)" COPTS="-DARM"			\
318		VERS_STRING_FLAGS="$(VERS_STRING_FLAGS)"		\
319		RC_CFLAGS="$(RC_CFLAGS)" DEP_DIR=aarm_dir;		\
320	fi
321
322aarm_test: aarm_dir
323	cd aarm_dir; $(MAKE) -f ../Makefile arm-check VPATH=.. \
324		OFILE_DIR=. SRCROOT=.. COPTS="-DARM"
325	cd aarm_dir; $(MAKE) -f ../Makefile test
326
327driver:	driver.o
328	$(CC) $(RC_CFLAGS) $(SDK) -o $(SYMROOT)/driver \
329		$(OFILE_DIR)/driver.o $(LIBSTUFF_DIR) $(LIBSTUFF)
330	$(DSYMUTIL) $(SYMROOT)/driver
331
332as:	$(OBJS) $(TARGET_OBJS)
333	$(CC) $(RC_CFLAGS) -nostdlib -r \
334		-o $(SYMROOT)/as.private.o $(OBJS) $(TARGET_OBJS) \
335		$(LIBSTUFF_DIR) $(LIBSTUFF)
336	$(CC) $(RC_CFLAGS) $(SDK) -o $(SYMROOT)/as $(SYMROOT)/as.private.o
337	$(DSYMUTIL) $(SYMROOT)/as
338
339m68k-check:
340	$(CC) $(COPTS) $(CFLAGS) -o check ../m68k-check.c
341
342m88k-check:
343	$(CC) $(COPTS) $(CFLAGS) -o check ../m88k-check.c
344
345i386-check:
346	$(CC) $(COPTS) $(CFLAGS) -o check ../i386-check.c
347
348x86_64-check:
349	$(CC) $(COPTS) $(CFLAGS) -DARCH64 -o check ../i386-check.c
350
351i860-check:
352	$(CC) $(COPTS) $(CFLAGS) -o check ../i860-check.c
353
354ppc-check:
355	$(CC) $(COPTS) $(CFLAGS) -o check ../ppc-check.c
356
357hppa-check:
358	$(CC) $(COPTS) $(CFLAGS) -o check ../hppa-check.c
359
360sparc-check:
361	$(CC) $(COPTS) $(CFLAGS) -o check ../sparc-check.c
362
363arm-check:
364	$(CC) $(COPTS) $(CFLAGS) -o check ../arm-check.c
365
366test:
367	./check $(LLVM_MC) > check.s
368	./as -W -force_cpusubtype_ALL $(ASFLAGS) -o check.o check.s
369	otool -X -tV $(LLVM_MC) check.o > check1.s
370	./as -force_cpusubtype_ALL $(ASFLAGS) -o check1.o check1.s
371	otool -X -tV $(LLVM_MC) check1.o > check2.s
372	diff check1.s check2.s > check.out
373	cmp check.o check1.o
374
375.c.o:
376	$(CC) $(COPTS) $(CFLAGS) $(RC_CFLAGS) -c -o $(OFILE_DIR)/$*.o $<
377
378clean shlib_clean:
379	-rm -r -f $(OFILE_DIRS) make.out
380
381installsrc installGASsrc:
382	$(MKDIRS) $(SRCROOT)
383	chmod 755 $(SRCROOT)
384	gnutar cf - $(INSTALL_FILES) | (cd $(SRCROOT); gnutar xf -)
385	chmod 444 $(SRCROOT)/*
386
387install: all
388	$(MKDIRS) $(DSTROOT)$(LIBDIR)/i386
389	install -c -s -m 555 $(SYMROOT)/a386_dir/as \
390		$(DSTROOT)$(LIBDIR)/i386/as
391	$(MKDIRS) $(DSTROOT)$(LIBDIR)/x86_64
392	install -c -s -m 555 $(SYMROOT)/ax86_64_dir/as \
393		$(DSTROOT)$(LIBDIR)/x86_64/as
394	$(MKDIRS) $(DSTROOT)$(USRBINDIR)
395	install -c -s -m 555 $(SYMROOT)/driver_dir/driver \
396		$(DSTROOT)$(USRBINDIR)/as	
397	$(MKDIRS) $(DSTROOT)/usr/local/OpenSourceVersions/
398	install -c -s -m 444 $(SRCROOT)/cctools.plist \
399		$(DSTROOT)/usr/local/OpenSourceVersions/cctools.plist
400	$(MKDIRS) $(DSTROOT)/usr/local/OpenSourceLicenses/
401	install -c -s -m 444 $(SRCROOT)/COPYING \
402		$(DSTROOT)/usr/local/OpenSourceLicenses/cctools.txt
403	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/ppc
404	install -c -s -m 555 $(SYMROOT)/appc_dir/as \
405		$(DSTROOT)$(LOCLIBDIR)/ppc/as
406	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/ppc64
407	install -c -s -m 555 $(SYMROOT)/appc64_dir/as \
408		$(DSTROOT)$(LOCLIBDIR)/ppc64/as
409	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/m68k
410	install -c -s -m 555 $(SYMROOT)/a68_dir/as \
411		$(DSTROOT)$(LOCLIBDIR)/m68k/as
412	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/sparc 
413	install -c -s -m 555 $(SYMROOT)/asparc_dir/as \
414		$(DSTROOT)$(LOCLIBDIR)/sparc/as
415	$(MKDIRS) $(DSTROOT)$(LIBDIR)/arm
416	install -c -s -m 555 $(SYMROOT)/aarm_dir/as \
417		$(DSTROOT)$(LIBDIR)/arm/as
418	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/m88k
419	install -c -s -m 555 $(SYMROOT)/a88_dir/as \
420		$(DSTROOT)$(LOCLIBDIR)/m88k/as
421	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/hppa
422	install -c -s -m 555 $(SYMROOT)/ahppa_dir/as \
423		$(DSTROOT)$(LOCLIBDIR)/hppa/as
424	$(MKDIRS) $(DSTROOT)$(LOCLIBDIR)/i860
425	install -s -m 555 $(SYMROOT)/a860_dir/as \
426		$(DSTROOT)$(LOCLIBDIR)/i860/as
427
428$(OFILE_DIRS) $(SYM_DIRS):
429	$(MKDIRS) $@
430