Subversion Repositories HelenOS

Rev

Rev 3022 | Rev 4156 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3022 Rev 4055
Line 1... Line 1...
1
#
1
#
2
# Copyright (c) 2006 Ondrej Palkovsky 
2
# Copyright (c) 2006 Ondrej Palkovsky
-
 
3
# Copyright (c) 2009 Martin Decky
3
# All rights reserved.
4
# All rights reserved.
4
#
5
#
5
# Redistribution and use in source and binary forms, with or without
6
# Redistribution and use in source and binary forms, with or without
6
# modification, are permitted provided that the following conditions
7
# modification, are permitted provided that the following conditions
7
# are met:
8
# are met:
Line 24... Line 25...
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
#
28
#
28
 
29
 
29
## General configuration directives
30
## General platform options
30
 
31
 
31
# Platform
32
% Platform
32
@ "amd64" AMD64/Intel EM64T (PC)
33
@ "amd64" AMD64/Intel EM64T (PC)
33
@ "arm32" ARM 32-bit
34
@ "arm32" ARM 32-bit
34
@ "ia32" Intel IA-32 (PC)
35
@ "ia32" Intel IA-32 (PC)
35
@ "ia32xen" Intel IA-32 on Xen hypervisor
-
 
36
@ "ia64" Intel IA-64
36
@ "ia64" Intel IA-64
37
@ "mips32" MIPS 32-bit
37
@ "mips32" MIPS 32-bit
38
@ "ppc32" PowerPC 32-bit (iMac G4)
38
@ "ppc32" PowerPC 32-bit (iMac G4)
39
@ "ppc64" PowerPC 64-bit (iMac G5)
-
 
40
@ "sparc64" Sun UltraSPARC 64-bit
39
@ "sparc64" Sun UltraSPARC 64-bit
41
! PLATFORM (choice)
40
! PLATFORM (choice)
42
 
41
 
43
# Machine
42
% Machine type
44
@ "msim" MSIM
43
@ "msim" MSIM
45
@ "simics" Simics
44
@ "simics" Simics
46
@ "bgxemul" GXEmul big endian
45
@ "bgxemul" GXEmul big endian
47
@ "lgxemul" GXEmul little endia
46
@ "lgxemul" GXEmul little endian
48
@ "indy" Sgi Indy
-
 
49
! [PLATFORM=mips32] MACHINE (choice)
47
! [PLATFORM=mips32] MACHINE (choice)
50
 
48
 
51
# Machine type
49
% Machine type
52
@ "ski" Ski ia64 simulator
50
@ "gxemul" GXEmul
-
 
51
! [PLATFORM=arm32] MACHINE (choice)
-
 
52
 
-
 
53
% Machine type
53
@ "i460GX" i460GX chipset machine
54
@ "i460GX" i460GX chipset machine
-
 
55
@ "ski" Ski ia64 simulator
54
! [PLATFORM=ia64] MACHINE (choice)
56
! [PLATFORM=ia64] MACHINE (choice)
55
 
57
 
56
# Machine
58
% Machine type
-
 
59
@ "generic" Generic Sun workstation or server
57
@ "gxemul_testarm" GXEmul testarm
60
@ "serengeti" Serengeti system
58
! [PLATFORM=arm32] MACHINE (choice)
61
! [PLATFORM=sparc64] MACHINE (choice)
-
 
62
 
-
 
63
% CPU type
-
 
64
@ "pentium4" Pentium 4
-
 
65
@ "pentium3" Pentium 3
-
 
66
@ "core" Core Solo/Duo
-
 
67
@ "athlon_xp" Athlon XP
-
 
68
@ "athlon_mp" Athlon MP
-
 
69
! [PLATFORM=ia32] PROCESSOR (choice)
-
 
70
 
-
 
71
% CPU type
-
 
72
@ "opteron" Opteron
-
 
73
! [PLATFORM=amd64] PROCESSOR (choice)
-
 
74
 
-
 
75
% CPU type
-
 
76
@ "us" UltraSPARC I-II subarchitecture
-
 
77
@ "us3" UltraSPARC III-IV subarchitecture
-
 
78
! [PLATFORM=sparc64&MACHINE=generic] PROCESSOR (choice)
-
 
79
 
-
 
