VirtualBox

Changeset 93419 in vbox


Ignore:
Timestamp:
Jan 24, 2022 6:13:22 PM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
149524
Message:

*.kmk: Introducing VBOX_WITH_R0_MODULES and VBOX_WITH_HWVIRT for helping with bugref:9898 and bugref:9044 (apple stuff at least).

Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Config.kmk

    r93359 r93419  
    441441## @name VMM related settings.
    442442## @{
     443# Enable the VT-x & AMD-V execution manager (HM).
     444if "$(KBUILD_TARGET)" == "amd64" && !defined(VBOX_WITHOUT_HWVIRT)
     445 VBOX_WITH_HWVIRT := 1
     446endif
     447# Enable .r0 modules.
     448if "$(KBUILD_TARGET_ARCH)" == "amd64"
     449 VBOX_WITH_R0_MODULES := 1
     450endif
    443451# Enable safe STR (store task register) emulation for raw-mode.
    444452VBOX_WITH_SAFE_STR = 1
     
    681689# The kernel driver/module and related runtime libraries.
    682690# On Linux we build this as a test case instead.
    683 ifneq ($(KBUILD_TARGET), linux)
     691# On darwin.arm64 we don't use a support driver.
     692if "$(KBUILD_TARGET)" != "linux" && ("$(KBUILD_TARGET)" != "darwin" || "$(KBUILD_TARGET_ARCH)" == "amd64")
    684693 VBOX_WITH_VBOXDRV = 1
    685694endif
  • trunk/src/VBox/Devices/Makefile.kmk

    r93361 r93419  
    5151 #
    5252 if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
    53   LIBRARIES += ServicesR0
    54   DLLS      += VBoxDDU VBoxDD VBoxDD2
    55   $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += VBoxDDR0
     53  DLLS       += VBoxDDU VBoxDD VBoxDD2
     54  ifdef VBOX_WITH_R0_MODULES
     55   LIBRARIES += ServicesR0
     56   ifdef VBOX_WITH_VBOXR0_AS_DLL
     57    DLLS     += VBoxDDR0
     58   else
     59    SYSMODS  += VBoxDDR0
     60   endif
     61  endif
    5662  ifdef VBOX_WITH_RAW_MODE
    5763   SYSMODS   += VBoxDDRC
    5864  endif
    5965 else
    60   DLLS      += VBoxDDU
     66  DLLS       += VBoxDDU
    6167 endif
    6268
     
    15151521  $(call VBOX_SET_VER_INFO_DLL,VBoxEhciR3,PUEL Extension Pack - EHCI Device)
    15161522
    1517   $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += VBoxEhciR0
    1518   VBoxEhciR0_TEMPLATE = VBoxR0ExtPackPuel
    1519   VBoxEhciR0_SOURCES  = \
    1520         USB/DevEHCI.cpp \
    1521         USB/DevXHCI.cpp
    1522   $(call VBOX_SET_VER_INFO_R0,VBoxEhciR0,PUEL Extension Pack - EHCI Device$(COMMA) ring-0)
    1523   ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # Wrapper kmod for VBoxEhciR0.r0
    1524    INSTALLS.linux += vbox_vboxehcir0-src
    1525    vbox_vboxehcir0-src_INST = bin/src/vbox_vboxehcir0/
    1526    vbox_vboxehcir0-src_SYMLINKS = \
    1527         SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
    1528         Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
    1529    vbox_vboxehcir0-src_SOURCES = \
    1530         $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vboxehcir0.gmk=>Makefile \
    1531         $(VBoxEhciR0_0_OUTDIR)/VBoxEhciR0.r0=>VBoxEhciR0.r0 \
    1532         $(VBoxEhciR0_0_OUTDIR)/VBoxEhciR0.debug=>VBoxEhciR0.debug
     1523  ifdef VBOX_WITH_R0_MODULES
     1524   ifdef VBOX_WITH_VBOXR0_AS_DLL
     1525    DLLS    += VBoxEhciR0
     1526   else
     1527    SYSMODS += VBoxEhciR0
     1528   endif
     1529   VBoxEhciR0_TEMPLATE = VBoxR0ExtPackPuel
     1530   VBoxEhciR0_SOURCES  = \
     1531        USB/DevEHCI.cpp \
     1532        USB/DevXHCI.cpp
     1533   $(call VBOX_SET_VER_INFO_R0,VBoxEhciR0,PUEL Extension Pack - EHCI Device$(COMMA) ring-0)
     1534   ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # Wrapper kmod for VBoxEhciR0.r0
     1535    INSTALLS.linux += vbox_vboxehcir0-src
     1536    vbox_vboxehcir0-src_INST = bin/src/vbox_vboxehcir0/
     1537    vbox_vboxehcir0-src_SYMLINKS = \
     1538        SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
     1539        Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
     1540    vbox_vboxehcir0-src_SOURCES = \
     1541        $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vboxehcir0.gmk=>Makefile \
     1542        $(VBoxEhciR0_0_OUTDIR)/VBoxEhciR0.r0=>VBoxEhciR0.r0 \
     1543        $(VBoxEhciR0_0_OUTDIR)/VBoxEhciR0.debug=>VBoxEhciR0.debug
     1544   endif
    15331545  endif
    15341546
     
    15801592  $(call VBOX_SET_VER_INFO_DLL,VBoxNvmeR3,PUEL Extension Pack - NVMe Device)
    15811593
    1582   $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += VBoxNvmeR0
    1583   VBoxNvmeR0_TEMPLATE = VBoxR0ExtPackPuel
    1584   VBoxNvmeR0_SOURCES  = \
    1585         Storage/DevNVMe.cpp
    1586   $(call VBOX_SET_VER_INFO_R0,VBoxNvmeR0,PUEL Extension Pack - NVMe Device$(COMMA) ring-0)
    1587   ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # Wrapper kmod for VBoxEhciR0.r0
    1588    INSTALLS.linux += vbox_vboxnvmer0-src
    1589    vbox_vboxnvmer0-src_INST = bin/src/vbox_vboxnvmer0/
    1590    vbox_vboxnvmer0-src_SYMLINKS = \
    1591         SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
    1592         Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
    1593    vbox_vboxnvmer0-src_SOURCES = \
    1594         $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vboxnvmer0.gmk=>Makefile \
    1595         $(VBoxNvmeR0_0_OUTDIR)/VBoxNvmeR0.r0=>VBoxNvmeR0.r0 \
    1596         $(VBoxNvmeR0_0_OUTDIR)/VBoxNvmeR0.debug=>VBoxNvmeR0.debug
     1594  ifdef VBOX_WITH_R0_MODULES
     1595   ifdef VBOX_WITH_VBOXR0_AS_DLL
     1596    DLLS    += VBoxNvmeR0
     1597   else
     1598    SYSMODS += VBoxNvmeR0
     1599   endif
     1600   VBoxNvmeR0_TEMPLATE = VBoxR0ExtPackPuel
     1601   VBoxNvmeR0_SOURCES  = \
     1602        Storage/DevNVMe.cpp
     1603   $(call VBOX_SET_VER_INFO_R0,VBoxNvmeR0,PUEL Extension Pack - NVMe Device$(COMMA) ring-0)
     1604   ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # Wrapper kmod for VBoxEhciR0.r0
     1605    INSTALLS.linux += vbox_vboxnvmer0-src
     1606    vbox_vboxnvmer0-src_INST = bin/src/vbox_vboxnvmer0/
     1607    vbox_vboxnvmer0-src_SYMLINKS = \
     1608        SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
     1609        Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
     1610    vbox_vboxnvmer0-src_SOURCES = \
     1611        $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vboxnvmer0.gmk=>Makefile \
     1612        $(VBoxNvmeR0_0_OUTDIR)/VBoxNvmeR0.r0=>VBoxNvmeR0.r0 \
     1613        $(VBoxNvmeR0_0_OUTDIR)/VBoxNvmeR0.debug=>VBoxNvmeR0.debug
     1614   endif
    15971615  endif
    15981616
  • trunk/src/VBox/ExtPacks/BusMouseSample/Makefile.kmk

    r93115 r93419  
    8484VBoxBusMouseR3_SOURCES  = DevBusMouse.cpp
    8585
    86 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += VBoxBusMouseR0
    87 VBoxBusMouseR0_TEMPLATE = VBoxR0ExtPackBusMouse
    88 VBoxBusMouseR0_SOURCES  = DevBusMouse.cpp
     86ifdef VBOX_WITH_R0_MODULES
     87 ifdef VBOX_WITH_VBOXR0_AS_DLL
     88  DLLS    += VBoxBusMouseR0
     89 else
     90  SYSMODS += VBoxBusMouseR0
     91 endif
     92 VBoxBusMouseR0_TEMPLATE = VBoxR0ExtPackBusMouse
     93 VBoxBusMouseR0_SOURCES  = DevBusMouse.cpp
     94endif
    8995
    9096ifdef VBOX_WITH_RAW_MODE
  • trunk/src/VBox/ExtPacks/Makefile.kmk

    r93115 r93419  
    2222 include $(PATH_SUB_CURRENT)/Puel/Makefile.kmk
    2323endif
    24 if defined(VBOX_WITH_EXTPACK_VBOXDTRACE) || defined(VBOX_WITH_DTRACE)
     24if defined(VBOX_WITH_R0_MODULES) && (defined(VBOX_WITH_EXTPACK_VBOXDTRACE) || defined(VBOX_WITH_DTRACE))
    2525 include $(PATH_SUB_CURRENT)/VBoxDTrace/Makefile.kmk
    2626endif
  • trunk/src/VBox/Runtime/Makefile.kmk

    r93170 r93419  
    4848 # Only build the Validation Kit.
    4949 #
    50  LIBRARIES += RuntimeGuestR3 RuntimeGuestR3Shared RuntimeR3 RuntimeR0 RuntimeBldProg
     50 LIBRARIES += RuntimeGuestR3 RuntimeGuestR3Shared RuntimeR3 RuntimeBldProg
     51 ifdef VBOX_WITH_R0_MODULES
     52  LIBRARIES += RuntimeR0
     53 endif
    5154 LIBRARIES.solaris += RuntimeR0Stub
    5255 LIBRARIES.win += RuntimeR0Stub #RuntimeR3NoCrt
     
    6669 # needs Ring-0 IPRT, though).
    6770 #
    68  LIBRARIES += RuntimeBldProg RuntimeR0
     71 LIBRARIES += RuntimeBldProg
     72 ifdef VBOX_WITH_R0_MODULES
     73  LIBRARIES += RuntimeR0
     74 endif
    6975 LIBRARIES.solaris += RuntimeR0Stub
    7076 LIBRARIES.win += RuntimeR0Stub
     
    8591
    8692 BLDPROGS += uniread
    87  LIBRARIES += RuntimeR3 RuntimeBldProg RuntimeR0 RuntimeEFCPP RuntimeR3NoCRTGCC
     93 LIBRARIES += RuntimeR3 RuntimeBldProg RuntimeEFCPP RuntimeR3NoCRTGCC
     94 ifdef VBOX_WITH_R0_MODULES
     95  LIBRARIES += RuntimeR0
     96 endif
    8897 LIBRARIES.solaris += RuntimeR0Stub
    8998 LIBRARIES.win += RuntimeR0Stub RuntimeR3NoCrt
  • trunk/src/VBox/Runtime/testcase/Makefile.kmk

    r93318 r93419  
    185185        tstRTS3
    186186endif
    187 if1of ($(KBUILD_TARGET_ARCH), amd64 x86)
     187ifdef VBOX_WITH_R0_MODULES
    188188 PROGRAMS += \
    189189        tstLdr-2 \
  • trunk/src/VBox/VMM/Config.kmk

    r93205 r93419  
    3030# Can be prepended to by setting it in LocalConfig.kmk
    3131VMM_COMMON_DEFS := USING_VMM_COMMON_DEFS
     32ifdef VBOX_WITH_HWVIRT
     33 VMM_COMMON_DEFS += VBOX_WITH_HWVIRT
     34endif
    3235ifdef VBOX_WITH_NESTED_HWVIRT_SVM
    3336 VMM_COMMON_DEFS += VBOX_WITH_NESTED_HWVIRT_SVM
  • trunk/src/VBox/VMM/Makefile.kmk

    r93354 r93419  
    441441
    442442
    443 ifndef VBOX_ONLY_EXTPACKS
    444443#
    445444# VMMR0.r0
    446445#
    447 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += VMMR0
    448 VMMR0_TEMPLATE  = VBoxR0
    449 VMMR0_SYSSUFF   = .r0
    450 
    451 VMMR0_DEFS      = VBOX_IN_VMM IN_VMM_R0 IN_RT_R0 IN_DIS DIS_CORE_ONLY IN_GVMM_R0 IN_GMM_R0 IN_INTNET_R0 \
    452         $(VMM_COMMON_DEFS) RTASSERT_HAVE_SHOULD_PANIC
    453 ## @todo eliminate IN_GVMM_R0 IN_GMM_R0
     446if defined(VBOX_WITH_R0_MODULES) && !defined(VBOX_ONLY_EXTPACKS)
     447 ifdef VBOX_WITH_VBOXR0_AS_DLL
     448  DLLS    += VMMR0
     449 else
     450  SYSMODS += VMMR0
     451 endif
     452 VMMR0_TEMPLATE  = VBoxR0
     453 VMMR0_SYSSUFF   = .r0
     454
     455 VMMR0_DEFS      = VBOX_IN_VMM IN_VMM_R0 IN_RT_R0 IN_DIS DIS_CORE_ONLY IN_GVMM_R0 IN_GMM_R0 IN_INTNET_R0 \
     456        $(VMM_COMMON_DEFS) RTASSERT_HAVE_SHOULD_PANIC
     457 ## @todo eliminate IN_GVMM_R0 IN_GMM_R0
    454458 ifdef VBOX_WITH_PCI_PASSTHROUGH
    455 VMMR0_DEFS     += IN_PCIRAW_R0
     459  VMMR0_DEFS     += IN_PCIRAW_R0
    456460 endif
    457461 ifdef VBOX_WITH_TRIPLE_FAULT_HACK
    458 VMMR0_DEFS     += VBOX_WITH_TRIPLE_FAULT_HACK
     462  VMMR0_DEFS     += VBOX_WITH_TRIPLE_FAULT_HACK
    459463 endif
    460464 ifdef VBOX_WITH_IOMMU_AMD
    461 VMMR0_DEFS     += VBOX_WITH_IOMMU_AMD
     465  VMMR0_DEFS     += VBOX_WITH_IOMMU_AMD
    462466 endif
    463467 ifdef VBOX_WITH_DBGF_TRACING
    464 VMMR0_DEFS     += VBOX_WITH_DBGF_TRACING
     468  VMMR0_DEFS     += VBOX_WITH_DBGF_TRACING
    465469 endif
    466470 if1of ($(KBUILD_TARGET), darwin linux win)
    467 VMMR0_DEFS     += VMM_R0_TOUCH_FPU
    468  endif
    469 VMMR0_DEFS.win.amd64  = VBOX_WITH_KERNEL_USING_XMM
     471  VMMR0_DEFS     += VMM_R0_TOUCH_FPU
     472 endif
     473 VMMR0_DEFS.win.amd64  = VBOX_WITH_KERNEL_USING_XMM
    470474
    471475 ifeq ($(VBOX_LDR_FMT),elf)
    472 VMMR0_CXXFLAGS += -Wunused -Wunused-variable -Wno-unused-parameter
    473  endif
    474 
    475 VMMR0_INCS      = \
    476         include \
    477         $(VBoxVMM_0_OUTDIR)/CommonGenIncs
    478 
    479 VMMR0_SOURCES   = \
    480         VBoxVMM.d \
    481         VMMR0/CPUMR0.cpp \
    482         VMMR0/CPUMR0A.asm \
    483         VMMR0/DBGFR0.cpp \
    484         VMMR0/DBGFR0Bp.cpp \
    485         $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMR0/DBGFR0Tracer.cpp,) \
    486         VMMR0/GIMR0.cpp \
    487         VMMR0/GIMR0Hv.cpp \
    488         VMMR0/GMMR0.cpp \
    489         VMMR0/GVMMR0.cpp \
    490         VMMR0/EMR0.cpp \
    491         VMMR0/HMR0.cpp \
    492         VMMR0/HMR0A.asm \
    493         VMMR0/HMR0UtilA.asm \
    494         VMMR0/HMVMXR0.cpp \
    495         VMMR0/HMSVMR0.cpp \
    496         VMMR0/IOMR0.cpp \
    497         VMMR0/IOMR0IoPort.cpp \
    498         VMMR0/IOMR0Mmio.cpp \
    499         VMMR0/PDMR0Device.cpp \
    500         VMMR0/PDMR0DevHlp.cpp \
    501         $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMR0/PDMR0DevHlpTracing.cpp,) \
    502         VMMR0/PDMR0Driver.cpp \
    503         VMMR0/PGMR0.cpp \
    504         VMMR0/PGMR0Pool.cpp \
    505         VMMR0/PGMR0SharedPage.cpp \
    506         VMMR0/TMR0.cpp \
    507         VMMR0/VMMR0.cpp \
    508         VMMRZ/CPUMRZ.cpp \
    509         VMMRZ/CPUMRZA.asm \
    510         VMMRZ/VMMRZ.cpp \
    511         VMMAll/APICAll.cpp \
    512         VMMAll/CPUMAllRegs.cpp \
    513         VMMAll/CPUMAllMsrs.cpp \
    514         VMMAll/DBGFAll.cpp \
    515         VMMAll/DBGFAllBp.cpp \
    516         $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMAll/DBGFAllTracer.cpp,) \
    517         VMMAll/EMAll.cpp \
    518         VMMAll/GIMAll.cpp \
    519         VMMAll/GIMAllHv.cpp \
    520         VMMAll/GIMAllKvm.cpp \
    521         VMMAll/HMAll.cpp \
    522         VMMAll/HMSVMAll.cpp \
    523         VMMAll/HMVMXAll.cpp \
    524         VMMAll/IEMAll.cpp \
    525         VMMAll/IEMAllAImpl.asm \
    526         VMMAll/IEMAllAImplC.cpp \
    527         VMMAll/IOMAll.cpp \
    528         VMMAll/IOMAllMmioNew.cpp \
    529         VMMAll/MMAll.cpp \
    530         VMMAll/MMAllHyper.cpp \
    531         VMMAll/NEMAll.cpp \
    532         VMMAll/PDMAll.cpp \
    533         VMMAll/PDMAllCritSect.cpp \
    534         VMMAll/PDMAllCritSectRw.cpp \
    535         VMMAll/PDMAllCritSectBoth.cpp \
    536         $(if-expr defined(VBOX_WITH_IOMMU_AMD) || defined(VBOX_WITH_IOMMU_INTEL), VMMAll/PDMAllIommu.cpp,) \
    537         VMMAll/PDMAllQueue.cpp \
    538         VMMAll/PDMAllTask.cpp \
    539         VMMAll/PGMAll.cpp \
    540         VMMAll/PGMAllHandler.cpp \
    541         VMMAll/PGMAllPhys.cpp \
    542         VMMAll/PGMAllPool.cpp \
    543         VMMAll/SELMAll.cpp \
    544         VMMAll/TMAll.cpp \
    545         VMMAll/TMAllCpu.cpp \
    546         VMMAll/TMAllReal.cpp \
    547         VMMAll/TMAllVirtual.cpp \
    548         VMMAll/TRPMAll.cpp \
    549         VMMAll/VMAll.cpp \
    550         VMMAll/VMMAll.cpp \
    551         VMMAll/VMMAllA.asm
     476  VMMR0_CXXFLAGS += -Wunused -Wunused-variable -Wno-unused-parameter
     477 endif
     478
     479 VMMR0_INCS      = \
     480        include \
     481        $(VBoxVMM_0_OUTDIR)/CommonGenIncs
     482
     483 VMMR0_SOURCES   = \
     484        VBoxVMM.d \
     485        VMMR0/CPUMR0.cpp \
     486        VMMR0/CPUMR0A.asm \
     487        VMMR0/DBGFR0.cpp \
     488        VMMR0/DBGFR0Bp.cpp \
     489        $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMR0/DBGFR0Tracer.cpp,) \
     490        VMMR0/GIMR0.cpp \
     491        VMMR0/GIMR0Hv.cpp \
     492        VMMR0/GMMR0.cpp \
     493        VMMR0/GVMMR0.cpp \
     494        VMMR0/EMR0.cpp \
     495        VMMR0/HMR0.cpp \
     496        VMMR0/HMR0A.asm \
     497        VMMR0/HMR0UtilA.asm \
     498        VMMR0/HMVMXR0.cpp \
     499        VMMR0/HMSVMR0.cpp \
     500        VMMR0/IOMR0.cpp \
     501        VMMR0/IOMR0IoPort.cpp \
     502        VMMR0/IOMR0Mmio.cpp \
     503        VMMR0/PDMR0Device.cpp \
     504        VMMR0/PDMR0DevHlp.cpp \
     505        $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMR0/PDMR0DevHlpTracing.cpp,) \
     506        VMMR0/PDMR0Driver.cpp \
     507        VMMR0/PGMR0.cpp \
     508        VMMR0/PGMR0Pool.cpp \
     509        VMMR0/PGMR0SharedPage.cpp \
     510        VMMR0/TMR0.cpp \
     511        VMMR0/VMMR0.cpp \
     512        VMMRZ/CPUMRZ.cpp \
     513        VMMRZ/CPUMRZA.asm \
     514        VMMRZ/VMMRZ.cpp \
     515        VMMAll/APICAll.cpp \
     516        VMMAll/CPUMAllRegs.cpp \
     517        VMMAll/CPUMAllMsrs.cpp \
     518        VMMAll/DBGFAll.cpp \
     519        VMMAll/DBGFAllBp.cpp \
     520        $(if-expr defined(VBOX_WITH_DBGF_TRACING), VMMAll/DBGFAllTracer.cpp,) \
     521        VMMAll/EMAll.cpp \
     522        VMMAll/GIMAll.cpp \
     523        VMMAll/GIMAllHv.cpp \
     524        VMMAll/GIMAllKvm.cpp \
     525        VMMAll/HMAll.cpp \
     526        VMMAll/HMSVMAll.cpp \
     527        VMMAll/HMVMXAll.cpp \
     528        VMMAll/IEMAll.cpp \
     529        VMMAll/IEMAllAImpl.asm \
     530        VMMAll/IEMAllAImplC.cpp \
     531        VMMAll/IOMAll.cpp \
     532        VMMAll/IOMAllMmioNew.cpp \
     533        VMMAll/MMAll.cpp \
     534        VMMAll/MMAllHyper.cpp \
     535        VMMAll/NEMAll.cpp \
     536        VMMAll/PDMAll.cpp \
     537        VMMAll/PDMAllCritSect.cpp \
     538        VMMAll/PDMAllCritSectRw.cpp \
     539        VMMAll/PDMAllCritSectBoth.cpp \
     540        $(if-expr defined(VBOX_WITH_IOMMU_AMD) || defined(VBOX_WITH_IOMMU_INTEL), VMMAll/PDMAllIommu.cpp,) \
     541        VMMAll/PDMAllQueue.cpp \
     542        VMMAll/PDMAllTask.cpp \
     543        VMMAll/PGMAll.cpp \
     544        VMMAll/PGMAllHandler.cpp \
     545        VMMAll/PGMAllPhys.cpp \
     546        VMMAll/PGMAllPool.cpp \
     547        VMMAll/SELMAll.cpp \
     548        VMMAll/TMAll.cpp \
     549        VMMAll/TMAllCpu.cpp \
     550        VMMAll/TMAllReal.cpp \
     551        VMMAll/TMAllVirtual.cpp \
     552        VMMAll/TRPMAll.cpp \
     553        VMMAll/VMAll.cpp \
     554        VMMAll/VMMAll.cpp \
     555        VMMAll/VMMAllA.asm
    552556 if1of ($(VBOX_LDR_FMT), pe lx)
    553 VMMR0_SOURCES += $(VMMR0Imp_0_OUTDIR)/VMMR0.def
     557  VMMR0_SOURCES += $(VMMR0Imp_0_OUTDIR)/VMMR0.def
    554558 endif
    555559 ifdef VBOX_WITH_TRIPLE_FAULT_HACK
    556 VMMR0_SOURCES += \
    557         VMMR0/VMMR0TripleFaultHack.cpp \
    558         VMMR0/VMMR0TripleFaultHackA.asm
     560  VMMR0_SOURCES += \
     561        VMMR0/VMMR0TripleFaultHack.cpp \
     562        VMMR0/VMMR0TripleFaultHackA.asm
    559563 endif
    560564 ifdef VBOX_WITH_NETSHAPER
    561 VMMR0_SOURCES += \
    562         VMMAll/PDMAllNetShaper.cpp
    563  endif
    564 VMMR0_SOURCES.amd64 = \
    565         VMMR0/VMMR0JmpA-amd64.asm
    566 VMMR0_SOURCES.x86 = \
    567         VMMR0/VMMR0JmpA-x86.asm
    568 
    569 VMMR0_LIBS = \
    570         $(PATH_STAGE_LIB)/ServicesR0$(VBOX_SUFF_LIB) \
    571         $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
    572         $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
    573         $(VBOX_LIB_SUPR0)
     565  VMMR0_SOURCES += \
     566        VMMAll/PDMAllNetShaper.cpp
     567 endif
     568 VMMR0_SOURCES.amd64 = \
     569        VMMR0/VMMR0JmpA-amd64.asm
     570 VMMR0_SOURCES.x86 = \
     571        VMMR0/VMMR0JmpA-x86.asm
     572
     573 VMMR0_LIBS = \
     574        $(PATH_STAGE_LIB)/ServicesR0$(VBOX_SUFF_LIB) \
     575        $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
     576        $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
     577        $(VBOX_LIB_SUPR0)
    574578 ifdef VBOX_WITH_NATIVE_NEM
    575 VMMR0_SOURCES.linux.amd64  += VMMR0/NEMR0Native-stubs.cpp
    576 VMMR0_SOURCES.win.amd64    += VMMR0/NEMR0Native-stubs.cpp
    577 VMMR0_SOURCES.darwin.amd64 += VMMR0/NEMR0Native-stubs.cpp
    578 VMMR0_DEFS.darwin.amd64    += VBOX_WITH_NATIVE_NEM VBOX_WITH_NEM_R0
    579  endif
    580 
    581 $(call VBOX_SET_VER_INFO_R0,VMMR0,VirtualBox VMM - ring-0 context parts) # Version info / description.
     579  VMMR0_SOURCES.linux.amd64  += VMMR0/NEMR0Native-stubs.cpp
     580  VMMR0_SOURCES.win.amd64    += VMMR0/NEMR0Native-stubs.cpp
     581  VMMR0_SOURCES.darwin.amd64 += VMMR0/NEMR0Native-stubs.cpp
     582  VMMR0_DEFS.darwin.amd64    += VBOX_WITH_NATIVE_NEM VBOX_WITH_NEM_R0
     583 endif
     584
     585 $(call VBOX_SET_VER_INFO_R0,VMMR0,VirtualBox VMM - ring-0 context parts) # Version info / description.
    582586
    583587 if "$(USERNAME)" == "bird" && "$(KBUILD_TARGET)" == "win"
    584 VMMR0_VMMAll/IEMAll.cpp_CXXFLAGS       = /FAcs /Fa$(subst /,\\,$(outbase).cod)
    585 VMMR0_VMMAll/IEMAllAImplC.cpp_CXXFLAGS = /FAcs /Fa$(subst /,\\,$(outbase).cod)
    586 VMMR0_VMMAll/PGMAll.cpp_CXXFLAGS       = /FAcs /Fa$(subst /,\\,$(outbase).cod)
    587 VMMR0_CLEAN += $(addprefix $(VMMR0_0_OUTDIR)/VMMAll/, IEMAll.cod IEMAllAImplC.cod PGMAll.cod)
    588  endif
    589 
    590 VMMR0_INTERMEDIATES += $(VBoxVMM_0_OUTDIR)/CommonGenIncs/IEMInstructionStatisticsTmpl.h
     588  VMMR0_VMMAll/IEMAll.cpp_CXXFLAGS       = /FAcs /Fa$(subst /,\\,$(outbase).cod)
     589  VMMR0_VMMAll/IEMAllAImplC.cpp_CXXFLAGS = /FAcs /Fa$(subst /,\\,$(outbase).cod)
     590  VMMR0_VMMAll/PGMAll.cpp_CXXFLAGS       = /FAcs /Fa$(subst /,\\,$(outbase).cod)
     591  VMMR0_CLEAN += $(addprefix $(VMMR0_0_OUTDIR)/VMMAll/, IEMAll.cod IEMAllAImplC.cod PGMAll.cod)
     592 endif
     593
     594 VMMR0_INTERMEDIATES += $(VBoxVMM_0_OUTDIR)/CommonGenIncs/IEMInstructionStatisticsTmpl.h
    591595
    592596 if "$(KBUILD_TARGET)" == "win"
    593 # Debug type info hack for VMCPU, VM and similar.  See VBoxVMM for details.
    594 VMMR0_LIBS    += $(VMMR0PdbTypeHack_1_TARGET)
    595 VMMR0_LDFLAGS += /Export:PdbTypeHack
    596 
    597 LIBRARIES += VMMR0PdbTypeHack
    598 VMMR0PdbTypeHack_TEMPLATE       = $(VMMR0_TEMPLATE)
    599 VMMR0PdbTypeHack_SOURCES        = VMMAll/AllPdbTypeHack.cpp
    600 VMMR0PdbTypeHack_DEFS           = $(VMMR0_DEFS)
    601 VMMR0PdbTypeHack_DEFS.win       = $(VMMR0_DEFS.win)
    602 VMMR0PdbTypeHack_DEFS.win.x86   = $(VMMR0_DEFS.win.x86)
    603 VMMR0PdbTypeHack_DEFS.win.amd64 = $(VMMR0_DEFS.win.amd64)
    604 VMMR0PdbTypeHack_INCS           = $(VMMR0_INCS)
    605 VMMR0PdbTypeHack_INTERMEDIATES  = $(VMMR0_INTERMEDIATES)
     597  # Debug type info hack for VMCPU, VM and similar.  See VBoxVMM for details.
     598  VMMR0_LIBS    += $(VMMR0PdbTypeHack_1_TARGET)
     599  VMMR0_LDFLAGS += /Export:PdbTypeHack
     600
     601  LIBRARIES += VMMR0PdbTypeHack
     602  VMMR0PdbTypeHack_TEMPLATE       = $(VMMR0_TEMPLATE)
     603  VMMR0PdbTypeHack_SOURCES        = VMMAll/AllPdbTypeHack.cpp
     604  VMMR0PdbTypeHack_DEFS           = $(VMMR0_DEFS)
     605  VMMR0PdbTypeHack_DEFS.win       = $(VMMR0_DEFS.win)
     606  VMMR0PdbTypeHack_DEFS.win.x86   = $(VMMR0_DEFS.win.x86)
     607  VMMR0PdbTypeHack_DEFS.win.amd64 = $(VMMR0_DEFS.win.amd64)
     608  VMMR0PdbTypeHack_INCS           = $(VMMR0_INCS)
     609  VMMR0PdbTypeHack_INTERMEDIATES  = $(VMMR0_INTERMEDIATES)
    606610 endif
    607611
    608612 ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS
    609 # Wrapper kmod for VMMR0.r0
    610 INSTALLS.linux += vbox_vmmr0-src
    611 vbox_vmmr0-src_INST = bin/src/vbox_vmmr0/
    612 vbox_vmmr0-src_SYMLINKS = \
    613         SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
    614         Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
    615 vbox_vmmr0-src_SOURCES = \
    616         $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vmmr0.gmk=>Makefile \
    617         $(VMMR0_0_OUTDIR)/VMMR0.r0=>VMMR0.r0 \
    618         $(VMMR0_0_OUTDIR)/VMMR0.debug=>VMMR0.debug
    619  endif
    620 
    621 endif # !VBOX_ONLY_EXTPACKS
     613  # Wrapper kmod for VMMR0.r0
     614  INSTALLS.linux += vbox_vmmr0-src
     615  vbox_vmmr0-src_INST = bin/src/vbox_vmmr0/
     616  vbox_vmmr0-src_SYMLINKS = \
     617        SUPWrapperMod-linux.c=>../common/SUPWrapperMod-linux.c \
     618        Makefile-wrapper.gmk=>../common/Makefile-wrapper.gmk
     619  vbox_vmmr0-src_SOURCES = \
     620        $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/Makefile-vbox_vmmr0.gmk=>Makefile \
     621        $(VMMR0_0_OUTDIR)/VMMR0.r0=>VMMR0.r0 \
     622        $(VMMR0_0_OUTDIR)/VMMR0.debug=>VMMR0.debug
     623 endif
     624
     625endif # defined(VBOX_WITH_R0_MODULES) && !defined(VBOX_ONLY_EXTPACKS)
    622626
    623627
  • trunk/src/VBox/ValidationKit/utils/misc/Makefile.kmk

    r93115 r93419  
    3232LoadGenerator_SOURCES  = loadgenerator.cpp
    3333
    34 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += loadgeneratorR0
    35 loadgeneratorR0_TEMPLATE = VBoxValidationKitR0
    36 loadgeneratorR0_SOURCES = loadgeneratorR0.cpp
     34ifdef VBOX_WITH_R0_MODULES
     35 ifdef VBOX_WITH_VBOXR0_AS_DLL
     36  DLLS    += loadgeneratorR0
     37 else
     38  SYSMODS += loadgeneratorR0
     39 endif
     40 loadgeneratorR0_TEMPLATE = VBoxValidationKitR0
     41 loadgeneratorR0_SOURCES = loadgeneratorR0.cpp
     42endif
    3743
    3844PROGRAMS += vts_rm
Note: See TracChangeset for help on using the changeset viewer.

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