From 81167101d0e56f7f04b57a9a90c8d9f10cadbdad Mon Sep 17 00:00:00 2001 From: jmjaffe37 Date: Wed, 5 Mar 2025 14:36:29 -0800 Subject: [PATCH 1/2] Now able to build MSIs from windows_aarch64 machines --- wix/Build.OpenJDK_generic.cmd | 4 ++-- wix/BuildSetupTranslationTransform.cmd | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/wix/Build.OpenJDK_generic.cmd b/wix/Build.OpenJDK_generic.cmd index a89253f39..4131cb088 100644 --- a/wix/Build.OpenJDK_generic.cmd +++ b/wix/Build.OpenJDK_generic.cmd @@ -323,7 +323,7 @@ FOR %%A IN (%ARCH%) DO ( ) REM Add all supported languages to MSI Package attribute - CSCRIPT "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\x64\WiLangId.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi Package !LANGIDS! + CSCRIPT "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\!PLATFORM!\WiLangId.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi Package !LANGIDS! IF ERRORLEVEL 1 ( ECHO Failed to pack all languages into MSI : !LANGIDS! GOTO FAILED @@ -355,7 +355,7 @@ FOR %%A IN (%ARCH%) DO ( ECHO try !timestampErrors! / sha256 / timestamp server : %%s REM Always hide password here @ECHO OFF - "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\x64\signtool.exe" sign -f "%SIGNING_CERTIFICATE%" -p "%SIGN_PASSWORD%" -fd sha256 -d "Adoptium" -t %%s "ReleaseDir\!OUTPUT_BASE_FILENAME!.msi" + "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\!PLATFORM!\signtool.exe" sign -f "%SIGNING_CERTIFICATE%" -p "%SIGN_PASSWORD%" -fd sha256 -d "Adoptium" -t %%s "ReleaseDir\!OUTPUT_BASE_FILENAME!.msi" @ECHO ON IF NOT "%DEBUG%" == "true" @ECHO OFF diff --git a/wix/BuildSetupTranslationTransform.cmd b/wix/BuildSetupTranslationTransform.cmd index 90af06c82..71cc283d2 100644 --- a/wix/BuildSetupTranslationTransform.cmd +++ b/wix/BuildSetupTranslationTransform.cmd @@ -42,7 +42,7 @@ IF ERRORLEVEL 1 ( GOTO FAILED ) -cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\x64\WiLangId.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.msi Product %LANGID% +cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\!PLATFORM!\WiLangId.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.msi Product %LANGID% IF ERRORLEVEL 1 ( ECHO WiLangId failed with : %ERRORLEVEL% GOTO FAILED @@ -53,12 +53,12 @@ IF ERRORLEVEL 1 ( GOTO FAILED ) ECHO. -cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\x64\wisubstg.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.mst %LANGID% +cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\!PLATFORM!\wisubstg.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.mst %LANGID% IF ERRORLEVEL 1 ( ECHO wisubstg failed with : %ERRORLEVEL% GOTO FAILED ) -cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\x64\wisubstg.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi +cscript "%ProgramFiles(x86)%\Windows Kits\%WIN_SDK_MAJOR_VERSION%\bin\%WIN_SDK_FULL_VERSION%\!PLATFORM!\wisubstg.vbs" //Nologo ReleaseDir\!OUTPUT_BASE_FILENAME!.msi del /Q "ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.msi" del /Q "ReleaseDir\!OUTPUT_BASE_FILENAME!.!CULTURE!.mst" From 1043389d2774efb0cd8d50efd9d6dc674aea8cfa Mon Sep 17 00:00:00 2001 From: jmjaffe37 Date: Thu, 6 Mar 2025 12:10:59 -0800 Subject: [PATCH 2/2] Added ability to change windows SDK version used via cli --- wix/Build.OpenJDK_generic.cmd | 9 +++++---- wix/README.md | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/wix/Build.OpenJDK_generic.cmd b/wix/Build.OpenJDK_generic.cmd index 4131cb088..84754f9ca 100644 --- a/wix/Build.OpenJDK_generic.cmd +++ b/wix/Build.OpenJDK_generic.cmd @@ -40,6 +40,11 @@ IF NOT DEFINED PRODUCT_UPDATE_INFO_LINK SET PRODUCT_UPDATE_INFO_LINK=https://ado IF NOT DEFINED WIX_HEAT_PATH SET WIX_HEAT_PATH=.\Resources\heat_dir\heat.exe IF NOT DEFINED WIX_VERSION SET WIX_VERSION=5.0.0 +REM default windows_SDK version +REM See folder e.g. "C:\Program Files (x86)\Windows Kits\[10]\bin\[10.0.22621.0]\!PLATFORM!" +IF NOT DEFINED WIN_SDK_MAJOR_VERSION SET WIN_SDK_MAJOR_VERSION=10 +IF NOT DEFINED WIN_SDK_FULL_VERSION SET WIN_SDK_FULL_VERSION=10.0.22621.0 + powershell -ExecutionPolicy Bypass -File "%~dp0\helpers\Validate-Input.ps1" ^ -toValidate '%ARCH%' ^ -validInputs "x64 x86-32 x86 arm64" ^ @@ -79,10 +84,6 @@ IF "%SKIP_MSI_VALIDATION%" == "true" ( SET "MSI_VALIDATION_OPTION= -sval " ) -REM Configure available SDK version: -REM See folder e.g. "C:\Program Files (x86)\Windows Kits\[10]\bin\[10.0.16299.0]\x64" -SET WIN_SDK_MAJOR_VERSION=10 -SET WIN_SDK_FULL_VERSION=10.0.22621.0 SET WORKDIR=Workdir\ mkdir %WORKDIR% diff --git a/wix/README.md b/wix/README.md index e52487f1f..67e17817c 100644 --- a/wix/README.md +++ b/wix/README.md @@ -59,11 +59,11 @@ call powershell.exe ./CreateSourceFolder.AdoptOpenJDK.ps1 ^ set OUTPUT_BASE_FILENAME=%PRODUCT_SKU%%PRODUCT_MAJOR_VERSION%-%PRODUCT_CATEGORY%_%FOLDER_PLATFORM%_windows_%PACKAGE_TYPE%-%PRODUCT_FULL_VERSION%F ``` - `Build.OpenJDK_generic.cmd` statically depends on this SDK version (edit if needed): + `Build.OpenJDK_generic.cmd` depends on the windows SDK. The default version used is `10.0.22621.0`, but you can set the following variables if you have a different + compatible version installed: ```batch SET WIN_SDK_MAJOR_VERSION=10 - SET WIN_SDK_FULL_VERSION=10.0.17763.0 + SET WIN_SDK_FULL_VERSION=10.0.22621.0 ``` 4. Run `Build.OpenJDK_generic.cmd` to create the MSI setup in "ReleaseDir":