Skip to content

Allow static library linkage.#135

Merged
crud89 merged 12 commits intomainfrom
static-linking
Jul 17, 2024
Merged

Allow static library linkage.#135
crud89 merged 12 commits intomainfrom
static-linking

Conversation

@crud89
Copy link
Copy Markdown
Owner

@crud89 crud89 commented Jul 17, 2024

Describe the pull request

This PR allows to statically link the engine libraries, which increases executable file size, but reduces overall file size as well as some performance overhead. Keep in mind that some dependencies cannot be statically linked (e.g., the d3d12 libraries and the Vulkan loader). Also this does not statically link the CRT.

Alongside some changes to the overall build system have been made. The overlay port configuration has been removed from the CMake script into a vcpkg configuration file. Also overlay triplets have been introduced, that are used for proper library linkage setup and allow to restrict builds to only build release versions of dependencies, which should speed up CI builds.

Related issues

This partially addresses issue #101.

@crud89 crud89 added Type: Requirement Build 🛠 Issues that involve the build process. labels Jul 17, 2024
@crud89 crud89 added this to the Alpha #04 milestone Jul 17, 2024
@crud89 crud89 self-assigned this Jul 17, 2024
@crud89 crud89 marked this pull request as ready for review July 17, 2024 17:26
@crud89 crud89 merged commit 9cbc969 into main Jul 17, 2024
@crud89 crud89 deleted the static-linking branch July 17, 2024 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Build 🛠 Issues that involve the build process.

Projects

Status: v0.4.1

Development

Successfully merging this pull request may close these issues.

1 participant