osbase/kmod: fix module deps naming

Linux for some reason converts '-' to '_' in module names, but not for
dependencies. There are also instances of comma-separated dependency
lists, normalize these as well.

Fail building of metadata in case dependencies do not resolve.
Previously we just wrote zero as dependency index which is obviously
invalid. With the current config and these fixes everything resolves and
this ensures that with any future kconfig changes we actually load
everything correctly.

Change-Id: Ifedb5c7a251ba6ddbe4cd66408b0259a72d6521d
Reviewed-on: https://review.monogon.dev/c/monogon/+/4454
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
2 files changed
tree: 5e3352a7eac99feb58ab179c0fbabb3f333158b9
  1. .github/
  2. .vscode/
  3. build/
  4. cloud/
  5. go/
  6. metropolis/
  7. osbase/
  8. third_party/
  9. tools/
  10. version/
  11. .bazelignore
  12. .bazelproject
  13. .bazelrc
  14. .bazelrc.ci
  15. .bazelversion
  16. .envrc
  17. .git-ignore-revs
  18. .gitignore
  19. .gitreview
  20. BUILD.bazel
  21. CODING_STANDARDS.md
  22. go.mod
  23. go.sum
  24. LICENSE
  25. MODULE.bazel
  26. MODULE.bazel.lock
  27. README.md
  28. SETUP.md
  29. shell.nix
README.md

Monogon Monorepo

This is the main repository containing the source code for the Monogon Platform.

This is pre-release software - take a look, and check back later! In the meantime, join us on Matrix (#monogon-os-community:matrix.org) or Discord.

Environment

Our build environment is self-contained and requires only minimal host dependencies:

  • A Linux machine or VM.
  • Bazelisk >= v1.15.0 (or a working Nix environment).
  • A reasonably recent kernel with user namespaces enabled.
  • Working KVM with access to /dev/kvm (if you want to run tests).

Our docs assume that Bazelisk is available as bazel on your PATH.

Refer to SETUP.md for detailed instructions.

Monogon OS

The source code lives in //metropolis (Metropolis is the codename of Monogon OS).

See the //metropolis/README.md for a developer quick start guide, or see the Monogon OS Handbook for user documentation.