From 75c0f9bd0a793edd5ef7309384c0fc259e9c42f2 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Thu, 19 Nov 2020 22:01:40 +0100 Subject: [PATCH] github-ci: windows in builds --- .github/workflows/builds.yml | 49 +++++++++++++++++++++++++++++++++ .github/workflows/windows.yml | 52 ----------------------------------- 2 files changed, 49 insertions(+), 52 deletions(-) delete mode 100644 .github/workflows/windows.yml diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index 4e1dbba6ec5f..dab8cfa69d8d 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -1144,3 +1144,52 @@ jobs: - run: tar xf prep/suricata-verify.tar.gz - name: Running suricata-verify run: ./suricata-verify/run.py + + windows-msys2-mingw64: + name: Windows MSYS2 MINGW64 + runs-on: windows-latest + needs: prep + defaults: + run: + shell: msys2 {0} + steps: + - uses: actions/checkout@v2 + - uses: msys2/setup-msys2@v2 + with: + msystem: MINGW64 + update: true + install: git mingw-w64-x86_64-toolchain automake1.16 automake-wrapper autoconf libtool libyaml-devel pcre-devel jansson-devel make mingw-w64-x86_64-libyaml mingw-w64-x86_64-pcre mingw-w64-x86_64-rust mingw-w64-x86_64-jansson mingw-w64-x86_64-nss mingw-w64-x86_64-nspr unzip p7zip python-setuptools mingw-w64-x86_64-python-yaml mingw-w64-x86_64-jq + # hack: install our own cbindgen system wide as we can't get the + # preinstalled one to be picked up by configure + - name: cbindgen + run: cargo install --root /usr --force --debug --version 0.14.1 cbindgen + - uses: actions/checkout@v2 + - uses: actions/download-artifact@v2 + with: + name: prep + path: prep + - run: tar xf prep/libhtp.tar.gz + - run: tar xf prep/suricata-update.tar.gz + - name: Npcap DLL + run: | + curl -s -O https://nmap.org/npcap/dist/npcap-1.00.exe + 7z -y x -o/npcap-bin npcap-1.00.exe + # hack: place dlls in cwd + cp /npcap-bin/*.dll . + - name: Npcap SDK + run: | + curl -s -O https://nmap.org/npcap/dist/npcap-sdk-1.06.zip + unzip npcap-sdk-1.06.zip -d /npcap + cp /npcap/Lib/x64/* /usr/lib/ + - run: tar xf prep/suricata-verify.tar.gz + - name: Build + run: | + ./autogen.sh + CFLAGS="-ggdb -Werror" ./configure --enable-unittests --enable-gccprotect --disable-gccmarch-native --disable-shared --with-libpcap-includes=/npcap/Include --with-libpcap-libraries=/npcap/Lib/x64 + make -j3 + - name: Run + run: | + ./src/suricata --build-info + ./src/suricata -u -l /tmp/ + # need cwd in path due to npcap dlls (see above) + PATH="$PATH:$(pwd)" python3 ./suricata-verify/run.py diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml deleted file mode 100644 index 110d1dc5d272..000000000000 --- a/.github/workflows/windows.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: Windows -on: [push, pull_request] - -jobs: - build: - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - uses: actions/checkout@v2 - - uses: msys2/setup-msys2@v2 - with: - msystem: MINGW64 - update: true - install: git mingw-w64-x86_64-toolchain automake1.16 automake-wrapper autoconf libtool libyaml-devel pcre-devel jansson-devel make mingw-w64-x86_64-libyaml mingw-w64-x86_64-pcre mingw-w64-x86_64-rust mingw-w64-x86_64-jansson mingw-w64-x86_64-nss mingw-w64-x86_64-nspr unzip p7zip python-setuptools mingw-w64-x86_64-python-yaml mingw-w64-x86_64-jq - # hack: install our own cbindgen system wide as we can't get the - # preinstalled one to be picked up by configure - - name: cbindgen - run: cargo install --root /usr --force --debug --version 0.14.1 cbindgen - - name: Npcap DLL - run: | - curl -s -O https://nmap.org/npcap/dist/npcap-1.00.exe - 7z -y x -o/npcap-bin npcap-1.00.exe - # hack: place dlls in cwd - cp /npcap-bin/*.dll . - - name: Npcap SDK - run: | - curl -s -O https://nmap.org/npcap/dist/npcap-sdk-1.06.zip - unzip npcap-sdk-1.06.zip -d /npcap - cp /npcap/Lib/x64/* /usr/lib/ - - name: libhtp - run: git clone https://github.com/OISF/libhtp -b 0.5.x - - name: Suricata-Update - run: | - mv suricata-update suricata-update.old - git clone https://github.com/OISF/suricata-update - # make sure to place the makefiles back - cp suricata-update.old/* suricata-update/ - - name: Suricata-Verify - run: git clone https://github.com/OISF/suricata-verify - - name: Build - run: | - ./autogen.sh - CFLAGS="-ggdb -Werror" ./configure --enable-unittests --enable-gccprotect --disable-gccmarch-native --disable-shared --with-libpcap-includes=/npcap/Include --with-libpcap-libraries=/npcap/Lib/x64 - make -j3 - - name: Run - run: | - ./src/suricata --build-info - ./src/suricata -u -l /tmp/ - # need cwd in path due to npcap dlls (see above) - PATH="$PATH:$(pwd)" python3 ./suricata-verify/run.py