sbsv1/abld/platform/GCCE.mk
author Zheng Shen <zheng.shen@nokia.com>
Mon, 30 Aug 2010 15:04:06 +0800
changeset 631 9435b9008a58
parent 599 fa7a3cc6effd
permissions -rw-r--r--
ROM Tools 13.1.0.1 Bug468 initialized static data built into a static library does not get initialized correctly
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
599
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     1
# Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     2
# All rights reserved.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     3
# This component and the accompanying materials are made available
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     4
# under the terms of "Eclipse Public License v1.0"
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     5
# which accompanies this distribution, and is available
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     6
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     7
#
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     8
# Initial Contributors:
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     9
# Nokia Corporation - initial contribution.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    10
#
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    11
# Contributors:
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    12
#
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    13
# Description:
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    14
# This file provides the definition of variables that are used by the component specific makefile
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    15
# This is for the BPABI (Base Platform ABI) platform using the GCCE compiler.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    16
# Functions added as the part of Plugin Architecture
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    17
# 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    18
#
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    19
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    20
#function to find the include path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    21
define find-inc-path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    22
	$(subst /bin/../,/,$(subst libgcc.a,%,$(shell $(CC) -print-libgcc-file-name)))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    23
endef
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    24
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    25
#function to find the installation path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    26
define find_install_path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    27
	$(subst /bin/../lib/gcc/arm-none-symbianelf/3.4.3,,$(subst libgcc.a,,$(shell $(CC) -print-libgcc-file-name)))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    28
