Skip to content

Add WoA Build Support for LuxCore #706

@shaikadilrasheed-mcw

Description

@shaikadilrasheed-mcw

Add WoA Build Support for LuxCore

Summary

LuxCore currently supports ARM on Linux and macOS but not on Windows ARM64 (WoA).
This issue tracks adding native Windows ARM64 build support.

As a prerequisite, I have raised a PR to LuxCoreDeps for ARM64 dependency support and an issue to LuxCore requesting to review the PR::

Changes Required

  • sample-builder.yml: Pinned ilammy/msvc-dev-cmd to a fixed SHA and set dynamic arch selection (arm64 or x64) based on runner architecture, to correctly initialize the MSVC environment for ARM64 builds
  • wheel-builder.yml: Added ARM64-aware Conan home path resolution and dynamic CIBW_ARCHS selection; on ARM64, replaced pyluxcoretest with a minimal Python import test (python -c "import pyluxcore; pyluxcore.Init()"), since nvidia-cuda-nvrtc (required by pyluxcoretest) is not available on WoA — the same exclusion is reflected in pyproject.toml by dropping nvidia-cuda-nvrtc as a dependency on ARM64 machines
  • CMakeLists.txt: Guarded SSE2/SSE/MMX definitions and /arch:AVX flags to prevent x86-only flags from being applied on ARM64
  • build-system/luxmake/deps.py: Added Windows-ARM64 platform detection and the corresponding windows-11-arm runner mapping, so the correct LuxCoreDeps release artifact URL is constructed when fetching ARM64 dependencies
  • build-system/luxmake/wheel.py: Extended _compute_platform_tag() to detect Windows ARM64 and return the correct win_arm64 platform tag, ensuring Python wheels are packaged and identified with the right architecture

Test Environment

  • OS: Windows 11 ARM64
  • Compiler: MSVC (via ilammy/msvc-dev-cmd with ARM64 arch)
  • CI Runner: windows-11-arm

Intent

I plan to submit a PR with these changes once the LuxCoreDeps ARM64 PR is reviewed and merged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions