Skip to content

Commit 9876026

Browse files
committed
Release 1.0.0
* Initial release. * Updated build scripts. * Updated module versions in dependencies.
2 parents 1d52c78 + 1a6bf46 commit 9876026

31 files changed

Lines changed: 4459 additions & 1 deletion

.cproject

Lines changed: 223 additions & 0 deletions
Large diffs are not rendered by default.

.github/FUNDING.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
liberapay: sadko4u
2+
patreon: sadko4u
3+
custom:
4+
- https://www.blockchain.com/btc/address/15X3AfDRF3EshSLBoK8UfHAsFr2TQsH8pk
5+
- https://etherscan.io/address/0x079b24da78d78302cd3cfbb80c728cd554606cc6
6+
- https://www.bountysource.com/teams/lsp-plugins
7+
- https://paypal.me/sadko4u

.github/workflows/build.yml

Lines changed: 161 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,161 @@
1+
---
2+
3+
name: Build on various Operating Systems
4+
5+
on:
6+
push:
7+
branches: [devel, master]
8+
pull_request:
9+
branches: [devel, master]
10+
11+
env:
12+
ARTIFACT: lsp-audio-jack-lib
13+
VALGRIND_ARGS: --error-exitcode=255 --leak-check=full --track-origins=yes --keep-debuginfo=yes --suppressions=.github/workflows/valgrind.supp
14+
15+
jobs:
16+
arch_linux:
17+
runs-on: ubuntu-latest
18+
container:
19+
image: archlinux:latest
20+
steps:
21+
- name: Add debug repositories
22+
run: |
23+
printf "[core-debug]\nInclude = /etc/pacman.d/mirrorlist\n[extra-debug]\nInclude = /etc/pacman.d/mirrorlist\n[multilib-debug]\nInclude = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf
24+
printf 'Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch\n%s\n' "$(cat /etc/pacman.d/mirrorlist)" > /etc/pacman.d/mirrorlist
25+
- name: Install dependencies
26+
run: pacman --noconfirm -Syu base-devel glibc-debug git jack valgrind
27+
- uses: actions/checkout@v3
28+
- name: Configure project
29+
run: make config FEATURES="test strict"
30+
- name: Fetch project dependencies
31+
run: make fetch
32+
- name: Build project
33+
run: make VERBOSE=1
34+
- name: Run unit tests
35+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
36+
- name: Run unit tests with memcheck
37+
run: |
38+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
39+
echo "***** MEMCHECK $test *****"; \
40+
valgrind ${{env.VALGRIND_ARGS}} .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
41+
done
42+
arch_linux_asan:
43+
runs-on: ubuntu-latest
44+
container:
45+
image: archlinux:latest
46+
steps:
47+
- name: Add debug repositories
48+
run: |
49+
printf "[core-debug]\nInclude = /etc/pacman.d/mirrorlist\n[extra-debug]\nInclude = /etc/pacman.d/mirrorlist\n[multilib-debug]\nInclude = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf
50+
printf 'Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch\n%s\n' "$(cat /etc/pacman.d/mirrorlist)" > /etc/pacman.d/mirrorlist
51+
- name: Install dependencies
52+
run: pacman --noconfirm -Syu base-devel glibc-debug jack git
53+
- uses: actions/checkout@v3
54+
- name: Configure project
55+
run: make config FEATURES="test debug strict asan"
56+
- name: Fetch project dependencies
57+
run: make fetch
58+
- name: Build project
59+
run: make VERBOSE=1
60+
- name: Run unit tests
61+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
62+
- name: Run unit tests with memcheck
63+
run: |
64+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
65+
echo "***** MEMCHECK $test *****"; \
66+
.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
67+
done
68+
arch_linux_debug:
69+
runs-on: ubuntu-latest
70+
container:
71+
image: archlinux:latest
72+
steps:
73+
- name: Add debug repositories
74+
run: |
75+
printf "[core-debug]\nInclude = /etc/pacman.d/mirrorlist\n[extra-debug]\nInclude = /etc/pacman.d/mirrorlist\n[multilib-debug]\nInclude = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf
76+
printf 'Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch\n%s\n' "$(cat /etc/pacman.d/mirrorlist)" > /etc/pacman.d/mirrorlist
77+
- name: Install dependencies
78+
run: pacman --noconfirm -Syu base-devel glibc-debug git jack valgrind
79+
- uses: actions/checkout@v3
80+
- name: Configure project
81+
run: make config FEATURES="test debug strict"
82+
- name: Fetch project dependencies
83+
run: make fetch
84+
- name: Build project
85+
run: make VERBOSE=1
86+
- name: Run unit tests
87+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
88+
- name: Run unit tests with memcheck
89+
run: |
90+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
91+
echo "***** MEMCHECK $test *****"; \
92+
valgrind ${{env.VALGRIND_ARGS}} .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
93+
done
94+
opensuse_leap:
95+
runs-on: ubuntu-latest
96+
container:
97+
image: opensuse/leap:latest
98+
steps:
99+
- name: Install dependencies
100+
run: zypper --non-interactive --no-gpg-checks in tar gzip git libjack-devel make valgrind gcc gcc-c++ glibc-locale
101+
- uses: actions/checkout@v3
102+
- name: Configure project
103+
run: make config FEATURES="test strict"
104+
- name: Fetch project dependencies
105+
run: make fetch
106+
- name: Build project
107+
run: make VERBOSE=1
108+
- name: Run unit tests
109+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
110+
- name: Run unit tests with memcheck
111+
run: |
112+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
113+
echo "***** MEMCHECK $test *****"; \
114+
valgrind ${{env.VALGRIND_ARGS}} .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
115+
done
116+
opensuse_tumbleweed_clang:
117+
runs-on: ubuntu-latest
118+
container:
119+
image: opensuse/tumbleweed:latest
120+
steps:
121+
- name: Install dependencies
122+
run: zypper --non-interactive --no-gpg-checks in tar gzip git libjack-devel make valgrind gcc gcc-c++ glibc-locale glibc-gconv-modules-extra libstdc++-devel clang
123+
- uses: actions/checkout@v3
124+
- name: Configure project
125+
run: make config FEATURES="test strict" CC=clang CXX=clang++
126+
- name: Fetch project dependencies
127+
run: make fetch
128+
- name: Build project
129+
run: make VERBOSE=1
130+
- name: Run unit tests
131+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
132+
- name: Run unit tests with memcheck
133+
run: |
134+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
135+
echo "***** MEMCHECK $test *****"; \
136+
valgrind ${{env.VALGRIND_ARGS}} .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
137+
done
138+
debian_stable:
139+
runs-on: ubuntu-latest
140+
container:
141+
image: debian:stable
142+
steps:
143+
- name: Update repositories
144+
run: apt-get update
145+
- name: Install dependencies
146+
run: apt-get -y install git libjack-dev make pkg-config valgrind gcc g++
147+
- uses: actions/checkout@v3
148+
- name: Configure project
149+
run: make config FEATURES="test strict"
150+
- name: Fetch project dependencies
151+
run: make fetch
152+
- name: Build project
153+
run: make VERBOSE=1
154+
- name: Run unit tests
155+
run: .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1
156+
- name: Run unit tests with memcheck
157+
run: |
158+
for test in $(.build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --list --suppress); do \
159+
echo "***** MEMCHECK $test *****"; \
160+
valgrind ${{env.VALGRIND_ARGS}} .build/target/${{env.ARTIFACT}}/${{env.ARTIFACT}}-test utest --verbose --jobs 1 --nofork --debug $test; \
161+
done

