Building LuxCoreRender: Difference between revisions
Jump to navigation
Jump to search
Create Compiling LuxCore new |
|||
Line 27: | Line 27: | ||
= Building LuxCore Dependencies = | = Building LuxCore Dependencies = | ||
== Principles == | |||
LuxCore dependencies are built by [https://github.com/LuxCoreRender/LuxCoreDeps LuxCoreDeps]. | LuxCore dependencies are built by [https://github.com/LuxCoreRender/LuxCoreDeps LuxCoreDeps]. | ||
The process is: | |||
* LuxCoreDeps populates a Conan cache by building each of the required dependencies from its sources. | * LuxCoreDeps populates a Conan cache by building each of the required dependencies from its sources. | ||
Line 35: | Line 36: | ||
* On LuxCore side, during the build, the cache is retrieved from the release and made available (restored) for LuxCore build. | * On LuxCore side, during the build, the cache is retrieved from the release and made available (restored) for LuxCore build. | ||
LuxCoreDeps is intended to be run by Github CI/CD pipeline. You will find all workflows in repository [https://github.com/LuxCoreRender/LuxCoreDeps/actions actions.]: | {{#mermaid:flowchart LR | ||
subgraph Deps ["`**LuxCoreDeps**`"] | |||
direction TB | |||
GetDeps("Get Dependency<br />Conan Recipes") | |||
--> BuildDeps(Build Dependencies<br /> in a Conan Cache) | |||
--> Save(Save Conan Cache) | |||
--> Publish("Publish Conan Cache<br />(Release)"); | |||
end | |||
subgraph Core ["`**LuxCore**`"] | |||
direction TB | |||
Download("Download Conan Cache<br />(from LuxCoreDeps Release)") | |||
--> Restore(Restore Conan Cache) | |||
--> BuildLux(Build LuxCore<br />against Conan Cache); | |||
end | |||
Deps --> Core | |||
}} | |||
== Central build == | |||
LuxCoreDeps is intended to be run by Github CI/CD pipeline. | |||
You will find all workflows in repository [https://github.com/LuxCoreRender/LuxCoreDeps/actions actions.]: | |||
* LuxCore Dependency Builder: build dependencies, triggered on-demand | * LuxCore Dependency Builder: build dependencies, triggered on-demand | ||
* LuxCore Dependency Checker: test dependency build, triggered by push (call Builder) | * 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 |
Revision as of 18:11, 18 April 2025
This page is under construction
Build targets
LuxCore is made of several targets:
<TODO: Show it as a graph when Diagrams extension is enabled>
Dependencies
Libraries:
- luxcore
- pyluxcore
LuxCore Python Wheels
Samples
- luxcoreui
- luxcoreconsole
Plugins - BlendLuxCore - <app plugins>
Pyluxcoretools
Building LuxCore Dependencies
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.
Central 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