Skip to content

Build all contribs using our own CMake files (2) #35630

@alexey-milovidov

Description

@alexey-milovidov

Continuation of #9226.

We have strict guidelines for our code base:

  • don't use source codes or libraries from OS or repositories;
  • build everything from source code;
  • use fixed versions of the libraries, no automatic updates;
  • all source code of third-party dependencies is checked out;
  • all the code can be built with sanitizers and hardening;
  • no known memory safety issues exist;
  • reproducible (byte-identical), hermetic builds;
  • all the code can be cross-compiled;
  • minimize the supply chain;
  • minimize runtime dependencies on the files on the target machine;
  • single-binary distribution;
  • static linking;
  • no foreign code or plugins can run in the program address space;

CMake is not a modular system, that's why using third-party CMake files is a bad idea.

The list of remaining libraries where we still reuse some CMake code:

  • abseil-cpp
  • flatbuffers
  • qpl
  • ssh
  • cassandra
  • llvm
  • grpc
  • c-ares

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions