SAService Architect Open designer
SAService ArchitectDocumentation
Code generation workspace build graph

Language build roots — Generated Microservices

The root contains only the build systems required by the languages selected for its services and modules.

When to use

Use this reference when generating, reviewing or operating a Service Architect project.

Behavior

  • The user Makefile includes generated Make fragments and remains a stable customization point.
  • A generic make.generated.mk composes all active language target sets.
  • Language fragments map generic build/test/lint/gen targets to Go, C++, Rust or TypeScript commands.
  • Mixed workspaces may include more than one build root and dependency workspace.
  • Lockfiles and toolchain configuration make disposable generated builds reproducible.

Root build and dependency files

Language-specific root files emitted by ServiceGen.

FileRoleDescription
MakefileUser entrypoint

Includes generated targets; safe place for project-owned additions.

make.generated.mkGenerated

Cross-language command orchestration.

make.golang.generated.mkGenerated

Go build, schema, module, lint and debug targets.

go.work + go.work.sumManaged

Local multi-module Go workspace, also present for generated Go fallback services.

make.cpp.generated.mkGenerated

CMake, sanitizer, Release, integration and packaging targets.

CMakeLists.txt + CMakePresets.jsonManaged

C++ workspace and reproducible configure presets.

Dockerfile.cmake + cmake/ + docker/Managed

Pinned C++ build toolchain and support modules.

.clang-format + .clang-tidyManaged

Generated C++ formatting and static-analysis policy.

make.rust.generated.mkGenerated

Cargo workspace generation, build, test, lint and packaging.

Cargo.toml + Cargo.lockManaged

Rust workspace members and locked dependencies.

DockerfileManaged

Rust workspace/service runtime image.

make.typescript.generated.mkGenerated

pnpm build, checks, diagnostics, benchmark and packaging.

package.json + pnpm-workspace.yamlManaged

TypeScript root scripts and workspace members.

pnpm-lock.yamlManaged lock

Pinned npm dependency graph.

tsconfig.json + eslint.config.jsManaged

Workspace compiler and lint policy.

Dockerfile.typescriptManaged

TypeScript development and minimal runtime stages.

Mixed workspace selection

make.generated.mk
  include make.golang.generated.mk      # Go fallback/Go services
  include make.cpp.generated.mk         # C++ services
# or
  include make.rust.generated.mk
# or
  include make.typescript.generated.mk