Mercurial > ecos
diff packages/hal/arm/arch/current/cdl/hal_arm.cdl @ 76:435cced73e2f ecos-v1_3_1-release
eCos v1.3.1 merged from eCos master repository on 2000-03-27-23:22:51-BST
| author | jlarmour |
|---|---|
| date | Tue, 28 Mar 2000 14:10:45 +0000 |
| parents | |
| children | 6ed91473a1cd |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/packages/hal/arm/arch/current/cdl/hal_arm.cdl @@ -0,0 +1,145 @@ +# ==================================================================== +# +# hal_arm.cdl +# +# ARM architectural HAL package configuration data +# +# ==================================================================== +#####COPYRIGHTBEGIN#### +# +# ------------------------------------------- +# The contents of this file are subject to the Red Hat eCos Public License +# Version 1.1 (the "License"); you may not use this file except in +# compliance with the License. You may obtain a copy of the License at +# http://www.redhat.com/ +# +# Software distributed under the License is distributed on an "AS IS" +# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +# License for the specific language governing rights and limitations under +# the License. +# +# The Original Code is eCos - Embedded Configurable Operating System, +# released September 30, 1998. +# +# The Initial Developer of the Original Code is Red Hat. +# Portions created by Red Hat are +# Copyright (C) 1998, 1999, 2000 Red Hat, Inc. +# All Rights Reserved. +# ------------------------------------------- +# +#####COPYRIGHTEND#### +# ==================================================================== +######DESCRIPTIONBEGIN#### +# +# Author(s): bartv +# Original data: gthomas +# Contributors: +# Date: 1999-06-13 +# +#####DESCRIPTIONEND#### +# +# ==================================================================== +cdl_package CYGPKG_HAL_ARM { + display "ARM architecture" + parent CYGPKG_HAL + hardware + include_dir cyg/hal + define_header hal_arm.h + description " + The ARM architecture HAL package provides generic + support for this processor architecture. It is also + necessary to select a specific target platform HAL + package." + + # This package allows GDB protocol on diag serial device + # to be explicitly controlled, i.e. turned off. + + implements CYGINT_HAL_DIAG_DISABLE_GDB_PROTOCOL_SUPPORTED + + compile hal_misc.c context.S arm_stub.c + + # The "-o file" is a workaround for CR100958 - without it the + # output file would end up in the source directory under CygWin. + # n.b. grep does not behave itself under win32 + make -priority 1 { + arm.inc : <PACKAGE>/src/hal_mk_defs.c + $(CC) $(CFLAGS) $(INCLUDE_PATH) -Wp,-MD,arm.tmp -o hal_mk_defs.tmp -S $< + fgrep .equ hal_mk_defs.tmp | sed s/#// > $@ + @echo $@ ": \\" > $(notdir $@).deps + @tail +2 arm.tmp >> $(notdir $@).deps + @echo >> $(notdir $@).deps + @rm arm.tmp hal_mk_defs.tmp + } + + make { + <PREFIX>/lib/vectors.o : <PACKAGE>/src/vectors.S + $(CC) -Wp,-MD,vectors.tmp $(INCLUDE_PATH) $(CFLAGS) -c -o $@ $< + @echo $@ ": \\" > $(notdir $@).deps + @tail +2 vectors.tmp >> $(notdir $@).deps + @echo >> $(notdir $@).deps + @rm vectors.tmp + } + + make { + <PREFIX>/lib/target.ld: <PACKAGE>/src/arm.ld + $(CC) -E -P -Wp,-MD,target.tmp -DEXTRAS=1 -xc $(INCLUDE_PATH) $(CFLAGS) -o $@ $< + @echo $@ ": \\" > $(notdir $@).deps + @tail +2 target.tmp >> $(notdir $@).deps + @echo >> $(notdir $@).deps + @rm target.tmp + } + + cdl_option CYGHWR_THUMB { + display "Enable Thumb instruction set" + default_value 0 + description " + Enable use of the Thumb instruction set." + } + + cdl_option CYGHWR_HAL_ARM_BIGENDIAN { + display "Use big-endian mode" + default_value 0 + description " + Use the CPU in big-endian mode." + } + + cdl_option CYGHWR_HAL_ARM_CPU_FAMILY { + display "ARM CPU family" + flavor data + legal_values {"ARM7" "ARM9"} + default_value {"ARM7"} + no_define + description " + It is possible to optimize code for either the ARM7 or + ARM9 CPU family. This option selects which CPU to + optimize for on boards that support both CPUs." + } + + cdl_option CYGHWR_HAL_ARM_DUMP_EXCEPTIONS { + display "Provide diagnostic dump for exceptions" + requires !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS + default_value 0 + description " + Print messages about hardware exceptions, including + raw exception frame dump and register contents." + } + + cdl_option CYGIMP_HAL_PROCESS_ALL_EXCEPTIONS { + display "Process all exceptions with the eCos application" + default_value 0 + description " + Normal RAM-based programs which do not include GDB stubs + defer processing of the illegal instruction exception to GDB. + Setting this options allows the program to explicitly handle + the illegal instruction exception itself. Note: this will + prevent the use of GDB to debug the application as breakpoints + will no longer work." + } + + cdl_option CYGBLD_LINKER_SCRIPT { + display "Linker script" + flavor data + no_define + calculated { "src/arm.ld" } + } +}
