blob: 2747b7595c5f1681a6d2b5e8630d370279e4fe60 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
#
# Makefile for development tools.
#
# Last Mod Mon Apr 8 22:31:28 PDT 1991, by rich@sendai
#
srcdir = .
#subdir = Host-$(host)/Target-$(target)
OSLAYER = clib/os-layer
OSINCLUDE = $(OSLAYER)/include
#CC = gcc -b$(target) # -B$(srcdir)/../gas/Host-$(host)/Target-$(target)/
#CFLAGS = -g -nostdinc -nostdlib -I- -I$(srcdir) -I$(srcdir)/../include -I$(OSINCLUDE)
# These are roughly topologically sorted in order to make porting more
# streamlined.
SUBDIRS =
NONSUBDIRS =
SUBDIRS_INCLUDE = machine-dep
TARGETLIB = libc.a
RANLIB = ranlib
AR = ar
AR_FLAGS = cqv
#### host and target specific makefile fragments come in here.
all: $(TARGETLIB)
subdir_do: $(SUBDIRS) $(TARGETDIRS)
for i in $(SUBDIRS); \
do \
if (cd $(srcdir)/$$i`if [ -d $(srcdir)/$$i.$(target) ] ; \
then echo .$(target) ; fi`/$(subdir); \
$(MAKE) \
"OSLAYER=../$(OSLAYER)" \
"TARGETLIB=../$(srcdir)/$(subdir)/$(TARGETLIB)" \
"AR=$(AR)" "AR_FLAGS=$(AR_FLAGS)" \
"RANLIB=$(RANLIB)" $(DO)) ; \
then true ; \
else exit 1 ; \
fi ;\
done
$(TARGETLIB): FORCE
@$(MAKE) subdir_do "DO=all"
# $(RANLIB) $(TARGETLIB)
oldlibc.a: $(SUBDIRS) FORCE
@$(MAKE) subdir_do DO=all
rm -rf TEMP
mkdir TEMP
# Extract files from all subdirs, making sure that none overwrites others.
cd TEMP; for i in $(SUBDIRS); do\
ar x ../$$i/library.a;\
chmod a-w *;\
done;
# Be sure if interrupted, no libc.a exists.
rm -f libc.new
cd TEMP; ar cq ../libc.new *
ranlib libc.new
mv libc.new libc.a
rm -rf TEMP
clean:
rm -rf *.a TEMP errs core *.o *~ \#* TAGS *.E
$(MAKE) subdir_do DO=clean
install: all install_include install_crt install_gnulib install_lib
# When installing include files, be sure that machine-dependent
# files override machine-independent files.
# Might be better to check for collisions? FIXME
install_crt:
$(MAKE) SUBDIRS=machine-dep DO=install_crt
install_gnulib:
$(MAKE) SUBDIRS=gnulib DO=install_gnulib
install_include:
$(MAKE) SUBDIRS=$(SUBDIRS_INCLUDE) DO=install_include
install_lib: libc.a
cp libc.a $(DESTDIR)/lib/libc.a
etags tags: TAGS
TAGS: FORCE
etags `$(MAKE) ls`
ls:
@echo Makefile
@for i in $(SUBDIRS); \
do \
(cd $$i; \
pwd=`pwd`; \
wd=`basename $$pwd`; \
for j in `$(MAKE) ls`; \
do \
echo $$wd/$$j; \
done) \
done
FORCE:
# with the gnu make, this is done automatically.
Makefile: $(srcdir)/Makefile.in $(srcdir)/configure
(cd $(srcdir) ; configure -srcdir=$(srcdir) -host=$(host) $(target) -norecurse)
#
# $Log$
# Revision 1.2 1991/04/09 23:52:40 rich
# First cut config. builds in place.
#
# Revision 1.1 1991/04/04 18:56:39 rich
# Initial revision
#
#
#
# end of Makefile.in
|