summaryrefslogtreecommitdiff
path: root/packages/dsplink/files/c64xx_5.xx_linux.mk
blob: d0b27d7a552a8a18738d12b1747e6aecc7e23359 (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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
#   ============================================================================
#   @file   c64xx_5.xx_linux.mk
#
#   @path   $(DSPLINK)/make/DspBios/
#
#   @desc   This makefile defines OS specific macros used by MAKE system for
#           the DSP/BIOS version 5.xx for C64XX on Linux.
#
#   @ver    1.50
#   ============================================================================
#   Copyright (c) Texas Instruments Incorporated 2002-2007
#
#   Use of this software is controlled by the terms and conditions found in the
#   license agreement under which this software has been supplied or provided.
#   ============================================================================


ifndef C64XX_5_XX_LINUX_MK

define C64XX_5_XX_LINUX_MK
endef


#   ============================================================================
#   Let the make system know that a specific distribution for the GPP OS
#   is being used.
#   ============================================================================
USE_DISTRIBUTION := 1


#   ============================================================================
#   Set the values of necessary variables to be used for the OS.
#   ============================================================================

#   ----------------------------------------------------------------------------
#   Base directory for the DSP OS
#   ----------------------------------------------------------------------------
BASE_INSTALL    := /opt/ti-tools
BASE_SABIOS     := $(BASE_INSTALL)/bios
BASE_BUILDOS    := $(BASE_SABIOS)/packages/ti/bios

#   ----------------------------------------------------------------------------
#   Base directory for the XDC tools
#   ----------------------------------------------------------------------------
XDCTOOLS_DIR    := $(BASE_SABIOS)/xdctools

#   ----------------------------------------------------------------------------
#   Base for code generation tools - compiler, linker, archiver etc.
#   ----------------------------------------------------------------------------
BASE_CGTOOLS    := $(BASE_INSTALL)/c6000/cgtools
BASE_CGTOOLSBIN := $(BASE_CGTOOLS)/bin

#   ----------------------------------------------------------------------------
#   Base for TCONF, platform files and dependent components
#   ----------------------------------------------------------------------------
BASE_TCONF      := $(XDCTOOLS_DIR)
BASE_PLATFORMS  := $(BASE_SABIOS)/packages
BASE_CSL        := $(BASE_INSTALL)/c6000/csl
BASE_PSL        := $(BASE_SABIOS)/packages/ti/psl
BASE_RTDX       := $(BASE_SABIOS)/packages/ti/rtdx


#   ----------------------------------------------------------------------------
#   Base directory for include files
#   ----------------------------------------------------------------------------
BASE_OSINC      := $(BASE_BUILDOS)/include
BASE_CGTOOLSINC := $(BASE_CGTOOLS)/include
BASE_RTDXINC    := $(BASE_RTDX)/include/c6000
BASE_PSLINC     := $(BASE_PSL)/include
BASE_CSLINC     := $(BASE_CSL)/include

OSINC_GENERIC   := $(BASE_OSINC)
OSINC_PLATFORM  := $(BASE_CGTOOLSINC) $(BASE_CSLINC)  $(BASE_RTDXINC)  $(BASE_PSLINC)


ifeq ($(PLATFORM), morpheus_dev)
OSINC_PLATFORM  += $(BASE_INSTALL)/boards/evmdm642/include
endif # ifeq ($(PLATFORM), morpheus_dev)

ifneq ("$(VARIANT)", "")
OSINC_VARIANT   := $(BASE_OSINC)
endif


#   ----------------------------------------------------------------------------
#   Base directory for libraries
#   ----------------------------------------------------------------------------
BASE_OSLIB      := $(BASE_BUILDOS)/lib
BASE_CGTOOLSLIB := $(BASE_CGTOOLS)/lib
BASE_RTDXLIB    := $(BASE_RTDX)/lib/c6000
BASE_PSLLIB     := $(BASE_PSL)/lib
BASE_CSLLIB     := $(BASE_CSL)/lib

OSLIB_GENERIC   := $(BASE_OSLIB)
OSLIB_PLATFORM  := $(BASE_CGTOOLSLIB) $(BASE_RTDXLIB) \
                   $(BASE_PSLLIB) $(BASE_CSLLIB)

ifeq ($(PLATFORM), morpheus_dev)
OSLIB_PLATFORM  += $(BASE_INSTALL)/boards/evmdm642/lib
endif # ifeq ($(PLATFORM), morpheus_dev)

ifeq ($(PLATFORM), DM642_PCI)
OSLIB_PLATFORM  += $(BASE_INSTALL)/boards/evmdm642/lib
endif # ifeq ($(PLATFORM), DM642_PCI)

ifneq ("$(VARIANT)", "")
OSLIB_VARIANT   := $(BASE_OSLIB)
endif


#   ============================================================================
#   COMPILER
#   ============================================================================

#   ----------------------------------------------------------------------------
#   Name of the compiler
#   ----------------------------------------------------------------------------
COMPILER        := $(BASE_CGTOOLSBIN)/cl6x

#   ----------------------------------------------------------------------------
#   Command line switches used by the compiler
#
#   CC_SW_DEF       Command line defines
#   CC_SW_INC       Search path for header files
#   CC_SW_OBJ       Object file directory
#   CC_SW_DEB       Include debug information
#   CC_SW_REL       Release build
#   ----------------------------------------------------------------------------
CC_SW_DEF       := -d
CC_SW_INC       := -I
CC_SW_OBJ       := -fr
CC_SW_DEB       := -g -d"_DEBUG"
CC_SW_REL       := -o3

#   ----------------------------------------------------------------------------
#   Standard flags for the compiler
#   ----------------------------------------------------------------------------
STD_CC_FLAGS    := -q -pdr -pdv -pden -ml3 -mv6400 -d"CHIP_DM642"

#   ----------------------------------------------------------------------------
#   Standard flags for the compiler when building an executable
#   ----------------------------------------------------------------------------
EXE_CC_FLAGS    :=

#   ----------------------------------------------------------------------------
#   Flags for the compiler when building an archive
#   ----------------------------------------------------------------------------
ARC_CC_FLAGS    :=

#   ----------------------------------------------------------------------------
#   Standard definitions for the compiler
#   ----------------------------------------------------------------------------
STD_CC_DEFNS    :=


#   ============================================================================
#   ARCHIVER
#   ============================================================================
ARCHIVER        := $(BASE_CGTOOLSBIN)/ar6x

#   ----------------------------------------------------------------------------
#   Standard flags for the archiver
#   ----------------------------------------------------------------------------
STD_AR_FLAGS    := -r

#   ----------------------------------------------------------------------------
#   Archiver flags for extracting object files
#   ----------------------------------------------------------------------------
EXT_AR_FLAGS    := xq


#   ============================================================================
#   LINKER
#   ============================================================================
LINKER          := $(BASE_CGTOOLSBIN)/cl6x -z

#   ----------------------------------------------------------------------------
#   Command line switches used by the linker
#
#   LD_SW_INC       Search path for libraries
#   LD_SW_LIB       Include library name
#   LD_SW_OUT       Output file name
#   LD_SW_MAP       Map file name
#   LD_SW_RELOC     Generate relocateable output
#   ----------------------------------------------------------------------------
LD_SW_INC       := -i
LD_SW_LIB       := -l
LD_SW_OUT       := -o
LD_SW_MAP       := -m
LD_SW_RELOC     := -r

#   ----------------------------------------------------------------------------
#   Standard flags for the linker
#   ----------------------------------------------------------------------------
STD_LD_FLAGS    := -c  -x

#   ----------------------------------------------------------------------------
#   Flags for the linker when building an executable
#   ----------------------------------------------------------------------------
EXE_LD_FLAGS    :=

ifeq ($(PLATFORM), morpheus_dev)
EXE_LD_FLAGS    += $(LD_SW_LIB)"cslDM642.lib"
EXE_LD_FLAGS    += $(LD_SW_LIB)"morpheus.lib"
endif # ifeq ($(PLATFORM), morpheus_dev)

ifeq ($(PLATFORM), DM642_PCI)
EXE_LD_FLAGS    += $(LD_SW_LIB)"cslDM642.lib"
endif # ifeq ($(PLATFORM), DM642_PCI)

#   ============================================================================
#   TCONF
#   ============================================================================
TCONF           := $(BASE_TCONF)/tconf


#   ----------------------------------------------------------------------------
#   Standard flags for TCONF
#   ----------------------------------------------------------------------------
STD_TCF_FLAGS   :=


endif   # ifndef C64XX_5_XX_LINUX_MK