80
% CPU type
-
 
81
@ "us3"
-
 
82
! [PLATFORM=sparc64&MACHINE=serengeti] PROCESSOR (choice)
-
 
83
 
-
 
84
% Ramdisk format
-
 
85
@ "tmpfs" TMPFS image
-
 
86
@ "fat" FAT16 image
-
 
87
! RDFMT (choice)
-
 
88
 
-
 
89
 
-
 
90
## Mapping between platform and kernel architecture
-
 
91
 
-
 
92
% Kernel architecture
-
 
93
@ "amd64"
-
 
94
! [PLATFORM=amd64] KARCH (choice)
-
 
95
 
-
 
96
% Kernel architecture
-
 
97
@ "arm32"
-
 
98
! [PLATFORM=arm32] KARCH (choice)
-
 
99
 
-
 
100
% Kernel architecture
-
 
101
@ "ia32"
-
 
102
! [PLATFORM=ia32] KARCH (choice)
-
 
103
 
-
 
104
% Kernel architecture
-
 
105
@ "ia32xen"
-
 
106
! [PLATFORM=ia32xen] KARCH (choice)
-
 
107
 
-
 
108
% Kernel architecture
-
 
109
@ "ia64"
-
 
110
! [PLATFORM=ia64] KARCH (choice)
-
 
111
 
-
 
112
% Kernel architecture
-
 
113
@ "mips32"
-
 
114
! [PLATFORM=mips32] KARCH (choice)
-
 
115
 
-
 
116
% Kernel architecture
-
 
117
@ "ppc32"
-
 
118
! [PLATFORM=ppc32] KARCH (choice)
-
 
119
 
-
 
120
% Kernel architecture
-
 
121
@ "ppc64"
-
 
122
! [PLATFORM=ppc64] KARCH (choice)
-
 
123
 
-
 
124
% Kernel architecture
-
 
125
@ "sparc64"
-
 
126
! [PLATFORM=sparc64] KARCH (choice)
-
 
127
 
-
 
128
 
-
 
129
## Mapping between platform and user space architecture
-
 
130
 
-
 
131
% User space architecture
-
 
132
@ "amd64"
-
 
133
! [PLATFORM=amd64] UARCH (choice)
-
 
134
 
-
 
135
% User space architecture
-
 
136
@ "arm32"
-
 
137
! [PLATFORM=arm32] UARCH (choice)
-
 
138
 
-
 
139
% User space architecture
-
 
140
@ "ia32"
-
 
141
! [PLATFORM=ia32|PLATFORM=ia32xen] UARCH (choice)
-
 
142
 
-
 
143
% User space architecture
-
 
144
@ "ia64"
-
 
145
! [PLATFORM=ia64] UARCH (choice)
-
 
146
 
-
 
147
% User space architecture
-
 
148
@ "mips32"
-
 
149
! [PLATFORM=mips32&(MACHINE=msim|MACHINE=simics|MACHINE=lgxemul)] UARCH (choice)
-
 
150
 
-
 
151
% User space architecture
-
 
152
@ "mips32eb"
-
 
153
! [PLATFORM=mips32&MACHINE=bgxemul] UARCH (choice)
-
 
154
 
-
 
155
% User space architecture
-
 
156
@ "ppc32"
-
 
157
! [PLATFORM=ppc32] UARCH (choice)
-
 
158
 
-
 
159
% User space architecture
-
 
160
@ "ppc64"
-
 
161
! [PLATFORM=ppc64] UARCH (choice)
-
 
162
 
-
 
163
% User space architecture
-
 
164
@ "sparc64"
-
 
165
! [PLATFORM=sparc64] UARCH (choice)
-
 
166
 
-
 
167
 
-
 
168
## Mapping between platform and boot architecture
-
 
169
 
-
 
170
% Boot architecture
-
 
171
@ "amd64"
-
 
172
! [PLATFORM=amd64] BARCH (choice)
-
 
173
 
-
 
174
% Boot architecture
-
 
175
@ "arm32"
-
 
176
! [PLATFORM=arm32] BARCH (choice)
-
 
177
 
-
 
178
% Boot architecture
-
 
179
@ "ia32"
-
 
180
! [PLATFORM=ia32] BARCH (choice)
-
 
181
 
-
 
