]> rtime.felk.cvut.cz Git - arc.git/blob - scripts/cc_diab.mk
Merge branch 'mikulka' of git@rtime.felk.cvut.cz:arc into mikulka
[arc.git] / scripts / cc_diab.mk
1 \r
2 # Diab versions and "features"\r
3 # 5.6.0.0->5.9.0.0  \r
4 #  - Can't handle initializtion with a depth more that 2,e.g. .NBYTESu.B.SMLOE = 1;\r
5 #    (in code this works fine)\r
6 #\r
7 #\r
8 \r
9 DIAB_COMPILE ?= /c/devtools/WindRiver/diab/5.9.0.0/WIN32\r
10 DIAB_BIN = $(DIAB_COMPILE)/bin\r
11 \r
12 # ---------------------------------------------------------------------------\r
13 # Compiler\r
14 # CCFLAGS - compile flags\r
15 \r
16 CC      =       $(DIAB_BIN)/dcc \r
17 ifeq ($(OPT_DEBUG),y)\r
18 cflags-y += -O0\r
19 else\r
20 #cflags-y += -Os\r
21 endif\r
22 \r
23 cflags-y += -XO\r
24 \r
25 #TARGET = -tPPCE200Z1VFN:simple\r
26 TARGET = -tPPCVLEFS:simple\r
27 cflags-y += $(TARGET) \r
28 \r
29 # Treat warning as error\r
30 cflags-y += -Werror\r
31 \r
32 #cflags-y               += -c \r
33 #cflags-y               += -fno-common\r
34 #cflags-y               += -std=gnu99\r
35 cflags-y                += -Xc-new              # const const problems\r
36 #cflags-y               += -Xdialect-c99\r
37 cflags-y                += -Xsuppress-warnings\r
38 cflags-y                += -Xkeywords=0x4               # Enable inline keywork\r
39 \r
40 # Generate dependencies\r
41 #cflags-y               += -MMD\r
42 \r
43 # Warnings\r
44 cflags-y          += -Wall\r
45 \r
46 # Conformance\r
47 #cflags-y          += -fno-strict-aliasing\r
48 #cflags-y          += -fno-builtin\r
49 \r
50 # Get machine cflags\r
51 #cflags-y               += $(cflags-$(ARCH))\r
52 \r
53 CFLAGS = $(cflags-y) $(cflags-yy)\r
54 \r
55 CCOUT           = -o $@ \r
56 \r
57 # ---------------------------------------------------------------------------\r
58 # Preprocessor\r
59 \r
60 CPP = $(CC) -P\r
61 CPPOUT = -o \r
62 CPP_ASM_FLAGS = $(TARGET)\r
63 CPP_ASM_FLAGS += -Xpreprocess-assembly\r
64 #CPP_ASM_FLAGS += -Xkeep-assembly-file\r
65 \r
66 # ---------------------------------------------------------------------------\r
67 # Linker\r
68 #\r
69 # LDFLAGS               - linker flags\r
70 # LDOUT                 - How to Generate linker output file\r
71 # LDMAPFILE     - How to generate mapfile \r
72 # ldcmdfile-y   - link cmd file\r
73 # libpath-y             - lib paths\r
74 # libitem-y             - the libs with path\r
75 # lib-y                 - the libs, without path\r
76 \r
77 \r
78 LD = $(DIAB_BIN)/dld.exe\r
79 \r
80 LDFLAGS += $(TARGET)\r
81 LDFLAGS += -m6\r
82 \r
83 lib-y += -lm\r
84 lib-y += -lc\r
85 lib-y += -limpl\r
86 lib-y += -li\r
87 \r
88 \r
89 LDOUT           = -o $@\r
90 TE = elf\r
91 LDMAPFILE = > $(subst .elf,.map, $@)\r
92 \r
93 libitem-y += $(libitem-yy)\r
94 \r
95 LDFLAGS += $(ldflags-y)\r
96 \r
97 # ---------------------------------------------------------------------------\r
98 # Assembler\r
99 # ---------------------------------------------------------------------------\r
100 AS      =       $(DIAB_BIN)/das\r
101 ASFLAGS += -Xsemi-is-newline\r
102 ASFLAGS += $(TARGET) \r
103 ASOUT = -o $@\r
104 \r
105 # ---------------------------------------------------------------------------\r
106 \r
107 OBJCOPY                 = $(tprefix-y)objcopy\r
108 \r
109 # ---------------------------------------------------------------------------\r
110 NM              = $(tprefix-y)nm\r
111 \r
112 \r
113 # ---------------------------------------------------------------------------\r
114 # Archiver\r
115 \r
116 AR      =       $(tprefix-y)ar\r
117 AROUT   = $@\r
118 \r
119 # ---------------------------------------------------------------------------\r
120 # PCLint\r
121 \r
122 PCLINT_COMPILER_MAKEFILE      = $(PCLINT_FILES_DIR)/co-gcc.mak GCC_BIN=$(CC)\r
123 PCLINT_COMPILER_SETTINGS_FILE = $(PCLINT_FILES_DIR)/co-gcc.lnt\r