|
33 | 33 | path: liboqs |
34 | 34 | ref: main |
35 | 35 | - name: Build liboqs |
36 | | - run: mkdir build && cd build && cmake .. -G"Ninja" -DBUILD_SHARED_LIBS=ON -DOQS_BUILD_ONLY_LIB=ON && ninja install |
| 36 | + run: mkdir build && cd build && cmake .. -G"Ninja" -DOQS_BUILD_ONLY_LIB=ON && ninja install |
37 | 37 | working-directory: liboqs |
38 | 38 | - name: Resolve all maven project dependencies |
39 | 39 | run: mvn dependency:go-offline |
|
65 | 65 | run: env HOMEBREW_NO_AUTO_UPDATE=1 brew install ninja && pip3 install --require-hashes --break-system-packages -r .github/workflows/requirements.txt |
66 | 66 | working-directory: liboqs |
67 | 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 |
| 68 | + run: mkdir build && cd build && cmake .. -G"Ninja" -DOQS_BUILD_ONLY_LIB=ON && sudo ninja install |
69 | 69 | working-directory: liboqs |
70 | 70 | - name: Resolve all maven project dependencies |
71 | 71 | run: mvn dependency:go-offline |
|
76 | 76 | javac -cp target/liboqs-java.jar examples/KEMExample.java && |
77 | 77 | javac -cp target/liboqs-java.jar examples/SigExample.java && |
78 | 78 | javac -cp target/liboqs-java.jar examples/RandExample.java |
| 79 | +
|
| 80 | + windows: |
| 81 | + needs: workflowcheck |
| 82 | + runs-on: windows-latest |
| 83 | + steps: |
| 84 | + - name: Install MSYS2 |
| 85 | + uses: msys2/setup-msys2@v2 |
| 86 | + with: |
| 87 | + update: true |
| 88 | + install: >- |
| 89 | + mingw-w64-x86_64-gcc |
| 90 | + mingw-w64-x86_64-ninja |
| 91 | + mingw-w64-x86_64-cmake |
| 92 | + make |
| 93 | +
|
| 94 | + - name: Set up JDK |
| 95 | + uses: actions/setup-java@v3 |
| 96 | + with: |
| 97 | + distribution: 'temurin' |
| 98 | + java-version: '17' |
| 99 | + cache: 'maven' |
| 100 | + |
| 101 | + - name: Checkout liboqs-java |
| 102 | + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4 |
| 103 | + |
| 104 | + - name: Checkout liboqs main |
| 105 | + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # pin@v4 |
| 106 | + with: |
| 107 | + repository: open-quantum-safe/liboqs |
| 108 | + path: liboqs |
| 109 | + ref: main |
| 110 | + |
| 111 | + - name: Build liboqs (static library) |
| 112 | + shell: msys2 {0} |
| 113 | + run: | |
| 114 | + cd liboqs |
| 115 | + mkdir build |
| 116 | + cd build |
| 117 | + cmake .. -G "Ninja" -DOQS_BUILD_ONLY_LIB=ON -DBUILD_SHARED_LIBS=OFF |
| 118 | + ninja |
| 119 | +
|
| 120 | + - name: Resolve Maven dependencies |
| 121 | + run: mvn dependency:go-offline |
| 122 | + |
| 123 | + - name: Build liboqs-java and run tests |
| 124 | + run: | |
| 125 | + $env:Path += ";$env:GITHUB_WORKSPACE\liboqs\build\lib" |
| 126 | + mvn -P windows -Dliboqs.include.dir="$env:GITHUB_WORKSPACE\liboqs\build\include" -Dliboqs.lib.dir="$env:GITHUB_WORKSPACE\liboqs\build\lib" package |
| 127 | +
|
| 128 | + - name: Compile KEM, Signatures and Rand examples |
| 129 | + run: | |
| 130 | + javac -cp target\liboqs-java.jar examples\KEMExample.java |
| 131 | + javac -cp target\liboqs-java.jar examples\SigExample.java |
| 132 | + javac -cp target\liboqs-java.jar examples\RandExample.java |
0 commit comments