Welcome to mirror list, hosted at ThFree Co, Russian Federation.

Makefile.in « crx « libgloss - cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: a4abe3fc99a7f339d07d8dfa56bcda20c4ea06ec (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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#
#

DESTDIR =

VPATH = @srcdir@ @srcdir@/..
srcdir = @srcdir@
objdir = .
srcroot = $(srcdir)/../..
objroot = $(objdir)/../..

prefix = @prefix@
exec_prefix = @exec_prefix@

host_alias = @host_alias@
target_alias = @target_alias@

bindir = @bindir@
libdir = @libdir@
tooldir = $(exec_prefix)/$(target_alias)

INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@

# Multilib support variables.
# TOP is used instead of MULTI{BUILD,SRC}TOP.
MULTIDIRS =
MULTISUBDIR =

SHELL =	/bin/sh

CC = @CC@

AS = @AS@
AR = @AR@
LD = @LD@
RANLIB = @RANLIB@

OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
	then echo ${objroot}/../binutils/objdump ; \
	else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
	then echo ${objroot}/../binutils/objcopy ; \
	else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`

# Here is all of the handlers stuff
H_SCRIPTS	=
H_BSP	= libh.a
H_OBJS	= intable.o dvz_hndl.o flg_hndl.o iad_hndl.o svc_hndl.o und_hndl.o
H_TEST	= hndl-test
H_INSTALL	= install-hndl

# Here is all of the simulator stuff
SIM_SCRIPTS	= sim.ld
SIM_BSP	= libsim.a
SIM_OBJS = _exit.o close.o _getenv.o lseek.o open.o read.o \
	_rename.o sbrk.o time.o unlink.o write.o \
	stat.o putnum.o kill.o getpid.o isatty.o fstat.o
SIM_TEST	= sim-test
SIM_INSTALL	= install-sim

# Here is all of the CRT stuff
CRT	= crti.o crtn.o crt0.o
CRT_INSTALL = install-crt

# Host specific makefile fragment comes in here.
@host_makefile_frag@

#
# build a test program for each target board. Just trying to get
# it to link is a good test, so we ignore all the errors for now.
#
all: ${CRT} ${SIM_BSP} ${H_BSP}

#
# here's where we build the board support packages for each target
#
${H_BSP}: ${H_OBJS}
	${AR} ${ARFLAGS} ${H_BSP} ${H_OBJS}
	${RANLIB} ${H_BSP}

${SIM_BSP}: ${SIM_OBJS}
	${AR} ${ARFLAGS} ${SIM_BSP} ${SIM_OBJS}
	${RANLIB} ${SIM_BSP}

#
# here's where we build the test programs for each target
#
.PHONY: test
test:	${SIM_TEST} ${H_TEST} 

hndl-test:	hndl-test.x hndl-test.dis

hndl-test.x:	test.o ${H_BSP}
	${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
	test.o \
	-o hndl-test.x ${LIBS_FOR_TARGET} -lc ${H_BSP} -Wl,-T${SIM_SCRIPTS}

hndl-test.dis:	hndl-test.x
	${OBJDUMP} -d hndl-test.x > hndl-test.dis


sim-test:	sim-test.x sim-test.dis

sim-test.x:	test.o ${SIM_BSP}
	${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
	test.o \
	-o sim-test.x ${LIBS_FOR_TARGET} -lc ${SIM_BSP} -Wl,-T${SIM_SCRIPTS}

sim-test.dis:	sim-test.x
	${OBJDUMP} -d sim-test.x > sim-test.dis

#
#
#
.c.S:
	${CC} ${CFLAGS_FOR_TARGET} -c $<

clean mostlyclean:
	rm -f a.out core *.i *.o *-test *.srec *.dis *.x $(SIM_BSP) $(H_BSP)

distclean maintainer-clean realclean: clean
	rm -f Makefile config.status *~

.PHONY: install info install-info clean-info
install: ${CRT_INSTALL} ${SIM_INSTALL} ${H_INSTALL}

install-crt:
	set -e; for x in ${CRT} ; do\
	  ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
	done

install-sim:
	for x in ${SIM_BSP} ; do\
	 ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
	done
	for x in ${SIM_SCRIPTS}; do\
	 ${INSTALL_DATA} ${srcdir}/$${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
	done

install-hndl:
	for x in ${H_BSP}; do\
	 ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
	done

doc:
info:
install-info:
clean-info:

Makefile: Makefile.in config.status @host_makefile_frag_path@
	$(SHELL) config.status

config.status: configure
	$(SHELL) config.status --recheck