Skip to content

Conversation

@gpx1000
Copy link
Contributor

@gpx1000 gpx1000 commented Jul 1, 2025

with Vulkan SDK and dependency setup

Introduce a CI workflow to automate builds and tests for Ubuntu, Windows, and macOS. Includes Vulkan SDK installation and essential dependency configurations for each platform.

gpx1000 added 19 commits July 1, 2025 16:52
…etup

Introduce a CI workflow to automate builds and tests for Ubuntu, Windows, and macOS. Includes Vulkan SDK installation and essential dependency configurations for each platform.
…dependency setups across platforms

Replaced package-based Vulkan SDK installation on Linux with tar.gz method for better compatibility and control. Updated environment variable configurations on Windows. Refined macOS process by sourcing `tinyobjloader` from GitHub due to unavailability on brew. Added `libyaml-cpp0.7` to Linux dependencies.
… SDK configuration

- Build `yaml-cpp` from source on Linux for greater control and flexibility.
- Adjust Windows Vulkan SDK variables for consistency and add CMake configuration.
- Enhance macOS dependency handling by installing `stb` and `tinyobjloader` from source.
- Add Vulkan SDK installation verification on Windows.
…ity and update extraction steps accordingly
….gz`

- Integrate `ninja-build` as a required dependency for Unix builds.
- Update Vulkan SDK download to use `.tar.gz` format for macOS and adjust extraction steps accordingly.
- Modify CMake configuration to use Ninja generator for Unix platforms.
… CMake

- Drop macOS-specific steps from the GitHub Actions workflow to streamline CI processes.
- Enable `CMAKE_CXX_SCAN_FOR_MODULES` in CMake configuration for improved support of C++ module dependencies.
- Moved `CXX_SCAN_FOR_MODULES` property to individual targets (`VulkanCppModule` and chapter names) for improved modularity and control.
…and CMake setup

- Introduced `clang` installation in CI workflow for improved C++20 module support.
- Updated CMake workflow to use Clang as the default compiler and enabled C++ module dependency scanning globally.
- Refined target configurations by adding explicit module source files and consolidating module scanning settings.
…support

- Added OS-specific `Cache dependencies` steps for Windows and Ubuntu.
- Adjusted cache paths to align with platform-specific build environments.
- Adjust `add_custom_command` in CMake to specify an absolute output path for `slang.spv`.
…d improve handling of individual shader sources in CMake
…oning/building yaml-cpp

- Prevent redundant cloning by verifying the existence and content of the yaml-cpp directory.
- Ensure the build directory is only created if it doesn't already exist.
- Revert Vulkan SDK archive back to `.tar.gz` format for improved compatibility.
- Remove yaml-cpp build process from Ubuntu CI workflow to streamline dependency installation.
- Replace manual Vulkan installation with Chocolatey in Windows CI workflow for simplicity.
- Introduce improved caching for Vulkan SDK, dependencies, and build artifacts across platforms.
- Update Vulkan SDK to use `.tar.xz` archive format for Linux, updating download and extraction steps.
- Replace Chocolatey-based Vulkan installation on Windows with a direct download and silent installer for better control.
- Add comprehensive validation of Vulkan SDK installation across platforms, including checks for critical directories and files.
- Replace verbose manual steps with streamlined direct download and silent installation.
- Remove redundant installation checks and improve debug output for validation.
- Introduce `.github/workflows/build-antora-doc.yml` to automate Antora documentation builds in CI.
- Include `antora-ci-playbook.yml` for specifying site configuration and build parameters.
- Configure workflow to trigger on `push`, `pull_request`, and manual dispatch.
- Add steps to install dependencies, build the UI bundle, and generate documentation.
Copy link
Collaborator

@SaschaWillems SaschaWillems left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍🏻

@gpx1000 gpx1000 merged commit 17528f7 into KhronosGroup:main Jul 3, 2025
3 checks passed
@gpx1000 gpx1000 linked an issue Jul 5, 2025 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add CI step for Antora documentation build

2 participants