Skip to content

Commit 4525c7e

Browse files
committed
Merge remote-tracking branch 'upstream/master'
2 parents 8e8b532 + 4bdfa10 commit 4525c7e

File tree

14 files changed

+457
-206
lines changed

14 files changed

+457
-206
lines changed

.circleci/config.yml

Lines changed: 0 additions & 88 deletions
This file was deleted.

.github/workflows/java.yml

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
name: liboqs-java CI
2+
3+
on:
4+
push:
5+
branches: ["**"]
6+
pull_request:
7+
branches: ["**"]
8+
repository_dispatch:
9+
types: ["**"]
10+
11+
jobs:
12+
workflowcheck:
13+
name: Check validity of GitHub workflows
14+
runs-on: ubuntu-latest
15+
container: openquantumsafe/ci-ubuntu-latest:latest
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4
19+
- name: Ensure GitHub actions are valid
20+
run: actionlint -shellcheck "" # run *without* shellcheck
21+
22+
linux:
23+
needs: workflowcheck
24+
runs-on: ubuntu-latest
25+
container: openquantumsafe/ci-ubuntu-latest:latest
26+
steps:
27+
- name: Checkout liboqs-java
28+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4
29+
- name: Checkout liboqs main
30+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4
31+
with:
32+
repository: open-quantum-safe/liboqs
33+
path: liboqs
34+
ref: main
35+
- name: Build liboqs
36+
run: mkdir build && cd build && cmake .. -G"Ninja" -DBUILD_SHARED_LIBS=ON -DOQS_BUILD_ONLY_LIB=ON && ninja install
37+
working-directory: liboqs
38+
- name: Resolve all maven project dependencies
39+
run: mvn dependency:go-offline
40+
- name: Build liboqs-java and run tests
41+
run: export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" && mvn package
42+
- name: Compile KEM, Signatures and Rand examples
43+
run: |
44+
javac -cp target/liboqs-java.jar examples/KEMExample.java &&
45+
javac -cp target/liboqs-java.jar examples/SigExample.java &&
46+
javac -cp target/liboqs-java.jar examples/RandExample.java
47+
48+
macos:
49+
needs: workflowcheck
50+
runs-on: macos-latest
51+
steps:
52+
- name: Install Python
53+
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # pin@v5
54+
with:
55+
python-version: '3.12'
56+
- name: Checkout liboqs-java
57+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4
58+
- name: Checkout liboqs main
59+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4
60+
with:
61+
repository: open-quantum-safe/liboqs
62+
path: liboqs
63+
ref: main
64+
- name: Install liboqs dependencies
65+
run: env HOMEBREW_NO_AUTO_UPDATE=1 brew install ninja && pip3 install --require-hashes --break-system-packages -r .github/workflows/requirements.txt
66+
working-directory: liboqs
67+
- name: Build liboqs
68+
run: mkdir build && cd build && cmake .. -G"Ninja" -DBUILD_SHARED_LIBS=ON -DOQS_BUILD_ONLY_LIB=ON && sudo ninja install
69+
working-directory: liboqs
70+
- name: Resolve all maven project dependencies
71+
run: mvn dependency:go-offline
72+
- name: Build liboqs-java and run tests
73+
run: export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/lib" && mvn -P macosx package
74+
- name: Compile KEM, Signatures and Rand examples
75+
run: |
76+
javac -cp target/liboqs-java.jar examples/KEMExample.java &&
77+
javac -cp target/liboqs-java.jar examples/SigExample.java &&
78+
javac -cp target/liboqs-java.jar examples/RandExample.java

0 commit comments

Comments
 (0)