.github/workflows/valgrind.supp

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
{
2+
libdl is full of leaks
3+
Memcheck:Leak
4+
...
5+
fun:_dl_open
6+
...
7+
}
8+
{
9+
libdl is full of leaks
10+
Memcheck:Leak
11+
...
12+
fun:_dl_close
13+
...
14+
}
15+
{
16+
libdl is full of leaks
17+
Memcheck:Leak
18+
...
19+
fun:_dl_init
20+
}
21+
{
22+
libdl is full of leaks
23+
Memcheck:Leak
24+
...
25+
fun:_dl_allocate_tls
26+
...
27+
}
28+
{
29+
libdl is full of leaks
30+
Memcheck:Leak
31+
...
32+
fun:call_init.part.0
33+
}
34+
{
35+
ignore XInitThreads
36+
Memcheck:Leak
37+
...
38+
fun:XInitThreads
39+
...
40+
}

.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
/.svn/*
2+
/.settings/*
3+
/.build/*
4+
/.test/*
5+
*.log
6+
/gmon.out
7+
**/*.gmon
8+
*.core
9+
/.config.mk
10+
/modules/
11+
/Release/
12+
/DebugLinux/
13+
/DebugWin/

.project

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>lsp-audio-jack-lib</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
10+
<triggers>clean,full,incremental,</triggers>
11+
<arguments>
12+
</arguments>
13+
</buildCommand>
14+
<buildCommand>
15+
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
16+
<triggers>full,incremental,</triggers>
17+
<arguments>
18+
</arguments>
19+
</buildCommand>
20+
</buildSpec>
21+
<natures>
22+
<nature>org.eclipse.cdt.core.cnature</nature>
23+
<nature>org.eclipse.cdt.core.ccnature</nature>
24+
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
25+
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
26+
</natures>
27+
</projectDescription>

CHANGELOG

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
*******************************************************************************
2+
* RECENT CHANGES
3+
*******************************************************************************
4+
5+
=== 1.0.0 ===
6+
* Initial release.
7+
* Updated build scripts.
8+
* Updated module versions in dependencies.
9+

0 commit comments

Comments
 (0)