Commit Graph

4226 Commits (stable)
 

Author SHA1 Message Date
Nedko Arnaudov b1ec48747c Revert "Solving problems while compiling jack2 on macOS X with dbus support (#434)"
Reduce code bloat by removing support of non-libre operating system

This reverts commit bb3f5cb296.
3 weeks ago
Nedko Arnaudov caa739fbf9 remove the jack2 leftover file jack.pc.in 3 weeks ago
Nedko Arnaudov 0056329a77 doxyfile.in: update the mention of the current doxygen version 3 weeks ago
Nedko Arnaudov c0e7f12e4b wscript: fix git version generation for tarballs (again) 3 weeks ago
Nedko Arnaudov 109b5372ea wscript: fix git version generation for tarballs 3 weeks ago
Nedko Arnaudov ba3b50dcd2 update waftoolchainflags submodule
* gitignore *.pyc
3 weeks ago
Nedko Arnaudov 3cd263b030 Bump jackdbus version to 2.23.0 4 weeks ago
Nedko Arnaudov 3cc8d25b68 As same uptime() is shared between linux and freebsd, adjust the wscript 4 weeks ago
Nedko Arnaudov 8947e5659a wscript: add --devmode option; use -std=gnu99 by default; adjust --debug 4 weeks ago
Nedko Arnaudov 8897c95c97 Fix warnings 4 weeks ago
Nedko Arnaudov 72b81b8fcb Remove traces of jackaudio/jack2 macos and windows support in jackdbus codebase 4 weeks ago
Nedko Arnaudov ed167c1fa1 wsript: C++ compiler is not used, drop checks and options 4 weeks ago
Nedko Arnaudov a750039aa9 Use WafToolchainFlags from git submodule 4 weeks ago
Nedko Arnaudov 21a3d589b1 Merge branch 'stable' itno 'main' 1 month ago
Nedko Arnaudov df84b1d17d dbus/reserve.c: Fix -Wsingle-bit-bitfield-constant-conversion by using unsigned int
../dbus/reserve.c:154:16: warning: implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion]
  154 |                                 d->gave_up = 1;
      |                                            ^ ~
1 month ago
Nedko Arnaudov 994086cfd9 Replace sigsegv.c with siginfo.c and build it only when explicitly enabled
siginfo is disabled by default so building on new CPU
architectures does not require adjusting of siginfo.c anymore.

When needed, --siginfo can be used as option to ./waf configure
to enable the functionality
1 month ago
Nedko Arnaudov 36bdfb2c65 remove in-tree version of control.h
System wide one is used instead
1 month ago
Nedko Arnaudov b659584d0e dbus/reserve.c: Include system-wide control.h 1 month ago
Nedko Arnaudov 191ae7a7eb Build jackdbus against system-wide jack headers 4 months ago
Nedko Arnaudov 92e12d5c7d remove unused files dbus/audio_reserve.[ch]
These are actually jackd specific.
4 months ago
Nedko Arnaudov a8ec586cba dbus/jack_control: moved to https://gitea.ladish.org/LADI/jack_control
Backup repo: https://github.com/LADI/jack_control

dbus/jack_control is now submodule

jack_control is now always installed as part of jackdbus.
With dedicated repos for jackdbus and jack_control,
there is no point in having jack_control installation conditional.
5 months ago
Nedko Arnaudov f586075555 Adjust link to jack_control script 5 months ago
Nedko Arnaudov 2fbd7ace76 dbus/controller.c: Use jackctl_server_create() instead of jackctl_server_create2()
This is mort portable across jack1 and jack2. jackctl_server_create2() is jackd.exe specific and has no purpose for jackdbus.
5 months ago
Nedko Arnaudov 1a23ec5ae9 jack_control: new command - "show"
show command behaves a bit like last parts of (current) adevices.sh script,
but chains the involved commands status2, dg, dp and ep internally.

The adevices.sh script uses status command and does not display
JACK settings unless jack is started. The show command uses
status2, so the settings will be displayed always.
5 months ago
Nedko Arnaudov 757bfbb903 jack_control: add status2 command
While status command returns always, status2 command
allows followup chained commands.
5 months ago
Nedko Arnaudov a6f0b65a3f Add LADI icons 6 months ago
Nedko Arnaudov e79afc708b README.adoc: Add packaging section
Based on:

