OSDN Git Service

- wrap superlong lines
[uclinux-h8/uClibc.git] / extra / Configs / Config.in.arch
1 #
2 # For a description of the syntax of this configuration file,
3 # see extra/config/Kconfig-language.txt
4 #
5
6
7 #
8 # Binary format
9 #
10 if !ARCH_USE_MMU
11 choice
12         prompt "Target File Format"
13 config UCLIBC_FORMAT_ELF
14         bool "ELF"
15         depends on ARCH_USE_MMU
16 config UCLIBC_FORMAT_FDPIC_ELF
17         bool "FDPIC ELF"
18         depends on !ARCH_USE_MMU
19 config UCLIBC_FORMAT_FLAT
20         bool "STATIC FLAT"
21         depends on !ARCH_USE_MMU
22         select ARCH_HAS_NO_LDSO
23 config UCLIBC_FORMAT_FLAT_SEP_DATA
24         bool "STATIC FLAT (sep-data)"
25         depends on !ARCH_USE_MMU
26         select ARCH_HAS_NO_LDSO
27 config UCLIBC_FORMAT_SHARED_FLAT
28         bool "SHARED FLAT"
29         depends on !ARCH_USE_MMU
30         select ARCH_HAS_NO_LDSO
31         help
32           Pick this one if you are using uClinux and wish to build
33           uClibc as a flat-format shared library.
34 endchoice
35 endif
36 if ARCH_USE_MMU
37 comment "Using ELF file format"
38 endif
39
40 config UCLIBC_SHARED_FLAT_ID
41         int "Shared library ID"
42         default 1
43         depends on UCLIBC_FORMAT_SHARED_FLAT
44         help
45           When using flat shared libraries, every library has a unique
46           system-wide identifier.  Identifier 0 is reserved for
47           executables and true shared libraries have identifiers
48           starting at 1.  The maximum shared library identifier is
49           determined by the kernel and is usually 3.  Shared library
50           N must be available on the target system as "/lib/libN.so".
51
52           When a shared C library is used, it usually has identifier 1,
53           but you can use this option to select a different identifier
54           if you need to.
55
56
57
58 #
59 # Endian Format
60 #
61 config ARCH_ANY_ENDIAN
62         bool
63 config ARCH_BIG_ENDIAN
64         bool
65 config ARCH_LITTLE_ENDIAN
66         bool
67 if ARCH_ANY_ENDIAN
68 choice
69         prompt "Target Processor Endianness"
70         help
71           This is the endianness you wish to use.  Choose either Big
72           Endian, or Little Endian.
73 config ARCH_WANTS_BIG_ENDIAN
74         bool "Big Endian"
75         select ARCH_BIG_ENDIAN
76 config ARCH_WANTS_LITTLE_ENDIAN
77         bool "Little Endian"
78         select ARCH_LITTLE_ENDIAN
79 endchoice
80 endif
81 # if the arch only supports one endian, just display the setting
82 if !ARCH_ANY_ENDIAN && ARCH_LITTLE_ENDIAN
83 comment "Using Little Endian"
84 endif
85 if !ARCH_ANY_ENDIAN && ARCH_BIG_ENDIAN
86 comment "Using Big Endian"
87 endif
88
89 config ARCH_HAS_NO_MMU
90         bool
91 if ARCH_HAS_NO_MMU
92 comment "Target CPU lacks a memory management unit (MMU)"
93 endif
94
95 config ARCH_HAS_MMU
96         bool "Target CPU has a memory management unit (MMU)"
97         depends !ARCH_HAS_NO_MMU
98         default y
99         help
100           If your target CPU does not have a memory management unit (MMU), 
101           then answer N here.  Normally, Linux runs on systems with an MMU.  
102           If you are building a uClinux system, answer N.
103
104           Most people will answer Y.
105
106 config ARCH_USE_MMU
107         bool "Do you want to utilize the MMU?"
108         depends on ARCH_HAS_MMU
109         default y
110         help
111           If your target CPU has a MMU, and you wish to actually utilize it,
112           then answer Y here.  Normal Linux requires an MMU.
113
114           If you're unsure, answer Y.
115
116 config UCLIBC_HAS_FLOATS
117         bool "Enable floating point number support"
118         default y
119         help
120           This option allows you to entirely omit all floating point number
121           support from uClibc.  This will cause floating point functions like
122           strtod() to be omitted from uClibc.  Other floating point functions, 
123           such as printf() and scanf() will still be included in the library, 
124           but will not contain support for floating point numbers.
125
126           Answering N to this option can reduce the size of uClibc.
127           Most people will answer Y.
128
129 config UCLIBC_HAS_FPU
130         bool "Target CPU has a floating point unit (FPU)"
131         depends on UCLIBC_HAS_FLOATS
132         default y
133         help
134           If your target CPU does not have a Floating Point Unit (FPU) or a
135           kernel FPU emulator, but you still wish to support floating point
136           functions, then uClibc will need to be compiled with soft floating
137           point support (-msoft-float).  If your target CPU does not have an
138           FPU or an FPU emulator within the Linux kernel, then you should
139           answer N.
140
141           Most people will answer Y.
142
143 config UCLIBC_HAS_SOFT_FLOAT
144         bool
145         depends on UCLIBC_HAS_FLOATS && !UCLIBC_HAS_FPU
146         default y
147
148 config DO_C99_MATH
149         bool "Enable full C99 math library support"
150         depends on UCLIBC_HAS_FLOATS
151         default n
152         help
153           If you want the uClibc math library to contain the full set C99
154           math library features, then answer Y.  If you leave this set to
155           N the math library will contain only the math functions that were
156           listed as part of the traditional POSIX/IEEE 1003.1b-1993 standard.
157           Leaving this option set to N will save around 35k on an x86 system.
158
159           If your applications require the newer C99 math library functions, 
160           then answer Y.
161
162 config UCLIBC_HAS_FENV
163         bool "Enable C99 Floating-point environment"
164         depends on UCLIBC_HAS_FLOATS
165         default n
166         help
167           If you want the uClibc math library to contain the C99 floating
168           point environment, rounding and exception handling functions then
169           say Y here.
170
171 config KERNEL_HEADERS
172         string "Linux kernel header location"
173         default "/usr/include"
174         help
175           The kernel source you use to compile with should be the same
176           as the Linux kernel you run your apps on.  uClibc doesn't even
177           try to achieve binary compatibility across kernel versions.
178           So don't expect, for example, uClibc compiled with Linux kernel
179           2.0.x to implement lchown properly, since 2.0.x can't do that.
180           Similarly, if you compile uClibc vs Linux 2.4.x kernel headers,
181           but then run on Linux 2.0.x, lchown will be compiled into uClibc,
182           but won't work at all.  You have been warned.
183
184 config UCLIBC_UCLINUX_BROKEN_MUNMAP
185         bool
186         depends on !ARCH_USE_MMU
187         default y
188
189 config EXCLUDE_BRK
190         bool
191         depends on !ARCH_USE_MMU
192         default y
193
194 config HAVE_DOT_CONFIG
195         bool
196         default y