182
% Boot architecture
-
 
183
@ "ia32xen"
-
 
184
! [PLATFORM=ia32xen] BARCH (choice)
-
 
185
 
-
 
186
% Boot architecture
-
 
187
@ "ia64"
-
 
188
! [PLATFORM=ia64] BARCH (choice)
-
 
189
 
-
 
190
% Boot architecture
-
 
191
@ "mips32"
-
 
192
! [PLATFORM=mips32] BARCH (choice)
-
 
193
 
-
 
194
% Boot architecture
-
 
195
@ "ppc32"
-
 
196
! [PLATFORM=ppc32] BARCH (choice)
-
 
197
 
-
 
198
% Boot architecture
-
 
199
@ "ppc64"
-
 
200
! [PLATFORM=ppc64] BARCH (choice)
-
 
201
 
-
 
202
% Boot architecture
-
 
203
@ "sparc64"
-
 
204
! [PLATFORM=sparc64] BARCH (choice)
-
 
205
 
-
 
206
 
-
 
207
## Mapping between platform and image format
-
 
208
 
-
 
209
% Image format
-
 
210
@ "binary"
-
 
211
! [PLATFORM=mips32&MACHINE=msim] IMAGE (choice)
-
 
212
 
-
 
213
% Image format
-
 
214
@ "ecoff"
-
 
215
! [PLATFORM=mips32&(MACHINE=simics|MACHINE=bgxemul|MACHINE=lgxemul)] IMAGE (choice)
-
 
216
 
-
 
217
 
-
 
218
## Compiler options
59
 
219
 
60
# Compiler
220
% Compiler
61
@ "gcc_cross" GCC Cross-compiler
221
@ "gcc_cross" GCC Cross-compiler
62
@ "gcc_native" GCC Native
222
@ "gcc_native" GCC Native
63
@ "icc_native" ICC Native
223
@ "icc_native" ICC Native
64
@ "suncc_native" Sun Studio C Compiler
224
@ "suncc_native" Sun Studio C Compiler
65
! [PLATFORM=amd64|PLATFORM=ia32|PLATFORM=ia32xen] COMPILER (choice)
225
! [PLATFORM=amd64|PLATFORM=ia32] COMPILER (choice)
66
 
226
 
67
# Compiler
227
% Compiler
68
@ "gcc_cross" GCC Cross-compiler
228
@ "gcc_cross" GCC Cross-compiler
69
@ "gcc_native" GCC Native
229
@ "gcc_native" GCC Native
70
@ "icc_native" ICC Native
230
@ "icc_native" ICC Native
71
! [PLATFORM=ia64] COMPILER (choice)
231
! [PLATFORM=ia64] COMPILER (choice)
72
 
232
 
73
# Compiler
233
% Compiler
74
@ "gcc_cross" GCC Cross-compiler
234
@ "gcc_cross" GCC Cross-compiler
75
@ "gcc_native" GCC Native
235
@ "gcc_native" GCC Native
76
@ "suncc_native" Sun Studio C Compiler
236
@ "suncc_native" Sun Studio C Compiler
77
! [PLATFORM=sparc64] COMPILER (choice)
237
! [PLATFORM=sparc64] COMPILER (choice)
78
 
238
 
79
# Compiler
239
% Compiler
80
@ "gcc_cross" GCC Cross-compiler
240
@ "gcc_cross" GCC Cross-compiler
81
@ "gcc_native" GCC Native
241
@ "gcc_native" GCC Native
82
! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=ppc64] COMPILER (choice)
242
! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] COMPILER (choice)
83
 
243
 
-
 
244
## Debug build options
-
 
245
 
84
# Debug build
246
% Debug build
85
! CONFIG_DEBUG (y/n)
247
! CONFIG_DEBUG (y/n)
-
 
248
 
-
 
249
% Deadlock detection support for spinlocks
-
 
250
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
-
 
251
 
-
 
252
## Kernel configuration
-
 
253
 
-
 
254
% Fences
-
 
255
! [PLATFORM=ia32&(PROCESSOR=athlon_xp|PROCESSOR=athlon_mp|PROCESSOR=pentium3)] CONFIG_FENCES_P3 (y)
-
 
256
 
-
 
257
% Fences
-
 
