Building LuxCoreRender: Difference between revisions

From LuxCoreRender Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
''This page is under construction''
''This page is under construction''
This page documents the various processes involved in building LuxCoreRender, starting with version 2.10 “Back-on-track”.
It is primarily intended for:
* developers wishing to contribute to the project;
* LuxCoreRender administrators in charge of publishing the various binaries;
* package maintainers wishing to integrate all or part of LuxCoreRender into a distribution.
LuxCoreRender's build system has been significantly modified for version 2.10. This document therefore renders obsolete all previous documents related to the compilation of older versions (<=2.9).


= Build targets =
= Build targets =
Line 93: Line 102:
   
   
}}
}}
= Build types =




= LuxCore Dependencies =
= LuxCore Dependencies =
== Outputs ==
The output of this target is a Conan cache populated with binaries


== Principles ==
== Principles ==
Line 108: Line 126:




== Central build ==
== Server build ==


LuxCoreDeps is intended to be run by Github CI/CD pipeline.
LuxCoreDeps is intended to be run by Github CI/CD pipeline.

Revision as of 13:51, 19 April 2025

This page is under construction

This page documents the various processes involved in building LuxCoreRender, starting with version 2.10 “Back-on-track”. It is primarily intended for:

  • developers wishing to contribute to the project;
  • LuxCoreRender administrators in charge of publishing the various binaries;
  • package maintainers wishing to integrate all or part of LuxCoreRender into a distribution.

LuxCoreRender's build system has been significantly modified for version 2.10. This document therefore renders obsolete all previous documents related to the compilation of older versions (<=2.9).


Build targets

LuxCoreRender contains multiple targets, with dependency links:

Build types

LuxCore Dependencies

Outputs

The output of this target is a Conan cache populated with binaries


Principles

LuxCore dependencies are built by LuxCoreDeps.

The process is:

  • LuxCoreDeps populates a Conan cache by building each of the required dependencies from its sources.
  • This cache is published in LuxCoreDeps releases.
  • On LuxCore side, during the build, the cache is retrieved from the release and made available (restored) for LuxCore build.


Server build

LuxCoreDeps is intended to be run by Github CI/CD pipeline.

You will find all workflows in repository actions.:

  • LuxCore Dependency Builder: build dependencies, triggered on-demand
  • LuxCore Dependency Checker: test dependency build, triggered by push (call Builder)
  • LuxCore Dependency Releaser: publish release of dependencies

In a typical workflow: Testing: Releasing

Local build

Local build is