Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add swt.win32.aarch64 and compile SWT natives for Windows on Arm64
This commit mainly contains changes to the build.bat file, to support compiling the SWT natives for the WoA platform. On a WoA box, run the following commands to produce the SWT natives (swt*.dll) for WoA: cd binaries\org.eclipse.swt.win32.win32.aarch64 mvn clean process-resources -Dnative=win32.win32.aarch64 and the swt*.dll files for WoA will be created in the current directory. Cross-compiling between the x64 and Arm64 platforms, where either of them can be host or target, is also possible, after setting up the TARGET_ARCH environment variable with correct target architecture value, and with the SWT_JAVA_HOME property pointing to an available JDK of the target architecture. For example, to cross-compile on an x64 host and produce SWT natives for Arm64 target, run the following commands: set TARGET_ARCH=arm64 cd binaries\org.eclipse.swt.win32.win32.aarch64 mvn clean process-resources -Dnative=win32.win32.aarch64 -DSWT_JAVA_HOME=\path\to\arm64_jdk and the swt*.dll files for WoA will be created in the current directory. Note the above SWT_JAVA_HOME property in the command line which points to an available Arm64 JDK of the target architecture. Similarly, to cross-compile on an Arm64 host and produce SWT natives for x64 target, run the following commands: set TARGET_ARCH=x64 cd binaries\org.eclipse.swt.win32.win32.x86_64 mvn clean process-resources -Dnative=win32.win32.x86_64 -DSWT_JAVA_HOME=\path\to\x64_jdk and the swt*.dll files for x64 will be created in the current directory. Note that for cross-compiling between x64 and Arm64 to work, install the MSVC compiler version 2022, with mandatory build tools for both platforms included in the installation. Once the SWT natives for Arm64 are generated, the SWT binaries module's files can be produced with the following build commands in current directory: mvn clean verify -DskipTests=true and the module's jar/zip files will be produced in the target directory: org.eclipse.swt.win32.win32.aarch64-<version>.jar org.eclipse.swt.win32.win32.aarch64-<version>-sources.jar swt-<version>-win32-win32-aarch64.zip Also add the WebView2Loader.dll version 1.0.1150.38 (matching the swt.win32.x86_64 fragment), obtained from the NuGet package microsoft.web.webview2 https://nuget.info/packages/Microsoft.Web.WebView2/1.0.1150.38 located in the sub-folder build/native/arm64
- Loading branch information