258
! [PLATFORM=ia32&(PROCESSOR=pentium4|PROCESSOR=core)] CONFIG_FENCES_P4 (y)
-
 
259
 
-
 
260
% Fences
-
 
261
! [PLATFORM=amd64] CONFIG_FENCES_P4 (y)
-
 
262
 
-
 
263
% ACPI support
-
 
264
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_ACPI (y)
-
 
265
 
-
 
266
% Hierarchical page tables support
-
 
267
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_PAGE_PT (y)
-
 
268
 
-
 
269
% Page hash table support
-
 
270
! [PLATFORM=ia64|PLATFORM=sparc64] CONFIG_PAGE_HT (y)
-
 
271
 
-
 
272
% Software integer division support
-
 
273
! [PLATFORM=ia32|PLATFORM=arm32|PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_SOFTINT (y)
-
 
274
 
-
 
275
% ASID support
-
 
276
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID (y)
-
 
277
 
-
 
278
% ASID FIFO support
-
 
279
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID_FIFO (y)
-
 
280
 
-
 
281
% OpenFirmware tree support
-
 
282
! [PLATFORM=sparc64] CONFIG_OFW_TREE (y)
-
 
283
 
-
 
284
% Multiboot standard support
-
 
285
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_MULTIBOOT (y)
-
 
286
 
-
 
287
% FPU support
-
 
288
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia64|PLATFORM=sparc64] CONFIG_FPU (y)
-
 
289
 
-
 
290
% FPU support
-
 
291
! [PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul)] CONFIG_FPU (y)
-
 
292
 
-
 
293
 
-
 
294
## Kernel features options
-
 
295
 
-
 
296
% Support for SMP
-
 
297
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ia64|(PLATFORM=mips32&MACHINE=msim)] CONFIG_SMP (y/n)
-
 
298
 
-
 
299
% Improved support for hyperthreading
-
 
300
! [PLATFORM=amd64&CONFIG_SMP=y] CONFIG_HT (y/n)
-
 
301
% Improved support for hyperthreading
-
 
302
! [PLATFORM=ia32&PROCESSOR!=athlon_xp&PROCESSOR!=athlon_mp&PROCESSOR!=pentium3&CONFIG_SMP=y] CONFIG_HT (y/n)
-
 
303
 
-
 
304
% Lazy FPU context switching
-
 
305
! [CONFIG_FPU=y] CONFIG_FPU_LAZY (y/n)
-
 
306
 
-
 
307
% Use VHPT
-
 
308
! [PLATFORM=ia64] CONFIG_VHPT (n/y)
-
 
309
 
-
 
310
% Use TSB
-
 
311
! [PLATFORM=sparc64] CONFIG_TSB (y/n)
-
 
312
 
-
 
313
% IO SAPIC on default address support
-
 
314
! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
-
 
315
 
-
 
316
% Virtually indexed D-cache support
-
 
317
! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
-
 
318
 
-
 
319
% Support for userspace debuggers
-
 
320
! CONFIG_UDEBUG (y/n)
-
 
321
 
-
 
322
% Kernel console support
-
 
323
! CONFIG_KCONSOLE (y/n)
-
 
324
 
-
 
325
% Detailed kernel logging
-
 
326
! CONFIG_LOG (n/y)
-
 
327
 
-
 
328
% Compile kernel tests
-
 
329
! CONFIG_TEST (y/n)
-
 
330
 
-
 
331
## Hardware support
-
 
332
 
-
 
333
% What is your input device?
-
 
334
@ "generic" Keyboard or serial line
-
 
335
@ "keyboard" Keyboard
-
 
336
@ "serial" Serial line
-
 
337
@ "none" No input device
-
 
338
! [MACHINE!=msim&MACHINE!=ski&MACHINE!=serengeti] CONFIG_HID_IN (choice)
-
 
339
% What is your input device?
-
 
340
@ "serial" Serial line
-
 
341
! [MACHINE=msim|MACHINE=ski|machine=serengeti] CONFIG_HID_IN (choice)
-
 
342
 
-
 
343
% What is your output device?
-
 
344
@ "generic" Monitor or serial line
-
 
345
@ "monitor" Monitor
-
 
346
@ "serial" Serial line
-
 
347
@ "none" No output device
-
 