https://github.com/jackaudio/jackaudio.github.com/wiki#installation-and-packaging
6 months ago
Nedko Arnaudov c9ba7c26c9 README.adoc: Fix TOC generation (ladoc-py) 6 months ago
Nedko Arnaudov bdcff7c377 README.adoc: fix typo (imPlements) 7 months ago
Nedko Arnaudov 3ae2f9b5a0 README: Add links to QjackCtl, Cadence and Studio Controls 7 months ago
Nedko Arnaudov b956c9032a README: add hyperlinks 7 months ago
Nedko Arnaudov ba6faf9cca Adjust asciidoc command-line for ladoc-py
https://gitea.ladish.org/LADI/ladoc-py
7 months ago
Nedko Arnaudov c565e4b707 README.adoc: Remove non-ASCII char 7 months ago
Nedko Arnaudov 07085ef095 wscript: switch to WafToolchainFlags 7 months ago
Nedko Arnaudov 4263a92024 wscript: WafToolchainFlags 7 months ago
Nedko Arnaudov c097aa5a38 NEWS: jackdbus-2.22.1 8 months ago
Nedko Arnaudov a1c3bf010e ci/github: Remove Ubuntu 23.04 runner (doesnt work) 8 months ago
Nedko Arnaudov bf3b35c43b ci/github: Ubuntu 18.04 deprecated, add 23.04
https://github.blog/changelog/2022-08-09-github-actions-the-ubuntu-18-04-actions-runner-image-is-being-deprecated-and-will-be-removed-by-12-1-22/
8 months ago
Nedko Arnaudov 005535b799 Restore display of source sha-1 in jackdbus log
This commit changes build info to display info about jackdbus itself,
along with libjackserver.so provided build info

Fixes https://github.com/LADI/jackdbus/issues/1
8 months ago
Nedko Arnaudov c685e29dc7 Update jack2 pdf link to archive.org
The current one is broken for unknown reasons.
9 months ago
Nedko Arnaudov 3f04377896 Merge commit v1.9.22 into jackdbus 10 months ago
falkTX 4f58969432
Update changelog
Signed-off-by: falkTX <falktx@falktx.com>
10 months ago
falkTX 1eff44a212 Update copyright year
Signed-off-by: falkTX <falktx@falktx.com>
10 months ago
falkTX f5a01999fa macOS: forcely ignore wait failures when closing down
Signed-off-by: falkTX <falktx@falktx.com>
10 months ago
Christian Clauss d2d44158f9
Upgrade GitHub Actions (#911)
* Upgrade GitHub Actions

* https://github.com/actions/cache/releases
* https://github.com/actions/checkout/releases
* https://github.com/actions/upload-artifact/releases

* Upgrade GitHub Actions
10 months ago
falkTX 79ea0746fa
macOS: killing a thread will abort the semaphore wait
Signed-off-by: falkTX <falktx@falktx.com>
10 months ago
luz paz ae9993bb34 Fix typos 10 months ago
Daan De Meyer 328c58967d Remove usage of 'U' mode bit for opening files in python
The 'U' mode bit is removed in python 3.11. It has been
deprecated for a long time. The 'U' mode bit has no effect
so this change doesn't change any behavior.

See https://docs.python.org/3.11/whatsnew/3.11.html#changes-in-the-python-api
10 months ago
K 75516ffe6d
Fix ringbuffer thread safety on ARM. Fix #715 #388 (#886)
* fix ringbuffer thread safety on ARM. fix #715 #388

This patch addresses the thread safety problem of `jack_ringbuffer_t`
mentioned in #715 and #388. The overbound read bug caused by this problem
is impossible to reproduce on x86 due to its strong memory ordering, but
it is a problem on ARM and other weakly ordered architectures.

Basically, the main problem is that, on a weakly ordered architecture,
it is possible that the pointer increment after `memcpy` becomes visible
to the other thread before `memcpy` finishes:

	memcpy (&(rb->buf[rb->write_ptr]), src, n1);
	// vvv can be visible to reading thread before memcpy finishes
	rb->write_ptr = (rb->write_ptr + n1) & rb->size_mask;

If this happens, the other thread can read the remaining garbage values
in `rb->buf` due to be overwritten by the unfinished `memcpy`.

To fix this, an explicit pair of release/acquire memory fences [1] is
used to ensure the copy on the other thread *happens after* the `memcpy`
finishes so no garbage values can be read.

[1]: https://preshing.com/20130922/acquire-and-release-fences/

* remove volatile qualifier on ringbuf r/w pointers

The volatile constraints are excess when compiler barriers are present.
It generates unnecessary `mov` instructions when pointers aren't going
to be updated.

* simplify read/write space calculations

This optimization is possible because the buffer size is always a power
of 2. See [1] for details.

[1]: https://github.com/drobilla/zix/pull/1#issuecomment-1212687196

* move acq fences to separate lines
10 months ago
Florian Walpen f18660aa03
CI: Update FreeBSD image to 13.1, fix build.
In principle, major FreeBSD versions should be ABI compatible.
But in this case the python3 binary would only run on 13.1, not 13.0.
10 months ago