mirror of
https://github.com/ethauvin/bld-antlr4.git
synced 2025-04-25 00:37:12 -07:00
GitHub setup
This commit is contained in:
parent
c88b734e1e
commit
7394a21115
4 changed files with 117 additions and 1 deletions
26
.github/workflows/bld.yml
vendored
Normal file
26
.github/workflows/bld.yml
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
name: badge-ci
|
||||
|
||||
on: [push, pull_request, workflow_dispatch]
|
||||
|
||||
jobs:
|
||||
build-project:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
java-version: [ 17, 19, 20 ]
|
||||
|
||||
steps:
|
||||
- name: Checkout source repository
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up JDK ${{ matrix.java-version }}
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: ${{ matrix.java-version }}
|
||||
|
||||
- name: Run tests
|
||||
run: ./bld download compile test
|
60
.github/workflows/pages.yml
vendored
Normal file
60
.github/workflows/pages.yml
vendored
Normal file
|
@ -0,0 +1,60 @@
|
|||
name: javadocs-pages
|
||||
|
||||
on:
|
||||
# Runs on pushes targeting the default branch
|
||||
push:
|
||||
branches: ["main"]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
||||
permissions:
|
||||
contents: read
|
||||
pages: write
|
||||
id-token: write
|
||||
|
||||
# Allow one concurrent deployment
|
||||
concurrency:
|
||||
group: "pages"
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
# Single deploy job since we're just deploying
|
||||
deploy:
|
||||
environment:
|
||||
name: github-pages
|
||||
url: ${{ steps.deployment.outputs.page_url }}
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout source repository
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up JDK 19
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 19
|
||||
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
|
||||
- name: Build Javadocs
|
||||
run: ./bld download clean javadoc
|
||||
|
||||
- name: Setup Pages
|
||||
uses: actions/configure-pages@v3
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-pages-artifact@v1
|
||||
with:
|
||||
# Upload generated Javadocs repository
|
||||
path: 'build/javadoc/'
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
id: deployment
|
||||
uses: actions/deploy-pages@v1
|
30
README.md
Normal file
30
README.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
# [Bld](https://github.com/rife2/rife2/wiki/What-Is-Bld) extension to generate ANTLR4 parsers
|
||||
|
||||
[](https://opensource.org/licenses/Apache-2.0)
|
||||
[](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
[](https://github.com/rife2/bld-antlr4/releases/latest)
|
||||
[](https://github.com/rife2/bld-antrl4/actions/workflows/bld.yml)
|
||||
|
||||
An extension for generating Java sources from ANTLR4 parsers.
|
||||
|
||||
```java
|
||||
private final Antlr4Operation antlr4Operation_ = new Antlr4Operation();
|
||||
@BuildCommand
|
||||
public void generateGrammar()
|
||||
throws Exception {
|
||||
antlr4Operation_.executeOnce(o -> o
|
||||
.sourceDirectories(List.of(new File(srcMainDirectory(), "antlr")))
|
||||
.outputDirectory(new File(buildDirectory(), "generated"))
|
||||
.visitor()
|
||||
.longMessages());
|
||||
}
|
||||
|
||||
// compileOperation_ is part of the main project
|
||||
public void compile()
|
||||
throws Exception {
|
||||
generateGrammar();
|
||||
compileOperation_.executeOnce(o -> o
|
||||
.fromProject(this)
|
||||
.mainSourceDirectories(List.of(antlr4Operation_.outputDirectory())));
|
||||
}
|
||||
```
|
|
@ -18,7 +18,7 @@ public class Antlr4Build extends Project {
|
|||
public Antlr4Build() {
|
||||
pkg = "rife.bld.extension";
|
||||
name = "Antlr4";
|
||||
version = version(0,9,3);
|
||||
version = version(0,9,4);
|
||||
javadocOptions.docLint(NO_MISSING);
|
||||
publishRepository = repository("rife2");
|
||||
publishInfo = new PublishInfo()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue