VirtualBox

Changeset 34492 in vbox for trunk/src


Ignore:
Timestamp:
Nov 29, 2010 11:57:12 PM (14 years ago)
Author:
vboxsync
Message:

VBOX_ONLY_EXTPACKS changes.

Location:
trunk/src
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/Makefile.kmk

    r34484 r34492  
    2424 include $(PATH_SUB_CURRENT)/VBox/Makefile.kmk
    2525
    26 else if defined(VBOX_ONLY_DOCS) || defined(VBOX_WITH_EXTPACKS) || defined(VBOX_ONLY_SDK)
     26else if defined(VBOX_ONLY_DOCS) || defined(VBOX_ONLY_SDK)
    2727 include $(PATH_SUB_CURRENT)/bldprogs/Makefile.kmk
    2828 include $(PATH_SUB_CURRENT)/VBox/Makefile.kmk
    2929 include $(PATH_SUB_CURRENT)/libs/Makefile.kmk
     30
     31else if defined(VBOX_ONLY_EXTPACKS)
     32 include $(PATH_SUB_CURRENT)/bldprogs/Makefile.kmk
     33 include $(PATH_SUB_CURRENT)/VBox/Makefile.kmk
     34 include $(PATH_SUB_CURRENT)/libs/Makefile.kmk
     35 include $(PATH_SUB_CURRENT)/recompiler/Makefile.kmk
    3036
    3137else if defined(VBOX_ONLY_TESTSUITE)
  • trunk/src/VBox/Devices/Makefile.kmk

    r34238 r34492  
    2323
    2424# Include sub-makefiles.
    25 include $(PATH_SUB_CURRENT)/PC/BIOS/Makefile.kmk
    26 include $(PATH_SUB_CURRENT)/Graphics/BIOS/Makefile.kmk
    2725include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
    28 ifdef VBOX_WITH_EFI
    29  include $(PATH_SUB_CURRENT)/EFI/Thunk/Makefile.kmk
    30 endif
    31 ifdef VBOX_WITH_INTEL_PXE
     26if defined(VBOX_WITH_INTEL_PXE) || defined(VBOX_ONLY_EXTPACKS)
    3227 include $(PATH_SUB_CURRENT)/PC/PXE/Makefile.kmk
    3328else ifndef VBOX_WITHOUT_ETHERBOOT
    34   # Subdir with complex makefile.
    35   SUBDIRS_LIBRARIES += $(VBOX_PATH_DEVICES_SRC)/PC/Etherboot-src
    36   SUBDIRS_CLEAN     += $(VBOX_PATH_DEVICES_SRC)/PC/Etherboot-src
    37   # Disable the unsafe pass order optimizations.
    38   KBUILD_SAFE_PARALLEL = 1
     29 # Subdir with complex makefile.
     30 SUBDIRS_LIBRARIES += $(VBOX_PATH_DEVICES_SRC)/PC/Etherboot-src
     31 SUBDIRS_CLEAN     += $(VBOX_PATH_DEVICES_SRC)/PC/Etherboot-src
     32 # Disable the unsafe pass order optimizations.
     33 KBUILD_SAFE_PARALLEL = 1
    3934endif
    40 
    41 #
    42 # Main targets.
    43 #
    44 LIBRARIES += DevicesR3 Drivers ServicesR0
    45 DLLS      += VBoxDDU VBoxDD VBoxDD2
    46 SYSMODS   += VBoxDDR0 VBoxDD2R0
    47 ifdef VBOX_WITH_RAW_MODE
    48  SYSMODS   += VBoxDDGC VBoxDD2GC
    49 endif
    50 
    51 
    52 #
    53 # VBoxDDU (shared object)
    54 #
    55 VBoxDDU_TEMPLATE         = VBOXR3
    56 VBoxDDU_NAME             = $(basename $(notdir $(LIB_DDU)))
    57 VBoxDDU_INST.darwin      = $(INST_DLL) $(INST_TESTCASE)
    58 VBoxDDU_DEFS             = IN_VBOXDDU
    59 ifdef VBOX_WITH_VUSB
    60  VBoxDDU_DEFS           += VBOX_WITH_VUSB
    61 endif
    62 ifdef VBOX_WITH_USB
    63  VBoxDDU_DEFS           += VBOX_WITH_USB IN_USBLIB
    64  VBoxDDU_SDKS.win        = WINPSDK W2K3DDK
    65  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
    66   VBoxDDU_DEFS          += VBOX_WITH_EHCI
    67  endif
    68  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
    69   VBoxDDU_DEFS.darwin   += VBOX_WITH_NEW_USB_CODE_ON_DARWIN
    70  endif
    71 else
    72  VBoxDDU_SDKS.win        = WINPSDK
    73 endif
    74 VBoxDDU_SOURCES          = \
    75         Storage/VSCSI/VSCSIDevice.cpp \
    76         Storage/VSCSI/VSCSILun.cpp \
    77         Storage/VSCSI/VSCSILunSbc.cpp \
    78         Storage/VSCSI/VSCSISense.cpp \
    79         Storage/VSCSI/VSCSISgBuf.cpp \
    80         Storage/VSCSI/VSCSIIoReq.cpp \
    81         VBoxDDUDeps.cpp
    82 ifdef VBOX_WITH_USB
    83  VBoxDDU_INCS.os2       += \
    84         $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
    85 endif
    86 VBoxDDU_LIBS             = \
    87         $(LIB_RUNTIME) \
    88         $(PATH_LIB)/StorageLib$(VBOX_SUFF_LIB)
    89 ifdef VBOX_WITH_USB
    90  VBoxDDU_LIBS           += \
    91         $(PATH_LIB)/USBLib$(VBOX_SUFF_LIB)
    92 endif
    93 ifeq ($(KBUILD_TARGET),l4)
    94  VBoxDDU_LIBS           += \
    95         $(L4_LIBDIR)/libl4sys.p.a
    96 endif
    97 VBoxDDU_LDFLAGS.darwin   = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDDU.dylib
    98 ifdef VBOX_WITH_USB
    99  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
    100  VBoxDDU_LDFLAGS.darwin += -framework IOKit
    101  endif
    102 endif
    103 
    104 VBoxDDU_LDFLAGS.linux    = -Wl,--no-undefined
    105 VBoxDDU_LDFLAGS.l4       = -Wl,--no-undefined
    106 
    107 #
    108 # VBoxDDULnxHostR3 (Only needed for l4, currently for executing vditool on L4Linux.)
    109 #
    110 ifeq ($(KBUILD_TARGET),l4)
    111  LIBRARIES                += VBoxDDULnxHostR3
    112  VBoxDDULnxHostR3_TEMPLATE = VBOXLNXHOSTR3LIB
    113  VBoxDDULnxHostR3_DEFS     = IN_VBOXDDU
    114  VBoxDDULnxHostR3_SOURCES  = $(VBoxDDU_SOURCES)
    115 endif
    116 
    117 #
    118 # VBoxDD (shared object)
    119 #
    120 VBoxDD_TEMPLATE         = VBOXR3
    121 VBoxDD_SDKS.win         = WINPSDK DXSDK W2K3DDK VBOX_NTDLL
    122 VBoxDD_SOURCES          = \
    123         Builtins.cpp
    124 VBoxDD_DEFS             = VBOX_ACPI
    125 ifdef VBOX_WITH_USB
    126  VBoxDD_DEFS           += VBOX_WITH_USB
    127  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
    128   VBoxDD_DEFS          += VBOX_WITH_EHCI
    129  endif
    130 endif
    131 ifdef VBOX_WITH_VUSB
    132  VBoxDD_DEFS           += VBOX_WITH_VUSB
    133 endif
    134 ifdef VBOX_WITH_AHCI
    135  VBoxDD_DEFS           += VBOX_WITH_AHCI
    136 endif
    137 ifdef VBOX_WITH_INIP
    138  VBoxDD_DEFS           += VBOX_WITH_INIP
    139 endif
    140 ifdef VBOX_WITH_E1000
    141  VBoxDD_DEFS           += VBOX_WITH_E1000
    142 endif
    143 ifdef VBOX_WITH_VIRTIO
    144  VBoxDD_DEFS           += VBOX_WITH_VIRTIO
    145 endif
    146 ifdef VBOX_WITH_BUSLOGIC
    147  VBoxDD_DEFS           += VBOX_WITH_BUSLOGIC
    148 endif
    149 ifdef VBOX_WITH_PDM_ASYNC_COMPLETION
    150  VBoxDD_DEFS           += VBOX_WITH_PDM_ASYNC_COMPLETION
    151 endif
    152 ifdef VBOX_WITH_SCSI
    153  VBoxDD_DEFS           += VBOX_WITH_SCSI
    154 endif
    155 ifdef VBOX_WITH_LSILOGIC
    156  VBoxDD_DEFS           += VBOX_WITH_LSILOGIC
    157 endif
    158 ifdef VBOX_WITH_EFI
    159  VBoxDD_DEFS           += VBOX_WITH_EFI
    160 endif
    161 ifdef VBOX_WITH_DRV_DISK_INTEGRITY
    162  VBoxDD_DEFS           += VBOX_WITH_DRV_DISK_INTEGRITY
    163 endif
    164 ifdef VBOX_WITH_VDE
    165  VBoxDD_DEFS           += VBOX_WITH_VDE
    166 endif
    167 
    168 VBoxDD_LIBS             = \
    169         $(PATH_LIB)/DevicesR3$(VBOX_SUFF_LIB) \
    170         $(PATH_LIB)/Drivers$(VBOX_SUFF_LIB) \
    171         $(PATH_LIB)/VgaDefBiosLogo$(VBOX_SUFF_LIB) \
    172         $(LIB_VMM) \
    173         $(LIB_RUNTIME)
    174 ifeq ($(KBUILD_TARGET),win)
    175  VBoxDD_LIBS           += \
    176         $(LIB_DDU) \
    177         $(PATH_LIB)/VBoxDD2.lib \
    178         $(PATH_SDK_DXSDK_LIB)/dxguid.lib
    179 else
    180  VBoxDD_LIBS           += \
    181         $(INSTARGET_VBoxDDU) \
    182         $(INSTARGET_VBoxDD2)
    183 endif
    184 ifeq ($(KBUILD_TARGET),l4)
    185  VBoxDD_LIBS           += \
    186         $(L4_LIBDIR)/libl4sys.p.a
    187 endif
    188 
    189 ifdef VBOX_WITH_HGSMI
    190  VBoxDD_LIBS           += \
    191         $(PATH_LIB)/HGSMIHostR3Lib$(VBOX_SUFF_LIB)
    192 endif
    193 
    194 ifdef VBOX_WITH_NETFLT
    195  VBoxDD_LIBS.win       += $(PATH_LIB)/WinNetConfig.lib
    196 endif
    197 
    198 ifdef VBOX_WITH_EFI
    199  VBoxDD_LIBS           += $(PATH_LIB)/EfiThunkBin$(VBOX_SUFF_LIB)
    200 endif
    201 
    202 ifeq ($(KBUILD_TARGET),solaris)
    203  VBoxDD_LIBS           += adm
    204  ifdef VBOX_WITH_SUID_WRAPPER
    205   VBoxDD_LIBS          += secdb
     35if !defined(VBOX_ONLY_EXTPACKS)         # Goes on almost to the end of the file.
     36 include $(PATH_SUB_CURRENT)/PC/BIOS/Makefile.kmk
     37 include $(PATH_SUB_CURRENT)/Graphics/BIOS/Makefile.kmk
     38 ifdef VBOX_WITH_EFI
     39  include $(PATH_SUB_CURRENT)/EFI/Thunk/Makefile.kmk
     40 endif
     41
     42 #
     43 # Main targets.
     44 #
     45 LIBRARIES += DevicesR3 Drivers ServicesR0
     46 DLLS      += VBoxDDU VBoxDD VBoxDD2
     47 SYSMODS   += VBoxDDR0 VBoxDD2R0
     48 ifdef VBOX_WITH_RAW_MODE
     49  SYSMODS   += VBoxDDGC VBoxDD2GC
     50 endif
     51
     52
     53 #
     54 # VBoxDDU (shared object)
     55 #
     56 VBoxDDU_TEMPLATE         = VBOXR3
     57 VBoxDDU_NAME             = $(basename $(notdir $(LIB_DDU)))
     58 VBoxDDU_INST.darwin      = $(INST_DLL) $(INST_TESTCASE)
     59 VBoxDDU_DEFS             = IN_VBOXDDU
     60 ifdef VBOX_WITH_VUSB
     61  VBoxDDU_DEFS           += VBOX_WITH_VUSB
    20662 endif
    20763 ifdef VBOX_WITH_USB
    208   VBoxDD_LIBS          += aio
    209  endif
    210 endif
    211 
    212 VBoxDD_LIBS.darwin     += \
    213         $(LIB_REM)
    214 
    215 VBoxDD_LDFLAGS.darwin   = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDD.dylib \
    216         -framework CoreAudio \
    217         -framework AudioUnit \
    218         -framework AudioToolbox \
    219         -framework IOKit \
    220         -framework Carbon \
    221         -framework DiskArbitration
    222 VBoxDD_LDFLAGS.linux    = -Wl,--no-undefined
    223 VBoxDD_LDFLAGS.l4       = -Wl,--no-undefined
    224 
    225 
    226 #
    227 # VBoxDD2 (shared object)
    228 #
    229 VBoxDD2_TEMPLATE        = VBOXR3
    230 VBoxDD2_DEFS            = IN_VBOXDD2
    231 VBoxDD2_INCS           := \
    232         $(PATH_SUB_CURRENT)
    233 VBoxDD2_SOURCES         = \
    234         Builtins2.cpp  \
    235         PC/DevAPIC.cpp \
    236         PC/DevSMC.cpp  \
    237         PC/DevLPC.cpp
    238 VBoxDD2_LIBS            = \
    239         $(PATH_LIB)/PcBiosBin$(VBOX_SUFF_LIB) \
    240         $(PATH_LIB)/VgaBiosBin$(VBOX_SUFF_LIB) \
    241         $(PATH_LIB)/NetBiosBin$(VBOX_SUFF_LIB) \
    242         $(LIB_VMM) \
    243         $(LIB_RUNTIME)
    244 ifeq ($(KBUILD_TARGET),l4)
    245 VBoxDD2_LIBS           += \
    246         $(L4_LIBDIR)/libl4sys.p.a
    247 endif
    248 VBoxDD2_LIBS.darwin    += $(LIB_REM)
    249 VBoxDD2_LDFLAGS.darwin  = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDD2.dylib
    250 VBoxDD2_LDFLAGS.linux   = -Wl,--no-undefined
    251 VBoxDD2_LDFLAGS.l4      = -Wl,--no-undefined
    252 
    253 
    254 #
    255 # DevicesR3 (library)
    256 #
    257 DevicesR3_TEMPLATE      = VBOXR3
    258 DevicesR3_SDKS.win      = WINPSDK W2K3DDK
    259 DevicesR3_DEFS.darwin.x86 = VBOX_WITH_2X_4GB_ADDR_SPACE
    260 DevicesR3_DEFS         += \
    261         VBOX_HGCM_HOST_CODE \
    262         VBOX_WITH_HGCM \
    263         $(if $(VBOX_WITH_AUDIO_FLEXIBLE_FORMAT),VBOX_WITH_AUDIO_FLEXIBLE_FORMAT,) \
    264         $(if $(VBOX_BIOS_DMI_FALLBACK),VBOX_BIOS_DMI_FALLBACK,)
    265 DevicesR3_DEFS.linux   += _GNU_SOURCE
    266 DevicesR3_DEFS.l4      += _GNU_SOURCE
    267 
    268 DevicesR3_INCS          = \
    269         .
    270 
    271 DevicesR3_SOURCES       = \
    272         Input/DevPS2.cpp \
    273         Input/UsbKbd.cpp \
    274         Input/UsbMouse.cpp \
    275         Bus/DevPCI.cpp \
    276         Bus/DevPciIch9.cpp \
    277         Bus/MsiCommon.cpp \
    278         Bus/MsixCommon.cpp \
    279         Graphics/DevVGA.cpp \
    280         Storage/DevATA.cpp \
    281         PC/DevPit-i8254.cpp \
    282         PC/DevPIC.cpp \
    283         PC/DevACPI.cpp \
    284         PC/ACPI/VBoxAcpi.cpp \
    285         PC/DevRTC.cpp \
    286         PC/DevPcBios.cpp \
    287         PC/DevFwCommon.cpp \
    288         PC/DevPcArch.c \
    289         VMMDev/VMMDev.cpp \
    290         VMMDev/VMMDevHGCM.cpp \
    291         VMMDev/VMMDevTesting.cpp \
    292         Network/DevPCNet.cpp \
    293         Audio/DevIchAc97.cpp \
    294         Audio/DevSB16.cpp \
    295         Audio/DevIchIntelHDA.cpp \
    296         Audio/DevCodec.cpp \
    297         PC/DevDMA.cpp \
    298         PC/DevHPET.cpp \
    299         PC/DevSMC.cpp \
    300         PC/DevLPC.cpp \
    301         Storage/fdc.c \
    302         Serial/DevSerial.cpp \
    303         Parallel/DevParallel.cpp
    304 
    305 ifdef VBOX_WITH_E1000
    306  DevicesR3_DEFS        += VBOX_WITH_E1000
    307  DevicesR3_SOURCES     += \
    308         Network/DevE1000.cpp \
    309         Network/DevE1000Phy.cpp \
    310         Network/DevEEPROM.cpp
    311 endif
    312 
    313 ifdef VBOX_WITH_VIRTIO
    314  DevicesR3_DEFS        += VBOX_WITH_VIRTIO
    315  DevicesR3_SOURCES     += \
    316         VirtIO/Virtio.cpp \
    317         Network/DevVirtioNet.cpp
    318 endif
    319 
    320 ifdef VBOX_WITH_HGSMI
    321  DevicesR3_DEFS        += VBOX_WITH_HGSMI
    322  DevicesR3_SOURCES     += \
    323         Graphics/DevVGA_VBVA.cpp \
    324         Graphics/HGSMI/HGSMIHost.cpp \
    325         Graphics/HGSMI/HGSMIHostHlp.cpp
    326 
    327 endif
    328 ifdef VBOX_WITH_WDDM
    329  DevicesR3_DEFS        += VBOX_WITH_WDDM
    330  DevicesR3_SOURCES     += \
    331         Graphics/HGSMI/SHGSMIHost.cpp
    332 endif
    333 ifdef VBOX_WITH_VDMA
    334  DevicesR3_DEFS        += VBOX_WITH_VDMA
    335  DevicesR3_SOURCES     += \
    336         Graphics/DevVGA_VDMA.cpp
    337 endif
    338 ifdef VBOX_WITH_CRHGSMI
    339  DevicesR3_DEFS        += VBOX_WITH_CRHGSMI
    340 endif
    341 ifdef VBOXWDDM_TEST_UHGSMI
    342  DevicesR3_DEFS        += VBOXWDDM_TEST_UHGSMI
    343 endif
    344 ifdef VBOXWDDM_WITH_VBVA
    345  DevicesR3_DEFS        += VBOXWDDM_WITH_VBVA
    346 endif
    347 ifdef VBOX_WITH_VIDEOHWACCEL
    348  DevicesR3_DEFS        += VBOX_WITH_VIDEOHWACCEL
    349 endif
    350 ifdef VBOX_WITH_DMI_CHASSIS
    351  DevicesR3_DEFS        += VBOX_WITH_DMI_CHASSIS
    352 endif
    353 ifdef VBOX_WITH_DMI_OEMSTRINGS
    354  DevicesR3_DEFS        += VBOX_WITH_DMI_OEMSTRINGS
    355 endif
    356 
    357 ifdef VBOX_WITH_INIP
    358  DevicesR3_INCS        += \
    359         Network/lwip/src/include \
    360         Network/lwip/src/include/ipv4 \
    361         Network/lwip/vbox/include
    362  DevicesR3_SOURCES     += \
    363         Network/lwip/src/api/api_lib.c \
    364         Network/lwip/src/api/api_msg.c \
    365         Network/lwip/src/api/err.c \
    366         Network/lwip/src/api/sockets.c \
    367         Network/lwip/src/api/tcpip.c \
    368         Network/lwip/src/core/tcp_in.c \
    369         Network/lwip/src/core/dhcp.c \
    370         Network/lwip/src/core/inet.c \
    371         Network/lwip/src/core/mem.c \
    372         Network/lwip/src/core/memp.c \
    373         Network/lwip/src/core/netif.c \
    374         Network/lwip/src/core/pbuf.c \
    375         Network/lwip/src/core/raw.c \
    376         Network/lwip/src/core/stats.c \
    377         Network/lwip/src/core/sys.c \
    378         Network/lwip/src/core/tcp.c \
    379         Network/lwip/src/core/ipv4/ip_addr.c \
    380         Network/lwip/src/core/ipv4/icmp.c \
    381         Network/lwip/src/core/ipv4/ip.c \
    382         Network/lwip/src/core/ipv4/ip_frag.c \
    383         Network/lwip/src/core/tcp_out.c \
    384         Network/lwip/src/core/udp.c \
    385         Network/lwip/src/netif/etharp.c \
    386         Network/lwip/vbox/sys_arch.c \
    387         Network/DevINIP.cpp
    388  DevicesR3_DEFS        += VBOX_WITH_INIP
    389 endif
    390 
    391 ifdef VBOX_WITH_AHCI
    392  DevicesR3_DEFS        += VBOX_WITH_AHCI IN_AHCI_R3
    393  DevicesR3_SOURCES     += \
    394         Storage/DevAHCI.cpp \
    395         Storage/ATAController.cpp
    396 endif
    397 
    398 ifdef VBOX_WITH_BUSLOGIC
    399  DevicesR3_DEFS        += VBOX_WITH_BUSLOGIC
    400  DevicesR3_SOURCES     += \
    401         Storage/DevBusLogic.cpp \
    402         Storage/VBoxSCSI.cpp
    403 endif
    404 
    405 ifdef VBOX_WITH_LSILOGIC
    406  DevicesR3_DEFS        += VBOX_WITH_LSILOGIC
    407  DevicesR3_SOURCES     += \
    408         Storage/DevLsiLogicSCSI.cpp
    409 endif
    410 
    411 ifdef VBOX_WITH_EFI
    412  DevicesR3_DEFS        += VBOX_WITH_EFI
    413  ifdef VBOX_WITH_ALT_EFITHUNK
    414   DevicesR3_DEFS       += VBOX_WITH_ALT_EFITHUNK
    415  endif
    416  DevicesR3_SOURCES     += EFI/DevEFI.cpp
    417  EFI/DevEFI.cpp_INCS       += EFI/tools/include
    418  EFI/DevEFI.cpp_INCS.x86   += EFI/tools/include/Ia32
    419  EFI/DevEFI.cpp_INCS.amd64 += EFI/tools/include/X64
    420 endif
    421 
    422 ifdef VBOX_WITH_MSI_DEVICES
    423  DevicesR3_DEFS        += VBOX_WITH_MSI_DEVICES
    424 endif
    425 
    426 ifdef VBOX_WITH_DYNAMIC_DSDT
    427  DevicesR3_DEFS        += VBOX_WITH_DYNAMIC_DSDT
    428 endif
    429 
    430 ifdef VBOX_WITH_VUSB
    431  DevicesR3_DEFS        += VBOX_WITH_VUSB
    432  DevicesR3_SOURCES     += \
    433         USB/DevOHCI.cpp
    434 endif
    435 ifdef VBOX_WITH_USB
    436  DevicesR3_DEFS        += VBOX_WITH_USB
    437  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
    438   DevicesR3_DEFS       += VBOX_WITH_EHCI
    439   DevicesR3_SOURCES    += \
    440         USB/DevEHCI.cpp
    441  endif
    442 endif
    443 
    444 ifdef VBOX_WITH_DTRACE_R3
    445  DevicesR3_DEFS        += VBOX_WITH_DTRACE
    446  DevicesR3_INCS        += $(DevicesR3_0_OUTDIR)
    447  DevicesR3_INTERMEDIATES += $(DevicesR3_0_OUTDIR)/VBoxDD-dtrace.h
    448  $$(DevicesR3_0_OUTDIR)/VBoxDD-dtrace.h: $(PATH_SUB_CURRENT)/VBoxDD-dtrace.d | $$(dir $$@)
     64  VBoxDDU_DEFS           += VBOX_WITH_USB IN_USBLIB
     65  VBoxDDU_SDKS.win        = WINPSDK W2K3DDK
     66  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
     67   VBoxDDU_DEFS          += VBOX_WITH_EHCI
     68  endif
     69  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
     70   VBoxDDU_DEFS.darwin   += VBOX_WITH_NEW_USB_CODE_ON_DARWIN
     71  endif
     72 else
     73  VBoxDDU_SDKS.win        = WINPSDK
     74 endif
     75 VBoxDDU_SOURCES          = \
     76        Storage/VSCSI/VSCSIDevice.cpp \
     77        Storage/VSCSI/VSCSILun.cpp \
     78        Storage/VSCSI/VSCSILunSbc.cpp \
     79        Storage/VSCSI/VSCSISense.cpp \
     80        Storage/VSCSI/VSCSISgBuf.cpp \
     81        Storage/VSCSI/VSCSIIoReq.cpp \
     82        VBoxDDUDeps.cpp
     83 ifdef VBOX_WITH_USB
     84  VBoxDDU_INCS.os2       += \
     85        $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
     86 endif
     87 VBoxDDU_LIBS             = \
     88        $(LIB_RUNTIME) \
     89        $(PATH_LIB)/StorageLib$(VBOX_SUFF_LIB)
     90 ifdef VBOX_WITH_USB
     91  VBoxDDU_LIBS           += \
     92        $(PATH_LIB)/USBLib$(VBOX_SUFF_LIB)
     93 endif
     94 ifeq ($(KBUILD_TARGET),l4)
     95  VBoxDDU_LIBS           += \
     96        $(L4_LIBDIR)/libl4sys.p.a
     97 endif
     98 VBoxDDU_LDFLAGS.darwin   = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDDU.dylib
     99 ifdef VBOX_WITH_USB
     100  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
     101  VBoxDDU_LDFLAGS.darwin += -framework IOKit
     102  endif
     103 endif
     104
     105 VBoxDDU_LDFLAGS.linux    = -Wl,--no-undefined
     106 VBoxDDU_LDFLAGS.l4       = -Wl,--no-undefined
     107
     108 #
     109 # VBoxDDULnxHostR3 (Only needed for l4, currently for executing vditool on L4Linux.)
     110 #
     111 ifeq ($(KBUILD_TARGET),l4)
     112  LIBRARIES                += VBoxDDULnxHostR3
     113  VBoxDDULnxHostR3_TEMPLATE = VBOXLNXHOSTR3LIB
     114  VBoxDDULnxHostR3_DEFS     = IN_VBOXDDU
     115  VBoxDDULnxHostR3_SOURCES  = $(VBoxDDU_SOURCES)
     116 endif
     117
     118 #
     119 # VBoxDD (shared object)
     120 #
     121 VBoxDD_TEMPLATE         = VBOXR3
     122 VBoxDD_SDKS.win         = WINPSDK DXSDK W2K3DDK VBOX_NTDLL
     123 VBoxDD_SOURCES          = \
     124        Builtins.cpp
     125 VBoxDD_DEFS             = VBOX_ACPI
     126 ifdef VBOX_WITH_USB
     127  VBoxDD_DEFS           += VBOX_WITH_USB
     128  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
     129   VBoxDD_DEFS          += VBOX_WITH_EHCI
     130  endif
     131 endif
     132 ifdef VBOX_WITH_VUSB
     133  VBoxDD_DEFS           += VBOX_WITH_VUSB
     134 endif
     135 ifdef VBOX_WITH_AHCI
     136  VBoxDD_DEFS           += VBOX_WITH_AHCI
     137 endif
     138 ifdef VBOX_WITH_INIP
     139  VBoxDD_DEFS           += VBOX_WITH_INIP
     140 endif
     141 ifdef VBOX_WITH_E1000
     142  VBoxDD_DEFS           += VBOX_WITH_E1000
     143 endif
     144 ifdef VBOX_WITH_VIRTIO
     145  VBoxDD_DEFS           += VBOX_WITH_VIRTIO
     146 endif
     147 ifdef VBOX_WITH_BUSLOGIC
     148  VBoxDD_DEFS           += VBOX_WITH_BUSLOGIC
     149 endif
     150 ifdef VBOX_WITH_PDM_ASYNC_COMPLETION
     151  VBoxDD_DEFS           += VBOX_WITH_PDM_ASYNC_COMPLETION
     152 endif
     153 ifdef VBOX_WITH_SCSI
     154  VBoxDD_DEFS           += VBOX_WITH_SCSI
     155 endif
     156 ifdef VBOX_WITH_LSILOGIC
     157  VBoxDD_DEFS           += VBOX_WITH_LSILOGIC
     158 endif
     159 ifdef VBOX_WITH_EFI
     160  VBoxDD_DEFS           += VBOX_WITH_EFI
     161 endif
     162 ifdef VBOX_WITH_DRV_DISK_INTEGRITY
     163  VBoxDD_DEFS           += VBOX_WITH_DRV_DISK_INTEGRITY
     164 endif
     165 ifdef VBOX_WITH_VDE
     166  VBoxDD_DEFS           += VBOX_WITH_VDE
     167 endif
     168
     169 VBoxDD_LIBS             = \
     170        $(PATH_LIB)/DevicesR3$(VBOX_SUFF_LIB) \
     171        $(PATH_LIB)/Drivers$(VBOX_SUFF_LIB) \
     172        $(PATH_LIB)/VgaDefBiosLogo$(VBOX_SUFF_LIB) \
     173        $(LIB_VMM) \
     174        $(LIB_RUNTIME)
     175 ifeq ($(KBUILD_TARGET),win)
     176  VBoxDD_LIBS           += \
     177        $(LIB_DDU) \
     178        $(PATH_LIB)/VBoxDD2.lib \
     179        $(PATH_SDK_DXSDK_LIB)/dxguid.lib
     180 else
     181  VBoxDD_LIBS           += \
     182        $(INSTARGET_VBoxDDU) \
     183        $(INSTARGET_VBoxDD2)
     184 endif
     185 ifeq ($(KBUILD_TARGET),l4)
     186  VBoxDD_LIBS           += \
     187        $(L4_LIBDIR)/libl4sys.p.a
     188 endif
     189
     190 ifdef VBOX_WITH_HGSMI
     191  VBoxDD_LIBS           += \
     192        $(PATH_LIB)/HGSMIHostR3Lib$(VBOX_SUFF_LIB)
     193 endif
     194
     195 ifdef VBOX_WITH_NETFLT
     196  VBoxDD_LIBS.win       += $(PATH_LIB)/WinNetConfig.lib
     197 endif
     198
     199 ifdef VBOX_WITH_EFI
     200  VBoxDD_LIBS           += $(PATH_LIB)/EfiThunkBin$(VBOX_SUFF_LIB)
     201 endif
     202
     203 ifeq ($(KBUILD_TARGET),solaris)
     204  VBoxDD_LIBS           += adm
     205  ifdef VBOX_WITH_SUID_WRAPPER
     206   VBoxDD_LIBS          += secdb
     207  endif
     208  ifdef VBOX_WITH_USB
     209   VBoxDD_LIBS          += aio
     210  endif
     211 endif
     212
     213 VBoxDD_LIBS.darwin     += \
     214        $(LIB_REM)
     215
     216 VBoxDD_LDFLAGS.darwin   = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDD.dylib \
     217        -framework CoreAudio \
     218        -framework AudioUnit \
     219        -framework AudioToolbox \
     220        -framework IOKit \
     221        -framework Carbon \
     222        -framework DiskArbitration
     223 VBoxDD_LDFLAGS.linux    = -Wl,--no-undefined
     224 VBoxDD_LDFLAGS.l4       = -Wl,--no-undefined
     225
     226
     227 #
     228 # VBoxDD2 (shared object)
     229 #
     230 VBoxDD2_TEMPLATE        = VBOXR3
     231 VBoxDD2_DEFS            = IN_VBOXDD2
     232 VBoxDD2_INCS           := \
     233        $(PATH_SUB_CURRENT)
     234 VBoxDD2_SOURCES         = \
     235        Builtins2.cpp  \
     236        PC/DevAPIC.cpp \
     237        PC/DevSMC.cpp  \
     238        PC/DevLPC.cpp
     239 VBoxDD2_LIBS            = \
     240        $(PATH_LIB)/PcBiosBin$(VBOX_SUFF_LIB) \
     241        $(PATH_LIB)/VgaBiosBin$(VBOX_SUFF_LIB) \
     242        $(PATH_LIB)/NetBiosBin$(VBOX_SUFF_LIB) \
     243        $(LIB_VMM) \
     244        $(LIB_RUNTIME)
     245 ifeq ($(KBUILD_TARGET),l4)
     246 VBoxDD2_LIBS           += \
     247        $(L4_LIBDIR)/libl4sys.p.a
     248 endif
     249 VBoxDD2_LIBS.darwin    += $(LIB_REM)
     250 VBoxDD2_LDFLAGS.darwin  = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDD2.dylib
     251 VBoxDD2_LDFLAGS.linux   = -Wl,--no-undefined
     252 VBoxDD2_LDFLAGS.l4      = -Wl,--no-undefined
     253
     254
     255 #
     256 # DevicesR3 (library)
     257 #
     258 DevicesR3_TEMPLATE      = VBOXR3
     259 DevicesR3_SDKS.win      = WINPSDK W2K3DDK
     260 DevicesR3_DEFS.darwin.x86 = VBOX_WITH_2X_4GB_ADDR_SPACE
     261 DevicesR3_DEFS         += \
     262        VBOX_HGCM_HOST_CODE \
     263        VBOX_WITH_HGCM \
     264        $(if $(VBOX_WITH_AUDIO_FLEXIBLE_FORMAT),VBOX_WITH_AUDIO_FLEXIBLE_FORMAT,) \
     265        $(if $(VBOX_BIOS_DMI_FALLBACK),VBOX_BIOS_DMI_FALLBACK,)
     266 DevicesR3_DEFS.linux   += _GNU_SOURCE
     267 DevicesR3_DEFS.l4      += _GNU_SOURCE
     268
     269 DevicesR3_INCS          = \
     270        .
     271
     272 DevicesR3_SOURCES       = \
     273        Input/DevPS2.cpp \
     274        Input/UsbKbd.cpp \
     275        Input/UsbMouse.cpp \
     276        Bus/DevPCI.cpp \
     277        Bus/DevPciIch9.cpp \
     278        Bus/MsiCommon.cpp \
     279        Bus/MsixCommon.cpp \
     280        Graphics/DevVGA.cpp \
     281        Storage/DevATA.cpp \
     282        PC/DevPit-i8254.cpp \
     283        PC/DevPIC.cpp \
     284        PC/DevACPI.cpp \
     285        PC/ACPI/VBoxAcpi.cpp \
     286        PC/DevRTC.cpp \
     287        PC/DevPcBios.cpp \
     288        PC/DevFwCommon.cpp \
     289        PC/DevPcArch.c \
     290        VMMDev/VMMDev.cpp \
     291        VMMDev/VMMDevHGCM.cpp \
     292        VMMDev/VMMDevTesting.cpp \
     293        Network/DevPCNet.cpp \
     294        Audio/DevIchAc97.cpp \
     295        Audio/DevSB16.cpp \
     296        Audio/DevIchIntelHDA.cpp \
     297        Audio/DevCodec.cpp \
     298        PC/DevDMA.cpp \
     299        PC/DevHPET.cpp \
     300        PC/DevSMC.cpp \
     301        PC/DevLPC.cpp \
     302        Storage/fdc.c \
     303        Serial/DevSerial.cpp \
     304        Parallel/DevParallel.cpp
     305
     306 ifdef VBOX_WITH_E1000
     307  DevicesR3_DEFS        += VBOX_WITH_E1000
     308  DevicesR3_SOURCES     += \
     309        Network/DevE1000.cpp \
     310        Network/DevE1000Phy.cpp \
     311        Network/DevEEPROM.cpp
     312 endif
     313
     314 ifdef VBOX_WITH_VIRTIO
     315  DevicesR3_DEFS        += VBOX_WITH_VIRTIO
     316  DevicesR3_SOURCES     += \
     317        VirtIO/Virtio.cpp \
     318        Network/DevVirtioNet.cpp
     319 endif
     320
     321 ifdef VBOX_WITH_HGSMI
     322  DevicesR3_DEFS        += VBOX_WITH_HGSMI
     323  DevicesR3_SOURCES     += \
     324        Graphics/DevVGA_VBVA.cpp \
     325        Graphics/HGSMI/HGSMIHost.cpp \
     326        Graphics/HGSMI/HGSMIHostHlp.cpp
     327
     328 endif
     329 ifdef VBOX_WITH_WDDM
     330  DevicesR3_DEFS        += VBOX_WITH_WDDM
     331  DevicesR3_SOURCES     += \
     332        Graphics/HGSMI/SHGSMIHost.cpp
     333 endif
     334 ifdef VBOX_WITH_VDMA
     335  DevicesR3_DEFS        += VBOX_WITH_VDMA
     336  DevicesR3_SOURCES     += \
     337        Graphics/DevVGA_VDMA.cpp
     338 endif
     339 ifdef VBOX_WITH_CRHGSMI
     340  DevicesR3_DEFS        += VBOX_WITH_CRHGSMI
     341 endif
     342 ifdef VBOXWDDM_TEST_UHGSMI
     343  DevicesR3_DEFS        += VBOXWDDM_TEST_UHGSMI
     344 endif
     345 ifdef VBOXWDDM_WITH_VBVA
     346  DevicesR3_DEFS        += VBOXWDDM_WITH_VBVA
     347 endif
     348 ifdef VBOX_WITH_VIDEOHWACCEL
     349  DevicesR3_DEFS        += VBOX_WITH_VIDEOHWACCEL
     350 endif
     351 ifdef VBOX_WITH_DMI_CHASSIS
     352  DevicesR3_DEFS        += VBOX_WITH_DMI_CHASSIS
     353 endif
     354 ifdef VBOX_WITH_DMI_OEMSTRINGS
     355  DevicesR3_DEFS        += VBOX_WITH_DMI_OEMSTRINGS
     356 endif
     357
     358 ifdef VBOX_WITH_INIP
     359  DevicesR3_INCS        += \
     360        Network/lwip/src/include \
     361        Network/lwip/src/include/ipv4 \
     362        Network/lwip/vbox/include
     363  DevicesR3_SOURCES     += \
     364        Network/lwip/src/api/api_lib.c \
     365        Network/lwip/src/api/api_msg.c \
     366        Network/lwip/src/api/err.c \
     367        Network/lwip/src/api/sockets.c \
     368        Network/lwip/src/api/tcpip.c \
     369        Network/lwip/src/core/tcp_in.c \
     370        Network/lwip/src/core/dhcp.c \
     371        Network/lwip/src/core/inet.c \
     372        Network/lwip/src/core/mem.c \
     373        Network/lwip/src/core/memp.c \
     374        Network/lwip/src/core/netif.c \
     375        Network/lwip/src/core/pbuf.c \
     376        Network/lwip/src/core/raw.c \
     377        Network/lwip/src/core/stats.c \
     378        Network/lwip/src/core/sys.c \
     379        Network/lwip/src/core/tcp.c \
     380        Network/lwip/src/core/ipv4/ip_addr.c \
     381        Network/lwip/src/core/ipv4/icmp.c \
     382        Network/lwip/src/core/ipv4/ip.c \
     383        Network/lwip/src/core/ipv4/ip_frag.c \
     384        Network/lwip/src/core/tcp_out.c \
     385        Network/lwip/src/core/udp.c \
     386        Network/lwip/src/netif/etharp.c \
     387        Network/lwip/vbox/sys_arch.c \
     388        Network/DevINIP.cpp
     389  DevicesR3_DEFS               += VBOX_WITH_INIP
     390 endif
     391
     392 ifdef VBOX_WITH_AHCI
     393  DevicesR3_DEFS               += VBOX_WITH_AHCI IN_AHCI_R3
     394  DevicesR3_SOURCES     += \
     395        Storage/DevAHCI.cpp \
     396        Storage/ATAController.cpp
     397 endif
     398
     399 ifdef VBOX_WITH_BUSLOGIC
     400  DevicesR3_DEFS               += VBOX_WITH_BUSLOGIC
     401  DevicesR3_SOURCES     += \
     402        Storage/DevBusLogic.cpp \
     403        Storage/VBoxSCSI.cpp
     404 endif
     405
     406 ifdef VBOX_WITH_LSILOGIC
     407  DevicesR3_DEFS               += VBOX_WITH_LSILOGIC
     408  DevicesR3_SOURCES     += \
     409        Storage/DevLsiLogicSCSI.cpp
     410 endif
     411
     412 ifdef VBOX_WITH_EFI
     413  DevicesR3_DEFS        += VBOX_WITH_EFI
     414  ifdef VBOX_WITH_ALT_EFITHUNK
     415   DevicesR3_DEFS       += VBOX_WITH_ALT_EFITHUNK
     416  endif
     417  DevicesR3_SOURCES     += EFI/DevEFI.cpp
     418  EFI/DevEFI.cpp_INCS       += EFI/tools/include
     419  EFI/DevEFI.cpp_INCS.x86   += EFI/tools/include/Ia32
     420  EFI/DevEFI.cpp_INCS.amd64 += EFI/tools/include/X64
     421 endif
     422
     423 ifdef VBOX_WITH_MSI_DEVICES
     424  DevicesR3_DEFS        += VBOX_WITH_MSI_DEVICES
     425 endif
     426
     427 ifdef VBOX_WITH_DYNAMIC_DSDT
     428  DevicesR3_DEFS        += VBOX_WITH_DYNAMIC_DSDT
     429 endif
     430
     431 ifdef VBOX_WITH_VUSB
     432  DevicesR3_DEFS        += VBOX_WITH_VUSB
     433  DevicesR3_SOURCES     += \
     434        USB/DevOHCI.cpp
     435 endif
     436 ifdef VBOX_WITH_USB
     437  DevicesR3_DEFS        += VBOX_WITH_USB
     438  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
     439   DevicesR3_DEFS       += VBOX_WITH_EHCI
     440   DevicesR3_SOURCES    += \
     441        USB/DevEHCI.cpp
     442  endif
     443 endif
     444
     445 ifdef VBOX_WITH_DTRACE_R3
     446  DevicesR3_DEFS        += VBOX_WITH_DTRACE
     447  DevicesR3_INCS        += $(DevicesR3_0_OUTDIR)
     448  DevicesR3_INTERMEDIATES += $(DevicesR3_0_OUTDIR)/VBoxDD-dtrace.h
     449  $$(DevicesR3_0_OUTDIR)/VBoxDD-dtrace.h: $(PATH_SUB_CURRENT)/VBoxDD-dtrace.d | $$(dir $$@)
    449450        dtrace -C -h -o $@ -s $<
    450 endif
    451 
    452 ifdef VBOX_WITH_DYNAMIC_DSDT
    453  DevicesR3_CLEAN       += $(PATH_DevicesR3)/vboxdsl.hex
    454  PC/ACPI/VBoxAcpi.cpp_DEPS = $(PATH_DevicesR3)/vboxdsl.hex
    455 
    456  $$(PATH_DevicesR3)/vboxdsl.hex: $(PATH_SUB_CURRENT)/PC/vbox.dsl | $$(dir $$@)
     451 endif
     452
     453 ifdef VBOX_WITH_DYNAMIC_DSDT
     454  DevicesR3_CLEAN       += $(PATH_DevicesR3)/vboxdsl.hex
     455  PC/ACPI/VBoxAcpi.cpp_DEPS = $(PATH_DevicesR3)/vboxdsl.hex
     456
     457  $$(PATH_DevicesR3)/vboxdsl.hex: $(PATH_SUB_CURRENT)/PC/vbox.dsl | $$(dir $$@)
    457458        $(call MSG_TOOL,bin2c,DevicesR3,$<,$@)
    458459        $(QUIET)$(VBOX_BIN2C) -export VboxDslSource $< $@
    459460
    460  vboxdsl.hex:: $$(PATH_DevicesR3)/vboxdsl.hex
    461 
    462 else  # !VBOX_WITH_DYNAMIC_DSDT
    463  # VBoxAcpi.cpp needs vboxaml.hex which we generate from PC/vbox.dsl
    464  DevicesR3_CLEAN       += \
    465         $(PATH_DevicesR3)/vboxaml.hex \
    466         $(PATH_DevicesR3)/vboxaml.aml \
    467         $(PATH_DevicesR3)/vboxssdt-standard.hex \
    468         $(PATH_DevicesR3)/vboxssdt-standard.aml \
    469         $(PATH_DevicesR3)/vboxssdt-standard.aml.tmp \
    470         $(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex \
    471         $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml \
    472         $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml.tmp \
    473         $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml.pre
    474  PC/ACPI/VBoxAcpi.cpp_DEPS = \
    475         $(PATH_DevicesR3)/vboxaml.hex \
    476         $(PATH_DevicesR3)/vboxssdt-standard.hex \
    477         $(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex
    478 
    479  $$(PATH_DevicesR3)/vboxaml.hex: $(PATH_SUB_CURRENT)/PC/vbox.dsl | $$(dir $$@)
     461  vboxdsl.hex:: $$(PATH_DevicesR3)/vboxdsl.hex
     462
     463 else  # !VBOX_WITH_DYNAMIC_DSDT
     464  # VBoxAcpi.cpp needs vboxaml.hex which we generate from PC/vbox.dsl
     465  DevicesR3_CLEAN       += \
     466        $(PATH_DevicesR3)/vboxaml.hex \
     467        $(PATH_DevicesR3)/vboxaml.aml \
     468        $(PATH_DevicesR3)/vboxssdt-standard.hex \
     469        $(PATH_DevicesR3)/vboxssdt-standard.aml \
     470        $(PATH_DevicesR3)/vboxssdt-standard.aml.tmp \
     471        $(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex \
     472        $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml \
     473        $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml.tmp \
     474        $(PATH_DevicesR3)/vboxssdt-cpuhotplug.aml.pre
     475  PC/ACPI/VBoxAcpi.cpp_DEPS = \
     476        $(PATH_DevicesR3)/vboxaml.hex \
     477        $(PATH_DevicesR3)/vboxssdt-standard.hex \
     478        $(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex
     479
     480  $$(PATH_DevicesR3)/vboxaml.hex: $(PATH_SUB_CURRENT)/PC/vbox.dsl | $$(dir $$@)
    480481        $(call MSG_TOOL,iasl,DevicesR3,$<,$@)
    481482        $(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $<
    482483
    483  vboxaml.hex:: $$(PATH_DevicesR3)/vboxaml.hex
    484 
    485  $$(PATH_DevicesR3)/vboxssdt-standard.hex: $(PATH_SUB_CURRENT)/PC/vbox-standard.dsl | $$(dir $$@)
     484  vboxaml.hex:: $$(PATH_DevicesR3)/vboxaml.hex
     485
     486  $$(PATH_DevicesR3)/vboxssdt-standard.hex: $(PATH_SUB_CURRENT)/PC/vbox-standard.dsl | $$(dir $$@)
    486487        $(call MSG_TOOL,iasl,DevicesR3,$<,$@)
    487488        $(QUIET)$(RM) -f $@ [email protected]
     
    493494
    494495
    495  vboxssdt-standard.hex:: $$(PATH_DevicesR3)/vboxssdt-standard.hex
    496 
    497  $$(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex: $(PATH_SUB_CURRENT)/PC/vbox-cpuhotplug.dsl | $$(dir $$@)
     496  vboxssdt-standard.hex:: $$(PATH_DevicesR3)/vboxssdt-standard.hex
     497
     498  $$(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex: $(PATH_SUB_CURRENT)/PC/vbox-cpuhotplug.dsl | $$(dir $$@)
    498499        $(call MSG_TOOL,iasl,DevicesR3,$<,$@)
    499500        $(QUIET)$(RM) -f $@ [email protected] [email protected]
     
    506507
    507508
    508  vboxssdt-cpuhotplug.hex:: $$(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex
    509 
    510 endif # !VBOX_WITH_DYNAMIC_DSDT
    511 PC/ACPI/VBoxAcpi.cpp_INCS = $(PATH_DevicesR3)
    512 
    513 # For finding PCIInternal.h from VBox/pci.h.
    514 Bus/DevPCI.cpp_INCS      = Bus
    515 Bus/DevPciIch9.cpp_INCS  = Bus
    516 Bus/MsiCommon.cpp_INCS  = Bus
    517 Bus/MsixCommon.cpp_INCS  = Bus
    518 
    519 # For finding and generating vbetables.h (see Graphics/BIOS/Makefile.kmk).
    520 Graphics/DevVGA.cpp_INCS = $(PATH_VgaBiosBin)
    521 Graphics/DevVGA.cpp_DEPS = $(PATH_VgaBiosBin)/vbetables.h
    522 
    523 
    524 ifdef VBOX_WITH_RAW_MODE
    525  #
    526  # VBoxDDGC (sysmod)
    527  #
    528  VBoxDDGC_TEMPLATE       = VBoxRc
    529  ifeq ($(KBUILD_TARGET_ARCH),x86)
    530   VBoxDDGC_DEFS.darwin   = VBOX_WITH_2X_4GB_ADDR_SPACE
    531  endif
    532  VBoxDDGC_DEFS           = VBOX_WITH_HGCM
    533  VBoxDDGC_INCS          := \
     509  vboxssdt-cpuhotplug.hex:: $$(PATH_DevicesR3)/vboxssdt-cpuhotplug.hex
     510
     511 endif # !VBOX_WITH_DYNAMIC_DSDT
     512 PC/ACPI/VBoxAcpi.cpp_INCS = $(PATH_DevicesR3)
     513
     514 # For finding PCIInternal.h from VBox/pci.h.
     515 Bus/DevPCI.cpp_INCS      = Bus
     516 Bus/DevPciIch9.cpp_INCS  = Bus
     517 Bus/MsiCommon.cpp_INCS  = Bus
     518 Bus/MsixCommon.cpp_INCS  = Bus
     519
     520 # For finding and generating vbetables.h (see Graphics/BIOS/Makefile.kmk).
     521 Graphics/DevVGA.cpp_INCS = $(PATH_VgaBiosBin)
     522 Graphics/DevVGA.cpp_DEPS = $(PATH_VgaBiosBin)/vbetables.h
     523
     524
     525 ifdef VBOX_WITH_RAW_MODE
     526  #
     527  # VBoxDDGC (sysmod)
     528  #
     529  VBoxDDGC_TEMPLATE       = VBoxRc
     530  ifeq ($(KBUILD_TARGET_ARCH),x86)
     531   VBoxDDGC_DEFS.darwin   = VBOX_WITH_2X_4GB_ADDR_SPACE
     532  endif
     533  VBoxDDGC_DEFS           = VBOX_WITH_HGCM
     534  VBoxDDGC_INCS          := \
     535        $(PATH_SUB_CURRENT)
     536  VBoxDDGC_SOURCES        = \
     537        Bus/DevPCI.cpp \
     538        Bus/DevPciIch9.cpp \
     539        Bus/MsiCommon.cpp \
     540        Bus/MsixCommon.cpp \
     541        Graphics/DevVGA.cpp \
     542        Input/DevPS2.cpp \
     543        PC/DevACPI.cpp \
     544        PC/DevPit-i8254.cpp \
     545        PC/DevPIC.cpp \
     546        PC/DevRTC.cpp \
     547        PC/DevHPET.cpp \
     548        Storage/DevATA.cpp \
     549        Network/DevPCNet.cpp \
     550        Serial/DevSerial.cpp \
     551        Parallel/DevParallel.cpp \
     552        VMMDev/VMMDevTesting.cpp
     553
     554  ifdef VBOX_WITH_E1000
     555   VBoxDDGC_DEFS        += VBOX_WITH_E1000
     556   VBoxDDGC_SOURCES     += \
     557        Network/DevE1000.cpp \
     558        Network/DevE1000Phy.cpp
     559  endif
     560
     561  ifdef VBOX_WITH_VIRTIO
     562   VBoxDDGC_DEFS        += VBOX_WITH_VIRTIO
     563   VBoxDDGC_SOURCES     += \
     564        VirtIO/Virtio.cpp \
     565        Network/DevVirtioNet.cpp
     566  endif
     567
     568  ifdef VBOX_WITH_HGSMI
     569   VBoxDDGC_DEFS        += VBOX_WITH_HGSMI
     570  endif
     571  ifdef VBOX_WITH_WDDM
     572   VBoxDDGC_DEFS        += VBOX_WITH_WDDM
     573  endif
     574  ifdef VBOX_WITH_VDMA
     575   VBoxDDGC_DEFS        += VBOX_WITH_VDMA
     576  endif
     577  ifdef VBOX_WITH_CRHGSMI
     578   VBoxDDGC_DEFS        += VBOX_WITH_CRHGSMI
     579  endif
     580
     581  ifdef VBOXWDDM_WITH_VBVA
     582   VBoxDDGC_DEFS        += VBOXWDDM_WITH_VBVA
     583  endif
     584
     585  ifdef VBOX_WITH_VUSB
     586   VBoxDDGC_DEFS        += VBOX_WITH_VUSB
     587   VBoxDDGC_SOURCES     += \
     588        USB/DevOHCI.cpp
     589  endif
     590
     591  ifdef VBOX_WITH_USB
     592   VBoxDDGC_DEFS        += VBOX_WITH_USB
     593   if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
     594    VBoxDDGC_DEFS       += VBOX_WITH_EHCI
     595    VBoxDDGC_SOURCES    += \
     596        USB/DevEHCI.cpp
     597   endif
     598  endif
     599
     600  ifdef VBOX_WITH_VIDEOHWACCEL
     601   VBoxDDGC_DEFS        += VBOX_WITH_VIDEOHWACCEL
     602  endif
     603
     604  ifdef VBOX_WITH_AHCI
     605  VBoxDDGC_DEFS         += VBOX_WITH_AHCI IN_AHCI_GC
     606  VBoxDDGC_SOURCES      += \
     607        Storage/DevAHCI.cpp \
     608        Storage/ATAController.cpp
     609  endif
     610
     611  ifdef VBOX_WITH_BUSLOGIC
     612  VBoxDDGC_DEFS         += VBOX_WITH_BUSLOGIC
     613  VBoxDDGC_SOURCES      += \
     614        Storage/DevBusLogic.cpp
     615  endif
     616
     617  ifdef VBOX_WITH_LSILOGIC
     618  VBoxDDGC_DEFS         += VBOX_WITH_LSILOGIC
     619  VBoxDDGC_SOURCES      += \
     620        Storage/DevLsiLogicSCSI.cpp
     621  endif
     622
     623  if1of ($(VBOX_LDR_FMT32), pe lx)
     624  VBoxDDGC_LIBS           = \
     625        $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB) \
     626        $(PATH_LIB)/VMMGCImp$(VBOX_SUFF_LIB)
     627  endif
     628 endif # VBOX_WITH_RAW_MODE
     629
     630
     631 #
     632 # VBoxDDR0 (sysmod)
     633 #
     634 VBoxDDR0_TEMPLATE       = VBoxR0
     635 VBoxDDR0_DEFS.darwin.x86= VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0 VBOX_WITH_2X_4GB_ADDR_SPACE
     636 VBoxDDR0_DEFS           = IN_RT_R0 VBOX_WITH_HGCM # - WTF is IN_RT_R0 doing here?
     637 VBoxDDR0_INCS          := \
    534638        $(PATH_SUB_CURRENT)
    535  VBoxDDGC_SOURCES        = \
     639 VBoxDDR0_SOURCES        = \
    536640        Bus/DevPCI.cpp \
    537         Bus/DevPciIch9.cpp \
    538         Bus/MsiCommon.cpp \
    539         Bus/MsixCommon.cpp \
     641        Bus/DevPciIch9.cpp \
     642        Bus/MsiCommon.cpp \
     643        Bus/MsixCommon.cpp \
    540644        Graphics/DevVGA.cpp \
    541645        Input/DevPS2.cpp \
     
    544648        PC/DevPIC.cpp \
    545649        PC/DevRTC.cpp \
    546         PC/DevHPET.cpp \
     650        PC/DevHPET.cpp \
    547651        Storage/DevATA.cpp \
    548652        Network/DevPCNet.cpp \
    549653        Serial/DevSerial.cpp \
    550654        Parallel/DevParallel.cpp \
    551         VMMDev/VMMDevTesting.cpp
     655        VMMDev/VMMDevTesting.cpp \
     656        \
     657        Network/DrvIntNet.cpp \
     658        Network/DrvDedicatedNic.cpp
    552659
    553660 ifdef VBOX_WITH_E1000
    554   VBoxDDGC_DEFS        += VBOX_WITH_E1000
    555   VBoxDDGC_SOURCES     += \
     661  VBoxDDR0_DEFS         += VBOX_WITH_E1000
     662  VBoxDDR0_SOURCES      += \
    556663        Network/DevE1000.cpp \
    557664        Network/DevE1000Phy.cpp
     
    559666
    560667 ifdef VBOX_WITH_VIRTIO
    561   VBoxDDGC_DEFS        += VBOX_WITH_VIRTIO
    562   VBoxDDGC_SOURCES     += \
    563         VirtIO/Virtio.cpp \
     668  VBoxDDR0_DEFS         += VBOX_WITH_VIRTIO
     669  VBoxDDR0_SOURCES      += \
     670         VirtIO/Virtio.cpp \
    564671        Network/DevVirtioNet.cpp
    565672 endif
    566673
    567674 ifdef VBOX_WITH_HGSMI
    568   VBoxDDGC_DEFS        += VBOX_WITH_HGSMI
     675  VBoxDDR0_DEFS         += VBOX_WITH_HGSMI
    569676 endif
    570677 ifdef VBOX_WITH_WDDM
    571   VBoxDDGC_DEFS        += VBOX_WITH_WDDM
     678  VBoxDDR0_DEFS         += VBOX_WITH_WDDM
    572679 endif
    573680 ifdef VBOX_WITH_VDMA
    574   VBoxDDGC_DEFS        += VBOX_WITH_VDMA
     681  VBoxDDR0_DEFS         += VBOX_WITH_VDMA
    575682 endif
    576683 ifdef VBOX_WITH_CRHGSMI
    577   VBoxDDGC_DEFS        += VBOX_WITH_CRHGSMI
    578  endif
    579 
     684  VBoxDDR0_DEFS         += VBOX_WITH_CRHGSMI
     685 endif
    580686 ifdef VBOXWDDM_WITH_VBVA
    581   VBoxDDGC_DEFS        += VBOXWDDM_WITH_VBVA
     687  VBoxDDR0_DEFS         += VBOXWDDM_WITH_VBVA
    582688 endif
    583689
    584690 ifdef VBOX_WITH_VUSB
    585   VBoxDDGC_DEFS        += VBOX_WITH_VUSB
    586   VBoxDDGC_SOURCES     += \
    587         USB/DevOHCI.cpp
    588  endif
    589 
     691  VBoxDDR0_DEFS         += VBOX_WITH_VUSB
     692  VBoxDDR0_SOURCES      += \
     693        USB/DevOHCI.cpp
     694 endif
    590695 ifdef VBOX_WITH_USB
    591   VBoxDDGC_DEFS        += VBOX_WITH_USB
     696 VBoxDDR0_DEFS          += VBOX_WITH_USB
    592697  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
    593    VBoxDDGC_DEFS       += VBOX_WITH_EHCI
    594    VBoxDDGC_SOURCES    += \
     698   VBoxDDR0_DEFS        += VBOX_WITH_EHCI
     699   VBoxDDR0_SOURCES     += \
    595700        USB/DevEHCI.cpp
    596701  endif
    597702 endif
    598703
    599  ifdef VBOX_WITH_VIDEOHWACCEL
    600   VBoxDDGC_DEFS        += VBOX_WITH_VIDEOHWACCEL
    601  endif
    602 
    603704 ifdef VBOX_WITH_AHCI
    604  VBoxDDGC_DEFS         += VBOX_WITH_AHCI IN_AHCI_GC
    605  VBoxDDGC_SOURCES      += \
     705 VBoxDDR0_DEFS          += VBOX_WITH_AHCI IN_AHCI_R0
     706 VBoxDDR0_SOURCES       += \
    606707        Storage/DevAHCI.cpp \
    607708        Storage/ATAController.cpp
     
    609710
    610711 ifdef VBOX_WITH_BUSLOGIC
    611  VBoxDDGC_DEFS         += VBOX_WITH_BUSLOGIC
    612  VBoxDDGC_SOURCES      += \
     712 VBoxDDR0_DEFS          += VBOX_WITH_BUSLOGIC
     713 VBoxDDR0_SOURCES       += \
    613714        Storage/DevBusLogic.cpp
    614715 endif
    615716
    616717 ifdef VBOX_WITH_LSILOGIC
    617  VBoxDDGC_DEFS         += VBOX_WITH_LSILOGIC
    618  VBoxDDGC_SOURCES      += \
     718 VBoxDDR0_DEFS          += VBOX_WITH_LSILOGIC
     719 VBoxDDR0_SOURCES       += \
    619720        Storage/DevLsiLogicSCSI.cpp
    620721 endif
    621722
    622  if1of ($(VBOX_LDR_FMT32), pe lx)
    623  VBoxDDGC_LIBS           = \
    624         $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB) \
    625         $(PATH_LIB)/VMMGCImp$(VBOX_SUFF_LIB)
    626  endif
    627 endif # VBOX_WITH_RAW_MODE
    628 
    629 
    630 #
    631 # VBoxDDR0 (sysmod)
    632 #
    633 VBoxDDR0_TEMPLATE       = VBoxR0
    634 VBoxDDR0_DEFS.darwin.x86= VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0 VBOX_WITH_2X_4GB_ADDR_SPACE
    635 VBoxDDR0_DEFS           = IN_RT_R0 VBOX_WITH_HGCM # - WTF is IN_RT_R0 doing here?
    636 VBoxDDR0_INCS          := \
    637         $(PATH_SUB_CURRENT)
    638 VBoxDDR0_SOURCES        = \
    639         Bus/DevPCI.cpp \
    640         Bus/DevPciIch9.cpp \
    641         Bus/MsiCommon.cpp \
    642         Bus/MsixCommon.cpp \
    643         Graphics/DevVGA.cpp \
    644         Input/DevPS2.cpp \
    645         PC/DevACPI.cpp \
    646         PC/DevPit-i8254.cpp \
    647         PC/DevPIC.cpp \
    648         PC/DevRTC.cpp \
    649         PC/DevHPET.cpp \
    650         Storage/DevATA.cpp \
    651         Network/DevPCNet.cpp \
    652         Serial/DevSerial.cpp \
    653         Parallel/DevParallel.cpp \
    654         VMMDev/VMMDevTesting.cpp \
    655         \
    656         Network/DrvIntNet.cpp \
    657         Network/DrvDedicatedNic.cpp
    658 
    659 ifdef VBOX_WITH_E1000
    660  VBoxDDR0_DEFS         += VBOX_WITH_E1000
    661  VBoxDDR0_SOURCES      += \
    662         Network/DevE1000.cpp \
    663         Network/DevE1000Phy.cpp
    664 endif
    665 
    666 ifdef VBOX_WITH_VIRTIO
    667  VBoxDDR0_DEFS         += VBOX_WITH_VIRTIO
    668  VBoxDDR0_SOURCES      += \
    669         VirtIO/Virtio.cpp \
    670         Network/DevVirtioNet.cpp
    671 endif
    672 
    673 ifdef VBOX_WITH_HGSMI
    674  VBoxDDR0_DEFS         += VBOX_WITH_HGSMI
    675 endif
    676 ifdef VBOX_WITH_WDDM
    677  VBoxDDR0_DEFS         += VBOX_WITH_WDDM
    678 endif
    679 ifdef VBOX_WITH_VDMA
    680  VBoxDDR0_DEFS         += VBOX_WITH_VDMA
    681 endif
    682 ifdef VBOX_WITH_CRHGSMI
    683  VBoxDDR0_DEFS         += VBOX_WITH_CRHGSMI
    684 endif
    685 ifdef VBOXWDDM_WITH_VBVA
    686  VBoxDDR0_DEFS         += VBOXWDDM_WITH_VBVA
    687 endif
    688 
    689 ifdef VBOX_WITH_VUSB
    690  VBoxDDR0_DEFS         += VBOX_WITH_VUSB
    691  VBoxDDR0_SOURCES      += \
    692         USB/DevOHCI.cpp
    693 endif
    694 ifdef VBOX_WITH_USB
    695 VBoxDDR0_DEFS          += VBOX_WITH_USB
    696  if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL)
    697   VBoxDDR0_DEFS        += VBOX_WITH_EHCI
    698   VBoxDDR0_SOURCES     += \
    699         USB/DevEHCI.cpp
    700  endif
    701 endif
    702 
    703 ifdef VBOX_WITH_AHCI
    704 VBoxDDR0_DEFS          += VBOX_WITH_AHCI IN_AHCI_R0
    705 VBoxDDR0_SOURCES       += \
    706         Storage/DevAHCI.cpp \
    707         Storage/ATAController.cpp
    708 endif
    709 
    710 ifdef VBOX_WITH_BUSLOGIC
    711 VBoxDDR0_DEFS          += VBOX_WITH_BUSLOGIC
    712 VBoxDDR0_SOURCES       += \
    713         Storage/DevBusLogic.cpp
    714 endif
    715 
    716 ifdef VBOX_WITH_LSILOGIC
    717 VBoxDDR0_DEFS          += VBOX_WITH_LSILOGIC
    718 VBoxDDR0_SOURCES       += \
    719         Storage/DevLsiLogicSCSI.cpp
    720 endif
    721 
    722 ifdef VBOX_WITH_HGSMI
    723  VBoxDDR0_DEFS         += VBOX_WITH_HGSMI
    724 endif
    725 ifdef VBOX_WITH_VIDEOHWACCEL
    726  VBoxDDR0_DEFS         += VBOX_WITH_VIDEOHWACCEL
    727 endif
    728 
    729 if1of ($(VBOX_LDR_FMT), pe lx)
    730 VBoxDDR0_LIBS           = \
    731         $(PATH_LIB)/VMMR0Imp$(VBOX_SUFF_LIB) \
    732         $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
    733 endif
    734 
    735 
    736 ifdef VBOX_WITH_RAW_MODE
    737  #
    738  # VBoxDD2GC (LGPL sysmod)
    739  #
    740  VBoxDD2GC_TEMPLATE       = VBoxRc
    741  VBoxDD2GC_DEFS           =
    742  VBoxDD2GC_INCS          := \
     723 ifdef VBOX_WITH_HGSMI
     724  VBoxDDR0_DEFS         += VBOX_WITH_HGSMI
     725 endif
     726 ifdef VBOX_WITH_VIDEOHWACCEL
     727  VBoxDDR0_DEFS         += VBOX_WITH_VIDEOHWACCEL
     728 endif
     729
     730 if1of ($(VBOX_LDR_FMT), pe lx)
     731 VBoxDDR0_LIBS           = \
     732        $(PATH_LIB)/VMMR0Imp$(VBOX_SUFF_LIB) \
     733        $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
     734 endif
     735
     736
     737 ifdef VBOX_WITH_RAW_MODE
     738  #
     739  # VBoxDD2GC (LGPL sysmod)
     740  #
     741  VBoxDD2GC_TEMPLATE       = VBoxRc
     742  VBoxDD2GC_DEFS           =
     743  VBoxDD2GC_INCS          := \
     744        $(PATH_SUB_CURRENT)
     745  VBoxDD2GC_SOURCES        = \
     746        PC/DevAPIC.cpp      \
     747        PC/DevSMC.cpp
     748  if1of ($(VBOX_LDR_FMT32), pe lx)
     749  VBoxDD2GC_LIBS           = \
     750        $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB) \
     751        $(PATH_LIB)/VMMGCImp$(VBOX_SUFF_LIB)
     752  endif
     753 endif
     754
     755 #
     756 # VBoxDD2R0 (LGPL sysmod)
     757 #
     758 VBoxDD2R0_TEMPLATE       = VBoxR0
     759 VBoxDD2R0_DEFS           = IN_RT_R0
     760 VBoxDD2R0_INCS          := \
    743761        $(PATH_SUB_CURRENT)
    744  VBoxDD2GC_SOURCES        = \
    745         PC/DevAPIC.cpp      \
    746         PC/DevSMC.cpp
    747  if1of ($(VBOX_LDR_FMT32), pe lx)
    748  VBoxDD2GC_LIBS           = \
    749         $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB) \
    750         $(PATH_LIB)/VMMGCImp$(VBOX_SUFF_LIB)
    751  endif
    752 endif
    753 
    754 #
    755 # VBoxDD2R0 (LGPL sysmod)
    756 #
    757 VBoxDD2R0_TEMPLATE       = VBoxR0
    758 VBoxDD2R0_DEFS           = IN_RT_R0
    759 VBoxDD2R0_INCS          := \
    760         $(PATH_SUB_CURRENT)
    761 VBoxDD2R0_SOURCES        = \
    762         PC/DevAPIC.cpp     \
    763         PC/DevSMC.cpp
    764 
    765 if1of ($(VBOX_LDR_FMT), pe lx)
    766 VBoxDD2R0_LIBS           = \
    767         $(PATH_LIB)/VMMR0Imp$(VBOX_SUFF_LIB) \
    768         $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
    769 endif
    770 
    771 
    772 #
    773 # Drivers (library)
    774 #
    775 ifeq ($(KBUILD_TARGET),l4) # We are using real Linux headers, not the cleaned up user space ones
    776 Drivers_TEMPLATE   = VBOXR3NP
    777 else
    778 Drivers_TEMPLATE   = VBOXR3
    779 endif
    780 Drivers_SDKS.win   = WINPSDK W2K3DDK
    781 Storage/DrvHostDVD.cpp_SDKS.win = W2K3DDK
    782 Drivers_DEFS.win       += _WIN32_WINNT=0x0510
    783 Drivers_DEFS            = \
    784         IN_IDE_R3 \
    785         $(if $(VBOX_WITH_NETFLT),VBOX_WITH_NETFLT,) \
    786         $(if $(VBOX_WITH_INIP),VBOX_WITH_INIP,) \
    787         $(if $(VBOX_WITH_DRV_DISK_INTEGRITY),VBOX_WITH_DRV_DISK_INTEGRITY,) \
    788         $(if $(VBOX_WITH_AUDIO_FLEXIBLE_FORMAT),VBOX_WITH_AUDIO_FLEXIBLE_FORMAT,) \
    789 
    790 Drivers_INCS      := \
    791         $(PATH_SUB_CURRENT) \
    792         Network/slirp
    793 Drivers_SOURCES    = \
    794         Audio/audio.c \
    795         Audio/audiosniffer.c \
    796         Audio/mixeng.c \
    797         Audio/noaudio.c \
    798         Input/DrvKeyboardQueue.cpp \
    799         Input/DrvMouseQueue.cpp \
    800         Network/DrvIntNet.cpp \
    801         Network/DrvDedicatedNic.cpp \
    802         PC/DrvACPI.cpp \
    803         PC/DrvAcpiCpu.cpp \
    804         Serial/DrvChar.cpp \
    805         Serial/DrvNamedPipe.cpp \
    806         Serial/DrvRawFile.cpp \
    807         Storage/DrvBlock.cpp \
    808         Storage/DrvHostBase.cpp \
    809         Storage/DrvHostDVD.cpp \
    810         Storage/DrvHostFloppy.cpp \
    811         Storage/DrvMediaISO.cpp \
    812         Storage/DrvRawImage.cpp \
    813         Storage/Debug.cpp \
    814         Storage/DrvVD.cpp \
    815         Network/DrvNetSniffer.cpp \
    816         Network/Pcap.cpp
    817 
    818 VBOX_SLIRP_SOURCES = \
    819         Network/DrvNAT.cpp \
    820         Network/slirp/bootp.c \
    821         Network/slirp/debug.c \
    822         Network/slirp/ip_icmp.c \
    823         Network/slirp/ip_input.c \
    824         Network/slirp/ip_output.c \
    825         Network/slirp/misc.c \
    826         Network/slirp/sbuf.c \
    827         Network/slirp/slirp.c \
    828         Network/slirp/socket.c \
    829         Network/slirp/tcp_input.c \
    830         Network/slirp/tcp_output.c \
    831         Network/slirp/tcp_subr.c \
    832         Network/slirp/tcp_timer.c \
    833         Network/slirp/udp.c \
    834         Network/slirp/dnsproxy/hash.c \
    835         Network/slirp/tftp.c \
    836         Network/slirp/dnsproxy/dnsproxy.c
    837 
    838 ifdef VBOX_WITH_SLIRP_BSD_SBUF
    839 VBOX_SLIRP_SOURCES += Network/slirp/bsd/kern/subr_sbuf.c
    840 endif
    841 
    842 VBOX_SLIRP_BSD_ARCH = $(subst x86,i386,$(KBUILD_TARGET_ARCH))
    843 VBOX_SLIRP_BSD_SOURCES += \
    844         Network/slirp/bsd/kern/kern_mbuf.c \
    845         Network/slirp/bsd/kern/uipc_mbuf.c \
    846         Network/slirp/bsd/kern/uipc_mbuf2.c \
    847         Network/slirp/bsd/$(VBOX_SLIRP_BSD_ARCH)/in_cksum.c
    848 
    849 VBOX_SLIRP_ALIAS_SOURCES = \
    850         Network/slirp/libalias/alias.c \
    851         Network/slirp/libalias/alias_db.c \
    852         Network/slirp/libalias/alias_mod.c \
    853         Network/slirp/libalias/alias_proxy.c \
    854         Network/slirp/libalias/alias_ftp.c \
    855         Network/slirp/libalias/alias_dns.c \
    856         Network/slirp/libalias/alias_nbt.c \
    857         Network/slirp/libalias/alias_util.c
    858 
    859 # some day will be deleted
    860 
    861 Drivers_SOURCES += $(VBOX_SLIRP_SOURCES)
    862 define def_vbox_slirp_cflags
    863   $(file)_DEFS += \
    864       $(if $(VBOX_WITH_SLIRP_BSD_SBUF),VBOX_WITH_SLIRP_BSD_SBUF,) \
    865       $(if $(VBOX_WITH_SLIRP_MEMORY_CHECK),RTMEM_WRAP_TO_EF_APIS,) \
    866       $(if $(VBOX_WITH_DEBUG_NAT_SOCKETS),VBOX_WITH_DEBUG_NAT_SOCKETS,) \
    867       $(if $(VBOX_WITH_SLIRP_MT),VBOX_WITH_SLIRP_MT,)
    868  $(file)_INCS += $(1)/slirp/bsd/sys
    869  $(file)_INCS += $(1)/slirp/bsd/sys/sys
    870  $(file)_INCS += $(1)/slirp/bsd/$(VBOX_SLIRP_BSD_ARCH)/include
    871  $(file)_INCS += $(1)/slirp/bsd/netinet
    872  $(file)_INCS += $(1)/slirp
    873  $(file)_INCS += $(1)/slirp/libalias
    874  ifeq ($(KBUILD_TARGET),win)
    875   $(file)_CFLAGS = -wd4018
     762 VBoxDD2R0_SOURCES        = \
     763         PC/DevAPIC.cpp     \
     764         PC/DevSMC.cpp
     765
     766 if1of ($(VBOX_LDR_FMT), pe lx)
     767 VBoxDD2R0_LIBS           = \
     768        $(PATH_LIB)/VMMR0Imp$(VBOX_SUFF_LIB) \
     769        $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
     770 endif
     771
     772
     773 #
     774 # Drivers (library)
     775 #
     776 ifeq ($(KBUILD_TARGET),l4) # We are using real Linux headers, not the cleaned up user space ones
     777 Drivers_TEMPLATE   = VBOXR3NP
    876778 else
    877   $(file)_CFLAGS += -Wno-sign-compare
    878   $(file)_CFLAGS += -Wno-format
    879   $(file)_CFLAGS += -Wno-bad-function-cast
    880  endif
    881 endef
    882 
    883 $(foreach file,$(VBOX_SLIRP_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
    884 
    885 Drivers_SOURCES += $(VBOX_SLIRP_ALIAS_SOURCES)
    886 define def_vbox_slirp_alias_cflags
    887   $(file)_DEFS += VBOX_SLIRP_ALIAS \
    888       $(if $(VBOX_WITH_DEBUG_LIBALIAS),VBOX_WITH_DEBUG_LIBALIAS,)
     779 Drivers_TEMPLATE   = VBOXR3
     780 endif
     781 Drivers_SDKS.win   = WINPSDK W2K3DDK
     782 Storage/DrvHostDVD.cpp_SDKS.win = W2K3DDK
     783 Drivers_DEFS.win       += _WIN32_WINNT=0x0510
     784 Drivers_DEFS            = \
     785        IN_IDE_R3 \
     786        $(if $(VBOX_WITH_NETFLT),VBOX_WITH_NETFLT,) \
     787        $(if $(VBOX_WITH_INIP),VBOX_WITH_INIP,) \
     788        $(if $(VBOX_WITH_DRV_DISK_INTEGRITY),VBOX_WITH_DRV_DISK_INTEGRITY,) \
     789        $(if $(VBOX_WITH_AUDIO_FLEXIBLE_FORMAT),VBOX_WITH_AUDIO_FLEXIBLE_FORMAT,) \
     790
     791 Drivers_INCS      := \
     792        $(PATH_SUB_CURRENT) \
     793        Network/slirp
     794 Drivers_SOURCES    = \
     795        Audio/audio.c \
     796        Audio/audiosniffer.c \
     797        Audio/mixeng.c \
     798        Audio/noaudio.c \
     799        Input/DrvKeyboardQueue.cpp \
     800        Input/DrvMouseQueue.cpp \
     801        Network/DrvIntNet.cpp \
     802        Network/DrvDedicatedNic.cpp \
     803        PC/DrvACPI.cpp \
     804        PC/DrvAcpiCpu.cpp \
     805        Serial/DrvChar.cpp \
     806        Serial/DrvNamedPipe.cpp \
     807        Serial/DrvRawFile.cpp \
     808        Storage/DrvBlock.cpp \
     809        Storage/DrvHostBase.cpp \
     810        Storage/DrvHostDVD.cpp \
     811        Storage/DrvHostFloppy.cpp \
     812        Storage/DrvMediaISO.cpp \
     813        Storage/DrvRawImage.cpp \
     814        Storage/Debug.cpp \
     815        Storage/DrvVD.cpp \
     816        Network/DrvNetSniffer.cpp \
     817        Network/Pcap.cpp
     818
     819 VBOX_SLIRP_SOURCES = \
     820        Network/DrvNAT.cpp \
     821        Network/slirp/bootp.c \
     822        Network/slirp/debug.c \
     823        Network/slirp/ip_icmp.c \
     824        Network/slirp/ip_input.c \
     825        Network/slirp/ip_output.c \
     826        Network/slirp/misc.c \
     827        Network/slirp/sbuf.c \
     828        Network/slirp/slirp.c \
     829        Network/slirp/socket.c \
     830        Network/slirp/tcp_input.c \
     831        Network/slirp/tcp_output.c \
     832        Network/slirp/tcp_subr.c \
     833        Network/slirp/tcp_timer.c \
     834        Network/slirp/udp.c \
     835        Network/slirp/dnsproxy/hash.c \
     836        Network/slirp/tftp.c \
     837        Network/slirp/dnsproxy/dnsproxy.c
     838
     839 ifdef VBOX_WITH_SLIRP_BSD_SBUF
     840 VBOX_SLIRP_SOURCES += Network/slirp/bsd/kern/subr_sbuf.c
     841 endif
     842
     843 VBOX_SLIRP_BSD_ARCH = $(subst x86,i386,$(KBUILD_TARGET_ARCH))
     844 VBOX_SLIRP_BSD_SOURCES += \
     845        Network/slirp/bsd/kern/kern_mbuf.c \
     846        Network/slirp/bsd/kern/uipc_mbuf.c \
     847        Network/slirp/bsd/kern/uipc_mbuf2.c \
     848        Network/slirp/bsd/$(VBOX_SLIRP_BSD_ARCH)/in_cksum.c
     849
     850 VBOX_SLIRP_ALIAS_SOURCES = \
     851        Network/slirp/libalias/alias.c \
     852        Network/slirp/libalias/alias_db.c \
     853        Network/slirp/libalias/alias_mod.c \
     854        Network/slirp/libalias/alias_proxy.c \
     855        Network/slirp/libalias/alias_ftp.c \
     856        Network/slirp/libalias/alias_dns.c \
     857        Network/slirp/libalias/alias_nbt.c \
     858        Network/slirp/libalias/alias_util.c
     859
     860 # some day will be deleted
     861
     862 Drivers_SOURCES += $(VBOX_SLIRP_SOURCES)
     863 define def_vbox_slirp_cflags
     864   $(file)_DEFS += \
     865       $(if $(VBOX_WITH_SLIRP_BSD_SBUF),VBOX_WITH_SLIRP_BSD_SBUF,) \
     866       $(if $(VBOX_WITH_SLIRP_MEMORY_CHECK),RTMEM_WRAP_TO_EF_APIS,) \
     867       $(if $(VBOX_WITH_DEBUG_NAT_SOCKETS),VBOX_WITH_DEBUG_NAT_SOCKETS,)        \
     868       $(if $(VBOX_WITH_SLIRP_MT),VBOX_WITH_SLIRP_MT,)
     869  $(file)_INCS += $(1)/slirp/bsd/sys
     870  $(file)_INCS += $(1)/slirp/bsd/sys/sys
     871  $(file)_INCS += $(1)/slirp/bsd/$(VBOX_SLIRP_BSD_ARCH)/include
     872  $(file)_INCS += $(1)/slirp/bsd/netinet
     873  $(file)_INCS += $(1)/slirp
    889874  $(file)_INCS += $(1)/slirp/libalias
    890   $(file)_INCS += $(1)/slirp
    891   $(file)_INCS += $(1)/slirp/dnsproxy
    892   ifneq ($(KBUILD_TARGET),win)
    893    $(file)_CFLAGS += -Wno-shadow
    894   endif
    895 endef
    896 $(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
    897 $(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_slirp_alias_cflags, Network)))
    898 
    899 VBOX_SLIRP_BSD_SOURCES += $(VBOX_SLIRP_BSD_SOURCES.${KBUILD_TARGET_ARCH})
    900 Drivers_SOURCES += $(VBOX_SLIRP_BSD_SOURCES)
    901 define def_vbox_slirp_bsd_cflags
    902   $(file)_DEFS += VBOX_SLIRP_BSD
    903   $(file)_INCS += $(1)/slirp/dnsproxy
    904 endef
    905 $(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
    906 $(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_slirp_bsd_cflags, Network)))
    907 
    908 ifdef VBOX_WITH_DRV_DISK_INTEGRITY
    909 Drivers_SOURCES += \
    910         Storage/DrvDiskIntegrity.cpp
    911 endif
    912 
    913 ifdef VBOX_WITH_VDE
     875  ifeq ($(KBUILD_TARGET),win)
     876   $(file)_CFLAGS = -wd4018
     877  else
     878   $(file)_CFLAGS += -Wno-sign-compare
     879   $(file)_CFLAGS += -Wno-format
     880   $(file)_CFLAGS += -Wno-bad-function-cast
     881  endif
     882 endef
     883
     884 $(foreach file,$(VBOX_SLIRP_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
     885
     886 Drivers_SOURCES += $(VBOX_SLIRP_ALIAS_SOURCES)
     887 define def_vbox_slirp_alias_cflags
     888   $(file)_DEFS += VBOX_SLIRP_ALIAS \
     889       $(if $(VBOX_WITH_DEBUG_LIBALIAS),VBOX_WITH_DEBUG_LIBALIAS,)
     890   $(file)_INCS += $(1)/slirp/libalias
     891   $(file)_INCS += $(1)/slirp
     892   $(file)_INCS += $(1)/slirp/dnsproxy
     893   ifneq ($(KBUILD_TARGET),win)
     894    $(file)_CFLAGS += -Wno-shadow
     895   endif
     896 endef
     897 $(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
     898 $(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_slirp_alias_cflags, Network)))
     899
     900 VBOX_SLIRP_BSD_SOURCES += $(VBOX_SLIRP_BSD_SOURCES.${KBUILD_TARGET_ARCH})
     901 Drivers_SOURCES += $(VBOX_SLIRP_BSD_SOURCES)
     902 define def_vbox_slirp_bsd_cflags
     903   $(file)_DEFS += VBOX_SLIRP_BSD
     904   $(file)_INCS += $(1)/slirp/dnsproxy
     905 endef
     906 $(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_slirp_cflags, Network)))
     907 $(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_slirp_bsd_cflags, Network)))
     908
     909 ifdef VBOX_WITH_DRV_DISK_INTEGRITY
    914910 Drivers_SOURCES += \
    915         Network/DrvVDE.cpp \
    916         Network/VDEPlug.cpp
    917  Drivers_DEFS    += \
    918     VBOX_WITH_VDE
    919 endif
    920 
    921 # -- OS specific --
    922 
    923 ifeq ($(KBUILD_TARGET),darwin)
    924 Drivers_SOURCES      := $(filter-out \
    925         Storage/DrvHostRaw% \
    926         Storage/DrvHostFloppy% \
    927         , $(Drivers_SOURCES)) \
    928         Audio/coreaudio.c
    929 Drivers_SOURCES.darwin = \
    930         Serial/DrvHostSerial.cpp
    931 endif # darwin
    932 
    933 ifeq ($(KBUILD_TARGET),freebsd)
    934 Drivers_SOURCES      := $(filter-out \
    935         Storage/DrvHostFloppy% \
    936         , $(Drivers_SOURCES)) \
    937         Audio/ossaudio.c \
    938         Serial/DrvHostSerial.cpp
    939 Drivers_SOURCES.freebsd = \
    940         Network/DrvTAP.cpp
    941 endif # freebsd
    942 
    943 
    944 ifeq ($(KBUILD_TARGET),l4)
    945 Drivers_SOURCES       = \
    946         Input/DrvMouseQueue.cpp \
    947         Input/DrvKeyboardQueue.cpp \
    948         Storage/DrvBlock.cpp \
    949         Storage/DrvMediaISO.cpp \
    950         Storage/DrvRawImage.cpp \
    951         Storage/DrvHostBase.cpp \
    952         Storage/DrvHostDVD.cpp \
    953         Storage/DrvVD.cpp \
    954         PC/DrvACPI.cpp \
    955         Network/DrvIntNet.cpp \
    956         Network/DHCPServerRunner.cpp \
    957         Network/DrvNetSniffer.cpp \
    958         Network/Pcap.cpp \
    959         Audio/audio.c \
    960         Audio/mixeng.c \
    961         Audio/noaudio.c \
    962         Audio/audiosniffer.c
    963 
    964 Drivers_SOURCES.l4    = \
    965         Audio/ossaudio.c
    966 endif # l4
    967 
    968 Drivers_SOURCES.linux = \
    969         Network/DrvTAP.cpp \
    970         Audio/ossaudio.c \
    971         Parallel/DrvHostParallel.cpp \
    972         Serial/DrvHostSerial.cpp
    973 
    974 ifeq ($(KBUILD_TARGET),os2)
    975 Drivers_SOURCES      := $(filter-out \
    976         Storage/DrvHost% \
    977         , $(Drivers_SOURCES))
    978 endif
    979 
    980 ifeq ($(KBUILD_TARGET),solaris)
    981 Drivers_SOURCES      := $(filter-out \
    982         Storage/DrvHost% \
    983         , $(Drivers_SOURCES))
    984 Drivers_SOURCES.solaris = \
    985         Audio/solaudio.c \
    986         Storage/DrvHostBase.cpp \
    987         Storage/DrvHostDVD.cpp \
    988         Serial/DrvHostSerial.cpp
    989  ifdef VBOX_WITH_SOLARIS_OSS
    990   Drivers_SOURCES += Audio/ossaudio.c
    991   Drivers_DEFS += VBOX_WITH_SOLARIS_OSS
    992  endif
    993  ifdef VBOX_WITH_CROSSBOW
    994   Drivers_SOURCES += Network/solaris/vbox-libdlpi.cpp
    995   Drivers_DEFS += VBOX_WITH_CROSSBOW
    996  endif
    997  ifdef VBOX_WITH_SUID_WRAPPER
    998   Drivers_DEFS += VBOX_WITH_SUID_WRAPPER
    999  endif
    1000 endif
    1001 
    1002 Drivers_SOURCES.win   = \
    1003         Audio/dsoundaudio.c \
    1004         Serial/DrvHostSerial.cpp
    1005 
    1006 if defined(VBOX_WITH_NETFLT)
    1007  if defined(VBOX_NETFLT_ONDEMAND_BIND)
    1008   Drivers_DEFS.win     += VBOX_NETFLT_ONDEMAND_BIND
    1009  endif
    1010 endif
    1011 
    1012 # -- features --
    1013 
    1014 ifdef VBOX_WITH_ISCSI
    1015  Storage/DrvVD.cpp_INCS = \
    1016         Network/lwip/src/include \
    1017         Network/lwip/src/include/ipv4 \
    1018         Network/lwip/vbox/include
    1019 endif # VBOX_WITH_ISCSI
    1020 
    1021 ifdef VBOX_WITH_ALSA
    1022  Drivers_DEFS.linux   += VBOX_WITH_ALSA
    1023  Drivers_SOURCES.linux+= \
    1024         Audio/alsaaudio.c \
    1025         Audio/alsa_stubs.c
    1026 endif
    1027 
    1028 ifdef VBOX_WITH_PULSE
    1029  Drivers_DEFS.linux   += VBOX_WITH_PULSE
    1030  Drivers_SOURCES.linux+= \
    1031         Audio/pulseaudio.c \
    1032         Audio/pulse_stubs.c
    1033  Drivers_DEFS.freebsd += VBOX_WITH_PULSE
    1034  Drivers_SOURCES.freebsd+= \
    1035         Audio/pulseaudio.c \
    1036         Audio/pulse_stubs.c
    1037 endif
    1038 
    1039 ifdef VBOX_WITH_VUSB
    1040  Drivers_DEFS         += VBOX_WITH_VUSB
    1041  Drivers_SOURCES      += \
    1042         USB/DrvVUSBRootHub.cpp \
    1043         USB/VUSBDevice.cpp \
    1044         USB/VUSBReadAhead.cpp \
    1045         USB/VUSBUrb.cpp
    1046 
    1047 endif # VBOX_WITH_VUSB
    1048 
    1049 ifdef VBOX_WITH_USB
    1050  Drivers_DEFS         += VBOX_WITH_USB
    1051 
    1052  Drivers_SOURCES     += \
    1053        USB/vrdp/USBProxyDevice-vrdp.cpp
    1054 
    1055  Drivers_DEFS.darwin  += VUSB_HAVE_USBPROXY_DEVICE
    1056  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
    1057   Drivers_DEFS.darwin += VBOX_WITH_NEW_USB_CODE_ON_DARWIN
    1058  endif
    1059  Drivers_SOURCES.darwin += \
    1060         USB/USBProxyDevice.cpp \
    1061         USB/darwin/USBProxyDevice-darwin.cpp
    1062 
    1063  Drivers_DEFS.linux    += \
    1064         VUSB_HAVE_USBPROXY_DEVICE \
    1065         $(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
    1066         $(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,)
    1067  Drivers_SOURCES.linux += \
    1068         USB/USBProxyDevice.cpp \
    1069         USB/linux/USBProxyDevice-linux.cpp
    1070 
    1071  Drivers_DEFS.l4      += VUSB_HAVE_USBPROXY_DEVICE
    1072  Drivers_SOURCES.l4   += \
    1073         USB/USBProxyDevice.cpp \
    1074         USB/linux/USBProxyDevice-linux.cpp
    1075 
    1076  Drivers_DEFS.os2 += VUSB_HAVE_USBPROXY_DEVICE
    1077  Drivers_INCS.os2 += $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
    1078  Drivers_SOURCES.os2 += \
    1079         USB/USBProxyDevice.cpp \
    1080         USB/os2/USBProxyDevice-os2.cpp
    1081 
    1082  Drivers_DEFS.win     += VUSB_HAVE_USBPROXY_DEVICE
    1083  Drivers_SOURCES.win  += \
    1084         USB/USBProxyDevice.cpp \
    1085         USB/win/USBProxyDevice-win.cpp
    1086 
    1087  Drivers_DEFS.solaris    += VUSB_HAVE_USBPROXY_DEVICE
    1088  Drivers_SOURCES.solaris += \
    1089         USB/USBProxyDevice.cpp \
    1090         USB/solaris/USBProxyDevice-solaris.cpp
    1091 
    1092  Drivers_DEFS.freebsd      += VUSB_HAVE_USBPROXY_DEVICE
    1093  Drivers_SOURCES.freebsd   += \
    1094         USB/USBProxyDevice.cpp \
    1095         USB/freebsd/USBProxyDevice-freebsd.cpp
     911        Storage/DrvDiskIntegrity.cpp
     912 endif
     913
     914 ifdef VBOX_WITH_VDE
     915  Drivers_SOURCES += \
     916        Network/DrvVDE.cpp \
     917        Network/VDEPlug.cpp
     918  Drivers_DEFS    += \
     919     VBOX_WITH_VDE
     920 endif
     921
     922 # -- OS specific --
     923
     924 ifeq ($(KBUILD_TARGET),darwin)
     925 Drivers_SOURCES      := $(filter-out \
     926        Storage/DrvHostRaw% \
     927        Storage/DrvHostFloppy% \
     928        , $(Drivers_SOURCES)) \
     929        Audio/coreaudio.c
     930 Drivers_SOURCES.darwin = \
     931        Serial/DrvHostSerial.cpp
     932 endif # darwin
     933
     934 ifeq ($(KBUILD_TARGET),freebsd)
     935 Drivers_SOURCES      := $(filter-out \
     936        Storage/DrvHostFloppy% \
     937        , $(Drivers_SOURCES)) \
     938        Audio/ossaudio.c \
     939        Serial/DrvHostSerial.cpp
     940 Drivers_SOURCES.freebsd = \
     941        Network/DrvTAP.cpp
     942 endif # freebsd
     943
     944
     945 ifeq ($(KBUILD_TARGET),l4)
     946 Drivers_SOURCES       = \
     947        Input/DrvMouseQueue.cpp \
     948        Input/DrvKeyboardQueue.cpp \
     949        Storage/DrvBlock.cpp \
     950        Storage/DrvMediaISO.cpp \
     951        Storage/DrvRawImage.cpp \
     952        Storage/DrvHostBase.cpp \
     953        Storage/DrvHostDVD.cpp \
     954        Storage/DrvVD.cpp \
     955        PC/DrvACPI.cpp \
     956        Network/DrvIntNet.cpp \
     957        Network/DHCPServerRunner.cpp \
     958        Network/DrvNetSniffer.cpp \
     959        Network/Pcap.cpp \
     960        Audio/audio.c \
     961        Audio/mixeng.c \
     962        Audio/noaudio.c \
     963        Audio/audiosniffer.c
     964
     965 Drivers_SOURCES.l4    = \
     966        Audio/ossaudio.c
     967 endif # l4
     968
     969 Drivers_SOURCES.linux = \
     970        Network/DrvTAP.cpp \
     971        Audio/ossaudio.c \
     972        Parallel/DrvHostParallel.cpp \
     973        Serial/DrvHostSerial.cpp
     974
     975 ifeq ($(KBUILD_TARGET),os2)
     976 Drivers_SOURCES      := $(filter-out \
     977        Storage/DrvHost% \
     978        , $(Drivers_SOURCES))
     979 endif
     980
     981 ifeq ($(KBUILD_TARGET),solaris)
     982 Drivers_SOURCES      := $(filter-out \
     983        Storage/DrvHost% \
     984        , $(Drivers_SOURCES))
     985 Drivers_SOURCES.solaris = \
     986        Audio/solaudio.c \
     987        Storage/DrvHostBase.cpp \
     988        Storage/DrvHostDVD.cpp \
     989        Serial/DrvHostSerial.cpp
     990  ifdef VBOX_WITH_SOLARIS_OSS
     991   Drivers_SOURCES += Audio/ossaudio.c
     992   Drivers_DEFS += VBOX_WITH_SOLARIS_OSS
     993  endif
     994  ifdef VBOX_WITH_CROSSBOW
     995   Drivers_SOURCES += Network/solaris/vbox-libdlpi.cpp
     996   Drivers_DEFS += VBOX_WITH_CROSSBOW
     997  endif
     998  ifdef VBOX_WITH_SUID_WRAPPER
     999   Drivers_DEFS += VBOX_WITH_SUID_WRAPPER
     1000  endif
     1001 endif
     1002
     1003 Drivers_SOURCES.win   = \
     1004        Audio/dsoundaudio.c \
     1005        Serial/DrvHostSerial.cpp
     1006
     1007 if defined(VBOX_WITH_NETFLT)
     1008  if defined(VBOX_NETFLT_ONDEMAND_BIND)
     1009   Drivers_DEFS.win     += VBOX_NETFLT_ONDEMAND_BIND
     1010  endif
     1011 endif
     1012
     1013 # -- features --
     1014
     1015 ifdef VBOX_WITH_ISCSI
     1016  Storage/DrvVD.cpp_INCS = \
     1017        Network/lwip/src/include \
     1018        Network/lwip/src/include/ipv4 \
     1019        Network/lwip/vbox/include
     1020 endif # VBOX_WITH_ISCSI
     1021
     1022 ifdef VBOX_WITH_ALSA
     1023  Drivers_DEFS.linux   += VBOX_WITH_ALSA
     1024  Drivers_SOURCES.linux+= \
     1025        Audio/alsaaudio.c \
     1026        Audio/alsa_stubs.c
     1027 endif
     1028
     1029 ifdef VBOX_WITH_PULSE
     1030  Drivers_DEFS.linux   += VBOX_WITH_PULSE
     1031  Drivers_SOURCES.linux+= \
     1032        Audio/pulseaudio.c \
     1033        Audio/pulse_stubs.c
     1034  Drivers_DEFS.freebsd += VBOX_WITH_PULSE
     1035  Drivers_SOURCES.freebsd+= \
     1036        Audio/pulseaudio.c \
     1037        Audio/pulse_stubs.c
     1038 endif
     1039
     1040 ifdef VBOX_WITH_VUSB
     1041  Drivers_DEFS         += VBOX_WITH_VUSB
     1042  Drivers_SOURCES      += \
     1043        USB/DrvVUSBRootHub.cpp \
     1044        USB/VUSBDevice.cpp \
     1045        USB/VUSBReadAhead.cpp \
     1046        USB/VUSBUrb.cpp
     1047
     1048 endif # VBOX_WITH_VUSB
     1049
     1050 ifdef VBOX_WITH_USB
     1051  Drivers_DEFS         += VBOX_WITH_USB
     1052
     1053  Drivers_SOURCES     += \
     1054        USB/vrdp/USBProxyDevice-vrdp.cpp
     1055
     1056  Drivers_DEFS.darwin  += VUSB_HAVE_USBPROXY_DEVICE
     1057  ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN
     1058   Drivers_DEFS.darwin += VBOX_WITH_NEW_USB_CODE_ON_DARWIN
     1059  endif
     1060  Drivers_SOURCES.darwin += \
     1061        USB/USBProxyDevice.cpp \
     1062        USB/darwin/USBProxyDevice-darwin.cpp
     1063
     1064  Drivers_DEFS.linux    += \
     1065        VUSB_HAVE_USBPROXY_DEVICE \
     1066        $(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
     1067        $(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,)
     1068  Drivers_SOURCES.linux += \
     1069        USB/USBProxyDevice.cpp \
     1070        USB/linux/USBProxyDevice-linux.cpp
     1071
     1072  Drivers_DEFS.l4      += VUSB_HAVE_USBPROXY_DEVICE
     1073  Drivers_SOURCES.l4   += \
     1074        USB/USBProxyDevice.cpp \
     1075        USB/linux/USBProxyDevice-linux.cpp
     1076
     1077  Drivers_DEFS.os2 += VUSB_HAVE_USBPROXY_DEVICE
     1078  Drivers_INCS.os2 += $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
     1079  Drivers_SOURCES.os2 += \
     1080        USB/USBProxyDevice.cpp \
     1081        USB/os2/USBProxyDevice-os2.cpp
     1082
     1083  Drivers_DEFS.win     += VUSB_HAVE_USBPROXY_DEVICE
     1084  Drivers_SOURCES.win  += \
     1085        USB/USBProxyDevice.cpp \
     1086        USB/win/USBProxyDevice-win.cpp
     1087
     1088  Drivers_DEFS.solaris    += VUSB_HAVE_USBPROXY_DEVICE
     1089  Drivers_SOURCES.solaris += \
     1090        USB/USBProxyDevice.cpp \
     1091        USB/solaris/USBProxyDevice-solaris.cpp
     1092
     1093  Drivers_DEFS.freebsd      += VUSB_HAVE_USBPROXY_DEVICE
     1094  Drivers_SOURCES.freebsd   += \
     1095        USB/USBProxyDevice.cpp \
     1096        USB/freebsd/USBProxyDevice-freebsd.cpp
     1097
     1098  ifdef VBOX_WITH_SCSI
     1099   Drivers_SOURCES += \
     1100        Storage/UsbMsd.cpp
     1101  endif
     1102
     1103 endif # VBOX_WITH_USB
     1104
     1105 ifdef VBOX_WITH_PDM_ASYNC_COMPLETION
     1106  Drivers_DEFS += VBOX_WITH_PDM_ASYNC_COMPLETION
     1107 endif #VBOX_WITH_PDM_ASYNC_COMPLETION
    10961108
    10971109 ifdef VBOX_WITH_SCSI
     1110  Drivers_DEFS += VBOX_WITH_SCSI
    10981111  Drivers_SOURCES += \
    1099         Storage/UsbMsd.cpp
    1100  endif
    1101 
    1102 endif # VBOX_WITH_USB
    1103 
    1104 ifdef VBOX_WITH_PDM_ASYNC_COMPLETION
    1105  Drivers_DEFS += VBOX_WITH_PDM_ASYNC_COMPLETION
    1106 endif #VBOX_WITH_PDM_ASYNC_COMPLETION
    1107 
    1108 ifdef VBOX_WITH_SCSI
    1109  Drivers_DEFS += VBOX_WITH_SCSI
    1110  Drivers_SOURCES += \
    1111         Storage/DrvSCSI.cpp
    1112  Drivers_SOURCES.linux += \
    1113         Storage/DrvSCSIHost.cpp
    1114 endif # VBOX_WITH_SCSI
    1115 
    1116 #
    1117 # Ring-0 Services (library, linked into VMMR0.r0)
    1118 #
    1119 ServicesR0_TEMPLATE  = VBoxR0
    1120 ServicesR0_DEFS      = IN_INTNET_R0 IN_RT_R0
    1121 ServicesR0_SOURCES   = \
    1122         Network/SrvIntNetR0.cpp
    1123 
     1112        Storage/DrvSCSI.cpp
     1113  Drivers_SOURCES.linux += \
     1114        Storage/DrvSCSIHost.cpp
     1115 endif # VBOX_WITH_SCSI
     1116
     1117 #
     1118 # Ring-0 Services (library, linked into VMMR0.r0)
     1119 #
     1120 ServicesR0_TEMPLATE  = VBoxR0
     1121 ServicesR0_DEFS      = IN_INTNET_R0 IN_RT_R0
     1122 ServicesR0_SOURCES   = \
     1123        Network/SrvIntNetR0.cpp
     1124
     1125
     1126 #
     1127 # Internal Networking - Ring-3 Testcase for the Ring-0 code (a bit hackish).
     1128 #
     1129 ifdef VBOX_WITH_TESTCASES
     1130  PROGRAMS += tstIntNetR0
     1131  tstIntNetR0_TEMPLATE    = VBOXR3TSTEXE
     1132  tstIntNetR0_DEFS        = IN_INTNET_R0
     1133  tstIntNetR0_SOURCES     = \
     1134        Network/testcase/tstIntNetR0.cpp
     1135 endif
     1136
     1137 #
     1138 # Internal Networking - Ring-3 Testcase for the Ring-0 code (a bit hackish).
     1139 #
     1140 ifdef VBOX_WITH_TESTCASES
     1141  PROGRAMS += tstIntNet-1
     1142  tstIntNet-1_TEMPLATE    = VBOXR3TSTEXE
     1143  tstIntNet-1_SOURCES     = \
     1144        Network/testcase/tstIntNet-1.cpp \
     1145        Network/Pcap.cpp
     1146 endif
     1147
     1148
     1149 #
     1150 # EEPROM device unit test requires cppunit
     1151 #
     1152 ifdef VBOX_WITH_CPPUNIT_TESTCASES
     1153  ifdef VBOX_WITH_E1000
     1154   PROGRAMS += tstDevEEPROM
     1155   tstDevEEPROM_TEMPLATE    = VBOXCPPUNITEXE
     1156   tstDevEEPROM_SOURCES     = \
     1157        Network/testcase/tstDevEEPROM.cpp
     1158   tstDevEEPROM_LIBS        = \
     1159        $(TARGET_DevicesR3)
     1160   PROGRAMS += tstDevPhy
     1161   tstDevPhy_TEMPLATE    = VBOXCPPUNITEXE
     1162   tstDevPhy_SOURCES     = \
     1163        Network/testcase/tstDevPhy.cpp \
     1164        Network/DevE1000Phy.cpp
     1165   tstDevPhy_DEFS        = PHY_UNIT_TEST
     1166  endif
     1167 endif
     1168
     1169endif # !VBOX_ONLY_EXTPACKS
    11241170
    11251171ifdef VBOX_WITH_EXTPACK_PUEL
     
    11491195 VBoxExtPackPuelInsRoms_TEMPLATE = VBoxInsExtPackPuel
    11501196 VBoxExtPackPuelInsRoms_SOURCES = PC/PXE/PXE-Intel.rom=>PXE-Intel.rom
    1151 endif # VBOX_WITH_USB && VBOX_WITH_EXTPACK_PUEL
    1152 
    1153 
    1154 #
    1155 # Internal Networking - Ring-3 Testcase for the Ring-0 code (a bit hackish).
    1156 #
    1157 ifdef VBOX_WITH_TESTCASES
    1158  PROGRAMS += tstIntNetR0
    1159  tstIntNetR0_TEMPLATE    = VBOXR3TSTEXE
    1160  tstIntNetR0_DEFS        = IN_INTNET_R0
    1161  tstIntNetR0_SOURCES     = \
    1162         Network/testcase/tstIntNetR0.cpp
    1163 endif
    1164 
    1165 #
    1166 # Internal Networking - Ring-3 Testcase for the Ring-0 code (a bit hackish).
    1167 #
    1168 ifdef VBOX_WITH_TESTCASES
    1169  PROGRAMS += tstIntNet-1
    1170  tstIntNet-1_TEMPLATE    = VBOXR3TSTEXE
    1171  tstIntNet-1_SOURCES     = \
    1172         Network/testcase/tstIntNet-1.cpp \
    1173         Network/Pcap.cpp
    1174 endif
    1175 
    1176 
    1177 #
    1178 # EEPROM device unit test requires cppunit
    1179 #
    1180 ifdef VBOX_WITH_CPPUNIT_TESTCASES
    1181 ifdef VBOX_WITH_E1000
    1182  PROGRAMS += tstDevEEPROM
    1183  tstDevEEPROM_TEMPLATE    = VBOXCPPUNITEXE
    1184  tstDevEEPROM_SOURCES     = \
    1185         Network/testcase/tstDevEEPROM.cpp
    1186  tstDevEEPROM_LIBS        = \
    1187         $(TARGET_DevicesR3)
    1188  PROGRAMS += tstDevPhy
    1189  tstDevPhy_TEMPLATE    = VBOXCPPUNITEXE
    1190  tstDevPhy_SOURCES     = \
    1191         Network/testcase/tstDevPhy.cpp \
    1192         Network/DevE1000Phy.cpp
    1193  tstDevPhy_DEFS        = PHY_UNIT_TEST
    1194 endif
    1195 endif
     1197endif # VBOX_WITH_EXTPACK_PUEL
    11961198
    11971199include $(KBUILD_PATH)/subfooter.kmk
  • trunk/src/VBox/Makefile.kmk

    r34484 r34492  
    4343  include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
    4444 endif
     45 include $(PATH_SUB_CURRENT)/VMM/Makefile.kmk
     46 include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
    4547
    4648else ifdef VBOX_ONLY_SDK
  • trunk/src/VBox/Runtime/Makefile.kmk

    r34474 r34492  
    5858 # Normal build.
    5959 #
    60  include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
     60 ifndef VBOX_ONLY_EXTPACKS
     61  include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
     62 endif
    6163 include $(PATH_SUB_CURRENT)/tools/Makefile.kmk
    6264
  • trunk/src/VBox/VMM/Makefile.kmk

    r34220 r34492  
    240240
    241241
    242 
    243 #
    244 # SSMStandalone.lib/a for linking with VBoxSVC and other executables.
    245 #
    246 LIBRARIES += SSMStandalone
    247 SSMStandalone_TEMPLATE  = VBOXR3EXE
    248 SSMStandalone_DEFS      = IN_VMM_R3 IN_VMM_STATIC SSM_STANDALONE
    249 SSMStandalone_SOURCES   = SSM.cpp
    250 
    251 
    252242if defined(VBOX_WITH_RAW_MODE) && $(intersects $(VBOX_LDR_FMT32), pe lx)
    253243
     
    323313
    324314
    325 ifdef VBOX_WITH_RAW_MODE
     315if defined(VBOX_WITH_RAW_MODE) && !defined(VBOX_ONLY_EXTPACKS)
    326316 #
    327317 # VMMGC.gc
     
    417407
    418408 VMMGC/VMMGCDeps.cpp_CXXFLAGS.win = -Oi- -TC ## @todo rename VMMGCDeps.cpp to .c
    419 endif # VBOX_WITH_RAW_MODE
    420 
    421 
    422 #
    423 # VMMR0.r0
    424 #
    425 SYSMODS += VMMR0
    426 VMMR0_TEMPLATE  = VBoxR0
    427 VMMR0_SYSSUFF   = .r0
    428 
    429 VMMR0_DEFS      = IN_VMM_R0 IN_RT_R0 IN_DIS DIS_CORE_ONLY IN_GVMM_R0 IN_GMM_R0 IN_INTNET_R0 \
    430         $(VMM_COMMON_DEFS) RTASSERT_HAVE_SHOULD_PANIC
    431 ## @todo eliminate IN_GVMM_R0 IN_GMM_R0
    432 ifdef VBOX_WITH_VMMR0_DISABLE_PREEMPTION
    433  VMMR0_DEFS    += VBOX_WITH_VMMR0_DISABLE_PREEMPTION
    434 endif
    435 VMMR0_DEFS.darwin = VMM_R0_SWITCH_STACK
    436 VMMR0_DEFS.darwin.x86 = \
    437         VBOX_WITH_2X_4GB_ADDR_SPACE   VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0 \
    438         VBOX_WITH_HYBRID_32BIT_KERNEL VBOX_WITH_HYBRID_32BIT_KERNEL_IN_R0
    439 VMMR0_DEFS.win.amd64  = VBOX_WITH_KERNEL_USING_XMM
    440 
    441 ifeq ($(VBOX_LDR_FMT),elf)
    442  VMMR0_LDFLAGS  = -e VMMR0EntryEx
    443 endif
    444 VMMR0_INCS      = \
    445         . \
    446         PATM
    447 
    448 VMMR0_SOURCES   = \
    449         VMMR0/CPUMR0.cpp \
    450         VMMR0/CPUMR0A.asm \
    451         VMMR0/GMMR0.cpp \
    452         VMMR0/GVMMR0.cpp \
    453         VMMR0/HWACCMR0.cpp \
    454         VMMR0/HWACCMR0A.asm \
    455         VMMR0/HWSVMR0.cpp \
    456         VMMR0/HWVMXR0.cpp \
    457         VMMR0/PDMR0Device.cpp \
    458         VMMR0/PDMR0Driver.cpp \
    459         VMMR0/PGMR0.cpp \
    460         VMMR0/PGMR0SharedPage.cpp \
    461         VMMR0/TRPMR0.cpp \
    462         VMMR0/TRPMR0A.asm \
    463         VMMR0/VMMR0.cpp \
    464         VMMRZ/DBGFRZ.cpp \
    465         VMMRZ/VMMRZ.cpp \
    466         VMMAll/CPUMAllA.asm \
    467         VMMAll/CPUMAllRegs.cpp \
    468         VMMAll/CPUMStack.cpp \
    469         VMMAll/DBGFAll.cpp \
    470         VMMAll/EMAll.cpp \
    471         VMMAll/EMAllA.asm \
    472         VMMAll/FTMAll.cpp \
    473         VMMAll/HWACCMAll.cpp \
    474         VMMAll/IOMAll.cpp \
    475         VMMAll/IOMAllMMIO.cpp \
    476         VMMAll/MMAll.cpp \
    477         VMMAll/MMAllHyper.cpp \
    478         VMMAll/MMAllPagePool.cpp \
    479         VMMAll/PDMAll.cpp \
    480         VMMAll/PDMAllCritSect.cpp \
    481         VMMAll/PDMAllQueue.cpp \
    482         VMMAll/PGMAll.cpp \
    483         VMMAll/PGMAllHandler.cpp \
    484         VMMAll/PGMAllMap.cpp \
    485         VMMAll/PGMAllPhys.cpp \
    486         VMMAll/PGMAllPool.cpp \
    487         VMMAll/REMAll.cpp \
    488         VMMAll/SELMAll.cpp \
    489         VMMAll/TMAll.cpp \
    490         VMMAll/TMAllCpu.cpp \
    491         VMMAll/TMAllReal.cpp \
    492         VMMAll/TMAllVirtual.cpp \
    493         VMMAll/TRPMAll.cpp \
    494         VMMAll/VMAll.cpp \
    495         VMMAll/VMMAll.cpp \
    496         VMMAll/VMMAllA.asm
    497 ifeq ($(VBOX_LDR_FMT),pe)
    498  VMMR0_SOURCES += VMMR0/VMMR0.def
    499 endif
    500 ifeq ($(VBOX_LDR_FMT),lx)
    501  VMMR0_SOURCES += $(PATH_VMMR0Imp)/VMMR0.def
    502 endif
    503 VMMR0_SOURCES.amd64 = \
    504         VMMR0/VMMR0JmpA-amd64.asm
    505 VMMR0_SOURCES.x86 = \
    506         VMMR0/VMMR0JmpA-x86.asm
    507 VMMR0_SOURCES.darwin.x86 = \
    508         VMMRZ/PGMRZDynMap.cpp
    509 
    510 # disable annoying warnings about array subscript above array bounds in aPages[]
     409endif # VBOX_WITH_RAW_MODE && !VBOX_ONLY_EXTPACKS
     410
     411
     412ifndef VBOX_ONLY_EXTPACKS
     413 #
     414 # VMMR0.r0
     415 #
     416 SYSMODS += VMMR0
     417 VMMR0_TEMPLATE  = VBoxR0
     418 VMMR0_SYSSUFF   = .r0
     419
     420 VMMR0_DEFS      = IN_VMM_R0 IN_RT_R0 IN_DIS DIS_CORE_ONLY IN_GVMM_R0 IN_GMM_R0 IN_INTNET_R0 \
     421        $(VMM_COMMON_DEFS) RTASSERT_HAVE_SHOULD_PANIC
     422 ## @todo eliminate IN_GVMM_R0 IN_GMM_R0
     423 ifdef VBOX_WITH_VMMR0_DISABLE_PREEMPTION
     424  VMMR0_DEFS    += VBOX_WITH_VMMR0_DISABLE_PREEMPTION
     425 endif
     426 VMMR0_DEFS.darwin = VMM_R0_SWITCH_STACK
     427 VMMR0_DEFS.darwin.x86 = \
     428        VBOX_WITH_2X_4GB_ADDR_SPACE   VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0 \
     429        VBOX_WITH_HYBRID_32BIT_KERNEL VBOX_WITH_HYBRID_32BIT_KERNEL_IN_R0
     430 VMMR0_DEFS.win.amd64  = VBOX_WITH_KERNEL_USING_XMM
     431
     432 ifeq ($(VBOX_LDR_FMT),elf)
     433  VMMR0_LDFLAGS  = -e VMMR0EntryEx
     434 endif
     435 VMMR0_INCS      = \
     436        . \
     437        PATM
     438
     439 VMMR0_SOURCES   = \
     440        VMMR0/CPUMR0.cpp \
     441        VMMR0/CPUMR0A.asm \
     442        VMMR0/GMMR0.cpp \
     443        VMMR0/GVMMR0.cpp \
     444        VMMR0/HWACCMR0.cpp \
     445        VMMR0/HWACCMR0A.asm \
     446        VMMR0/HWSVMR0.cpp \
     447        VMMR0/HWVMXR0.cpp \
     448        VMMR0/PDMR0Device.cpp \
     449        VMMR0/PDMR0Driver.cpp \
     450        VMMR0/PGMR0.cpp \
     451        VMMR0/PGMR0SharedPage.cpp \
     452        VMMR0/TRPMR0.cpp \
     453        VMMR0/TRPMR0A.asm \
     454        VMMR0/VMMR0.cpp \
     455        VMMRZ/DBGFRZ.cpp \
     456        VMMRZ/VMMRZ.cpp \
     457        VMMAll/CPUMAllA.asm \
     458        VMMAll/CPUMAllRegs.cpp \
     459        VMMAll/CPUMStack.cpp \
     460        VMMAll/DBGFAll.cpp \
     461        VMMAll/EMAll.cpp \
     462        VMMAll/EMAllA.asm \
     463        VMMAll/FTMAll.cpp \
     464        VMMAll/HWACCMAll.cpp \
     465        VMMAll/IOMAll.cpp \
     466        VMMAll/IOMAllMMIO.cpp \
     467        VMMAll/MMAll.cpp \
     468        VMMAll/MMAllHyper.cpp \
     469        VMMAll/MMAllPagePool.cpp \
     470        VMMAll/PDMAll.cpp \
     471        VMMAll/PDMAllCritSect.cpp \
     472        VMMAll/PDMAllQueue.cpp \
     473        VMMAll/PGMAll.cpp \
     474        VMMAll/PGMAllHandler.cpp \
     475        VMMAll/PGMAllMap.cpp \
     476        VMMAll/PGMAllPhys.cpp \
     477        VMMAll/PGMAllPool.cpp \
     478        VMMAll/REMAll.cpp \
     479        VMMAll/SELMAll.cpp \
     480        VMMAll/TMAll.cpp \
     481        VMMAll/TMAllCpu.cpp \
     482        VMMAll/TMAllReal.cpp \
     483        VMMAll/TMAllVirtual.cpp \
     484        VMMAll/TRPMAll.cpp \
     485        VMMAll/VMAll.cpp \
     486        VMMAll/VMMAll.cpp \
     487        VMMAll/VMMAllA.asm
     488 ifeq ($(VBOX_LDR_FMT),pe)
     489  VMMR0_SOURCES += VMMR0/VMMR0.def
     490 endif
     491 ifeq ($(VBOX_LDR_FMT),lx)
     492  VMMR0_SOURCES += $(PATH_VMMR0Imp)/VMMR0.def
     493 endif
     494 VMMR0_SOURCES.amd64 = \
     495        VMMR0/VMMR0JmpA-amd64.asm
     496 VMMR0_SOURCES.x86 = \
     497        VMMR0/VMMR0JmpA-x86.asm
     498 VMMR0_SOURCES.darwin.x86 = \
     499        VMMRZ/PGMRZDynMap.cpp
     500
     501 VMMR0_LIBS = \
     502        $(PATH_LIB)/ServicesR0$(VBOX_SUFF_LIB) \
     503        $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
     504        $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB)
     505 ifneq ($(filter pe lx,$(VBOX_LDR_FMT)),)
     506  VMMR0_LIBS += \
     507        $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
     508 endif
     509endif # !VBOX_ONLY_EXTPACKS
     510
     511
     512ifndef VBOX_ONLY_EXTPACKS
     513 #
     514 # SSMStandalone.lib/a for linking with VBoxSVC and other executables.
     515 #
     516 LIBRARIES += SSMStandalone
     517 SSMStandalone_TEMPLATE = VBOXR3EXE
     518 SSMStandalone_DEFS     = IN_VMM_R3 IN_VMM_STATIC SSM_STANDALONE
     519 SSMStandalone_SOURCES  = SSM.cpp
     520endif # !VBOX_ONLY_EXTPACKS
     521
     522
     523#
     524# For vmmGetSvnRev.
     525#
     526VMMAll/VMMAll.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
     527
     528#
     529# Disable annoying warnings about array subscript above array bounds in aPages[]
     530#
    511531PGMPool.cpp_CXXFLAGS = $(if-expr $(KBUILD_TARGET) == "win",,$(VBOX_GCC_Wno-array_bounds))
    512532VMMAll/PGMAllPool.cpp_CXXFLAGS = $(if-expr $(KBUILD_TARGET) == "win",,$(VBOX_GCC_Wno-array_bounds))
    513 
    514 
    515 VMMR0_LIBS = \
    516         $(PATH_LIB)/ServicesR0$(VBOX_SUFF_LIB) \
    517         $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
    518         $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB)
    519 ifneq ($(filter pe lx,$(VBOX_LDR_FMT)),)
    520  VMMR0_LIBS += \
    521         $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
    522 endif
    523 
    524 #
    525 # For vmmGetSvnRev.
    526 #
    527 VMMAll/VMMAll.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
    528533
    529534include $(KBUILD_PATH)/subfooter.kmk
  • trunk/src/libs/Makefile.kmk

    r34484 r34492  
    3333
    3434# PNG support (for screenshots).
    35 if !defined(VBOX_ONLY_DOCS) && !defined(VBOX_ONLY_EXTPACKS) && !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_TESTSUITE) \
     35if !defined(VBOX_ONLY_DOCS) && !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_TESTSUITE) \
    3636 && "$(SDK_VBOX_LIBPNG_INCS)" == "$(PATH_ROOT)/src/libs/libpng-1.2.8"
    3737 include $(PATH_SUB_CURRENT)/libpng-1.2.8/Makefile.kmk
     
    3939
    4040# Libcurl for inet access
    41 if defined(VBOX_WITH_LIBCURL) && !defined(VBOX_ONLY_EXTPACKS) && !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_TESTSUITE) \
     41if defined(VBOX_WITH_LIBCURL) && !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_TESTSUITE) \
    4242 && "$(SDK_VBOX_LIBCURL_INCS)" == "$(PATH_ROOT)/src/libs/curl-7.19.4/include"
    4343 include $(PATH_SUB_CURRENT)/curl-7.19.4/Makefile.kmk
     
    5656
    5757# libjpeg for VRDP video redirection
    58 if defined(VBOX_WITH_VRDP) && defined(VBOX_WITH_VRDP_VIDEO_CHANNEL) \
    59  && !defined(VBOX_ONLY_EXTPACKS)
     58if defined(VBOX_WITH_VRDP) && defined(VBOX_WITH_VRDP_VIDEO_CHANNEL)
    6059 include $(PATH_SUB_CURRENT)/jpeg-8a/Makefile.kmk
    6160endif
     
    8180endif
    8281
    83 if  !defined(VBOX_ONLY_EXTPACKS) \
    84  && !defined(VBOX_ONLY_TESTSUITE)
     82if !defined(VBOX_ONLY_TESTSUITE)
    8583 ifeq ($(SDK_VBOX_LIBXML2_INCS),$(PATH_ROOT)/src/libs/libxml2-2.6.30/include)
    8684  include $(PATH_SUB_CURRENT)/libxml2-2.6.30/Makefile.kmk
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette