1 # ====================================================================
5 # SPARC ERC32 target HAL package configuration data
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
13 ## eCos is free software; you can redistribute it and/or modify it under
14 ## the terms of the GNU General Public License as published by the Free
15 ## Software Foundation; either version 2 or (at your option) any later version.
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 ## You should have received a copy of the GNU General Public License along
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
26 ## As a special exception, if other files instantiate templates or use macros
27 ## or inline functions from this file, or you compile this file and link it
28 ## with other works to produce a work based on this file, this file does not
29 ## by itself cause the resulting work to be covered by the GNU General Public
30 ## License. However the source code for this file must still be made available
31 ## in accordance with section (3) of the GNU General Public License.
33 ## This exception does not invalidate any other reasons why a work based on
34 ## this file might be covered by the GNU General Public License.
36 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37 ## at http://sources.redhat.com/ecos/ecos-license/
38 ## -------------------------------------------
39 #####ECOSGPLCOPYRIGHTEND####
40 # ====================================================================
41 ######DESCRIPTIONBEGIN####
48 #####DESCRIPTIONEND####
50 # ====================================================================
52 cdl_package CYGPKG_HAL_SPARC_ERC32 {
53 display "ERC32 processor"
54 parent CYGPKG_HAL_SPARC
55 define_header hal_sparc_erc32.h
58 The ERC32 HAL package is provided for both simulator (TSIM)
59 and real hardware use"
64 puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_sparc.h>"
65 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_sparc_erc32.h>"
66 puts $::cdl_header "#define CYGHWR_HAL_SPARC_MULTIPLE_VECTOR_TRAPPING /* true for ERC32 */"
67 puts $::cdl_header "#define HAL_IDLE_THREAD_ACTION hal_idle_thread_action /* true for ERC32 */"
70 cdl_component CYG_HAL_STARTUP {
71 display "Startup type"
76 define -file system.h CYG_HAL_STARTUP
78 When targetting the ERC32 processor only the RAM startup type
82 # Real-time clock/counter specifics
83 cdl_component CYGNUM_HAL_RTC_CONSTANTS {
84 display "Real-time clock constants."
87 cdl_option CYGNUM_HAL_RTC_NUMERATOR {
88 display "Real-time clock numerator"
90 default_value 1000000000
92 cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
93 display "Real-time clock denominator"
97 cdl_option CYGNUM_HAL_RTC_PERIOD {
98 display "Real-time clock period"
104 cdl_component CYGBLD_GLOBAL_OPTIONS {
105 display "Global build options"
108 Global build options including control over
109 compiler flags, linker flags and choice of toolchain."
114 cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
115 display "Global command prefix"
118 default_value { "sparc-rtems" }
120 This option specifies the command prefix used when
121 invoking the build tools."
124 cdl_option CYGBLD_GLOBAL_CFLAGS {
125 display "Global compiler flags"
128 default_value { "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" }
130 This option controls the global compiler flags which
131 are used to compile all packages by
132 default. Individual packages may define
133 options which override these global flags."
136 cdl_option CYGBLD_GLOBAL_LDFLAGS {
137 display "Global linker flags"
140 default_value { "-msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static" }
142 This option controls the global linker flags. Individual
143 packages may define options which override these global flags."
147 cdl_component CYGPKG_HAL_SPARC_ERC32_OPTIONS {
148 display "ERC32 processor build options"
151 Package specific build options including control over
152 compiler flags used only in building this package,
153 and details of which tests are built."
156 cdl_option CYGPKG_HAL_SPARC_ERC32_CFLAGS_ADD {
157 display "Additional compiler flags"
162 This option modifies the set of compiler flags for
163 building the ERC32 processor HAL. These flags are
164 used in addition to the set of global flags."
167 cdl_option CYGPKG_HAL_SPARC_ERC32_CFLAGS_REMOVE {
168 display "Suppressed compiler flags"
173 This option modifies the set of compiler flags for
174 building the ERC32 processor HAL. These flags are
175 removed from the set of global flags if present."
179 cdl_component CYGHWR_MEMORY_LAYOUT {
180 display "Memory layout"
183 calculated { "sparc_erc32_ram" }
185 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
186 display "Memory layout linker script fragment"
189 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
190 calculated { "<pkgconf/mlt_sparc_erc32_ram.ldi>" }
193 cdl_option CYGHWR_MEMORY_LAYOUT_H {
194 display "Memory layout header file"
197 define -file system.h CYGHWR_MEMORY_LAYOUT_H
198 calculated { "<pkgconf/mlt_sparc_erc32_ram.h>" }