| 1 |
# ==================================================================== |
|---|
| 2 |
# |
|---|
| 3 |
# hal_mips_mips64.cdl |
|---|
| 4 |
# |
|---|
| 5 |
# MIPS 64 variant architectural HAL package configuration data |
|---|
| 6 |
# |
|---|
| 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. |
|---|
| 12 |
## |
|---|
| 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. |
|---|
| 16 |
## |
|---|
| 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 |
|---|
| 20 |
## for more details. |
|---|
| 21 |
## |
|---|
| 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. |
|---|
| 25 |
## |
|---|
| 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. |
|---|
| 32 |
## |
|---|
| 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. |
|---|
| 35 |
## |
|---|
| 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#### |
|---|
| 42 |
# |
|---|
| 43 |
# Author(s): nickg (after MIPS32 by dmoseley) |
|---|
| 44 |
# Original data: bartv, nickg |
|---|
| 45 |
# Contributors: |
|---|
| 46 |
# Date: 2001-01-30 |
|---|
| 47 |
# |
|---|
| 48 |
#####DESCRIPTIONEND#### |
|---|
| 49 |
# |
|---|
| 50 |
# ==================================================================== |
|---|
| 51 |
|
|---|
| 52 |
cdl_package CYGPKG_HAL_MIPS_MIPS64 { |
|---|
| 53 |
display "MIPS64 variant" |
|---|
| 54 |
parent CYGPKG_HAL_MIPS |
|---|
| 55 |
hardware |
|---|
| 56 |
include_dir cyg/hal |
|---|
| 57 |
description " |
|---|
| 58 |
The MIPS64 architecture HAL package provides generic support |
|---|
| 59 |
for this processor architecture. It is also necessary to |
|---|
| 60 |
select a specific target platform HAL package." |
|---|
| 61 |
|
|---|
| 62 |
cdl_option CYGHWR_HAL_MIPS_MIPS64_CORE { |
|---|
| 63 |
display "Mips64 processor core used" |
|---|
| 64 |
flavor data |
|---|
| 65 |
default_value {"5K"} |
|---|
| 66 |
legal_values {"5K" "20K" } |
|---|
| 67 |
description " |
|---|
| 68 |
The MIPS64 cores come in (at least) 2 flavors. The main |
|---|
| 69 |
differences being in the MMU" |
|---|
| 70 |
} |
|---|
| 71 |
|
|---|
| 72 |
implements CYGINT_HAL_MIPS_VARIANT |
|---|
| 73 |
|
|---|
| 74 |
cdl_option CYGHWR_HAL_MIPS_64BIT { |
|---|
| 75 |
display "Variant 64 bit architecture support" |
|---|
| 76 |
calculated 1 |
|---|
| 77 |
} |
|---|
| 78 |
|
|---|
| 79 |
cdl_option CYGHWR_HAL_MIPS_FPU { |
|---|
| 80 |
display "Variant FPU support" |
|---|
| 81 |
calculated 0 |
|---|
| 82 |
} |
|---|
| 83 |
|
|---|
| 84 |
cdl_option CYGHWR_HAL_MIPS_FPU_64BIT { |
|---|
| 85 |
display "Variant 64 bit FPU support" |
|---|
| 86 |
calculated 1 |
|---|
| 87 |
} |
|---|
| 88 |
|
|---|
| 89 |
cdl_option CYGPKG_HAL_MIPS_LSBFIRST { |
|---|
| 90 |
display "CPU Variant little-endian" |
|---|
| 91 |
calculated 1 |
|---|
| 92 |
} |
|---|
| 93 |
|
|---|
| 94 |
cdl_option CYGPKG_HAL_MIPS_GDB_REPORT_CP0 { |
|---|
| 95 |
display "Report contents of CP0 to GDB" |
|---|
| 96 |
calculated 1 |
|---|
| 97 |
} |
|---|
| 98 |
|
|---|
| 99 |
define_proc { |
|---|
| 100 |
puts $::cdl_header "#include <pkgconf/hal_mips.h>" |
|---|
| 101 |
} |
|---|
| 102 |
|
|---|
| 103 |
compile var_misc.c variant.S |
|---|
| 104 |
|
|---|
| 105 |
make { |
|---|
| 106 |
<PREFIX>/lib/target.ld: <PACKAGE>/src/mips_mips64.ld |
|---|
| 107 |
$(CC) -E -P -Wp,-MD,target.tmp -DEXTRAS=1 -xc $(INCLUDE_PATH) $(CFLAGS) -o $@ $< |
|---|
| 108 |
@echo $@ ": \\" > $(notdir $@).deps |
|---|
| 109 |
@tail -n +2 target.tmp >> $(notdir $@).deps |
|---|
| 110 |
@echo >> $(notdir $@).deps |
|---|
| 111 |
@rm target.tmp |
|---|
| 112 |
} |
|---|
| 113 |
|
|---|
| 114 |
cdl_option CYGBLD_LINKER_SCRIPT { |
|---|
| 115 |
display "Linker script" |
|---|
| 116 |
flavor data |
|---|
| 117 |
no_define |
|---|
| 118 |
calculated { "src/mips_mips64.ld" } |
|---|
| 119 |
} |
|---|
| 120 |
|
|---|
| 121 |
cdl_component CYGBLD_GLOBAL_OPTIONS { |
|---|
| 122 |
display "Global build options" |
|---|
| 123 |
flavor none |
|---|
| 124 |
parent CYGPKG_NONE |
|---|
| 125 |
description " |
|---|
| 126 |
Global build options including control over |
|---|
| 127 |
compiler flags, linker flags and choice of toolchain." |
|---|
| 128 |
|
|---|
| 129 |
|
|---|
| 130 |
cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { |
|---|
| 131 |
display "Global command prefix" |
|---|
| 132 |
flavor data |
|---|
| 133 |
no_define |
|---|
| 134 |
default_value { "mipsisa32-elf" } |
|---|
| 135 |
description " |
|---|
| 136 |
This option specifies the command prefix used when |
|---|
| 137 |
invoking the build tools. Note that both MIPS32 and |
|---|
| 138 |
MIPS64 targets use the same toolchain." |
|---|
| 139 |
} |
|---|
| 140 |
|
|---|
| 141 |
cdl_option CYGBLD_GLOBAL_CFLAGS { |
|---|
| 142 |
display "Global compiler flags" |
|---|
| 143 |
flavor data |
|---|
| 144 |
no_define |
|---|
| 145 |
default_value { "-mips64 -EL -msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -Os -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -G0" } |
|---|
| 146 |
description " |
|---|
| 147 |
This option controls the global compiler flags which |
|---|
| 148 |
are used to compile all packages by |
|---|
| 149 |
default. Individual packages may define |
|---|
| 150 |
options which override these global flags." |
|---|
| 151 |
} |
|---|
| 152 |
|
|---|
| 153 |
cdl_option CYGBLD_GLOBAL_LDFLAGS { |
|---|
| 154 |
display "Global linker flags" |
|---|
| 155 |
flavor data |
|---|
| 156 |
no_define |
|---|
| 157 |
default_value { "-EL -msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static" } |
|---|
| 158 |
description " |
|---|
| 159 |
This option controls the global linker flags. Individual |
|---|
| 160 |
packages may define options which override these global flags." |
|---|
| 161 |
} |
|---|
| 162 |
|
|---|
| 163 |
} |
|---|
| 164 |
|
|---|
| 165 |
} |
|---|