deprecated/buildtools/buildsystem/extension/base/h4_restricted_on_coreldr.mk
author kelvzhu
Wed, 27 Oct 2010 16:03:51 +0800
changeset 662 60be34e1b006
parent 655 3f65fd25dfd4
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
655
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     1
# Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     2
# All rights reserved.
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     3
# This component and the accompanying materials are made available
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     4
# under the terms of "Eclipse Public License v1.0"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     5
# which accompanies this distribution, and is available
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     6
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     7
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     8
# Initial Contributors:
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
     9
# Nokia Corporation - initial contribution.
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    10
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    11
# Contributors:
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    12
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    13
# Description:
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    14
# #  NB! LINKBASE :  Code execute address also set coreldr.lnk file 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    15
# #  MUST REFLECT CORELOADER ADDRESS RELOCATION IN BOTH FILES!!
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    16
# 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    17
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    18
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    19
TMPROOT:=$(subst \,/,$(EPOCROOT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    20
EPOCROOT:=$(patsubst %/,%,$(TMPROOT))/
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    21
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    22
include $(EPOCROOT)epoc32/tools/shell/$(notdir $(basename $(SHELL))).mk
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    23
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    24
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    25
## If any of these macros are changed, then execute "abld clean coreldr" from this directory
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    26
## Use this macro if it is required to use the MMU
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    27
## if the MMU is not require either comment it out or set it FALSE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    28
USE_MMU := TRUE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    29
  
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    30
# This macro enables benchmarking code. Comment out or set FALSE if not required
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    31
#WRITE_TIMINGS := TRUE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    32
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    33
## This macro causes the page tables to be output. Comment out or set FALSE if not required
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    34
## If this option is selected then the MMU code will be enabled
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    35
#DUMP_PAGE_TABLES := TRUE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    36
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    37
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    38
## Make sure all 3 macros are either TRUE or FALSE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    39
# Enforce USE_MMU if page table is to be dumped
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    40
ifeq "$(DUMP_PAGE_TABLES)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    41
	USE_MMU := TRUE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    42
else
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    43
	DUMP_PAGE_TABLES := FALSE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    44
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    45
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    46
ifneq "$(USE_MMU)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    47
	USE_MMU := FALSE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    48
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    49
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    50
ifneq "$(WRITE_TIMINGS)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    51
	WRITE_TIMINGS := FALSE
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    52
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    53
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    54
#Set the directories
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    55
GENSRCDIR := $(EXTENSION_ROOT)/../../../kernelhwsrv/kerneltest/e32utils/nandboot/coreldr
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    56
BLSRCDIR := $(EXTENSION_ROOT)/../../../kernelhwsrv/kernel/eka/drivers/unistore2/srca/xsr/util/ONBL2
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    57
XSRSRCDIR1 := $(EXTENSION_ROOT)/../../../kernelhwsrv/kernel/eka/drivers/unistore2/srca/xsr/OAM/OSLess
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    58
XSRSRCDIR2 := $(EXTENSION_ROOT)/../../../kernelhwsrv/kernel/eka/drivers/unistore2/srca/xsr/LLD/DNandO
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    59
SPECSRCDIR := $(EXTENSION_ROOT)/../omaph4bsp/h4/nandboot/coreldr_onenand
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    60
SPECXSRSRCDIR := $(EXTENSION_ROOT)/drivers/h4ons
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    61
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    62
VARIANTINC := $(INC_PATH)/omap_hrp/h4
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    63
VARIANTINC2 := $(EXTENSION_ROOT)/../omaph4bsp/shared/bootstrap
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    64
VARIANTINC3 := $(EXTENSION_ROOT)/../omaph4bsp/h4/nand  $(EXTENSION_ROOT)/../omaph4bsp/assp/shared/assp $(EXTENSION_ROOT)/../omaph4bsp/assp/omap24xx/inc $(EXTENSION_ROOT)/../omaph4bsp/assp/omap24xx/assp $(EXTENSION_ROOT)/../omaph4bsp/assp/shared/interrupt $(EXTENSION_ROOT)/../omaph4bsp/assp/omap24xx/interrupt $(EXTENSION_ROOT)/../omaph4bsp/shared/gpio $(EXTENSION_ROOT)/../omaph4bsp/shared/mcspi $(EXTENSION_ROOT)/../omaph4bsp/assp/omap24xx/gpio $(EXTENSION_ROOT)/../omaph4bsp/assp/shared $(EXTENSION_ROOT)/../omaph4bsp/shared/cirq $(EXTENSION_ROOT)/../omaph4bsp/shared/dma $(EXTENSION_ROOT)/../omaph4bsp/assp/shared/dma
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    65
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    66
GENINC1 := $(INC_PATH)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    67
GENINC3 := $(EPOCROOT)epoc32/include
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    68
GENDRIVERINC := $(INC_PATH)/drivers
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    69
GENINC2 := $(INC_PATH)/drivers/unistore2 $(INC_PATH)/memmodel/epoc $(INC_PATH)/kernel  $(INC_PATH)/kernel/arm $(INC_PATH)/nkern $(INC_PATH)/nkern/arm
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    70
GENXSRINC := $(EXTENSION_ROOT)/../../../kernelhwsrv/kernel/eka/drivers/unistore2/srca/xsr/inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    71
GENINCPATH:= $(GENSRCDIR) $(SPECSRCDIR) $(XSRSRCDIR1) $(XSRSRCDIR2) $(SPECXSRSRCDIR) $(VARIANTINC) $(VARIANTINC2) $(VARIANTINC3) $(GENINC1) $(GENDRIVERINC) $(GENINC2) $(GENINC3) $(GENINC4) $(GENXSRINC) $(GENINC3)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    72
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    73
# Set the source/include/target directories
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    74
GSRCDIR = ../../../unref/orphan/cedgen/shared/nandboot
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    75
VINCDIR = ../../../unref/orphan/cedgen/h4/inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    76
GINCDIR = ../../../unref/orphan/cedgen/shared/inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    77
EPOCINCDIR = $(INC_PATH)/omap_hrp/h4
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    78
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    79
# Build directory (EPOCBLD too long)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    80
BUILDLOC = $(EPOCROOT)epoc32/build/omap_hrp/h4_restricted/unistore2/nandboot/coreldr/$(PLATFORM_PATH)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    81
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    82
# Set the target name
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    83
TARGETDIR := $(EPOCROOT)epoc32/release/$(PLATFORM_PATH)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    84
TARGET = $(TARGETDIR)$/h4hrp_un2_on_coreldr.bin
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    85
TMPTARGET = $(BUILDLOC)$/h4hrp_un2_on_coreldr.elf
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    86
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    87
#Rules
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    88
vpath %.s . $(SPECSRCDIR) $(SRCDIR)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    89
vpath %.inc . $(SPECSRCDIR) $(EPOCINCDIR)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    90
vpath %.ginc . $(BUILDLOC)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    91
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    92
VHEADERS := nanddevice.h
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    93
BUILTINCLUDES := nanddevice.inc config.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    94
BUILTINCLUDES2 := nand_plat.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    95
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    96
ASMSOURCE := coreldrasm_onenand.s
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    97
GENCPPSOURCE := inflate.cpp
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    98
BLCPPSOURCE := ONBL2.CPP
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
    99
XSRCPPSOURCE1 := OSLessOAM.cpp
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   100
XSRCPPSOURCE2 := ONLD.cpp
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   101
SPECXSRCPPSOURCE := pam.cpp
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   102
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   103
XSRLIB := $(EPOCROOT)epoc32/release/armv5/$(CFG)/nbl2.lib
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   104
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   105
ifeq "$(USE_MMU)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   106
	GENASMSOURCE := coreldrmmu.s # only link in the MMU stuff if required
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   107
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   108
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   109
# HEADERS := inflate.h coreldr.h
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   110
HEADERS := 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   111
SPECHEADERS := nand_plat.h
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   112
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   113
## Address at which coreloader binary is loaded and then started from
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   114
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   115
# On H4 this number is base of ram + 48MB (permitting 48MB core images)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   116
# this number is pretty arbitrary and may be raised higher into ram
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   117
# if necessary as long as the corresponding change is also made to
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   118
# KCoreLoaderAddress in variant_bootstrap.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   119
#
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   120
LINKBASE = 0x83000000
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   121
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   122
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   123
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   124
#ARMASM_OUT := $(shell armasm 2>&1)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   125
#ARMASM_OUT_4 := $(word 4,$(ARMASM_OUT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   126
ARMASM_OUT := $(wordlist 2, 4, $(shell armasm --vsn 2>&1))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   127
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   128
# Select the toolchain: ARM RVCT, then GCC
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   129
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   130
# Use GCC toolchain if no other is available
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   131
TOOLVER := GCC
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   132
#RVCTSTR := $(strip $(findstring RVCT, $(ARMASM_OUT_4)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   133
RVCTSTR := $(strip $(findstring RVCT2.2,$(ARMASM_OUT)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   134
RVCTSTR_4 := $(strip $(findstring RVCT4.0,$(ARMASM_OUT)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   135
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   136
ifeq "$(RVCTSTR)" "RVCT2.2"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   137
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   138
	TOOLVER := RVCT2.2
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   139
	OP := --
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   140
	OB := o
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   141
 endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   142
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   143
 ifeq "$(RVCTSTR_4)" "RVCT4.0"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   144
    TOOLVER := RVCT4.0
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   145
    OP := --
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   146
    OB := o
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   147
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   148
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   149
# Build up logical TRUE defines
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   150
ifeq "$(USE_MMU)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   151
	ASM_TRUE_MACROS += USE_MMU
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   152
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   153
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   154
ifeq "$(WRITE_TIMINGS)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   155
	ASM_TRUE_MACROS += WRITE_TIMINGS
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   156
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   157
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   158
ifeq "$(DUMP_PAGE_TABLES)" "TRUE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   159
	ASM_TRUE_MACROS += DUMP_PAGE_TABLES
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   160
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   161
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   162
# Build up logical FALSE defines
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   163
ifeq "$(USE_MMU)" "FALSE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   164
	ASM_FALSE_MACROS += USE_MMU
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   165
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   166
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   167
ifeq "$(WRITE_TIMINGS)" "FALSE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   168
	ASM_FALSE_MACROS += WRITE_TIMINGS
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   169
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   170
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   171
ifeq "$(DUMP_PAGE_TABLES)" "FALSE"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   172
	ASM_FALSE_MACROS += DUMP_PAGE_TABLES
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   173
endif 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   174
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   175
#Arm RVCT tools
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   176
#echo hello2  "$(strip $(findstring RVCT, $(TOOLVER)))"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   177
TOOLVER1 := $(strip $(findstring RVCT, $(TOOLVER)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   178
ifeq "$(TOOLVER1)" "RVCT"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   179
#echo hello2
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   180
ASM_TRUE_MACROS += USE_CXSF
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   181
ASM := armasm
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   182
LINK := armlink
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   183
FROMELF := fromelf
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   184
CPP := armcc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   185
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   186
OBJEXT := o
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   187
INCEXT := inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   188
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   189
ARMCCFLAGS := --arm -c -Otime --cpp
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   190
ARMCCFLAGS := $(ARMCCFLAGS) $(foreach dir,$(GENINCPATH),$(join -I, $(dir)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   191
ARMCCFLAGS := $(ARMCCFLAGS) -DEKA2
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   192
ARMCCFLAGS := $(ARMCCFLAGS) -DXSR_NBL2 -DREAL_TARGET -DSYMBIAN_SUPPORT_UNISTORE2 
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   193
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   194
	ARMCCFLAGS := $(ARMCCFLAGS) --preinclude $(EPOCROOT)epoc32/include/rvct/rvct.h
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   195
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   196
	ifeq "$(CFG)" "UDEB"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   197
	ARMCCFLAGS := $(ARMCCFLAGS) -D_DEBUG
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   198
	endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   199
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   200
ASM_TRUE_MACRO_CMD := $(foreach macro,$(ASM_TRUE_MACROS),$(OP)predefine "$(macro) SETL {TRUE}")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   201
ASM_FALSE_MACRO_CMD := $(foreach macro,$(ASM_FALSE_MACROS),$(OP)predefine "$(macro) SETL {FALSE}")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   202
ASM_LINKBASE_MACRO := $(OP)predefine "_LINKBASE_ SETA $(LINKBASE)"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   203
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   204
AFLAGS := -g $(OP)keep $(ASM_TRUE_MACRO_CMD) $(ASM_FALSE_MACRO_CMD) $(ASM_LINKBASE_MACRO) -I$(BUILDLOC) $(foreach dir,$(GENINCPATH),$(join -I, $(dir)))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   205
ifeq "$(TOOLVER)" "RVCT4.0"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   206
LFLAGS := $(OP)entry BootEntry $(OP)ro-base $(LINKBASE) $(OP)FIRST BootEntry $(OP)map $(OP)no_strict_wchar_size  $(OP)no_strict_enum_size
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   207
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   208
ifeq "$(TOOLVER)" "RVCT2.2"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   209
LFLAGS := $(OP)entry BootEntry $(OP)ro-base $(LINKBASE) $(OP)FIRST BootEntry $(OP)map
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   210
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   211
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   212
SYMOPT := $(OP)symdefs
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   213
ASMTYP := ARMASM
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   214
LINKFILE :=
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   215
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   216
define do_compile
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   217
$(CPP) $(ARMCCFLAGS) $< -o $@
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   218
endef
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   219
define do_h2inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   220
perl -S $(EPOCROOT)epoc32/tools/h2inc.pl $< $@ ARMASM
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   221
endef
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   222
define do_asm
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   223
$(ASM) $(AFLAGS) -$(OB) $@ $(OP)LIST $(join $(basename $@),.lst) $<
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   224
endef
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   225
define do_link
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   226
$(LINK) $(LFLAGS) -$(OB) $@ $(FULLOBJECTS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   227
endef
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   228
define do_strip
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   229
$(FROMELF) $(OP)bin $(OP)output $@ $<
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   230
endef
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   231
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   232
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   233
#Header processing
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   234
FULLHEADERS := $(addprefix $(GENSRCDIR)/,$(HEADERS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   235
FULLSPECHEADERS := $(addprefix $(VARIANTINC)/,$(SPECHEADERS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   236
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   237
FULLVHEADERS := $(addprefix $(GENDRIVERINC)/,$(VHEADERS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   238
FULLBUILTINCLUDES := $(addprefix $(BUILDLOC)/,$(BUILTINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   239
$(FULLBUILTINCLUDES) : $(FULLVHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   240
	$(do_h2inc)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   241
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   242
FULLVHEADERS2 := $(addprefix $(VARIANTINC)/,$(SPECHEADERS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   243
FULLBUILTINCLUDES2 := $(addprefix $(BUILDLOC)/,$(BUILTINCLUDES2))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   244
$(FULLBUILTINCLUDES2) : $(FULLVHEADERS2)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   245
	$(do_h2inc)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   246
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   247
#object names
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   248
GENCPPOBJECTS := $(foreach f,$(GENCPPSOURCE),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   249
FULLGENCPPOBJECTS := $(addprefix $(BUILDLOC)/,$(GENCPPOBJECTS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   250
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   251
BLCPPOBJECTS := $(foreach f,$(BLCPPSOURCE),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   252
FULLBLCPPOBJECTS := $(addprefix $(BUILDLOC)/,$(BLCPPOBJECTS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   253
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   254
XSRCPPOBJECTS1 := $(foreach f,$(XSRCPPSOURCE1),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   255
FULLXSRCPPOBJECTS1 := $(addprefix $(BUILDLOC)/,$(XSRCPPOBJECTS1))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   256
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   257
XSRCPPOBJECTS2 := $(foreach f,$(XSRCPPSOURCE2),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   258
FULLXSRCPPOBJECTS2 := $(addprefix $(BUILDLOC)/,$(XSRCPPOBJECTS2))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   259
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   260
SPECXSRCPPOBJECTS := $(foreach f,$(SPECXSRCPPSOURCE),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   261
FULLSPECXSRCPPOBJECTS := $(addprefix $(BUILDLOC)/,$(SPECXSRCPPOBJECTS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   262
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   263
ASMOBJECTS := $(foreach f,$(ASMSOURCE),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   264
FULLASMOBJECTS := $(addprefix $(BUILDLOC)/,$(ASMOBJECTS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   265
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   266
GENASMOBJECTS := $(foreach f,$(GENASMSOURCE),$(basename $(f)).$(OBJEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   267
FULLGENASMOBJECTS := $(addprefix $(BUILDLOC)/,$(GENASMOBJECTS))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   268
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   269
FULLOBJECTS := $(FULLASMOBJECTS) $(FULLGENASMOBJECTS) $(FULLGENCPPOBJECTS) $(FULLBLCPPOBJECTS) $(FULLXSRCPPOBJECTS1) $(FULLXSRCPPOBJECTS2) $(FULLSPECXSRCPPOBJECTS) $(XSRLIB)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   270
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   271
ifdef PROCESS_INCLUDES
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   272
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   273
GCCSRC := $(addprefix $(BUILDLOC)/,$(SRC))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   274
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   275
#Creation of headers
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   276
FULLINCLUDES := $(foreach f,$(INCLUDES),$(basename $(f)).$(INCEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   277
FULLINCLUDES := $(addprefix $(BUILDLOC)/,$(FULLINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   278
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   279
$(FULLINCLUDES) : $(BUILDLOC)/%.$(INCEXT) : %.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   280
	$(do_includes)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   281
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   282
FULLBLDINCLUDES := $(foreach f,$(BLDINCLUDES),$(basename $(f)).$(INCEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   283
FULLBLDINCLUDES := $(addprefix $(BUILDLOC)/,$(FULLBLDINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   284
$(FULLBLDINCLUDES) : $(BUILDLOC)/%.$(INCEXT) : %.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   285
	$(do_includes)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   286
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   287
FULLPLATINCLUDES := $(foreach f,$(PLATINCLUDES),$(basename $(f)).$(INCEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   288
FULLPLATINCLUDES := $(addprefix $(BUILDLOC)/,$(FULLPLATINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   289
$(FULLPLATINCLUDES) : $(BUILDLOC)/%.$(INCEXT) : %.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   290
	$(do_includes)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   291
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   292
FULLGENINCLUDES := $(foreach f,$(GENINCLUDES),$(basename $(f)).$(INCEXT))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   293
FULLGENINCLUDES := $(addprefix $(BUILDLOC)/,$(FULLGENINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   294
$(FULLGENINCLUDES) : $(BUILDLOC)/%.$(INCEXT) : %.inc
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   295
	$(do_includes)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   296
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   297
else
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   298
FULLINCLUDES:= $(addprefix $(SPECSRCDIR)/,$(INCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   299
FULLPLATINCLUDES:= $(addprefix $(PLATSRCDIR)/,$(PLATINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   300
FULLGENINCLUDES:= $(addprefix $(GENSRCDIR)/,$(GENINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   301
FULLBLDINCLUDES:= $(addprefix $(H2BLDDIR)/,$(BLDINCLUDES))
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   302
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   303
#Arm RVCT specifics here
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   304
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   305
endif
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   306
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   307
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   308
#Link
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   309
$(TMPTARGET) : $(FULLOBJECTS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   310
	$(do_link)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   311
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   312
#strip
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   313
$(TARGET) : $(TMPTARGET)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   314
	$(do_strip)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   315
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   316
#CPP objects
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   317
$(FULLGENCPPOBJECTS) : $(BUILDLOC)/%.$(OBJEXT) : $(GENSRCDIR)/%.cpp $(FULLHEADERS) $(FULLSPECHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   318
	$(do_compile)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   319
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   320
$(FULLBLCPPOBJECTS) : $(BUILDLOC)/%.$(OBJEXT) : $(BLSRCDIR)/%.cpp $(FULLHEADERS) $(FULLSPECHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   321
	$(do_compile)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   322
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   323
$(FULLXSRCPPOBJECTS1) : $(BUILDLOC)/%.$(OBJEXT) : $(XSRSRCDIR1)/%.cpp $(FULLHEADERS) $(FULLSPECHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   324
	$(do_compile)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   325
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   326
$(FULLXSRCPPOBJECTS2) : $(BUILDLOC)/%.$(OBJEXT) : $(XSRSRCDIR2)/%.cpp $(FULLHEADERS) $(FULLSPECHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   327
	$(do_compile)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   328
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   329
$(FULLSPECXSRCPPOBJECTS) : $(BUILDLOC)/%.$(OBJEXT) : $(SPECXSRSRCDIR)/%.cpp $(FULLHEADERS) $(FULLSPECHEADERS)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   330
	$(do_compile)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   331
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   332
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   333
#Asm objects
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   334
$(FULLGENASMOBJECTS) : $(BUILDLOC)/%.$(OBJEXT) : $(GENSRCDIR)/$(GENASMSOURCE) $(FULLINCLUDES) $(FULLBUILTINCLUDES) $(FULLBUILTINCLUDES2) $(FULLBUILTINCLUDES3) $(FULLDRIVERINCLUDES) $(FULLARMINCLUDES) $(FULLBLDINCLUDES) $(FULLGENINCLUDES) $(FULLPLATINCLUDES)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   335
	$(do_asm)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   336
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   337
$(FULLASMOBJECTS) : $(BUILDLOC)/%.$(OBJEXT) : $(SPECSRCDIR)/$(ASMSOURCE) $(FULLINCLUDES) $(FULLBUILTINCLUDES) $(FULLBUILTINCLUDES2) $(FULLBLDINCLUDES) $(FULLGENINCLUDES) $(FULLPLATINCLUDES)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   338
	$(do_asm)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   339
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   340
# make the work directories
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   341
$(TARGETDIR) :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   342
	$(call ifnotexistd,"$(TARGETDIR)")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   343
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   344
$(BUILDLOC) :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   345
	$(call ifnotexistd,"$(BUILDLOC)")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   346
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   347
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   348
MAKMAKE :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   349
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   350
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   351
FREEZE :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   352
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   353
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   354
LIB :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   355
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   356
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   357
CLEANLIB :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   358
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   359
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   360
RESOURCE :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   361
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   362
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   363
FINAL :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   364
	echo Nothing to do
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   365
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   366
BLD SAVESPACE : $(TARGETDIR) $(BUILDLOC) $(TARGET)
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   367
	@echo BLD
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   368
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   369
RELEASABLES :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   370
	@echo "$(TARGET)"
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   371
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   372
CLEAN :
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   373
	-$(ERASE) $(call slash2generic,"$(TARGET)")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   374
	-$(ERASE) $(call slash2generic,"$(BUILDLOC)/*.*")
3f65fd25dfd4 sync up SVN codes
kelvzhu
parents:
diff changeset
   375