source: rtems/c/src/lib/libbsp/i386/pc386/Makefile.am @ 74f89dc

4.104.114.84.95
Last change on this file since 74f89dc was 74f89dc, checked in by Joel Sherrill <joel.sherrill@…>, on 02/06/04 at 20:29:43

2004-02-06 Joel Sherrill <joel@…>

  • Makefile.am: Split startup into multiple .rels without reorganizing the source.
  • Property mode set to 100644
File size: 12.1 KB
Line 
1##
2## $Id$
3##
4
5ACLOCAL_AMFLAGS = -I ../../../../aclocal
6
7# FIXME: We must not include *.cfg
8include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
9
10include $(top_srcdir)/../../../../automake/compile.am
11include $(top_srcdir)/../../bsp.am
12
13EXTRA_PROGRAMS =
14CLEANFILES =
15noinst_DATA =
16
17SUBDIRS = . tools
18
19include_HEADERS += include/crt.h
20nodist_include_HEADERS += ../../shared/include/coverhd.h
21
22EXTRA_DIST = start/start.S
23start$(LIB_VARIANT).$(OBJEXT): start/start.S
24        ${CCASCOMPILE} -DASM -o $@ -c $<
25
26project_lib_DATA = start$(LIB_VARIANT).$(OBJEXT)
27
28EXTRA_DIST += start/start16.S
29start16.$(OBJEXT): start/start16.S
30        $(COMPILE.S) $(AM_CPPFLAGS) -DHEADERADDR=$(HEADERADDR) -o $@ $<
31
32start16$(LIB_VARIANT)-elf32.$(OBJEXT): start16.$(OBJEXT)
33        $(LD) -N -T $(top_srcdir)/startup/linkcmds -Ttext $(START16ADDR) -e start16 -nostdlib \
34          --oformat=elf32-i386 \
35        -o $@ $<
36
37start16$(LIB_VARIANT).bin: start16$(LIB_VARIANT)-elf32.$(OBJEXT)
38        $(OBJCOPY) -O binary $< $@
39
40project_lib_DATA += start16$(LIB_VARIANT).bin
41
42dist_project_lib_DATA += startup/linkcmds
43
44EXTRA_PROGRAMS += clock.rel
45CLEANFILES += clock.rel
46clock_rel_SOURCES = clock/ckinit.c clock/rtc.c
47clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
48clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
49
50EXTRA_PROGRAMS += clock_g.rel
51CLEANFILES += clock_g.rel
52clock_g_rel_SOURCES = $(clock_rel_SOURCES)
53clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
54clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
55
56project_lib_DATA += clock$(LIB_VARIANT).rel
57
58include_rtemsdir = $(includedir)/rtems
59include_rtems_HEADERS = console/keyboard.h console/kd.h \
60    console/serial_mouse.h console/ps2_drv.h console/fb_vga.h
61
62EXTRA_PROGRAMS += console.rel
63CLEANFILES += console.rel
64console_rel_SOURCES = console/console.c console/inch.c console/outch.c \
65    console/defkeymap.c console/fb_vga.c console/keyboard.c \
66    console/mouse_parser.c console/pc_keyb.c console/ps2_mouse.c \
67    console/serial_mouse.c console/vgainit.c console/vt.c \
68    console/videoAsm.S ../../i386/shared/comm/uart.c \
69    ../../i386/shared/comm/tty_drv.c
70console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
71console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
72
73EXTRA_PROGRAMS += console_g.rel
74CLEANFILES += console_g.rel
75console_g_rel_SOURCES = $(console_rel_SOURCES)
76console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
77console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
78
79project_lib_DATA += console$(LIB_VARIANT).rel
80
81EXTRA_PROGRAMS += gdb.rel
82CLEANFILES += gdb.rel
83gdb_rel_SOURCES = ../../i386/shared/comm/i386-stub.c \
84    ../../i386/shared/comm/i386-stub-glue.c ../../i386/shared/comm/gdb_glue.c
85gdb_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
86gdb_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
87
88EXTRA_PROGRAMS += gdb_g.rel
89CLEANFILES += gdb_g.rel
90gdb_g_rel_SOURCES = $(gdb_rel_SOURCES)
91gdb_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
92gdb_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
93
94project_lib_DATA += gdb$(LIB_VARIANT).rel
95
96EXTRA_PROGRAMS += gnat.rel
97CLEANFILES += gnat.rel
98gnat_rel_SOURCES = ../../shared/gnatinstallhandler.c
99gnat_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
100gnat_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
101
102EXTRA_PROGRAMS += gnat_g.rel
103CLEANFILES += gnat_g.rel
104gnat_g_rel_SOURCES = $(gnat_rel_SOURCES)
105gnat_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
106gnat_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
107
108project_lib_DATA += gnat$(LIB_VARIANT).rel
109
110EXTRA_PROGRAMS += pci.rel
111CLEANFILES += pci.rel
112pci_rel_SOURCES = ../../i386/shared/pci/pcibios.c
113pci_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
114pci_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
115
116EXTRA_PROGRAMS += pci_g.rel
117CLEANFILES += pci_g.rel
118pci_g_rel_SOURCES = $(pci_rel_SOURCES)
119pci_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
120pci_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
121
122project_lib_DATA += pci$(LIB_VARIANT).rel
123
124EXTRA_PROGRAMS += startup.rel
125CLEANFILES += startup.rel
126startup_rel_SOURCES = ../../shared/bsplibc.c ../../shared/bsppost.c \
127    startup/bspstart.c startup/exit.c ../../i386/shared/irq/idt.c \
128    ../../i386/shared/irq/irq.c ../../i386/shared/irq/irq_init.c \
129    ../../shared/bootcard.c ../../shared/main.c ../../shared/sbrk.c \
130    startup/ldsegs.S ../../i386/shared/irq/irq_asm.S
131startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
132startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
133
134EXTRA_PROGRAMS += startup_g.rel
135CLEANFILES += startup_g.rel
136startup_g_rel_SOURCES = $(startup_rel_SOURCES)
137startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
138startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
139
140project_lib_DATA += startup$(LIB_VARIANT).rel
141
142EXTRA_PROGRAMS += timer.rel
143CLEANFILES += timer.rel
144timer_rel_SOURCES = timer/timer.c timer/timerisr.S
145timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
146timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
147
148EXTRA_PROGRAMS += timer_g.rel
149CLEANFILES += timer_g.rel
150timer_g_rel_SOURCES = $(timer_rel_SOURCES)
151timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
152timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
153
154project_lib_DATA += timer$(LIB_VARIANT).rel
155
156if HAS_NETWORKING
157ne2000_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
158EXTRA_PROGRAMS += ne2000.rel
159CLEANFILES += ne2000.rel
160ne2000_rel_SOURCES = ne2000/ne2000.c
161ne2000_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) \
162    $(ne2000_CPPFLAGS)
163ne2000_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
164
165EXTRA_PROGRAMS += ne2000_g.rel
166CLEANFILES += ne2000_g.rel
167ne2000_g_rel_SOURCES = $(ne2000_rel_SOURCES)
168ne2000_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) $(ne2000_CPPFLAGS)
169ne2000_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
170
171noinst_DATA += ne2000$(LIB_VARIANT).rel
172endif
173
174if HAS_NETWORKING
175# This driver needs to be reworked for the BSD stack.
176# We only install wd80x3.h if HAS_NETWORKING was defined
177include_HEADERS += include/wd80x3.h
178
179wd8003_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
180EXTRA_PROGRAMS += wd8003.rel
181CLEANFILES += wd8003.rel
182wd8003_rel_SOURCES = wd8003/wd8003.c include/wd80x3.h
183wd8003_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) \
184    $(wd8003_CPPFLAGS)
185wd8003_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
186
187EXTRA_PROGRAMS += wd8003_g.rel
188CLEANFILES += wd8003_g.rel
189wd8003_g_rel_SOURCES = $(wd8003_rel_SOURCES)
190wd8003_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) $(wd8003_CPPFLAGS)
191wd8003_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
192
193noinst_DATA += wd8003$(LIB_VARIANT).rel
194endif
195
196if HAS_NETWORKING
1973c509_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
198EXTRA_PROGRAMS += 3c509.rel
199CLEANFILES += 3c509.rel
2003c509_rel_SOURCES = 3c509/3c509.c 3c509/3c509.h 3c509/elink.c 3c509/elink.h
2013c509_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) $(3c509_CPPFLAGS)
2023c509_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
203
204EXTRA_PROGRAMS += 3c509_g.rel
205CLEANFILES += 3c509_g.rel
2063c509_g_rel_SOURCES = $(3c509_rel_SOURCES)
2073c509_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) $(3c509_CPPFLAGS)
2083c509_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
209
210noinst_DATA += 3c509$(LIB_VARIANT).rel
211endif
212
213EXTRA_PROGRAMS += ide.rel
214CLEANFILES += ide.rel
215ide_rel_SOURCES = ide/idecfg.c ide/ide.c
216ide_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V)
217ide_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
218
219EXTRA_PROGRAMS += ide_g.rel
220CLEANFILES += ide_g.rel
221ide_g_rel_SOURCES = $(ide_rel_SOURCES)
222ide_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V)
223ide_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
224
225project_lib_DATA += ide$(LIB_VARIANT).rel
226
227EXTRA_LIBRARIES = libbsp.a
228CLEANFILES += libbsp.a
229libbsp_a_SOURCES =
230libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \
231    console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel ide$(LIB_VARIANT).rel \
232    gdb$(LIB_VARIANT).rel gnat$(LIB_VARIANT).rel pci$(LIB_VARIANT).rel
233# We only build the Network library if HAS_NETWORKING was defined
234# dec21140 is supported via libchip
235if HAS_NETWORKING
236libbsp_a_LIBADD += ne2000$(LIB_VARIANT).rel wd8003$(LIB_VARIANT).rel \
237    3c509$(LIB_VARIANT).rel
238endif
239libbsp_a_LIBADD += ../../../libcpu/i386/cache$(LIB_VARIANT).rel \
240    ../../../libcpu/i386/page$(LIB_VARIANT).rel \
241    ../../../libcpu/i386/score$(LIB_VARIANT).rel
242
243EXTRA_LIBRARIES += libbsp_g.a
244CLEANFILES += libbsp_g.a
245libbsp_g_a_SOURCES = $(libbsp_a_SOURCES)
246libbsp_g_a_LIBADD = $(libbsp_a_LIBADD)
247
248noinst_DATA += libbsp$(LIB_VARIANT).a
249
250all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES)
251
252EXTRA_DIST += HOWTO README.dec21140 STATUS times_i486dx times_p5
253
254PREINSTALL_DIRS =
255TMPINSTALL_FILES =
256
257$(PROJECT_INCLUDE)/crt.h: include/crt.h $(PROJECT_INCLUDE)/$(dirstamp)
258        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/crt.h
259PREINSTALL_FILES += $(PROJECT_INCLUDE)/crt.h
260
261$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
262        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
263PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h
264
265$(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT): start$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp)
266        $(INSTALL_DATA) $< $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT)
267TMPINSTALL_FILES += $(PROJECT_LIB)/start$(LIB_VARIANT).$(OBJEXT)
268
269$(PROJECT_LIB)/start16$(LIB_VARIANT).bin: start16$(LIB_VARIANT).bin $(PROJECT_LIB)/$(dirstamp)
270        $(INSTALL_DATA) $< $(PROJECT_LIB)/start16$(LIB_VARIANT).bin
271TMPINSTALL_FILES += $(PROJECT_LIB)/start16$(LIB_VARIANT).bin
272
273$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp)
274        $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
275TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds
276
277$(PROJECT_LIB)/clock$(LIB_VARIANT).rel: clock$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
278        $(INSTALL_DATA) $< $(PROJECT_LIB)/clock$(LIB_VARIANT).rel
279TMPINSTALL_FILES += $(PROJECT_LIB)/clock$(LIB_VARIANT).rel
280
281$(PROJECT_INCLUDE)/rtems/$(dirstamp):
282        @$(mkdir_p) $(PROJECT_INCLUDE)/rtems
283        @: > $(PROJECT_INCLUDE)/rtems/$(dirstamp)
284PREINSTALL_DIRS += $(PROJECT_INCLUDE)/rtems/$(dirstamp)
285
286$(PROJECT_INCLUDE)/rtems/keyboard.h: console/keyboard.h $(PROJECT_INCLUDE)/rtems/$(dirstamp)
287        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/keyboard.h
288PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/keyboard.h
289
290$(PROJECT_INCLUDE)/rtems/kd.h: console/kd.h $(PROJECT_INCLUDE)/rtems/$(dirstamp)
291        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/kd.h
292PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/kd.h
293
294$(PROJECT_INCLUDE)/rtems/serial_mouse.h: console/serial_mouse.h $(PROJECT_INCLUDE)/rtems/$(dirstamp)
295        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/serial_mouse.h
296PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/serial_mouse.h
297
298$(PROJECT_INCLUDE)/rtems/ps2_drv.h: console/ps2_drv.h $(PROJECT_INCLUDE)/rtems/$(dirstamp)
299        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/ps2_drv.h
300PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/ps2_drv.h
301
302$(PROJECT_INCLUDE)/rtems/fb_vga.h: console/fb_vga.h $(PROJECT_INCLUDE)/rtems/$(dirstamp)
303        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/fb_vga.h
304PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/fb_vga.h
305
306$(PROJECT_LIB)/console$(LIB_VARIANT).rel: console$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
307        $(INSTALL_DATA) $< $(PROJECT_LIB)/console$(LIB_VARIANT).rel
308TMPINSTALL_FILES += $(PROJECT_LIB)/console$(LIB_VARIANT).rel
309
310$(PROJECT_LIB)/gdb$(LIB_VARIANT).rel: gdb$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
311        $(INSTALL_DATA) $< $(PROJECT_LIB)/gdb$(LIB_VARIANT).rel
312TMPINSTALL_FILES += $(PROJECT_LIB)/gdb$(LIB_VARIANT).rel
313
314$(PROJECT_LIB)/gnat$(LIB_VARIANT).rel: gnat$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
315        $(INSTALL_DATA) $< $(PROJECT_LIB)/gnat$(LIB_VARIANT).rel
316TMPINSTALL_FILES += $(PROJECT_LIB)/gnat$(LIB_VARIANT).rel
317
318$(PROJECT_LIB)/pci$(LIB_VARIANT).rel: pci$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
319        $(INSTALL_DATA) $< $(PROJECT_LIB)/pci$(LIB_VARIANT).rel
320TMPINSTALL_FILES += $(PROJECT_LIB)/pci$(LIB_VARIANT).rel
321
322$(PROJECT_LIB)/startup$(LIB_VARIANT).rel: startup$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
323        $(INSTALL_DATA) $< $(PROJECT_LIB)/startup$(LIB_VARIANT).rel
324TMPINSTALL_FILES += $(PROJECT_LIB)/startup$(LIB_VARIANT).rel
325
326$(PROJECT_LIB)/timer$(LIB_VARIANT).rel: timer$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
327        $(INSTALL_DATA) $< $(PROJECT_LIB)/timer$(LIB_VARIANT).rel
328TMPINSTALL_FILES += $(PROJECT_LIB)/timer$(LIB_VARIANT).rel
329
330if HAS_NETWORKING
331$(PROJECT_INCLUDE)/wd80x3.h: include/wd80x3.h $(PROJECT_INCLUDE)/$(dirstamp)
332        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/wd80x3.h
333PREINSTALL_FILES += $(PROJECT_INCLUDE)/wd80x3.h
334endif
335
336$(PROJECT_LIB)/ide$(LIB_VARIANT).rel: ide$(LIB_VARIANT).rel $(PROJECT_LIB)/$(dirstamp)
337        $(INSTALL_DATA) $< $(PROJECT_LIB)/ide$(LIB_VARIANT).rel
338TMPINSTALL_FILES += $(PROJECT_LIB)/ide$(LIB_VARIANT).rel
339
340CLEANFILES += $(PREINSTALL_FILES)
341DISTCLEANFILES = $(PREINSTALL_DIRS)
342CLEANFILES += $(TMPINSTALL_FILES)
343
344include $(top_srcdir)/../../../../automake/local.am
Note: See TracBrowser for help on using the repository browser.