Skip to content

Various CI jobs for building Magnum and its dependencies.

Notifications You must be signed in to change notification settings

mosra/magnum-ci

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains CI jobs for building Magnum and its dependencies.

Join the chat at https://gitter.im/mosra/magnum

Magnum Tools

magnum-imageconverter, magnum-sceneconverter, magnum-shaderconverter, magnum-gl-info, magnum-vk-info, magnum-player, importer and image/scene/shader converter plugins; Python 3.8, 3.9, and 3.10 bindings.

Dependencies

As the intent is to link these to self-contained plugin modules in most cases, all libraries are built as static. Stripped Release binaries unless said otherwise.

ANGLE

https://github.com/google/angle — OpenGL ES implemented using D3D on Windows and Metal on Mac.

Assimp

https://www.assimp.org — Asset import library.

FreeType

https://www.freetype.org — Font rendering library.

Glslang

https://github.com/KhronosGroup/glslang — GLSL validator and GLSL-to-SPIR-V compiler.

libjpeg-turbo

https://github.com/libjpeg-turbo/libjpeg-turbo — libjpeg with SIMD acceleration.

libpng

https://github.com/glennrp/libpng — Portable Network Graphics.

libwebp

https://github.com/webmproject/libwebp — a library to encode and decode images in WebP format.

MeshOptimizer

https://github.com/zeux/meshoptimizer — mesh optimization library that makes meshes smaller and faster to render.

OpenEXR

https://github.com/AcademySoftwareFoundation/openexr — reference implementation of the OpenEXR format.

  • Used by: OpenExrImporter, OpenExrImageConverter
  • Depends on: zlib
  • Build file: openexr.yml
  • All builds: GitHub Actions
    • Windows MSVC2019+
    • Windows MSVC2019+ Debug
    • Windows MSVC2017
    • Windows MSVC2017 Debug
    • Windows MinGW
    • Ubuntu 18.04
    • Ubuntu 18.04, version 2.5 with a system zlib dependency
    • Ubuntu 18.04, version 2.5 with a system zlib dependency, GCC 4.8

SDL

https://libsdl.org — Cross-platform windowing abstraction.

SPIRV-Tools

https://github.com/KhronosGroup/SPIRV-Tools — Tools for SPIR-V (dis)assembly, validation and optimization.

SwiftShader

https://github.com/google/swiftshader — Software implementation of OpenGL ES and Vulkan.

  • Build file: build.yml
  • All builds: GitHub Actions
  • Latest known-good build: r5464.a6940c8e6e, upstream commit (2020-09-09)
    • using LLVM 7 (not 10 yet, although it's available)
    • Windows MSVC2019 (MSVC2017 build not done because CMake 3.13 required by SwiftShader isn't available on the image)
    • macOS 10.15
    • Ubuntu 16.04 (only OpenGL ES, Vulkan doesn't build on GCC 5)
    • Ubuntu 18.04

Vulkan Loader

https://github.com/KhronosGroup/Vulkan-Loader — Vulkan entry-point, providing device enumeration and layer loading. Shipped with Vulkan SDK on Windows and Mesa on Linux, however on macOS people usually use MoltenVK directly, which is why we build our own (and we don't want to install the full SDK in CI builds as it's too much).

zlib

https://github.com/madler/zlib — data compression library.