Skip to content

[Bug] WITH_GRANNY build fails because Granny SDK download endpoint is unreachable #45

Description

@JamieShelley

Commit hash or tag

342fbe5

Operating system

Windows 10/11

Tool-chain details

Visual Studio Community 18
MSVC v141 toolset
MSVC compiler version 14.16.27023
CMake: paste the output of cmake --version
vcpkg manifest mode
Triplet: x64-windows-trinitydev
Configuration: TrinityDev
Backend: DirectX 11
BUILD_DX11=ON
BUILD_DX12=OFF
WITH_GRANNY=ON

A clean Windows build of Carbon Trinity with WITH_GRANNY=ON cannot complete because the only configured Granny SDK download endpoint is unreachable.

The failing package is:

granny:x64-windows-trinitydev@2.12.0.14

The port attempts to download:

https://vcpkg-prebuilt-sdks.ccpgames.com/granny/granny-v2.12.0.14.zip

The request times out on all three attempts. The Granny port does not configure a fallback or mirror URL.

The same build successfully installs the other 131 dependencies and fails only on dependency 132, Granny.

This prevents external contributors from configuring and compiling Trinity with native .gr2 support.

Steps to reproduce

  1. Clone the public carbonengine/trinity repository.

  2. Initialise the repository and vcpkg dependencies normally.

  3. Configure a Windows TrinityDev build using:

    BUILD_DX11=ON
    BUILD_DX12=OFF
    WITH_GRANNY=ON
    Triplet: x64-windows-trinitydev

  4. Allow vcpkg manifest installation to run.

  5. Observe the failure while installing:

    granny:x64-windows-trinitydev@2.12.0.14

The failure occurs during the vcpkg manifest installation, before CMake can generate or compile the Trinity targets.

Expected behaviour

The Granny SDK package should be obtainable from an accessible authorised source, a documented public binary cache, or a configured fallback mirror.

The manifest installation should complete and allow Trinity to compile with native .gr2 support.

Actual behaviour

The only configured Granny SDK URL repeatedly times out and vcpkg stops the manifest installation.

Installing 132/132 granny:x64-windows-trinitydev@2.12.0.14...
Building granny:x64-windows-trinitydev@2.12.0.14...

Downloading https://vcpkg-prebuilt-sdks.ccpgames.com/granny/granny-v2.12.0.14.zip -> granny
Attempt 1 of 3, retrying download.
Attempt 2 of 3, retrying download.
error: Download timed out.
error: Download timed out.
error: Reached maximum number of attempts, won't retry download.

CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:136:
Download failed, halting portfile.

error: building granny:x64-windows-trinitydev failed with: BUILD_FAILED

Minimal reproduction (link or attachment)

The Granny port appears to contain only this source URL:

set(DIST_URL "https://vcpkg-prebuilt-sdks.ccpgames.com/granny/granny-v${VERSION}.zip")

Expected archive SHA-512:

2c46f9ba28caa1d35abebbede37141af6e82e53da0d146cb1ea99282a2c0b19d57c1582ad70f6e37bb5b56daac4ad924f1142ce39dc5057b3bf7de93c9a6c9b6

The package ABI reported by this build is:

501fd7cd797112d266c103674143ff75e86690d00f5430521b01f1393a811338

The repository's TeamCity configuration appears to use an authenticated AWS-backed vcpkg binary cache:

s3://vcpkg-binary-cache-static/cache/

External contributors do not appear to have access to that cache, so a clean external build falls back to the unreachable source archive.

A suitable resolution would be one of the following:

  1. Restore the existing SDK endpoint.
  2. Add an authorised fallback or mirror.
  3. Provide a documented public read-only vcpkg binary cache.
  4. Document how external contributors can legally obtain and supply the Granny SDK.
  5. State that WITH_GRANNY=ON currently requires internal CCP infrastructure, if that is intentional.

Logs, screenshots, or video (optional)

No response

Final checklist

  • I searched open and closed issues for duplicates.
  • I reproduced this problem on the main branch.
  • The minimal reproduction is attached or linked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions