]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/build/makerules/rules_ti_cgt_arm.mk
PDK-6948: Board: Added ICSS MII pinmux support for am64x evm
[processor-sdk/pdk.git] / packages / ti / build / makerules / rules_ti_cgt_arm.mk
1 #
2 # Copyright (c) 2013-2016, Texas Instruments Incorporated
3 # All rights reserved.
4 #
5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions
7 # are met:
8 #
9 # *  Redistributions of source code must retain the above copyright
10 #    notice, this list of conditions and the following disclaimer.
11 #
12 # *  Redistributions in binary form must reproduce the above copyright
13 #    notice, this list of conditions and the following disclaimer in the
14 #    documentation and/or other materials provided with the distribution.
15 #
16 # *  Neither the name of Texas Instruments Incorporated nor the names of
17 #    its contributors may be used to endorse or promote products derived
18 #    from this software without specific prior written permission.
19 #
20 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 #
33 # Filename: rules_ti_cgt_arm.mk
34 #
35 # Make rules for TI ARM CGT - This file has all the common rules and defines
36 # required for Cortex-M4/R5F ISA
37 #
38 # This file needs to change when:
39 #     1. Code generation tool chain changes (currently it uses TI ARM CGT)
40 #     2. Internal switches (which are normally not touched) has to change
41 #     3. XDC specific switches change
42 #     4. a rule common for M4/R5F ISA has to be added or modified
44 # Set compiler/archiver/linker commands and include paths
45 ifeq ($(CGT_ISA),$(filter $(CGT_ISA), M4F))
46 CGT_ISA_PATH_PRFX = M4
47 else
48 CGT_ISA_PATH_PRFX = $(CGT_ISA)
49 endif
51 CODEGEN_INCLUDE = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/include
52 CC = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/bin/armcl
53 AR = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/bin/armar
54 LNK = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/bin/armcl
55 STRP = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/bin/armstrip
56 SIZE = $(TOOLCHAIN_PATH_$(CGT_ISA_PATH_PRFX))/bin/armofd
58 # Derive a part of RTS Library name based on ENDIAN: little/big
59 ifeq ($(ENDIAN),little)
60   RTSLIB_ENDIAN = le
61 else
62   RTSLIB_ENDIAN = be
63 endif
65 # Derive compiler switch and part of RTS Library name based on FORMAT: COFF/ELF
66 ifeq ($(FORMAT),COFF)
67   CSWITCH_FORMAT = ti_arm9_abi
68   RTSLIB_FORMAT = tiarm9
69 endif
70 ifeq ($(FORMAT),ELF)
71   CSWITCH_FORMAT = eabi
72   RTSLIB_FORMAT = eabi
73 endif
75 LNKFLAGS_INTERNAL_COMMON += -O4
76 LNKFLAGS_INTERNAL_COMMON += --run_linker
79 # Internal CFLAGS - normally doesn't change
80 ifeq ($(CGT_ISA),$(filter $(CGT_ISA), M4 R5 M3))
81   CFLAGS_INTERNAL = -c -qq -pdsw225 --endian=$(ENDIAN) -mv7$(CGT_ISA) --abi=$(CSWITCH_FORMAT) -eo.$(OBJEXT) -ea.$(ASMEXT) --symdebug:dwarf --embed_inline_assembly
82   ifeq ($(CGT_ISA),$(filter $(CGT_ISA), R5))
83     CFLAGS_INTERNAL += --float_support=vfpv3d16
84     # Enabling thumb2 mode 
85     CFLAGS_INTERNAL += --code_state=16
86   else
87     CFLAGS_INTERNAL += --float_support=vfplib
88   endif
89 else ifeq ($(CGT_ISA), Arm9)
90   CFLAGS_INTERNAL = -c -qq -pdsw225 --endian=$(ENDIAN) -mv5e --float_support=vfplib --abi=$(CSWITCH_FORMAT) -eo.$(OBJEXT) -ea.$(ASMEXT) --symdebug:dwarf --embed_inline_assembly
91 endif
93 # Reset the CFLAGS_INTERNAL flag for M4F
94 ifeq ($(CGT_ISA), M4F)
95   CFLAGS_INTERNAL = -c -qq -pdsw225 --endian=$(ENDIAN) -mv7M4 --abi=$(CSWITCH_FORMAT) -eo.$(OBJEXT) -ea.$(ASMEXT) --symdebug:dwarf --embed_inline_assembly
96   CFLAGS_INTERNAL += --float_support=FPv4SPD16
97 endif
99 ifeq ($(TREAT_WARNINGS_AS_ERROR), yes)
100   CFLAGS_INTERNAL += --emit_warnings_as_errors
101   LNKFLAGS_INTERNAL_COMMON += --emit_warnings_as_errors
102 endif
103 CFLAGS_DIROPTS = -fr=$(OBJDIR) -fs=$(OBJDIR)
105 ifeq ($(CGT_ISA),$(filter $(CGT_ISA),R5))
107 ifeq ($(XDC_DISABLE_THUMB_MODE),yes)
108  XDC_TARGET_NAME=$(CGT_ISA)F
109 else
110  XDC_TARGET_NAME=$(CGT_ISA)Ft
111 endif
113  ifneq ($(EXTERNAL_LNKCMD_FILE_LOCAL),)
114  EXTERNAL_LNKCMD_FILE = $(EXTERNAL_LNKCMD_FILE_LOCAL)
115  else
116  EXTERNAL_LNKCMD_FILE = $(CONFIG_BLD_LNK_r5f)
117  endif 
118 else
119  XDC_TARGET_NAME=$(CGT_ISA)
120 endif
122 # Reset the XDC_TARGET_NAME for M4F
123 ifeq ($(CGT_ISA),$(filter $(CGT_ISA),M4F))
124  XDC_TARGET_NAME=M4
126  ifneq ($(EXTERNAL_LNKCMD_FILE_LOCAL),)
127  EXTERNAL_LNKCMD_FILE = $(EXTERNAL_LNKCMD_FILE_LOCAL)
128  else
129  EXTERNAL_LNKCMD_FILE = $(CONFIG_BLD_LNK_m4f)
130  endif 
131 endif
133 XDC_HFILE_NAME = $(basename $(notdir $(XDC_CFG_FILE_$(CORE))))
135 ifneq ($(PEXT_BIOS),)
136 XDC_HFILE_EXT = $(PEXT_BIOS)
137 else
138 XDC_HFILE_EXT = p$(FORMAT_EXT)$(CGT_EXT)
139 endif
141 # CFLAGS based on profile selected
142 ifeq ($(BUILD_PROFILE_$(CORE)), debug)
143  LNKFLAGS_INTERNAL_BUILD_PROFILE =
144  CFLAGS_XDCINTERNAL = -Dxdc_target_name__=$(XDC_TARGET_NAME) -Dxdc_target_types__=ti/targets/arm/elf/std.h -Dxdc_bld__profile_debug
145  CFLAGS_INTERNAL += -D_DEBUG_=1
146  ifndef MODULE_NAME
147   CFLAGS_XDCINTERNAL += -Dxdc_cfg__header__='$(CONFIGURO_DIR)/package/cfg/$(XDC_HFILE_NAME)_$(XDC_HFILE_EXT).h'
148  endif
150 endif
151 ifeq ($(BUILD_PROFILE_$(CORE)), release)
152  ifeq ($(CGT_ISA),$(filter $(CGT_ISA), M4 R5 M3))
153    LNKFLAGS_INTERNAL_BUILD_PROFILE = -qq --diag_warning=225 --diag_suppress=23000 $(LNKFLAGS_GLOBAL_$(CORE))
154    ifeq ($(CGT_ISA),$(filter $(CGT_ISA), R5))
155 #     CFLAGS_INTERNAL += -ms -O4 -s
156    else
157      CFLAGS_INTERNAL += -ms -O4 -op0 -os --optimize_with_debug --inline_recursion_limit=20
158    endif
159    CFLAGS_XDCINTERNAL = -Dxdc_target_name__=$(XDC_TARGET_NAME) -Dxdc_target_types__=ti/targets/arm/elf/std.h -Dxdc_bld__profile_release
160    ifndef MODULE_NAME
161      CFLAGS_XDCINTERNAL += -Dxdc_cfg__header__='$(CONFIGURO_DIR)/package/cfg/$(XDC_HFILE_NAME)_$(XDC_HFILE_EXT).h'
162    endif
163  endif
164  ifeq ($(CGT_ISA), Arm9)
165         LNKFLAGS_INTERNAL_BUILD_PROFILE = -qq --diag_warning=225 --diag_suppress=23000 $(LNKFLAGS_GLOBAL_$(CORE))
166         CFLAGS_INTERNAL += -ms -oe -O3 -op0 -os --optimize_with_debug --inline_recursion_limit=20
167         CFLAGS_XDCINTERNAL = -Dxdc_target_name__=$(XDC_TARGET_NAME) -Dxdc_target_types__=ti/targets/arm/elf/std.h -Dxdc_bld__profile_release
168         ifndef MODULE_NAME
169           CFLAGS_XDCINTERNAL += -Dxdc_cfg__header__='$(CONFIGURO_DIR)/package/cfg/$(XDC_HFILE_NAME)_$(XDC_HFILE_EXT).h'
170         endif
171  endif
172  ifeq ($(CGT_ISA),$(filter $(CGT_ISA), M4F))
173         # LNKFLAGS_INTERNAL_BUILD_PROFILE = --opt='--float_support=FPv4SPD16 --endian=$(ENDIAN) -mv7M4 --abi=$(CSWITCH_FORMAT) -qq -pdsw225 $(CFLAGS_GLOBAL_$(CORE)) -oe --symdebug:dwarf -ms -op2 -O3 -os --optimize_with_debug --inline_recursion_limit=20 --diag_suppress=23000' --strict_compatibility=on
174      LNKFLAGS_INTERNAL_BUILD_PROFILE = -qq --diag_warning=225 --diag_suppress=23000 $(LNKFLAGS_GLOBAL_$(CORE))
175          CFLAGS_INTERNAL += -ms -oe -O3 -op0 -os --optimize_with_debug --inline_recursion_limit=20
176  endif
177 endif
179 # Assemble CFLAGS from all other CFLAGS definitions
180 _CFLAGS = $(CFLAGS_GLOBAL_$(CORE)) $(CFLAGS_INTERNAL) $(CFLAGS_LOCAL_COMMON) $(CFLAGS_LOCAL_$(CORE)) $(CFLAGS_COMP_COMMON)
181 ifeq ($($(MODULE_NAME)_BOARD_DEPENDENCY),yes)
182   _CFLAGS += $(CFLAGS_LOCAL_$(BOARD)) $(CFLAGS_GLOBAL_$(BOARD))
183 else
184   ifeq ($($(APP_NAME)_BOARD_DEPENDENCY),yes)
185     _CFLAGS += $(CFLAGS_LOCAL_$(BOARD)) $(CFLAGS_GLOBAL_$(BOARD))
186   else
187     _CFLAGS += $(CFLAGS_LOCAL_$(SOC)) $(CFLAGS_GLOBAL_$(SOC))
188   endif
189 endif
190 ifneq ($(XDC_CFG_FILE_$(CORE)),)
191   _CFLAGS += $(CFLAGS_XDCINTERNAL)
192 else
193   ifneq ($(findstring xdc, $(INCLUDE_EXTERNAL_INTERFACES)),)
194       _CFLAGS += $(CFLAGS_XDCINTERNAL)
195   endif
196 endif
198 # For TPR12, fore enum type to int to be compatible with DSP
199 ifeq ($(SOC),$(filter $(SOC), tpr12))
200   _CFLAGS += --enum_type=int
201 endif
203 # Decide the compile mode
204 COMPILEMODE = -fc
205 ifeq ($(CPLUSPLUS_BUILD), yes)
206   COMPILEMODE = -fg
207 endif
209 # Object file creation
210 # The first $(CC) generates the dependency make files for each of the objects
211 # The second $(CC) compiles the source to generate object
212 $(OBJ_PATHS): $(OBJDIR)/%.$(OBJEXT): %.c $(GEN_FILE) | $(OBJDIR) $(DEPDIR)
213         $(ECHO) \# Compiling $(PRINT_MESSAGE): $<
214         $(MKDIR) -p $(dir $@)
215         $(CC) -ppd=$(DEPFILE).P $(_CFLAGS) $(INCLUDES) -fr=$(dir $@) -fs=$(dir $@) $(COMPILEMODE) $<
216         $(CC) $(_CFLAGS) $(INCLUDES) -fr=$(dir $@) -fs=$(dir $@) $(COMPILEMODE) $<
218 #TODO: Check ASMFLAGS if really required
219 ASMFLAGS = -me -g --code_state=16 --diag_warning=225
221 # Object file creation
222 $(OBJ_PATHS_ASM): $(OBJDIR)/%.$(OBJEXT): %.asm $(GEN_FILE) | $(OBJDIR) $(DEPDIR)
223         $(ECHO) \# Compiling $(PRINT_MESSAGE): $<
224         $(CC) -ppd=$(DEPFILE).P $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fa $<
225         $(CC) $(_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fa $<
227 $(PACKAGE_PATHS): $(PACKAGEDIR)/%: %
228         $(ECHO) \# Copying to $(PACKAGE_RELPATH)/$($(APP_NAME)$(MODULE_NAME)_RELPATH)/$<
229         $(MKDIR) -p $(PACKAGE_ROOT)/$($(APP_NAME)$(MODULE_NAME)_RELPATH)
230         $(CP) --parents -rf $< $(PACKAGE_ROOT)/$($(APP_NAME)$(MODULE_NAME)_RELPATH)
232 # Archive flags - normally doesn't change
233 ARFLAGS = rq
235 # Archive/library file creation
236 $(LIBDIR)/$(LIBNAME).$(LIBEXT) : $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(GEN_FILE) | $(LIBDIR)
237         $(ECHO) \#
238         $(ECHO) \# Archiving $(PRINT_MESSAGE) into $@ ...
239         $(ECHO) \#
240         $(AR) $(ARFLAGS) $@ $(OBJ_PATHS_ASM) $(OBJ_PATHS)
242 $(LIBDIR)/$(LIBNAME).$(LIBEXT)_size: $(LIBDIR)/$(LIBNAME).$(LIBEXT)
243         $(ECHO) \#
244         $(ECHO) \# Computing sectti size $(PRINT_MESSAGE) info into $@.txt ...
245         $(ECHO) \#
246         $(SIZE) -x $(subst _size,,$@) > $@temp
247         $(SECTTI) $@temp > $@.txt
248         $(RM)   $@temp
250 # Linker options and rules
251 LNKFLAGS_INTERNAL_COMMON += -w -q -u _c_int00
253 ifeq ($(BOARD),$(filter $(BOARD), qtJ7))
254   LNKFLAGS_INTERNAL_COMMON += -cr --ram_model
255 else
256   LNKFLAGS_INTERNAL_COMMON += -c
257 endif
259 ifeq ($(CGT_ISA), R5)
260   LNKFLAGS_INTERNAL_COMMON += -mv7R5
261   #--diag_suppress=10063 supresses 'warning: entry point other than _c_int00 specified'
262   LNKFLAGS_INTERNAL_COMMON += --diag_suppress=10063
263 else
264 ifeq ($(CGT_ISA), M4F)
265   LNKFLAGS_INTERNAL_COMMON +=
266 else
267 ifeq ($(CGT_ISA), Arm9)
268   LNKFLAGS_INTERNAL_COMMON +=
269 else
270   LNKFLAGS_INTERNAL_COMMON += --silicon_version=7$(CGT_ISA)
271 endif
272 endif
273 endif
275 # Assemble Linker flags from all other LNKFLAGS definitions
276 _LNKFLAGS = $(LNKFLAGS_INTERNAL_COMMON) $(LNKFLAGS_INTERNAL_BUILD_PROFILE) $(LNKFLAGS_GLOBAL_$(CORE)) $(LNKFLAGS_LOCAL_COMMON) $(LNKFLAGS_LOCAL_$(CORE))
278 # Path of the RTS library - normally doesn't change for a given tool-chain
279 #Let the linker choose the required library
280 RTSLIB_PATH = $(CGT_PATH)/lib/libc.a
282 LNK_LIBS = $(addprefix -l,$(LIB_PATHS))
283 LNK_LIBS += $(addprefix -l,$(EXT_LIB_PATHS))
285 # Linker - to create executable file
286 ifeq ($(LOCAL_APP_NAME),)
287  EXE_NAME = $(BINDIR)/$(APP_NAME)_$(CORE)_$(BUILD_PROFILE_$(CORE)).$(EXEEXT)
288  EXE_STRIP_NAME = $(BINDIR)/$(APP_NAME)_$(CORE)_$(BUILD_PROFILE_$(CORE))_strip.$(EXEEXT)
289 else
290  EXE_NAME = $(BINDIR)/$(LOCAL_APP_NAME)_$(BUILD_PROFILE_$(CORE)).$(EXEEXT)
291  EXE_STRIP_NAME = $(BINDIR)/$(LOCAL_APP_NAME)_$(BUILD_PROFILE_$(CORE))_strip.$(EXEEXT)
292 endif
294 NUM_PROCS = 1
296 ifeq ($(OS),Windows_NT)
297   NUM_PROCS = $(NUMBER_OF_PROCESSORS)
298 else
299   NUM_PROCS = $(shell grep -c ^processor /proc/cpuinfo)
300 endif
302 ifneq ($(findstring mcu,$(CORE)),)
303 RTSLIB_NAME = rtsv7R4_T_le_v3D16_eabi.lib
304 BUILD_LIB_ONCE = $(CGT_PATH)/lib/$(RTSLIB_NAME)
305 $(BUILD_LIB_ONCE):
306         $(ECHO) \# $@ not found, building  $@ ...
307         $(CGT_PATH)/lib/mklib --pattern=$(RTSLIB_NAME) --parallel=$(NUM_PROCS) --compiler_bin_dir=$(CGT_PATH)/bin
308 endif
310 ifneq ($(XDC_CFG_FILE_$(CORE)),)
311 $(EXE_NAME) : $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LIB_PATHS) $(LNKCMD_FILE) $(OBJDIR)/$(CFG_COBJ_XDC) $(BUILD_LIB_ONCE)
312         $(CP) $(CONFIGURO_DIR)/package/cfg/*.rov.xs $(BINDIR)
313 else
314 $(EXE_NAME) : $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LIB_PATHS) $(LNKCMD_FILE) $(BUILD_LIB_ONCE)
315 endif
316         $(ECHO) \# Linking into $(EXE_NAME)...
317         $(ECHO) \#
318 ifneq ($(XDC_CFG_FILE_$(CORE)),)
319         $(CP) $(OBJDIR)/$(CFG_COBJ_XDC) $(CONFIGURO_DIR)/package/cfg
320   ifeq ($(BUILD_PROFILE_$(CORE)),whole_program_debug)
321         $(LNK) $(_LNKFLAGS) $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(OBJDIR)/$(CFG_COBJ_XDC) $(LNKCMD_FILE) $(EXTERNAL_LNKCMD_FILE) $(APPEND_LNKCMD_FILE) -o $@ -m $@.map $(LNK_LIBS) $(RTSLIB_PATH)
322   else
323         $(LNK) $(_LNKFLAGS) $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LNKCMD_FILE) $(EXTERNAL_LNKCMD_FILE) $(APPEND_LNKCMD_FILE) -o $@ -m $@.map $(LNK_LIBS) $(RTSLIB_PATH)
324   endif
325 else
326         $(LNK) $(_LNKFLAGS) $(OBJ_PATHS_ASM) $(OBJ_PATHS) $(LNKCMD_FILE) $(EXTERNAL_LNKCMD_FILE) $(APPEND_LNKCMD_FILE) -o $@ -m $@.map $(LNK_LIBS) $(RTSLIB_PATH)
327 endif
328         $(ECHO) \#
329         $(ECHO) \# $@ created.
330         $(ECHO) \#
331 ifeq ($(BUILD_PROFILE_$(CORE)), release)
332         $(ECHO) \# Generating stripped image into $(EXE_STRIP_NAME)...
333         $(ECHO) \#
334         $(STRP) -p $(EXE_NAME) -o $(EXE_STRIP_NAME)
335 endif
336 # XDC specific - assemble XDC-Configuro command
337 ifeq ($(BUILD_PROFILE_$(CORE)),prod_release)
338   CONFIGURO_BUILD_PROFILE = release
339 else
340   CONFIGURO_BUILD_PROFILE = $(BUILD_PROFILE_$(CORE))
341 endif
343 _XDC_GREP_STRING = \"$(XDC_GREP_STRING)\"
344 EGREP_CMD = $(EGREP) -ivw $(XDC_GREP_STRING) $(XDCLNKCMD_FILE)
346 ifeq ($(OS),Windows_NT)
347   EVERYONE = $(word 1,$(shell whoami -groups | findstr "S-1-1-0"))
348 endif
350 # Invoke configuro for the rest of the components
351 #  NOTE: 1. String handling is having issues with various make versions when the
352 #           cammand is directly tried to be given below. Hence, as a work-around,
353 #           the command is re-directed to a file (shell or batch file) and then
354 #           executed
355 #        2. The linker.cmd file generated, includes the libraries generated by
356 #           XDC. An egrep to search for these and omit in the .cmd file is added
357 #           after configuro is done
358 xdc_configuro : $(CFG_C_XDC)
359         $(MAKE) $(LNKCMD_FILE)
361 ifeq ($(DEST_ROOT),)
362   XDC_BUILD_ROOT = .
363 else
364   XDC_BUILD_ROOT = $(DEST_ROOT)
365 endif
367 ifneq ($(OBJEXT_BIOS),)
368 # if BIOS' obj extensions are different, xdc generated files's objfiles need to have different extensions as well
369 CFG_C_XDC_CFLAGS = $(subst -eo.$(OBJEXT),-eo.$(OBJEXT_BIOS),$(_CFLAGS))
370 else
371 CFG_C_XDC_CFLAGS = $(_CFLAGS)
372 endif
374 $(CFG_C_XDC) $(LNKCMD_FILE) : $(XDC_CFG_FILE_NAME) $(XDC_CFG_UPDATE)
375         $(ECHO) \# Invoking configuro...
376         $(MKDIR) -p $(XDC_BUILD_ROOT)
377         $(xdc_PATH)/xs xdc.tools.configuro --generationOnly -o $(CONFIGURO_DIR) -t $(TARGET_XDC) -p $(PLATFORM_XDC) \
378                -r $(CONFIGURO_BUILD_PROFILE) -b $(CONFIG_BLD_XDC_$(ISA)) --ol $(LNKCMD_FILE) $(XDC_CFG_FILE_NAME)
379         $(ECHO) \# Configuro done!
381 ifneq ($(XDC_CFG_FILE_$(CORE)),)
382   ifndef MODULE_NAME
383 $(OBJDIR)/$(CFG_COBJ_XDC) : $(CFG_C_XDC)
384         $(ECHO) \# Compiling generated $(CFG_COBJ_XDC)
385         $(CC) -ppd=$(DEPFILE).P $(CFG_C_XDC_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fc $(CFG_C_XDC)
386         $(CC) $(CFG_C_XDC_CFLAGS) $(INCLUDES) $(CFLAGS_DIROPTS) -fc $(CFG_C_XDC)
387   endif
388 endif
390 # Include dependency make files that were generated by $(CC)
391 -include $(SRCS:%.c=$(DEPDIR)/%.P)
393 # Nothing beyond this point