Skip to content

Commit

Permalink
More extensive CI tests
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <falktx@falktx.com>
  • Loading branch information
falkTX committed Oct 6, 2024
1 parent 1662e56 commit 7cd4819
Show file tree
Hide file tree
Showing 5 changed files with 183 additions and 193 deletions.
122 changes: 122 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
name: build

on:
push:
branches:
- '*'
pull_request:
branches:
- '*'

jobs:
build:
strategy:
matrix:
os:
# wrong use of AU MIDIPacket
# - macos-12
# - macos-13
# - macos-14
# webgui failure
# - ubuntu-20.04
- ubuntu-22.04
- ubuntu-24.04
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up dependencies
if: ${{ runner.os == 'Linux' }}
env:
DEBIAN_FRONTEND: noninteractive
run: |
sudo apt-get update -qq
sudo apt-get install -yq libasound2-dev libcairo2-dev libdbus-1-dev libgl1-mesa-dev liblo-dev libpulse-dev libsdl2-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xvfb
- name: Set num jobs
if: ${{ runner.os == 'Linux' }}
run: echo "JOBS=$(nproc)" >> $GITHUB_ENV
- name: Set num jobs
if: ${{ runner.os != 'Linux' }}
run: echo "JOBS=$(sysctl -n hw.logicalcpu)" >> $GITHUB_ENV
- name: Without any warnings
env:
CFLAGS: -Werror
CXXFLAGS: -Werror
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: Run tests
if: ${{ runner.os == 'Linux' }}
run: |
xvfb-run make -C tests run
- name: As C++98 mode
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -std=gnu++98
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: As C++11 mode
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -std=gnu++11
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: As C++14 mode
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -std=gnu++14
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: As C++17 mode
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -std=gnu++17
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: As C++20 mode
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -std=gnu++20
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: No namespace
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -DDONT_SET_USING_DISTRHO_NAMESPACE -DDONT_SET_USING_DGL_NAMESPACE
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: Custom namespace
env:
CFLAGS: -Werror
CXXFLAGS: -Werror -DDISTRHO_NAMESPACE=WubbWubb -DDGL_NAMESPACE=DabDab
run: |
make clean >/dev/null
make -j ${{ env.JOBS }}
- name: With OpenGL 3.x
env:
CFLAGS: -Werror
CXXFLAGS: -Werror
run: |
make clean >/dev/null
make -j ${{ env.JOBS }} USE_OPENGL3=true
- name: Without Cairo
env:
CFLAGS: -Werror
CXXFLAGS: -Werror
run: |
make clean >/dev/null
make -j ${{ env.JOBS }} HAVE_CAIRO=false
- name: Without OpenGL
env:
CFLAGS: -Werror
CXXFLAGS: -Werror
run: |
make clean >/dev/null
make -j ${{ env.JOBS }} HAVE_OPENGL=false
78 changes: 0 additions & 78 deletions .github/workflows/makefile.yml

This file was deleted.

79 changes: 5 additions & 74 deletions distrho/extra/Base64.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

#include <vector>

// -----------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------------------------
// base64 stuff, based on http://www.adp-gmbh.ch/cpp/common/base64.html

/*
Expand All @@ -48,7 +48,7 @@
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
*/

// -----------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------------------------
// Helpers

#ifndef DOXYGEN
Expand Down Expand Up @@ -77,82 +77,13 @@ uint8_t findBase64CharIndex(const char c)
static constexpr inline
bool isBase64Char(const char c)
{
switch (c)
{
case 'A':
case 'B':
case 'C':
case 'D':
case 'E':
case 'F':
case 'G':
case 'H':
case 'I':
case 'J':
case 'K':
case 'L':
case 'M':
case 'N':
case 'O':
case 'P':
case 'Q':
case 'R':
case 'S':
case 'T':
case 'U':
case 'V':
case 'W':
case 'X':
case 'Y':
case 'Z':
case 'a':
case 'b':
case 'c':
case 'd':
case 'e':
case 'f':
case 'g':
case 'h':
case 'i':
case 'j':
case 'k':
case 'l':
case 'm':
case 'n':
case 'o':
case 'p':
case 'q':
case 'r':
case 's':
case 't':
case 'u':
case 'v':
case 'w':
case 'x':
case 'y':
case 'z':
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '+':
case '/':
return true;
default:
return false;
}
return (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') || c == '+' || c == '/';
}

} // namespace DistrhoBase64Helpers
#endif

// -----------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------------------------

static inline
std::vector<uint8_t> d_getChunkFromBase64String(const char* const base64string)
Expand Down Expand Up @@ -213,6 +144,6 @@ std::vector<uint8_t> d_getChunkFromBase64String(const char* const base64string)
return ret;
}

// -----------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------------------------

#endif // DISTRHO_BASE64_HPP_INCLUDED
Loading

0 comments on commit 7cd4819

Please sign in to comment.