Makefile.leon.rtems_posix 2.24 KB
Newer Older
jdelange's avatar
jdelange committed
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
## This file is a part of PolyORB-HI-C software.
## It sets some variables useful to compile generated
## code to the LEON platform with the RTEMS operating system.

## To use and compile RTEMS, visit http://www.rtems.com

## This file has been built for RTEMS 4.8.0



define bsp-post-link
   $(NM) -g -n $@ > $(basename $@).num
   $(SIZE) $@
endef


MANAGERS = all

CC                           = sparc-rtems-gcc
CPP                          = sparc-rtems-g++

GPROF                        = sparc-rtems-gprof

TARGET_SOURCES               = 
#TARGET_TRANSPORT_SOURCES     = $(RUNTIME_PATH)/config/leon-rtems/config.c
TARGET_TRANSPORT_SOURCES     = 

TARGET_CFLAGS                = -DRTEMS_POSIX -DLEON_RTEMS $(GCC_GENERIC_FLAGS)
TARGET_INCLUDE               = -I $(RUNTIME_PATH)/config/leon-rtems/

LD                           = sparc-rtems-ld
jdelange's avatar
jdelange committed
32
33
TARGET_LDFLAGS               = -lrtemsbsp -lc -lm 
EXTERNAL_OBJECTS             += -L$(RUNTIME_PATH)/libs/leon/ -llua -lm
jdelange's avatar
jdelange committed
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

RTEMS410=$(shell grep VERSION $$RTEMS_MAKEFILE_PATH_LEON/lib/include/rtems/score/cpuopts.h|grep 4.10)
RTEMS411=$(shell grep VERSION $$RTEMS_MAKEFILE_PATH_LEON/lib/include/rtems/score/cpuopts.h|grep 4.11)
RTEMS48=$(shell grep VERSION $$RTEMS_MAKEFILE_PATH_LEON/lib/include/rtems/score/cpuopts.h|grep 4.8)

ifneq ($(RTEMS48),)
   TARGET_CFLAGS                +=  -DRTEMS_VERSION=48
endif

ifneq ($(RTEMS411),)
   TARGET_CFLAGS                +=  -DRTEMS_VERSION=411
endif

ifneq ($(RTEMS410),)
   TARGET_CFLAGS                +=  -DRTEMS_VERSION=410
endif

jdelange's avatar
jdelange committed
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
target-clean:

-include $(RTEMS_MAKEFILE_PATH)/Makefile.inc

-include $(RTEMS_CUSTOM)
-include $(PROJECT_ROOT)/make/leaf.cfg

define bsp-link-c
   $(LINK.c) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
      -o $(BINARY) $(LINK_OBJS) $(LINK_LIBS)
endef

define bsp-link-cxx
   $(LINK.cc) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
      -o $(BINARY) $(LINK_OBJS) $(LINK_LIBS)
endef

ifdef USE_GPROF
TARGET_LDFLAGS+=-Wl,--wrap,Clock_isr -pg
EXTERNAL_OBJECTS+=po_hi_gprof_rtems_leon.o

target-objects:
	$(CC) $(INCLUDE) $(TARGET_INCLUDE) -D__PO_HI_USE_GPROF -Wall -c -o po_hi_gprof_rtems_leon.o $(RUNTIME_PATH)/src/po_hi_gprof_rtems_leon.c
else
target-objects:
endif

jdelange's avatar
jdelange committed
78
79
LINK_LIBS+=-lm

jdelange's avatar
jdelange committed
80
81
82
83
emulate-qemu: $(BINARY)
	qemu-system-sparc -M at697 -nographic -kernel $(BINARY).exe