VirtualBox

Changeset 107016 in vbox


Ignore:
Timestamp:
Nov 15, 2024 1:25:36 PM (2 months ago)
Author:
vboxsync
Message:

Installer/win/Makefile.kmk: Use 'wix msi transform' to create the language transformation files instaed of MsiTran.exe from the SDK. jiraref:VBP-1442

File:
1 edited

Legend:

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

    r107015 r107016  
    967967# We also don't need waste time to compress anything here.
    968968#
     969# See also https://github.com/wixtoolset/issues/issues/7544 which requests a
     970# simpler way of doing this.
     971#
    969972define def_vbox_create_mst
    970973 $(VBOX_WIN_INST_OUT_DIR)/$(lang)/$(lang).mst \
     
    979982                $(if-expr defined(VBOX_WITH_MSI_HACK),$(MsiHack_0_OUTDIR)/MsiHackExtension.dll,) \
    980983                | $$$$(dir $$$$@) $(VBOX_WIN_INST_REPACK_DIR)/
     984        $(RM) -f -- "$$@"
    981985        $(call MSG_L1,Creating language diff for $(lang))
    982986        kmk_time $$(REDIRECT_EXT) -E WIX_TEMP='$$(subst /,\,$$(@D))' $(VBOX_WIN_INST_ENV) \
     
    991995                -pdbtype none \
    992996                -out $$(@D)/$(PACKAGE_NAME_LANG)_$(lang).msi
    993         $(REDIRECT) -C $$(@D) -- $$(VBOX_PATH_MSITRAN) -g $$< $(PACKAGE_NAME_LANG)_$(lang).msi $(lang).mst
     997        $(VBOX_TOOLS_WIN_WIX_BIN) msi transform -t language -intermediateFolder "$$(@D)/wix-temp/" \
     998                "$$<" "$$(@D)/$(PACKAGE_NAME_LANG)_$(lang).msi" -out "$$@"
    994999        $(CP) -f -- "$(VBOX_WIN_INST_OUT_DIR)/$(lang)/$(lang).mst" "$(VBOX_WIN_INST_REPACK_DIR)/$(lang).mst"
    995         $(RM) -Rf -- $$(@D)/$(PACKAGE_NAME_LANG)_$(lang).msi \
    996                 $$(@D)/wix-temp/ \
    997                 $$(@D)/common.cab
     1000        $(RM) -Rf -- "$$(@D)/$(PACKAGE_NAME_LANG)_$(lang).msi" \
     1001                "$$(@D)/wix-temp/" \
     1002                "$$(@D)/common.cab"
    9981003
    9991004endef
     
    10211026                $(wildcard $(@D)/$(PACKAGE_BASE)-r*.msi $(VBOX_WIN_INST_REPACK_DIR)/2-multilingual-$(PACKAGE_BASE)-r*.cmd )
    10221027        $(CP) -f -- "$<" "$@"
    1023 
     1028# Add non-english languages.
    10241029        $(foreach lang,$(filter-out en_US,$(VBOX_INSTALLER_LANGUAGES)), \
    1025                 $(NLTAB)$(REDIRECT) -C $(@D)/$(lang) -- $(VBOX_PATH_MSIDB) -d $@ -r $(lang).mst \
    1026                 $(NLTAB)$(REDIRECT) -C $(@D)/$(lang) -- cscript.exe /nologo $(VBOX_PATH_WISUBSTG) $@ $(lang).mst $(VBOX_BRAND_$(lang)_LANG_ID) )
    1027 
     1030                $(NLTAB)$(REDIRECT) -C "$(@D)/$(lang)" -- $(VBOX_PATH_MSIDB) -d "$@" -r "$(lang).mst" \
     1031                $(NLTAB)$(REDIRECT) -C "$(@D)/$(lang)" -- cscript.exe /nologo $(VBOX_PATH_WISUBSTG) $@ $(lang).mst $(VBOX_BRAND_$(lang)_LANG_ID) )
     1032# Display MSI details.
    10281033        $(REDIRECT) -C $(@D) -- cscript.exe /nologo $(VBOX_PATH_WISUBSTG) $(@F)
    10291034        $(REDIRECT) -C $(@D) -- cscript.exe /nologo $(VBOX_PATH_WISUMINFO) $@
     1035# Update the list of language IDs (starts with platform/arch).
    10301036        $(REDIRECT) -C $(@D) -- cscript.exe /nologo $(VBOX_PATH_WISUMINFO) $@ $(VBOX_INS_PROD_LANG)
     1037# Display updated MSI details.
    10311038        $(REDIRECT) -C $(@D) -- cscript.exe /nologo $(VBOX_PATH_WISUMINFO) $@
     1039# Finally, sign it.
    10321040        $(call VBOX_SIGN_MSI_FN,$@,$(VBOX_PRODUCT) $(VBOX_VERSION_STRING)r$(VBOX_SVN_REV) ($(KBUILD_TARGET_ARCH)),,,disable-dual-signing)
    1033 
    10341041# Create repack script for this step.
    10351042        $(APPEND) -nt "$(VBOX_WIN_INST_REPACK_DIR)/2-multilingual-$(PACKAGE_NAME_LANG).cmd" \
     
    10471054                $(if-expr defined(VBOX_WITH_COMBINED_PACKAGE),'copy /y "$(@F)" "$(notdir $(PACKAGE_NAME_FINAL))" || exit /b1',) \
    10481055                '@echo Created multilanguage MSI: $(notdir $(PACKAGE_NAME_FINAL))'
     1056# Validation.  Currently there is a list of grievances, we ignore it. (TODO: Fix errors.)
    10491057        $(call MSG_L1,Start validation of "$@" - errors will be ignored)
    10501058        -$(REDIRECT) -- $(VBOX_TOOLS_WIN_WIX_BIN) msi validate "$@"
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