Skip to content

Commit 79464b8

Browse files
committed
More extensive CI tests
Signed-off-by: falkTX <[email protected]>
1 parent 1662e56 commit 79464b8

File tree

3 files changed

+103
-117
lines changed

3 files changed

+103
-117
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: makefile
1+
name: build
22

33
on:
44
push:
@@ -7,17 +7,27 @@ on:
77
pull_request:
88
branches:
99
- '*'
10-
env:
11-
DEBIAN_FRONTEND: noninteractive
1210

1311
jobs:
14-
linux-x86_64:
15-
runs-on: ubuntu-22.04
12+
build:
13+
strategy:
14+
matrix:
15+
os:
16+
- macos-12
17+
- macos-13
18+
- macos-14
19+
- ubuntu-20.04
20+
- ubuntu-22.04
21+
- ubuntu-24.04
22+
runs-on: ${{ matrix.os }}
1623
steps:
1724
- uses: actions/checkout@v4
1825
with:
1926
submodules: recursive
2027
- name: Set up dependencies
28+
if: ${{ runner.os == 'Linux' }}
29+
env:
30+
DEBIAN_FRONTEND: noninteractive
2131
run: |
2232
sudo apt-get update -qq
2333
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
@@ -27,7 +37,7 @@ jobs:
2737
CXXFLAGS: -Werror
2838
run: |
2939
make clean >/dev/null
30-
make -j $(nproc)
40+
make
3141
- name: Run tests
3242
env:
3343
CFLAGS: -Werror
@@ -40,39 +50,67 @@ jobs:
4050
CXXFLAGS: -Werror -std=gnu++98
4151
run: |
4252
make clean >/dev/null
43-
make -j $(nproc)
53+
make
54+
- name: As C++11 mode
55+
env:
56+
CFLAGS: -Werror
57+
CXXFLAGS: -Werror -std=gnu++11
58+
run: |
59+
make clean >/dev/null
60+
make
61+
- name: As C++14 mode
62+
env:
63+
CFLAGS: -Werror
64+
CXXFLAGS: -Werror -std=gnu++14
65+
run: |
66+
make clean >/dev/null
67+
make
68+
- name: As C++17 mode
69+
env:
70+
CFLAGS: -Werror
71+
CXXFLAGS: -Werror -std=gnu++17
72+
run: |
73+
make clean >/dev/null
74+
make
75+
- name: As C++20 mode
76+
env:
77+
CFLAGS: -Werror
78+
CXXFLAGS: -Werror -std=gnu++20
79+
run: |
80+
make clean >/dev/null
81+
make
4482
- name: No namespace
4583
env:
4684
CFLAGS: -Werror
4785
CXXFLAGS: -Werror -DDONT_SET_USING_DISTRHO_NAMESPACE -DDONT_SET_USING_DGL_NAMESPACE
4886
run: |
4987
make clean >/dev/null
50-
make -j $(nproc)
88+
make
5189
- name: Custom namespace
5290
env:
5391
CFLAGS: -Werror
5492
CXXFLAGS: -Werror -DDISTRHO_NAMESPACE=WubbWubb -DDGL_NAMESPACE=DabDab
5593
run: |
5694
make clean >/dev/null
57-
make -j $(nproc)
95+
make
5896
- name: With OpenGL 3.x
5997
env:
6098
CFLAGS: -Werror
6199
CXXFLAGS: -Werror
62100
run: |
63101
make clean >/dev/null
64-
make -j $(nproc) USE_OPENGL3=true
102+
make USE_OPENGL3=true
65103
- name: Without Cairo
66104
env:
67105
CFLAGS: -Werror
68106
CXXFLAGS: -Werror
69107
run: |
70108
make clean >/dev/null
71-
make -j $(nproc) HAVE_CAIRO=
109+
make HAVE_CAIRO=false
72110
- name: Without OpenGL
73111
env:
74112
CFLAGS: -Werror
75113
CXXFLAGS: -Werror
76114
run: |
77115
make clean >/dev/null
78-
make -j $(nproc) HAVE_OPENGL=
116+
make HAVE_OPENGL=false

distrho/extra/Base64.hpp

+5-74
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
#include <vector>
2323

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

2727
/*
@@ -48,7 +48,7 @@
4848
René Nyffenegger [email protected]
4949
*/
5050

51-
// -----------------------------------------------------------------------
51+
// --------------------------------------------------------------------------------------------------------------------
5252
// Helpers
5353

5454
#ifndef DOXYGEN
@@ -77,82 +77,13 @@ uint8_t findBase64CharIndex(const char c)
7777
static constexpr inline
7878
bool isBase64Char(const char c)
7979
{
80-
switch (c)
81-
{
82-
case 'A':
83-
case 'B':
84-
case 'C':
85-
case 'D':
86-
case 'E':
87-
case 'F':
88-
case 'G':
89-
case 'H':
90-
case 'I':
91-
case 'J':
92-
case 'K':
93-
case 'L':
94-
case 'M':
95-
case 'N':
96-
case 'O':
97-
case 'P':
98-
case 'Q':
99-
case 'R':
100-
case 'S':
101-
case 'T':
102-
case 'U':
103-
case 'V':
104-
case 'W':
105-
case 'X':
106-
case 'Y':
107-
case 'Z':
108-
case 'a':
109-
case 'b':
110-
case 'c':
111-
case 'd':
112-
case 'e':
113-
case 'f':
114-
case 'g':
115-
case 'h':
116-
case 'i':
117-
case 'j':
118-
case 'k':
119-
case 'l':
120-
case 'm':
121-
case 'n':
122-
case 'o':
123-
case 'p':
124-
case 'q':
125-
case 'r':
126-
case 's':
127-
case 't':
128-
case 'u':
129-
case 'v':
130-
case 'w':
131-
case 'x':
132-
case 'y':
133-
case 'z':
134-
case '0':
135-
case '1':
136-
case '2':
137-
case '3':
138-
case '4':
139-
case '5':
140-
case '6':
141-
case '7':
142-
case '8':
143-
case '9':
144-
case '+':
145-
case '/':
146-
return true;
147-
default:
148-
return false;
149-
}
80+
return (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') || c == '+' || c == '/';
15081
}
15182

15283
} // namespace DistrhoBase64Helpers
15384
#endif
15485

155-
// -----------------------------------------------------------------------
86+
// --------------------------------------------------------------------------------------------------------------------
15687

15788
static inline
15889
std::vector<uint8_t> d_getChunkFromBase64String(const char* const base64string)
@@ -213,6 +144,6 @@ std::vector<uint8_t> d_getChunkFromBase64String(const char* const base64string)
213144
return ret;
214145
}
215146

216-
// -----------------------------------------------------------------------
147+
// --------------------------------------------------------------------------------------------------------------------
217148

218149
#endif // DISTRHO_BASE64_HPP_INCLUDED

0 commit comments

Comments
 (0)