Skip to content

Commit

Permalink
Add GitHub Workflows to test changes
Browse files Browse the repository at this point in the history
  • Loading branch information
micahsnyder committed Aug 31, 2024
1 parent 54e1af9 commit 05f4d0a
Show file tree
Hide file tree
Showing 7 changed files with 373 additions and 768 deletions.
177 changes: 177 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
name: ClamAV Build Test

on:
pull_request:
branches:
- master

jobs:
build-windows-x64:
runs-on: windows-2019

steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash

- uses: actions/checkout@v4

- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm

- name: Install Python Things
run: python3 -m pip install pytest mussels

- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc

- uses: lukka/[email protected]

- name: Build for x64
run: msl build -r clamav -t x64

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-windows-x86:
runs-on: windows-2019

steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash

- uses: actions/checkout@v4

- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm

- name: Install Python Things
run: python3 -m pip install pytest mussels

- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc

- uses: lukka/[email protected]

- name: Build for x86
run: msl build -r clamav -t x86

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-windows-arm64:
runs-on: windows-2019

steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash

- uses: actions/checkout@v4

- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm

- name: Install Python Things
run: python3 -m pip install pytest mussels

- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc

- uses: lukka/[email protected]

- name: Build for arm64
run: msl build -r clamav -t arm64

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-macos-dynamic:
runs-on: macos-latest

steps:
- uses: actions/checkout@v4

- name: Install Brew Things
run: brew install bison flex

- name: Install Python Things
run: python3 -m pip install mussels pytest setuptools --break-system-packages

- uses: lukka/[email protected]

- name: Build for using dynamic libraries for host platform
shell: bash
run: msl build -r clamav -t host

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-macos-static:
runs-on: macos-latest

steps:
- uses: actions/checkout@v4

- name: Install Brew Things
run: brew install bison flex

- name: Install Python Things
run: python3 -m pip install mussels pytest setuptools --break-system-packages

- uses: lukka/[email protected]

- name: Build for using static libraries for host platform
shell: bash
run: msl build -r clamav -t host-static

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-ubuntu-dynamic:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Update package listings
run: sudo apt-get update

- name: Install Apt-get Things
run: sudo apt-get install -y bison flex valgrind pipx

- name: Install Python Things
run: pipx install pytest mussels

- uses: lukka/[email protected]

- name: Build for using dynamic libraries for host platform
shell: bash
run: msl build -r clamav -t host

# TODO: add test step that clones clamav, sets environment variables, and runs tests

build-ubuntu-static:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Update package listings
run: sudo apt-get update

- name: Install Apt-get Things
run: sudo apt-get install -y bison flex valgrind pipx

- name: Install Python Things
run: pipx install pytest mussels

- uses: lukka/[email protected]

- name: Build for using static libraries for host platform
shell: bash
run: msl build -r clamav -t host-static

# TODO: add test step that clones clamav, sets environment variables, and runs tests
109 changes: 0 additions & 109 deletions collections/clamav_deps-1.1.yaml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# limitations under the License.

name: clamav_deps
version: "1.2"
version: "1.5"
mussels_version: "0.2"
type: collection
platforms:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# limitations under the License.

name: libclamav_deps
version: "1.1"
version: "1.5"
mussels_version: "0.2"
type: collection
platforms:
Expand Down
2 changes: 1 addition & 1 deletion recipes/clamav-1.0.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,7 @@ platforms:
-D CURSES_INCLUDE_DIR="{install}\include" \
-D CURSES_LIBRARY="{install}\lib\pdcurses.lib" \
-D PThreadW32_INCLUDE_DIR="{install}\include" \
-D PThreadW32_LIBRARY="{install}\lib\pthreadVC2.lib" \
-D PThreadW32_LIBRARY="{install}\lib\pthreadVC3.lib" \
-D ZLIB_INCLUDE_DIR="{install}\include" \
-D ZLIB_LIBRARY="{install}\lib\zlibstatic.lib" \
-D LIBCHECK_INCLUDE_DIR="{install}\include" \
Expand Down
Loading

0 comments on commit 05f4d0a

Please sign in to comment.