-
Notifications
You must be signed in to change notification settings - Fork 10
/
Makefile.config
124 lines (120 loc) · 6.13 KB
/
Makefile.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# -*- makefile-gmake -*-
include Makefile.common
include $(CONFIG)
# default configurations
gcc_support_64 := \
$(shell $(CC) --target-help | grep -q x86_64: && /bin/echo -n 1 || /bin/echo -n 0)
gcc_support_64 != $(CC) --target-help | grep -q x86_64: && /bin/echo -n 1 || /bin/echo -n 0
CONFIG_64 ?= $(gcc_support_64)
CONFIG_DEBUG_GDB ?= 0
CONFIG_SPINLOCK_DEBUG ?= 0
CONFIG_TTY_SERIAL ?= 0
CONFIG_TTY_PRO1000 ?= 1
CONFIG_TTY_RTL8169 ?= 0
CONFIG_CPU_MMU_SPT_1 ?= 0
CONFIG_CPU_MMU_SPT_2 ?= 0
CONFIG_CPU_MMU_SPT_3 ?= 1
CONFIG_CPU_MMU_SPT_DISABLE ?= 0
CONFIG_CPU_MMU_SPT_USE_PAE ?= 1
CONFIG_PS2KBD_F11PANIC ?= 0
CONFIG_PS2KBD_F12MSG ?= 1
CONFIG_DBGSH ?= 1
CONFIG_STATUS ?= 0
CONFIG_LOG_TO_GUEST ?= 0
CONFIG_ATA_DRIVER ?= 1
CONFIG_STORAGE ?= 1
CONFIG_CRYPTO ?= 1
CONFIG_VPN ?= 1
CONFIG_USB_DRIVER ?= 1
CONFIG_SHADOW_UHCI ?= 1
CONFIG_SHADOW_EHCI ?= 1
CONFIG_HANDLE_USBMSC ?= 1
CONFIG_HANDLE_USBHUB ?= 1
CONFIG_CONCEAL_USBCCID ?= 1
CONFIG_IEEE1394_CONCEALER ?= 1
CONFIG_FWDBG ?= 0
CONFIG_ACPI_DSDT ?= 1
CONFIG_DISABLE_SLEEP ?= 0
CONFIG_ENABLE_ASSERT ?= 1
CONFIG_DEBUG_ATA ?= 0
CONFIG_SELECT_AES_GLADMAN ?= 0
CONFIG_CARDSTATUS ?= 1
CONFIG_IDMAN ?= 1
CONFIG_VPN_DRIVER ?= 1
CONFIG_VPN_PRO100 ?= 1
CONFIG_VPN_PRO1000 ?= 1
CONFIG_VPN_RTL8169 ?= 0
CONFIG_VPN_VE ?= 0
CONFIG_VTD_TRANS ?= 0
CONFIG_STORAGE_PD ?= 0
CONFIG_IDMAN_PD ?= 0
CONFIG_VPN_PD ?= 0
CONFIG_DISABLE_TCG_BIOS ?= 0
CONFIG_ACPI_TIME_SOURCE ?= 1
CONFIG_TCG_BIOS ?= $(CONFIG_64)
CONFIG_BACKTRACE ?= 0
CONFIG_VGA_INTEL_DRIVER ?= 0
CONFIG_TTY_VGA ?= 0
CONFIG_SHIFT_KEY_DEBUG ?= 0
# config list
CONFIGLIST :=
CONFIGLIST += CONFIG_64=$(CONFIG_64)[64bit VMM]
CONFIGLIST += CONFIG_DEBUG_GDB=$(CONFIG_DEBUG_GDB)[gdb remote debug support (32bit only)]
#CONFIGLIST += CONFIG_SPINLOCK_DEBUG=$(CONFIG_SPINLOCK_DEBUG)[spinlock debug (unstable)]
CONFIGLIST += CONFIG_TTY_SERIAL=$(CONFIG_TTY_SERIAL)[VMM uses a serial port (COM1) for output]
CONFIGLIST += CONFIG_TTY_PRO1000=$(CONFIG_TTY_PRO1000)[VMM output to LAN (VPN_PRO1000 must be 1)]
CONFIGLIST += CONFIG_TTY_RTL8169=$(CONFIG_TTY_RTL8169)[VMM output to LAN (VPN_RTL8169 must be 1)]
CONFIGLIST += CONFIG_CPU_MMU_SPT_1=$(CONFIG_CPU_MMU_SPT_1)[Shadow type 1 (very slow and stable)]
CONFIGLIST += CONFIG_CPU_MMU_SPT_2=$(CONFIG_CPU_MMU_SPT_2)[Shadow type 2 (faster and unstable)]
CONFIGLIST += CONFIG_CPU_MMU_SPT_3=$(CONFIG_CPU_MMU_SPT_3)[Shadow type 3 (faster and unstable)]
CONFIGLIST += CONFIG_CPU_MMU_SPT_DISABLE=$(CONFIG_CPU_MMU_SPT_DISABLE)[Disable SPT (fast, insecure and no MMIO)]
CONFIGLIST += CONFIG_CPU_MMU_SPT_USE_PAE=$(CONFIG_CPU_MMU_SPT_USE_PAE)[Shadow page table uses PAE]
CONFIGLIST += CONFIG_PS2KBD_F11PANIC=$(CONFIG_PS2KBD_F11PANIC)[Panic when F11 is pressed (PS/2 only)]
CONFIGLIST += CONFIG_PS2KBD_F12MSG=$(CONFIG_PS2KBD_F12MSG)[Print when F12 is pressed (PS/2 only)]
CONFIGLIST += CONFIG_DBGSH=$(CONFIG_DBGSH)[Debug shell access from guest]
CONFIGLIST += CONFIG_STATUS=$(CONFIG_STATUS)[Provide VMM status for guest]
CONFIGLIST += CONFIG_LOG_TO_GUEST=$(CONFIG_LOG_TO_GUEST)[Log to guest memory]
CONFIGLIST += CONFIG_ATA_DRIVER=$(CONFIG_ATA_DRIVER)[Enable ATA driver]
CONFIGLIST += CONFIG_STORAGE=$(CONFIG_STORAGE)[Enable storage encryption]
CONFIGLIST += CONFIG_CRYPTO=$(CONFIG_CRYPTO)[Crypto library]
CONFIGLIST += CONFIG_VPN=$(CONFIG_VPN)[Enable IPsec VPN Client]
CONFIGLIST += CONFIG_USB_DRIVER=$(CONFIG_USB_DRIVER)[Enable USB driver]
CONFIGLIST += CONFIG_SHADOW_UHCI=$(CONFIG_SHADOW_UHCI)[Shadow UHCI(USB1) transfers]
CONFIGLIST += CONFIG_SHADOW_EHCI=$(CONFIG_SHADOW_EHCI)[Shadow EHCI(USB2) transfers]
CONFIGLIST += CONFIG_HANDLE_USBMSC=$(CONFIG_HANDLE_USBMSC)[Handle USB mass storage class devices]
CONFIGLIST += CONFIG_HANDLE_USBHUB=$(CONFIG_HANDLE_USBHUB)[Handle USB hub class devices]
CONFIGLIST += CONFIG_CONCEAL_USBCCID=$(CONFIG_CONCEAL_USBCCID)[Conceal USB ccid class device]
CONFIGLIST += CONFIG_PS2KBD_F10USB=$(CONFIG_PS2KBD_F10USB)[Run a test for USB ICCD when F10 pressed]
CONFIGLIST += CONFIG_PS2KBD_F12USB=$(CONFIG_PS2KBD_F12USB)[Dump EHCI async. list when F12 pressed]
CONFIGLIST += CONFIG_IEEE1394_CONCEALER=$(CONFIG_IEEE1394_CONCEALER)[Conceal OHCI IEEE 1394 host controllers]
CONFIGLIST += CONFIG_FWDBG=$(CONFIG_FWDBG)[Debug via IEEE 1394]
CONFIGLIST += CONFIG_ACPI_DSDT=$(CONFIG_ACPI_DSDT)[Parse ACPI DSDT]
CONFIGLIST += CONFIG_DISABLE_SLEEP=$(CONFIG_DISABLE_SLEEP)[Disable ACPI S2 and S3]
CONFIGLIST += CONFIG_ENABLE_ASSERT=$(CONFIG_ENABLE_ASSERT)[Enable checking assertion failure]
CONFIGLIST += CONFIG_DEBUG_ATA=$(CONFIG_DEBUG_ATA)[Enable debugging ATA driver]
CONFIGLIST += CONFIG_SELECT_AES_GLADMAN=$(CONFIG_SELECT_AES_GLADMAN)[Select Dr. Gladmans AES assembler code]
CONFIGLIST += CONFIG_CARDSTATUS=$(CONFIG_CARDSTATUS)[Panic if an IC card is ejected (IDMAN)]
CONFIGLIST += CONFIG_IDMAN=$(CONFIG_IDMAN)[IDMAN (CRYPTO must be enabled)]
CONFIGLIST += CONFIG_VPN_DRIVER=$(CONFIG_VPN_DRIVER)[Enable NIC drivers]
CONFIGLIST += CONFIG_VPN_PRO100=$(CONFIG_VPN_PRO100)[Enable VPN for Intel PRO/100]
CONFIGLIST += CONFIG_VPN_PRO1000=$(CONFIG_VPN_PRO1000)[Intel PRO/1000 driver]
CONFIGLIST += CONFIG_VPN_RTL8169=$(CONFIG_VPN_RTL8169)[Realtek RTL8169 driver]
CONFIGLIST += CONFIG_VPN_VE=$(CONFIG_VPN_VE)[Enable ve (Virtual Ethernet) driver]
CONFIGLIST += CONFIG_VTD_TRANS=$(CONFIG_VTD_TRANS)[Enable VT-d translation]
CONFIGLIST += CONFIG_STORAGE_PD=$(CONFIG_STORAGE_PD)[Storage encrypting in protection domain]
CONFIGLIST += CONFIG_IDMAN_PD=$(CONFIG_IDMAN_PD)[IDMan in protection domain]
CONFIGLIST += CONFIG_VPN_PD=$(CONFIG_VPN_PD)[VPN in protection domain]
CONFIGLIST += CONFIG_DISABLE_TCG_BIOS=$(CONFIG_DISABLE_TCG_BIOS)[Disable TCG BIOS (TPM related)]
CONFIGLIST += CONFIG_ACPI_TIME_SOURCE=$(CONFIG_ACPI_TIME_SOURCE)[Use ACPI PM Timer as time source]
CONFIGLIST += CONFIG_TCG_BIOS=$(CONFIG_TCG_BIOS)[TCG BIOS support]
CONFIGLIST += CONFIG_BACKTRACE=$(CONFIG_BACKTRACE)[Enable backtrace in panic]
CONFIGLIST += CONFIG_VGA_INTEL_DRIVER=$(CONFIG_VGA_INTEL_DRIVER)[Enable vga_intel driver]
CONFIGLIST += CONFIG_TTY_VGA=$(CONFIG_TTY_VGA)[VMM output using VGA driver]
CONFIGLIST += CONFIG_SHIFT_KEY_DEBUG=$(CONFIG_SHIFT_KEY_DEBUG)[Debug shell with shift key while booting]
.PHONY : update-config
update-config :
/bin/echo -n '$(CONFIGLIST)' | tr '[' '#' | tr ']' '\n' | \
sed 's/^ //' > $(CONFIG)
.PHONY : config
config : update-config
./config.sh