Skip to content

Update build.yml

Update build.yml #29

Workflow file for this run

name: "CodeQL"
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
schedule:
- cron: '20 13 * * 1'
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
permissions:
security-events: write
packages: read
actions: read
contents: read
strategy:
fail-fast: false
matrix:
include:
- language: c-cpp
build-mode: manual
- language: java-kotlin
build-mode: none
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: true # Fetch submodules
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
- if: matrix.language == 'c-cpp'
name: Install build dependencies
run: |
sudo apt update -qq
sudo apt install -y cmake build-essential ninja-build libssl-dev
- if: matrix.build-mode == 'manual' && matrix.language == 'c-cpp'
name: Build project (C/C++)
shell: bash
run: |
mkdir build
cd build
cmake .. -G"Ninja" -DBUILD_SHARED_LIBS=ON -DOQS_BUILD_ONLY_LIB=ON
sudo ninja install
working-directory: liboqs
- if: matrix.build-mode == 'manual' && matrix.language == 'java-kotlin'
name: Build project (Java/Kotlin)
shell: bash
run: |
# Replace these commands with the appropriate build steps for your Java/Kotlin project
echo 'Building Java/Kotlin project...'
# For example:
# ./gradlew build
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"