diff --git a/.github/workflows/root.yml b/.github/workflows/root.yml new file mode 100644 index 0000000..f76a323 --- /dev/null +++ b/.github/workflows/root.yml @@ -0,0 +1,26 @@ +name: Execute ROOT macros +on: + push: + branches: 'main' + pull_request: + +jobs: + root-v634: + name: ROOT 6.34 + runs-on: ubuntu-latest + container: rootproject/root:6.34.00-ubuntu24.04 + steps: + - name: Check out repository + uses: actions/checkout@v4 + - name: Execute ROOT macros + run: make + - name: Upload produced RNTuple ROOT files + uses: actions/upload-artifact@v4 + with: + name: RNTuple-ROOT + path: "*.root" + - name: Upload produced validation JSON files + uses: actions/upload-artifact@v4 + with: + name: Validation-JSON + path: "*.json" diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c220bce --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +ROOT_EXE := $(shell which root.exe) +ifeq ($(ROOT_EXE),) +$(error Could not find root.exe) +endif + +.PHONY: all +all: + $(MAKE) write + $(MAKE) read + +# This assumes there is no whitespace in any of the paths... +WRITE_C := $(sort $(shell find . -name write.C)) +READ_C := $(sort $(shell find . -name read.C)) + +.PHONY: write +write: + @$(foreach c,$(WRITE_C),$(ROOT_EXE) -q -l $(c) &&) true + +.PHONY: read +read: + @$(foreach c,$(READ_C),$(ROOT_EXE) -q -l $(c) &&) true