source: rtems/c/src/lib/libbsp/i386/pc386/Makefile.am @ 5e368e84

5
Last change on this file since 5e368e84 was 5e368e84, checked in by Joel Sherrill <joel@…>, on 03/11/16 at 22:07:35

pc386: Fix linker usage issues with -r and function sections

closes #2638.

  • Property mode set to 100644
File size: 7.9 KB
RevLine 
[df49c60]1##
2##
[5fa14794]3
[fe8bc62f]4ACLOCAL_AMFLAGS = -I ../../../../aclocal
[5fa14794]5
[b3c7b2d8]6# FIXME: We must not include *.cfg
7include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
[14023b45]8
[fc364fe]9CLEANFILES =
10
[b3c7b2d8]11include $(top_srcdir)/../../../../automake/compile.am
12
[a1bc0a15]13include_bspdir = $(includedir)/bsp
14
[d7fb9f8]15dist_project_lib_DATA = bsp_specs
16
17include_HEADERS = include/bsp.h
[3defec6]18include_HEADERS += include/tm27.h
[4cbf22a]19
[d7fb9f8]20nodist_include_HEADERS = include/bspopts.h
[a1bc0a15]21nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
[4cbf22a]22DISTCLEANFILES = include/bspopts.h
[d7fb9f8]23
[4cbf22a]24noinst_PROGRAMS =
[5fa14794]25
[14023b45]26SUBDIRS = . tools
[d1b210cd]27
[8d0913b8]28include_bsp_HEADERS  = ../../i386/shared/irq/irq.h
29include_bsp_HEADERS += ../../i386/shared/irq/irq_asm.h
30include_bsp_HEADERS += ../../i386/shared/comm/tty_drv.h
[586c86c7]31include_bsp_HEADERS += ../../i386/shared/realmode_int/realmode_int.h
[8d0913b8]32include_bsp_HEADERS += ../../shared/include/irq-generic.h
33include_bsp_HEADERS += ../../shared/include/irq-info.h
34include_bsp_HEADERS += console/rtd316.h
35include_bsp_HEADERS += console/exar17d15x.h
[ec494ff]36include_bsp_HEADERS += include/tblsizes.h
[8d62d94a]37
[8a7ed82]38if HAS_SMP
39include_bsp_HEADERS += ../../i386/shared/irq/apic.h
40include_bsp_HEADERS += ../../i386/shared/smp/smp-imps.h
41endif
42
[d1b210cd]43include_HEADERS += include/crt.h
[14023b45]44nodist_include_HEADERS += ../../shared/include/coverhd.h
[d1b210cd]45
[c5a7f1a9]46noinst_LIBRARIES = libbspstart.a
47libbspstart_a_SOURCES = start/start.S
[4cbf22a]48project_lib_DATA = start.$(OBJEXT)
[b3c7b2d8]49
[c5a7f1a9]50EXTRA_DIST = start/start16.S
[14023b45]51start16.$(OBJEXT): start/start16.S
[d7fb9f8]52        $(CPPASCOMPILE) $(AM_CPPFLAGS) -DHEADERADDR=$(HEADERADDR) -o $@ -c $<
[b3c7b2d8]53
[4cbf22a]54start16-elf32.$(OBJEXT): start16.$(OBJEXT)
[b3c7b2d8]55        $(LD) -N -T $(top_srcdir)/startup/linkcmds -Ttext $(START16ADDR) -e start16 -nostdlib \
56          --oformat=elf32-i386 \
57        -o $@ $<
58
[4cbf22a]59start16.bin: start16-elf32.$(OBJEXT)
[b3c7b2d8]60        $(OBJCOPY) -O binary $< $@
[4cbf22a]61CLEANFILES += start16.bin
[b3c7b2d8]62
[4cbf22a]63project_lib_DATA += start16.bin
[b3c7b2d8]64
[14023b45]65dist_project_lib_DATA += startup/linkcmds
[d1b210cd]66
[92b338c0]67noinst_LIBRARIES += libbsp.a
[64eb0c7]68libbsp_a_SOURCES =
[e94666d]69
[64eb0c7]70# clock
[7cdabc49]71if RTEMS_EDISON
72libbsp_a_SOURCES += ../../shared/clock_driver_simidle.c
73else
[8d0913b8]74libbsp_a_SOURCES += clock/ckinit.c
[7cdabc49]75endif
76libbsp_a_SOURCES += ../../shared/clockdrv_shell.h
[8d0913b8]77libbsp_a_SOURCES += clock/todcfg.c
78libbsp_a_SOURCES += ../../shared/tod.c
[d1b210cd]79
[14023b45]80include_rtemsdir = $(includedir)/rtems
[607c854]81include_rtems_HEADERS  =
82
83if RTEMS_VGA
84include_rtems_HEADERS += console/keyboard.h
[8d0913b8]85include_rtems_HEADERS += console/kd.h
86include_rtems_HEADERS += console/ps2_drv.h
87include_rtems_HEADERS += console/vgacons.h
88libbsp_a_SOURCES += console/inch.c
89libbsp_a_SOURCES += console/outch.c
90libbsp_a_SOURCES += console/defkeymap.c
91libbsp_a_SOURCES += console/keyboard.c
92libbsp_a_SOURCES += console/pc_keyb.c
93libbsp_a_SOURCES += console/ps2_mouse.c
94libbsp_a_SOURCES += console/vgainit.c
95libbsp_a_SOURCES += console/vt.c
96libbsp_a_SOURCES += console/videoAsm.S
97libbsp_a_SOURCES += console/kbd_parser.c
98libbsp_a_SOURCES += console/vgacons.c
[56399c3b]99include_bsp_HEADERS += console/fb_default_mode.h
[6f793108]100if USE_VGA
101libbsp_a_SOURCES += console/fb_vga.c
102endif
103if USE_CIRRUS_GD5446
104libbsp_a_SOURCES += console/fb_cirrus.c
105endif
[067da5c]106if USE_VBE_RM
[c5a74946]107include_bsp_HEADERS += include/vbe3.h
108include_HEADERS += include/edid.h
[067da5c]109include_bsp_HEADERS += include/fb_vesa.h
110libbsp_a_SOURCES += console/fb_vesa_rm.c
111endif
[607c854]112endif
113
114# console (non-graphics support)
[7cdabc49]115if RTEMS_EDISON
116libbsp_a_SOURCES += console/console_edison.c
117endif
[607c854]118include_HEADERS += ../../i386/shared/comm/i386_io.h
[7cdabc49]119include_rtems_HEADERS += ../../shared/console_private.h
[607c854]120libbsp_a_SOURCES += console/serial_mouse_config.c
121libbsp_a_SOURCES += ../../i386/shared/comm/uart.c
122libbsp_a_SOURCES += ../../i386/shared/comm/tty_drv.c
123libbsp_a_SOURCES += ../../i386/shared/realmode_int/realmode_int.c
124libbsp_a_SOURCES += ../../shared/console.c
125libbsp_a_SOURCES += console/console_select.c
126libbsp_a_SOURCES += ../../shared/console_read.c
127libbsp_a_SOURCES += ../../shared/console_write.c
128libbsp_a_SOURCES += console/console_control.c
129libbsp_a_SOURCES += console/conscfg.c
130libbsp_a_SOURCES += console/printk_support.c
131libbsp_a_SOURCES += console/exar17d15x.c
132libbsp_a_SOURCES += console/rtd316.c
[356b2c23]133libbsp_a_SOURCES += console/uart_bus_pci.c
[14023b45]134
[64eb0c7]135# gdb
[8d0913b8]136libbsp_a_SOURCES += ../../i386/shared/comm/i386-stub.c
137libbsp_a_SOURCES += ../../i386/shared/comm/i386-stub-glue.c
138libbsp_a_SOURCES += ../../i386/shared/comm/gdb_glue.c
[74f89dc]139
[64eb0c7]140# gnat
141libbsp_a_SOURCES += ../../shared/gnatinstallhandler.c
[74f89dc]142
[64eb0c7]143# pci
[12c9dc8f]144libbsp_a_SOURCES += ../../i386/shared/pci/pcibios.c
[f770fcb]145libbsp_a_SOURCES += ../../i386/shared/pci/pci_io.c
146libbsp_a_SOURCES += ../../shared/pci/pci_bus_count.c
147libbsp_a_SOURCES += ../../shared/pci/pci_find_device.c
[74f89dc]148
[8d62d94a]149include_HEADERS += ../../i386/shared/comm/uart.h
[64eb0c7]150# startup
[8d0913b8]151libbsp_a_SOURCES += ../../shared/bsppredriverhook.c
[505dc61]152libbsp_a_SOURCES += startup/bsp_fatal_halt.c
[8d0913b8]153libbsp_a_SOURCES += startup/bspgetworkarea.c
[fd05a05]154libbsp_a_SOURCES += startup/bspidle.S
[8d0913b8]155libbsp_a_SOURCES += startup/bspstart.c
156libbsp_a_SOURCES += startup/bspcmdline.c
157libbsp_a_SOURCES += ../../shared/bspclean.c
158libbsp_a_SOURCES += startup/bspreset.c
159libbsp_a_SOURCES += ../../i386/shared/irq/idt.c
160libbsp_a_SOURCES += ../../i386/shared/irq/irq.c
161libbsp_a_SOURCES += ../../i386/shared/irq/irq_init.c
162libbsp_a_SOURCES += ../../shared/bootcard.c
163libbsp_a_SOURCES += ../../shared/sbrk.c
164libbsp_a_SOURCES += startup/ldsegs.S
165libbsp_a_SOURCES += ../../i386/shared/irq/irq_asm.S
166libbsp_a_SOURCES += ../../shared/src/irq-default-handler.c
167libbsp_a_SOURCES += ../../shared/src/irq-generic.c
168libbsp_a_SOURCES += ../../shared/src/irq-legacy.c
169libbsp_a_SOURCES += ../../shared/src/irq-info.c
170libbsp_a_SOURCES += ../../shared/src/irq-shell.c
171libbsp_a_SOURCES += ../../shared/src/irq-server.c
[14023b45]172
[64eb0c7]173# timer
174libbsp_a_SOURCES += timer/timer.c timer/timerisr.S
[ed8206b]175
[93546b8]176if HAS_IDE
[64eb0c7]177# ide
[93546b8]178libbsp_a_SOURCES += ide/ide.c
179libbsp_a_SOURCES += ide/idecfg.c
180endif
[14023b45]181
[20546ace]182if HAS_SMP
[8a7ed82]183libbsp_a_SOURCES += ../../i386/shared/smp/getcpuid.c
184libbsp_a_SOURCES += ../../i386/shared/smp/smp-imps.c
185
186project_lib_DATA += appstart.$(OBJEXT)
187appcpustart.$(OBJEXT): start/start16.S
188        $(CPPASCOMPILE) $(AM_CPPFLAGS) -DSMP_SECONDARY_CORE -o $@ -c $<
189
190appstart.$(OBJEXT): appcpustart.$(OBJEXT)
191        $(LD) -N -T $(top_srcdir)/startup/linkcmds \
192            -Ttext 0x70000 -e app_processor_start -nostdlib \
193            -o appstart_tmp.exe $<
194        $(OBJCOPY) -O binary appstart_tmp.exe appstart.bin
195        $(OBJCOPY) -I binary -O elf32-i386 -B i386 appstart.bin $@
[20546ace]196endif
197
[d1b210cd]198if HAS_NETWORKING
[14023b45]199ne2000_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
[4cbf22a]200noinst_PROGRAMS += ne2000.rel
[14023b45]201ne2000_rel_SOURCES = ne2000/ne2000.c
[9d83387b]202ne2000_rel_CPPFLAGS = $(AM_CPPFLAGS) $(ne2000_CPPFLAGS)
[14023b45]203ne2000_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
[5e368e84]204ne2000_rel_LDFLAGS += -Wl,--undefined=rtems_ne_driver_attach
[14023b45]205endif
206
207if HAS_NETWORKING
208# This driver needs to be reworked for the BSD stack.
209# We only install wd80x3.h if HAS_NETWORKING was defined
210include_HEADERS += include/wd80x3.h
211
212wd8003_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
[4cbf22a]213noinst_PROGRAMS += wd8003.rel
[8d0913b8]214wd8003_rel_SOURCES = wd8003/wd8003.c
215wd8003_rel_SOURCES += include/wd80x3.h
[9d83387b]216wd8003_rel_CPPFLAGS = $(AM_CPPFLAGS) $(wd8003_CPPFLAGS)
[14023b45]217wd8003_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
[5e368e84]218wd8003_rel_LDFLAGS += -Wl,--undefined=rtems_wd_driver_attach
[d1b210cd]219endif
220
[14023b45]221if HAS_NETWORKING
2223c509_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
[4cbf22a]223noinst_PROGRAMS += 3c509.rel
[8d0913b8]2243c509_rel_SOURCES = 3c509/3c509.c
2253c509_rel_SOURCES += 3c509/3c509.h
2263c509_rel_SOURCES += 3c509/elink.c
2273c509_rel_SOURCES += 3c509/elink.h
[844609f9]2283c509_rel_CPPFLAGS = $(AM_CPPFLAGS) $(3c509_CPPFLAGS)
[14023b45]2293c509_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
[5e368e84]2303c509_rel_LDFLAGS += -Wl,--undefined=rtems_3c509_driver_attach
2313c509_rel_LDFLAGS += -Wl,--undefined=ep_board
[14023b45]232endif
233
[8d0913b8]234libbsp_a_LIBADD = ../../../libcpu/@RTEMS_CPU@/cache.rel
235libbsp_a_LIBADD += ../../../libcpu/@RTEMS_CPU@/page.rel
236libbsp_a_LIBADD += ../../../libcpu/@RTEMS_CPU@/score.rel
[8a7ed82]237
238if HAS_SMP
239libbsp_a_LIBADD += appstart.$(OBJEXT)
240endif
241
[14023b45]242# We only build the Network library if HAS_NETWORKING was defined
243# dec21140 is supported via libchip
244if HAS_NETWORKING
[8d0913b8]245libbsp_a_LIBADD += ne2000.rel
246libbsp_a_LIBADD += wd8003.rel
247libbsp_a_LIBADD += 3c509.rel
[14023b45]248endif
[ed8206b]249
[8d0913b8]250EXTRA_DIST += HOWTO
251EXTRA_DIST += README.dec21140
252EXTRA_DIST += STATUS
253EXTRA_DIST += times_i486dx
254EXTRA_DIST += times_p5
[14023b45]255
[5c7f274]256include $(srcdir)/preinstall.am
[7842090b]257include $(top_srcdir)/../../../../automake/local.am
Note: See TracBrowser for help on using the repository browser.