GitXplorerGitXplorer
t

rules_gnu

public
0 stars
0 forks
0 issues

Commits

List of commits on branch main.
Verified
d3a35f385ee685b8a533c568b0a063a3b3612196

chore: rename

tthesayyn committed a year ago
Verified
f40308e79938f7017fde41598132f584cef139cf

Initial commit

tthesayyn committed a year ago

README

The README file for this repository.

Template for Bazel rules

Copy this template to create a Bazel ruleset.

Features:

  • follows the official style guide at https://docs.bazel.build/versions/main/skylark/deploying.html
  • allows for both WORKSPACE.bazel and bzlmod (MODULE.bazel) usage
  • includes Bazel formatting as a pre-commit hook (using buildifier)
  • includes stardoc API documentation generator
  • includes typical toolchain setup
  • CI configured with GitHub Actions
  • release using GitHub Actions just by pushing a tag
  • the release artifact doesn't need to be built by Bazel, but can still exclude files and stamp the version

See https://docs.bazel.build/versions/main/skylark/deploying.html#readme

Ready to get started? Copy this repo, then

  1. search for "rules_gnu" and replace with the name you'll use for your workspace
  2. search for "thesayyn" and replace with GitHub org
  3. search for "gnu" and replace with the language/tool your rules are for
  4. rename directory "gnu" similarly
  5. run pre-commit install to get lints (see CONTRIBUTING.md)
  6. if you don't need to fetch platform-dependent tools, then remove anything toolchain-related.
  7. update the actions/cache@v2 bazel cache key in .github/workflows/ci.yaml and .github/workflows/release.yml to be a hash of your source files.
  8. (optional) install the Renovate app to get auto-PRs to keep the dependencies up-to-date.
  9. delete this section of the README (everything up to the SNIP).

---- SNIP ----

Bazel rules for GNU Software

Installation

From the release you wish to use: https://github.com/thesayyn/rules_gnu/releases copy the WORKSPACE snippet into your WORKSPACE file.

To use a commit rather than a release, you can point at any SHA of the repo.

For example to use commit abc123:

  1. Replace url = "https://github.com/thesayyn/rules_gnu/releases/download/v0.1.0/rules_gnu-v0.1.0.tar.gz" with a GitHub-provided source archive like url = "https://github.com/thesayyn/rules_gnu/archive/abc123.tar.gz"
  2. Replace strip_prefix = "rules_gnu-0.1.0" with strip_prefix = "rules_gnu-abc123"
  3. Update the sha256. The easiest way to do this is to comment out the line, then Bazel will print a message with the correct value. Note that GitHub source archives don't have a strong guarantee on the sha256 stability, see https://github.blog/2023-02-21-update-on-the-future-stability-of-source-code-archives-and-hashes/