sc3dev/README.md

1.4 KiB

sc3dev

the shimmering clarity c++ development environment

This is a set of tools to set up the standard development environment used across shimmering clarity projects.

Scripts

  • build-all-containers.sh automates building all supported containers.
  • build-container.sh automated building and pushing a container.
  • check-code.sh wraps several code scanning tools.
  • cmake-build-and-test.sh sets up cmake projects building a RelWithDebInfo config.
  • cmake-package.sh packages the project and uploads it.
  • cmake-valgrind.sh run valgrind over all test targets.
  • container-setup.sh is the root script for setting up containers.
  • install-cmake-debian.sh install the latest CMake on Debian-based systems.
  • install-development-tools.sh installs the tools needed to build and package projects.
  • is-current-tag.sh determines if the current commit is tagged.
  • validate-container.sh attempts to clone a few repos and build/test them, validating that the image contains the correct tools to build them.

OCI imags

  • Containerfile is an OCI-image spec for building development images.

  • Containerfile.{flavor} provide additional images for testing. Current flavors are:

    • alpine: (Alpine 3.18) a minimal image, suitable for CI
    • debian: (Debian 12.2) verify Debian installation
    • fedora: (Fedora 38) verify Fedora installation

Programs

  • sc3dev-packager: interact with Gitea package repositories.