VirtualBox

Changeset 108581 in vbox


Ignore:
Timestamp:
Mar 17, 2025 5:25:43 PM (5 weeks ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
167987
Message:

Windows host installer: Build fixes for merge modules (VBOX_WITH_MSM_INSTALL). ​bugref:10762

Location:
trunk/src/VBox/Installer/win
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Installer/win/Makefile.kmk

    r108383 r108581  
    537537        -E 'VBOX_WITH_MINIMAL_R0=$(if $(VBOX_WITH_MINIMAL_R0),yes,no)' \
    538538        -E 'VBOX_WITH_MSM_INSTALL=$(if-expr defined(VBOX_WITH_MSM_INSTALL),yes,no)' \
    539         $(if-expr defined(VBOX_WITH_MSM_INSTALL), \
    540         $(foreach module,$(VBOX_INSTALLER_MERGE_MODULES), \
    541                 -E 'VBOX_WIN_INST_MERGE_$(toupper $(module))=$(subst /,\,$(VBOX_WIN_INST_OUT_DIR)/VBoxMerge$(module)_$(lang)_$(KBUILD_TARGET_ARCH).msm')),) \
    542539        -E 'VBOX_WITH_NETADP=$(if $(VBOX_WITH_NETADP),yes,no)' \
    543540        -E 'VBOX_WITH_NETFLT=$(if $(VBOX_WITH_NETFLT),yes,no)' \
     
    785782        $(REDIRECT) \
    786783                $(VBOX_WIN_INST_ENV) \
     784                $(if-expr defined(VBOX_WITH_MSM_INSTALL), \
     785                $(foreach module,$(VBOX_INSTALLER_MERGE_MODULES), \
     786                        -E 'VBOX_WIN_INST_MERGE_$(toupper $(module))=$(subst /,\,$(VBOX_WIN_INST_OUT_DIR)/VBoxMerge$(module)_en_US_$(KBUILD_TARGET_ARCH).msm')),) \
    787787                -- \
    788788                $(VBOX_TOOLS_WIN_WIX_BIN) build $(filter-out $(VBOX_VERSION_STAMP),$<) \
     
    828828        $(REDIRECT) \
    829829                $(VBOX_WIN_INST_ENV) \
     830                $(if-expr defined(VBOX_WITH_MSM_INSTALL), \
     831                $(foreach module,$(VBOX_INSTALLER_MERGE_MODULES), \
     832                        -E 'VBOX_WIN_INST_MERGE_$(toupper $(module))=$(subst /,\,$(VBOX_WIN_INST_OUT_DIR)/VBoxMerge$(module)_$(lang)_$(KBUILD_TARGET_ARCH).msm')),) \
    830833                -- \
    831834                $(VBOX_TOOLS_WIN_WIX_BIN) build $(filter-out $(VBOX_VERSION_STAMP),$$<) \
  • trunk/src/VBox/Installer/win/VBoxMergeNetAdp6.wxs

    r107296 r108581  
    4545
    4646        <!-- Here comes the file/directory list -->
    47          <!-- TARGETDIR -->
     47        <!-- TARGETDIR -->
    4848
    4949        <!-- Custom actions -->
     
    5454<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
    5555            <Custom Action="setNetworkTypeADP6" After="CostInitialize" />
    56             <Custom Action="correctNetworkTypeADP6" After="setNetworkTypeADP6" />
    5756<?endif?>
    5857            <?include VBoxMergeNetAdp6Seq.wxi ?>
  • trunk/src/VBox/Installer/win/VBoxMergeNetAdp6Seq.wxi

    r108468 r108581  
    4343      -->
    4444
    45     <!-- Stop the host-only interfaces on update only. Driver still has to be
    46          uninstalled, and the creation of interfaces in the new installer will
    47          do the actual upgrading, preserving the interfaces. -->
    48     <Custom Action="ca_StopHostOnlyInterfacesNetAdp" Before="ca_VBoxSupDrvInst"
     45    <!-- Merge modules need to be independent from other modules, so this module can't use any action from other modules. -->
     46    <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
     47        <!-- Stop the host-only interfaces on update only. Driver still has to be
     48             uninstalled, and the creation of interfaces in the new installer will
     49             do the actual upgrading, preserving the interfaces. -->
     50        <Custom Action="ca_StopHostOnlyInterfacesNetAdp" Before="InstallInitialize"
     51                Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
     52
     53        <!-- Uninstall the driver only on package upgrade, as for uninstall it is
     54             included in ca_RemoveHostOnlyInterfaces.
     55             @todo r=klaus Clean up this inconsistency by changing what the
     56             install helper DLL does. It's very surprising behavior and needs
     57             digging through a lot of code to understand the where and why. -->
     58        <Custom Action="ca_UninstallNetAdpArgs" Before="ca_UninstallNetAdp"
     59                Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
     60
     61        <!-- Needs to be uninstalled after it has been stopped. -->
     62        <Custom Action="ca_UninstallNetAdp" After="ca_StopHostOnlyInterfacesNetAdp"
    4963            Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
     64    <?else?>
     65        <!-- Stop the host-only interfaces on update only. Driver still has to be
     66             uninstalled, and the creation of interfaces in the new installer will
     67             do the actual upgrading, preserving the interfaces. -->
     68        <Custom Action="ca_StopHostOnlyInterfacesNetAdp" Before="ca_VBoxSupDrvInst"
     69                Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
    5070
    51     <!-- Uninstall the driver only on package upgrade, as for uninstall it is
    52          included in ca_RemoveHostOnlyInterfaces.
    53          @todo r=klaus Clean up this inconsistency by changing what the
    54          install helper DLL does. It's very surprising behavior and needs
    55          digging through a lot of code to understand the where and why. -->
    56     <Custom Action="ca_UninstallNetAdpArgs" Before="ca_UninstallNetAdp"
     71        <!-- Uninstall the driver only on package upgrade, as for uninstall it is
     72             included in ca_RemoveHostOnlyInterfaces.
     73             @todo r=klaus Clean up this inconsistency by changing what the
     74             install helper DLL does. It's very surprising behavior and needs
     75             digging through a lot of code to understand the where and why. -->
     76        <Custom Action="ca_UninstallNetAdpArgs" Before="ca_UninstallNetAdp"
     77                Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
     78
     79        <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
     80        <Custom Action="ca_UninstallNetAdp" Before="ca_VBoxSupDrvUninst"
    5781            Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
    58 
    59     <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
    60     <Custom Action="ca_UninstallNetAdp" Before="ca_VBoxSupDrvUninst"
    61             Condition="(UPGRADINGPRODUCTCODE) AND (REMOVE=&quot;ALL&quot;)" />
     82    <?endif?>
    6283
    6384    <!--
     
    6586      -->
    6687
    67     <!-- Remove the host-only interfaces on uninstall only. Includes
    68          VBoxNetAdp6 driver uninstall.
    69          @todo r=klaus Clean up this inconsistency by changing what the
    70          install helper DLL does. It's very surprising behavior and needs
    71          digging through a lot of code to understand the where and why. -->
    72     <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
    73     <Custom Action="ca_RemoveHostOnlyInterfacesNetAdp" Before="ca_VBoxSupDrvUninst"
    74             Condition="NOT (UPGRADINGPRODUCTCODE) AND (Installed) AND (REMOVE=&quot;ALL&quot;)" />
     88    <!-- Merge modules need to be independent from other modules, so this module can't use any action from other modules. -->
     89    <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
     90        <!-- Remove the host-only interfaces on uninstall only. Includes
     91             VBoxNetAdp6 driver uninstall.
     92             @todo r=klaus Clean up this inconsistency by changing what the
     93             install helper DLL does. It's very surprising behavior and needs
     94             digging through a lot of code to understand the where and why. -->
     95        <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
     96        <Custom Action="ca_RemoveHostOnlyInterfacesNetAdp" Before="InstallFinalize"
     97                Condition="NOT (UPGRADINGPRODUCTCODE) AND (Installed) AND (REMOVE=&quot;ALL&quot;)" />
     98    <?else?>
     99        <!-- Remove the host-only interfaces on uninstall only. Includes
     100             VBoxNetAdp6 driver uninstall.
     101             @todo r=klaus Clean up this inconsistency by changing what the
     102             install helper DLL does. It's very surprising behavior and needs
     103             digging through a lot of code to understand the where and why. -->
     104        <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
     105        <Custom Action="ca_RemoveHostOnlyInterfacesNetAdp" Before="ca_VBoxSupDrvUninst"
     106                Condition="NOT (UPGRADINGPRODUCTCODE) AND (Installed) AND (REMOVE=&quot;ALL&quot;)" />
     107    <?endif?>
    75108
    76109<?endif?>
  • trunk/src/VBox/Installer/win/VBoxMergeNetLwfSeq.wxi

    r108468 r108581  
    6262            Condition="(UPGRADINGPRODUCTCODE) OR (REMOVE=&quot;ALL&quot;)" />
    6363
    64     <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
    65     <Custom Action="ca_UninstallNetLwf" Before="ca_VBoxSupDrvUninst"
    66             Condition="(UPGRADINGPRODUCTCODE) OR (REMOVE=&quot;ALL&quot;)" />
     64    <!-- Merge modules need to be independent from other modules, so this module can't use any action from other modules. -->
     65    <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
     66        <!-- Needs to be uninstalled before finalizing the installation. -->
     67        <Custom Action="ca_UninstallNetLwf" Before="InstallFinalize"
     68                Condition="(UPGRADINGPRODUCTCODE) OR (REMOVE=&quot;ALL&quot;)" />
     69    <?else?>
     70        <!-- Needs to be uninstalled before VBoxSUP gets removed. -->
     71        <Custom Action="ca_UninstallNetLwf" Before="ca_VBoxSupDrvUninst"
     72                Condition="(UPGRADINGPRODUCTCODE) OR (REMOVE=&quot;ALL&quot;)" />
     73    <?endif?>
    6774
    6875<?endif?> <!-- VBOX_WITH_NETFLT -->
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