endef
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    29
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    30
#function to include the version info
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    31
define find-version-info
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    32
$(strip $(shell $(CC) $(VERSION_OPTION)))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    33
endef
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    34
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    35
#function to find the library path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    36
#function to determine the libgcc path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    37
define find-gcclib-path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    38
	"$(patsubst %libgcc.a,%,$(shell $(CC) -print-libgcc-file-name))"
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    39
endef
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    40
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    41
#function to determine the libsupc++ path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    42
define find-libsupc-path
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    43
	"$(patsubst %/libsupc++.a,%,$(shell $(CC) -print-file-name=libsupc++.a))"
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    44
endef
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    45
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    46
#---------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    47
# Path Settings
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    48
#---------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    49
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    50
# Compiler Installation Location
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    51
CC_INSTALL_PATH=$(strip $(call find_install_path))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    52
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    53
#----------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    54
# Programs used from the ToolChain
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    55
#----------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    56
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    57
# C++ Compiler
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    58
CC=arm-none-symbianelf-g++
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    59
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    60
# Linker
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    61
LD=arm-none-symbianelf-ld
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    62
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    63
# Assembler
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    64
ASM=arm-none-symbianelf-as
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    65
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    66
# Archiver
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    67
AR=arm-none-symbianelf-ar
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    68
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    69
# Translator to translate the GCC inline assembler code
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    70
TRANASM=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    71
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    72
#--------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    73
# Option Prefix
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    74
#--------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    75
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    76
# This value will be used by the backend to segregate one option from the other.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    77
# If option prefix is one among '+','*','.'or '?' (these metacharacters have specific predefined meaning 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    78
# for pattern matching in Perl) then it should be preceded with '\'.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    79
OPTION_PREFIX=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    80
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    81
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    82
# Compiler Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    83
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    84
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    85
# Flag whether the compiler requires Unix slashes for absolute paths
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    86
UNIX_SLASH_FOR_CC_ABS_PATHS=1
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    87
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    88
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    89
# Debug Mode Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    90
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    91
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    92
# Optimization Level in DEBUG mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    93
DEBUG_OPTIMISATION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    94
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    95
# Option to produce debug information:
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    96
#   -g1: little information.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    97
#   -g2: more information.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    98
#   -g : same as -g2.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    99
#   -g3: maximum amount of information. For example, at this level information
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   100
#        about macros is created.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   101
DEBUG_OPTION=-g3
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   102
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   103
# Option to set the debug format.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   104
#
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   105
# GCC doesn't support the full DWARF3 format.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   106
DEBUG_FORMAT:=-gdwarf-2
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   107
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   108
# Specific compiler options for a UDEB build
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   109
SYMBIAN_UDEB_CCFLAGS= $(DEBUG_OPTION) $(DEBUG_FORMAT)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   110
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   111
#-------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   112
# Target Processor Options 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   113
#-------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   114
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   115
# Option to select the appropriate target processor
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   116
TARGET_ARCH_OPTION=-march=armv5t
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   117
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   118
# Option to generate the approproate ARM instruction set.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   119
ARM_INSTRUCTION_SET=-marm
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   120
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   121
# Option to generate the approproate thumb instruction set.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   122
THUMB_INSTRUCTION_SET=-mthumb
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   123
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   124
# Compiler define for thumb instruction set
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   125
COMPILER_THUMB_DEFINES=-D__MARM_THUMB__
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   126
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   127
# Compiler define for interwork
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   128
COMPILER_INTERWORK_DEFINES=-D__MARM_INTERWORK__
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   129
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   130
# Option to specify the floating point conformance. 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   131
FPMODE_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   132
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   133
# Compiler option to select softvfp mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   134
SOFTVFPMODE_OPTION=-msoft-float
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   135
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   136
# Compiler option to select hardware floating point unit
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   137
VFP2MODE_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   138
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   139
# Option to force all enumerations to be stored in as integers. 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   140
ENUM_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   141
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   142
#---------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   143
# Options controlling C++ Features
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   144
#---------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   145
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   146
# Option for handling Virtual functions and Virtual Tables
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   147
EXPORT_VTBL_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   148
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   149
# Disables unused virtual function elimination (VFE) in C++ mode. --vfe is the default
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   150
VFE_OPTION= 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   151
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   152
# Option to turn on exception handling
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   153
EXCEPTIONS=-fexceptions
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   154
NO_EXCEPTIONS=-fno-exceptions
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   155
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   156
#-------------------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   157
# Options controlling the ARM Architecture Procedure Call Standard (AAPCS)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   158
#-------------------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   159
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   160
# This Option is for ARM Architecture Procedure Call Standard with the 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   161
# qualifier to support calls between the ARM and Thumb instruction sets.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   162
AAPCS_OPTION=-mapcs -mthumb-interwork
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   163
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   164
#-----------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   165
# Options controlling generation of Compiler Warnings/Errors 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   166
#-----------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   167
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   168
# Option to control the Compiler warnings
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   169
CC_WARNINGS_CONTROL_OPTION=-Wall -Wno-unknown-pragmas
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   170
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   171
# Option to control the Compiler warnings for building Standard C++ application
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   172
CC_STDCPP_WARNINGS_CONTROL_OPTION=-Wall -Wno-unknown-pragmas
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   173
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   174
# Option to suppress the Compiler errors
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   175
CC_ERRORS_CONTROL_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   176
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   177
# Option to suppress the Compiler errors for building Standard C++
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   178
CC_STDCPP_ERRORS_CONTROL_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   179
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   180
# Option to modify the Compiler warnings and errors for Symbian OS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   181
SYMBIAN_CC_MESSAGE_OPTION=$(CC_WARNINGS_CONTROL_OPTION) $(CC_ERRORS_CONTROL_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   182
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   183
#-----------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   184
# Optional Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   185
#-----------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   186
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   187
# Compiler option to avoid the generation of the intermediate files. (Optional)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   188
TEMP_FILES_OPTION=-pipe
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   189
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   190
# Library Option
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   191
OWN_LIBRARY_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   192
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   193
# Option to generate the Object File
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   194
COMPILE_ONLY_OPTION=-c
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   195
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   196
# Option to generate the Preprocessed File
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   197
PREPROCESSOR_OPTION=-E
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   198
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   199
# Other additional Options to be passed to the compiler
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   200
EXTRA_CC_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   201
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   202
#---------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   203
# Preprocessor Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   204
#---------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   205
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   206
# Prefix Header File passed to the preprocessor
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   207
PREFIXFILE=$(EPOCROOT)EPOC32\INCLUDE\GCCE\GCCE.h
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   208
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   209
# For .cpp Source files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   210
CPP_LANG_OPTION=-x c++ -Wno-ctor-dtor-privacy
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   211
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   212
# For .c Source files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   213
C_LANG_OPTION=-x c
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   214
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   215
# For .cia Source files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   216
CIA_LANG_OPTION=-x c++ -S -Wa,-adln
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   217
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   218
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   219
# Assembler Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   220
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   221
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   222
# Option to generate the Assembler instructions
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   223
ASSEMBLER_LISTING_OPTION=-S
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   224
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   225
# Output option used to pass the output file name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   226
ASM_OUTPUT_OPTION=-o
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   227
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   228
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   229
# Translator Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   230
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   231
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   232
# Flags to be passed to the translator
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   233
TRANASM_FLAGS=-n -s 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   234
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   235
# Output option used to pass the output file name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   236
TRANASM_OUTPUT_OPTION=-o=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   237
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   238
# Input option used to pass the input file name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   239
TRANASM_INPUT_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   240
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   241
#---------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   242
# Include Options and Files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   243
#---------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   244
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   245
# Option to specify the location of the header files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   246
INCLUDE_OPTION=-I
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   247
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   248
# Preinclude file for that compiler that contains all the compiler specific definitions
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   249
# required by the Symbian OS source code.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   250
PREINCLUDE_OPTION=-include $(EPOCROOT)EPOC32/INCLUDE/GCCE/GCCE.h
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   251
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   252
# Include options required by Function Call Logger  
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   253
FC_LOGGER_INCLUDE_OPTION=-I
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   254
FC_LOGGER_DICTIONARY_FILE_NAME=--dictionary_file_name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   255
FC_LOGGER_GENERATED_C_FILE_NAME=--gen_c_file_name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   256
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   257
# Preinclude file to be passed to the Function Call Logger which uses EDG compiler 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   258
PREINCLUDE_OPTION_FCLOGGER=$(FC_LOGGER_INCLUDE_OPTION) $(EPOCROOT)EPOC32/INCLUDE/GCCE --preinclude edg_gcce.h
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   259
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   260
# Option to control the search for the header files. For example, if we do not want to do a search in the
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   261
# standard include directory of C++, then can restrict it by providing the appropriate option.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   262
HEADER_FILES_CONTROL_OPTION=-nostdinc
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   263
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   264
# Path to pick the header files from the Compiler installation directory
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   265
COMPILER_INCLUDE_PATH=$(call find-inc-path)include
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   266
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   267
# Fetches the version of the tools from the installation directory
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   268
VERSION_OPTION=-dumpversion
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   269
VERSION_INFO:=$(call find-version-info)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   270
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   271
GCC_MAJOR:=$(word 1,$(subst ., , $(VERSION_INFO)))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   272
GCC_MINOR:=$(word 2,$(subst ., , $(VERSION_INFO)))
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   273
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   274
#---------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   275
# Release Mode Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   276
#---------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   277
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   278
# Optimization Level in RELEASE mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   279
REL_OPTIMISATION=-O2 -fno-unit-at-a-time
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   280
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   281
# Specific compiler options for a UREL build
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   282
SYMBIAN_UREL_CCFLAGS=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   283
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   284
#---------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   285
# Symbol Attribute Setting Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   286
#---------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   287
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   288
# Option to set the visibility of runtime symbols as DEFAULT (instead of HIDDEN)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   289
RUNTIME_SYMBOL_VISIBILITY_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   290
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   291
# Option to specify the output of the toolchain
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   292
OUTPUT_OPTION=-o
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   293
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   294
# Options to be passed when building System Target(kernel)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   295
KERNEL_OPTIONS=$(ARM_INSTRUCTION_SET) $(NO_EXCEPTIONS)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   296
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   297
# Options to be passed when building in Arm mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   298
ARM_OPTIONS=$(ARM_INSTRUCTION_SET)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   299
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   300
# Options to be passed when building in Thumb mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   301
THUMB_OPTIONS=$(THUMB_INSTRUCTION_SET)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   302
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   303
# Common compiler options for Arm and Thumb mode
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   304
COMMON_OPTIONS=$(SYMBIAN_CC_MESSAGE_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   305
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   306
# Invariant Options which cannot be modified by the user from MMP file
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   307
INVARIANT_OPTIONS= $(TARGET_ARCH_OPTION) $(ENUM_OPTION) $(OWN_LIBRARY_OPTION) $(FPMODE_OPTION) $(EXPORT_VTBL_OPTION) $(VFE_OPTION) $(AAPCS_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   308
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   309
# Common compiler options for compiling programs targeted at Symbian OS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   310
CCFLAGS=$(COMMON_OPTIONS)  $(INVARIANT_OPTIONS) $(TEMP_FILES_OPTION) $(HEADER_FILES_CONTROL_OPTION) $(COMPILE_ONLY_OPTION) $(EXTRA_CC_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   311
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   312
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   313
# Linker Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   314
#------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   315
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   316
# Output option used to pass the output file name
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   317
LINKER_OUTPUT_OPTION=-o
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   318
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   319
# Option to generate debug information
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   320
LINKER_DEBUG_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   321
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   322
# Option to *not* generate debug information.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   323
LINKER_NODEBUG_OPTION=--strip-debug
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   324
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   325
#--------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   326
# Options to generate executables conforming to BPABI standards
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   327
#--------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   328
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   329
# Option to generate an executable conforming to the Base Platform ABI for the ARM Architecture
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   330
BPABI_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   331
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   332
# The `R_ARM_TARGET1' relocation is typically used for entries in the `.init_array' section. It is
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   333
# interpreted as either `R_ARM_REL32' or `R_ARM_ABS32', depending on the target. The following option
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   334
# override the default export relocations.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   335
ifeq "$(GCC_MAJOR)" "3"
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   336
	TARGET_RELOCATION_OPTION:=--target1-abs
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   337
else
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   338
	TARGET_RELOCATION_OPTION:=--target1-rel
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   339
endif
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   340
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   341
#-------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   342
# Options to specify the output format
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   343
#-------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   344
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   345
# Option to create a relocatable ELF image. A relocatable image has a dynamic segment that contains 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   346
# relocations that can be used to relocate the image post link-time.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   347
RELOCATABLE_IMAGE_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   348
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   349
# Option to create an ELF shared object.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   350
SHARED_OBJECT_OPTION=-shared
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   351
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   352
#-------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   353
# Options to set the Start of RO/RW sections
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   354
#-------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   355
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   356
# Option to set the start of the code section (RO Region)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   357
CODE_SEGMENT_START=-Ttext
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   358
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   359
# Option to split object into RO and RW sections
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   360
SPLIT_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   361
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   362
# Option to set the start of the Data section (RW region)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   363
RW_BASE_OPTION=-Tdata
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   364
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   365
# Option to be passed to the linker to set the start of the data section (RW region)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   366
DATA_SEGMENT_START=$(SPLIT_OPTION) $(RW_BASE_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   367
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   368
#---------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   369
# Options controlling generation of Linker Warnings/Errors 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   370
#---------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   371
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   372
# Option to control the Linker warnings
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   373
LD_WARNINGS_CONTROL_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   374
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   375
# Option to suppress the Linker errors
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   376
LD_ERRORS_CONTROL_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   377
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   378
# Option to modify the Linker warnings and errors for Symbian OS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   379
SYMBIAN_LD_MESSAGE_OPTION=$(LD_WARNINGS_CONTROL_OPTION) $(LD_ERRORS_CONTROL_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   380
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   381
# Option to specify whether unresolved symbol references from regular object files can be allowed or not.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   382
UNRESOLVED_SYMBOL_REF_OPTION=--no-undefined
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   383
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   384
# Option to specify the undefined reference
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   385
UNDEFINED_SYMBOL_REF_OPTION=-u
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   386
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   387
# Other additional Options to be passed to the Linker
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   388
EXTRA_LD_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   389
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   390
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   391
#Entry Point Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   392
#-------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   393
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   394
# Option to pass the explicit symbol for beginning execution of the program
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   395
LINKER_ENTRY_OPTION=--entry
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   396
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   397
# Symbol used to denote the Start of the gouped archives.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   398
START_GROUP_SYMBOL=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   399
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   400
# Symbol used to denote the End of the gouped archives.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   401
END_GROUP_SYMBOL=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   402
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   403
#-------------------------	
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   404
# Library Specific Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   405
#-------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   406
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   407
# Option to control the search in the standard libraries
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   408
STDLIB_OPTION=-nostdlib
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   409
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   410
# Additional static libraries that should be supplied to the linker to be linked with
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   411
STATIC_LIBS_LIST=-lsupc++ -lgcc
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   412
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   413
# Option to pass the path from where the runtime libraries should be picked up
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   414
STATIC_LIBS_PATH=-L
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   415
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   416
# Fetches the library path from the installation directory, here the functions will return null if the 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   417
# proper installation path is not set in the Environment Variable
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   418
STATIC_LIBRARY_PATH=$(STATIC_LIBS_PATH)$(call find-gcclib-path) $(STATIC_LIBS_PATH)$(call find-libsupc-path)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   419
STATIC_LIBS=$(STATIC_LIBRARY_PATH)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   420
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   421
# Additional runtime libraries that should be supplied to the linker to be linked with
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   422
# Provide the libraries separated by space, scppnwdl.dso should come before drtrvct2_2.dso
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   423
RUNTIME_LIBS_LIST=dfpaeabi.dso dfprvct2_2.dso drtaeabi.dso scppnwdl.dso drtrvct2_2.dso
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   424
ifeq "$(GCC_MAJOR)" "3" 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   425
	RUNTIME_LIBS_LIST=dfpaeabi.dso dfprvct2_2.dso drtaeabi.dso drtrvct2_2.dso
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   426
else
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   427
	RUNTIME_LIBS_LIST=drtaeabi.dso dfpaeabi.dso drtrvct3_1.dso dfprvct3_1.dso 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   428
endif
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   429
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   430
# The library that contains operator new and operator delete.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   431
SYM_NEW_LIB=scppnwdl.dso
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   432
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   433
# Option to pass the path from where the runtime libraries should be picked up
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   434
RUNTIME_LIBS_PATH=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   435
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   436
# Option to turn on implicit symbol versioning
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   437
SYMVER_OPTION=--default-symver
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   438
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   439
# Option to specify the shared object name that is stored in the executable
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   440
SO_NAME_OPTION=-soname
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   441
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   442
# Option to generate the map file that provides information about the linking
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   443
LINKER_SYMBOLS_OPTION=-Map
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   444
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   445
# Option to specify the Symbols file
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   446
LINKER_SYMBOLS_FILE_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   447
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   448
# Option to produce the Map file that provides information about linking
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   449
LINKER_SYMBOLS_MAP_OPTION=$(LINKER_SYMBOLS_OPTION) $(LINKER_SYMBOLS_FILE_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   450
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   451
# Option to specify the linker script file
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   452
LINKER_SCRIPT_FILE_OPTION=-T
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   453
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   454
#Via file prefix and suffix 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   455
VIA_FILE_PREFIX=-(
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   456
VIA_FILE_SUFFIX=-)	
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   457
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   458
# option to take object file names from other(via) file, here the condition check for 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   459
# GCCE compiler version is done as the via option differs for different versions in GCCE
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   460
ifeq ($(shell $(CC) -dumpversion),3.4.3)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   461
	COMMANDFILE_OPTION=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   462
else 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   463
	COMMANDFILE_OPTION=@
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   464
endif
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   465
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   466
# Linker options which can be customized from BSF 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   467
LD_OPTIONS=$(SYMBIAN_LD_MESSAGE_OPTION)$(UNRESOLVED_SYMBOL_REF_OPTION) $(STDLIB_OPTION) $(EXTRA_LD_OPTION)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   468
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   469
# Linker option common to all link commands for UREL build
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   470
SYMBIAN_UREL_LINK_FLAGS=$(BPABI_OPTION) $(RELOCATABLE_IMAGE_OPTION) $(TARGET_RELOCATION_OPTION) $(LD_OPTIONS)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   471
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   472
# Linker option common to all link commands for UDEB build
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   473
SYMBIAN_UDEB_LINK_FLAGS=$(BPABI_OPTION) $(RELOCATABLE_IMAGE_OPTION) $(TARGET_RELOCATION_OPTION) $(LD_OPTIONS)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   474
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   475
#-----------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   476
# Archiver Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   477
#-----------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   478
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   479
# ARCHIVER variable should be set since there is a dependency for this variable in e32test.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   480
ARCHIVER= $(AR)
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   481
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   482
ARCHIVER_CREATE_OPTION=cr
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   483
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   484
# Archiver options which can be set from BSF files
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   485
AR_OPTIONS=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   486
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   487
#--------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   488
# Compiler and Platform specific macros
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   489
#--------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   490
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   491
# Macro definitions required to identify the compiler. Allows for conditional compilation based on compiler
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   492
PLATFORM_DEFINES=-D__MARM_ARMV5__
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   493
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   494
COMPILER_DEFINES=-D__GCCE__
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   495
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   496
# Compiler target option
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   497
COMPILER_PLAT=GCCE
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   498
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   499
#--------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   500
# Function Call Logger Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   501
#--------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   502
FC_LOGGER_OPTION=--wchar_t_keyword --microsoft_version=1300 --diag_suppress 66,161,611,654,815,830,997,1152,1300,1390 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   503
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   504
# Defines for Function Call Logger 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   505
FC_LOGGER_DEFINES=
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   506
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   507
#------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   508
# OE Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   509
#------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   510
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   511
# Options to export all the globol symbols and import undefined references, required by OE
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   512
OE_OPTIONS=-fvisibility=default
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   513
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   514
# OE Glue code libs
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   515
OE_EXE_LIBS=libcrt0.lib
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   516
OE_EXE_LIBS_WCHAR=libwcrt0.lib
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   517
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   518
# OE Import Libs
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   519
OE_IMPORT_LIBS=euser.lib
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   520
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   521
# The library that contains operator new and operator delete.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   522
OE_NEW_LIB=stdnew.dso
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   523
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   524
#-----------------------------------------------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   525
#This section defines the interface with Symbian tools 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   526
#This SHOULD NOT be changed as any changes in this section will not be picked up by the tools back end
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   527
#-----------------------------------------------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   528
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   529
# Programs used from the ToolChain
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   530
export  CC
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   531
export  LD
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   532
export  ASM
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   533
export  AR
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   534
export  TRANASM
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   535
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   536
# Preprocessor Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   537
export  PREFIXFILE
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   538
export  CPP_LANG_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   539
export  C_LANG_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   540
export  CIA_LANG_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   541
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   542
# Option Prefix
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   543
export OPTION_PREFIX
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   544
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   545
# Compiler Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   546
export	PREPROCESSOR_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   547
export  ASSEMBLER_LISTING_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   548
export  ASM_OUTPUT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   549
export  INCLUDE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   550
export  PREINCLUDE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   551
export  HEADER_FILES_CONTROL_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   552
export  COMPILER_INCLUDE_PATH
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   553
export  SYMBIAN_UREL_CCFLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   554
export  SYMBIAN_UDEB_CCFLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   555
export  REL_OPTIMISATION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   556
export  DEBUG_OPTIMISATION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   557
export  ARM_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   558
export  THUMB_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   559
export  COMMON_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   560
export  INVARIANT_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   561
export  KERNEL_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   562
export  COMPILER_THUMB_DEFINES
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   563
export  COMPILER_INTERWORK_DEFINES
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   564
export  SOFTVFPMODE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   565
export  VFP2MODE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   566
export  RUNTIME_SYMBOL_VISIBILITY_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   567
export  OUTPUT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   568
export  CCFLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   569
export  UNIX_SLASH_FOR_CC_ABS_PATHS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   570
export  EXCEPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   571
export  NO_EXCEPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   572
export 	VERSION_INFO
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   573
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   574
# Linker Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   575
export  LINKER_OUTPUT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   576
export  LINKER_DEBUG_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   577
export  LINKER_NODEBUG_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   578
export  CODE_SEGMENT_START
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   579
export  DATA_SEGMENT_START
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   580
export  UNDEFINED_SYMBOL_REF_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   581
export  LINKER_ENTRY_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   582
export  START_GROUP_SYMBOL
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   583
export  END_GROUP_SYMBOL
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   584
export  SHARED_OBJECT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   585
export  STDLIB_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   586
export  STATIC_LIBS_LIST
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   587
export  STATIC_LIBS_PATH
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   588
export 	STATIC_LIBRARY_PATH
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   589
export  STATIC_LIBS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   590
export  RUNTIME_LIBS_LIST
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   591
export  RUNTIME_LIBS_PATH
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   592
export  SYM_NEW_LIB
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   593
export  SYMVER_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   594
export  SO_NAME_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   595
export  LINKER_SYMBOLS_MAP_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   596
export  COMMANDFILE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   597
export	VIA_FILE_PREFIX
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   598
export	VIA_FILE_SUFFIX
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   599
export  SYMBIAN_UREL_LINK_FLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   600
export  SYMBIAN_UDEB_LINK_FLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   601
export  LD_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   602
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   603
# Archiver Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   604
export  ARCHIVER
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   605
export  ARCHIVER_CREATE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   606
export  AR_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   607
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   608
# Compiler Specific Defines
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   609
export  COMPILER_DEFINES
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   610
export  COMPILER_PLAT
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   611
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   612
# Platform Specific Defines
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   613
export  PLATFORM_DEFINES
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   614
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   615
# Translator Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   616
export  TRANASM_FLAGS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   617
export  TRANASM_OUTPUT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   618
export  TRANASM_INPUT_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   619
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   620
# Function Call Logger options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   621
export PREINCLUDE_OPTION_FCLOGGER
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   622
export FC_LOGGER_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   623
export FC_LOGGER_DEFINES
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   624
export FC_LOGGER_INCLUDE_OPTION
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   625
export FC_LOGGER_DICTIONARY_FILE_NAME
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   626
export FC_LOGGER_GENERATED_C_FILE_NAME
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   627
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   628
#OE Options
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   629
export OE_OPTIONS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   630
export OE_EXE_LIBS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   631
export OE_EXE_LIBS_WCHAR
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   632
export OE_IMPORT_LIBS
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   633
export OE_NEW_LIB
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   634
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   635
#-----------------------------------------------------------------------------------------------------
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
   636