348
! [MACHINE!=msim&MACHINE!=ski&MACHINE!=serengeti] CONFIG_HID_OUT (choice)
-
 
349
% What is your output device?
-
 
350
@ "serial" Serial line
-
 
351
! [MACHINE=msim|MACHINE=ski&MACHINE=serengeti] CONFIG_HID_OUT (choice)
-
 
352
 
-
 
353
% i8042 controller support
-
 
354
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_I8042 (y/n)
-
 
355
% i8042 controller support
-
 
356
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&MACHINE=i460GX] CONFIG_I8042 (y/n)
-
 
357
 
-
 
358
% Support for NS16550 controller
-
 
359
! [CONFIG_HID_IN=generic|CONFIG_HID_IN=serial|(PLATFORM=sparc64&CONFIG_HID_OUT!=none&CONFIG_HID_IN!=none)] CONFIG_NS16550 (y/n)
-
 
360
% Support for NS16550 serial port
-
 
361
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=serial|CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&MACHINE=i460GX] CONFIG_NS16550 (y/n)
-
 
362
 
-
 
363
% Support for Z8530 controller
-
 
364
! [(CONFIG_HID_IN!=none|CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=sparc64] CONFIG_Z8530 (y/n)
-
 
365
 
-
 
366
% Support for Serengeti console
-
 
367
! [(CONFIG_HID_IN=serial|CONFIG_HID_OUT=serial)&MACHINE=serengeti] CONFIG_SGCN (y/n)
-
 
368
 
-
 
369
% PC keyboard support
-
 
370
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_PC_KBD (y/n)
-
 
371
% PC keyboard support
-
 
372
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&MACHINE=i460GX] CONFIG_PC_KBD (y/n)
-
 
373
 
-
 
374
% Sun keyboard support
-
 
375
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64] CONFIG_SUN_KBD (y/n)
-
 
376
 
-
 
377
% Serial line input module
-
 
378
! [CONFIG_HID_IN=generic|CONFIG_HID_IN=serial] CONFIG_SRLN (y/n)
-
 
379
 
-
 
380
% EGA support
-
 
381
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_EGA (y/n)
-
 
382
% EGA support
-
 
383
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&MACHINE=i460GX] CONFIG_EGA (y/n)
-
 
384
 
-
 
385
% Framebuffer support
-
 
386
! [CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor] CONFIG_FB (y/n)
-
 
387
 
-
 
388
% Framebuffer width
-
 
389
@ "640"
-
 
390
@ "800"
-
 
391
@ "1024"
-
 
392
@ "1152"
-
 
393
@ "1280"
-
 
394
@ "1400"
-
 
395
@ "1440"
-
 
396
@ "1600"
-
 
397
@ "2048"
-
 
398
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
-
 
399
 
-
 
400
% Framebuffer height
-
 
401
@ "480"
-
 
402
@ "600"
-
 
403
@ "768"
-
 
404
@ "852"
-
 
405
@ "900"
-
 
406
@ "960"
-
 
407
@ "1024"
-
 
408
@ "1050"
-
 
409
@ "1200"
-
 
410
@ "1536"
-
 
411
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
-
 
412
 
-
 
413
% Framebuffer depth
-
 
414
@ "8"
-
 
415
@ "16"
-
 
416
@ "24"
-
 
417
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
-
 
418
 
-
 
419
% Start AP processors by the loader
-
 
420
! [PLATFORM=sparc64&CONFIG_SMP=y] CONFIG_AP (y/n)
-
 
421
 
-
 
422
% Use Block Address Translation by the loader
-
 
423
! [PLATFORM=ppc32] CONFIG_BAT (y/n)
-
 
424
 
-
 
425
% Preserve A.OUT header in isofs.b
-
 
426
! [PLATFORM=sparc64&MACHINE=generic] CONFIG_AOUT_ISOFS_B (y)
-
 
427
 
-
 
428
% External ramdisk
-
 
429
! [PLATFORM=sparc64] CONFIG_RD_EXTERNAL (y/n)
-
 
430
 
-
 
431
% Keyboard layout
-
 
432
@ "us_qwerty" US QWERTY
-
 
433
@ "us_dvorak" US Dvorak
-
 
434
! KBD_LAYOUT (choice)