Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package jack-example-tools for 
openSUSE:Factory checked in at 2026-10-21 20:56:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jack-example-tools (Old)
 and      /work/SRC/openSUSE:Factory/.jack-example-tools.new.2252680 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "jack-example-tools"

Wed Oct 21 20:56:22 2026 rev:2 rq:1386575 version:4

Changes:
--------
--- /work/SRC/openSUSE:Factory/jack-example-tools/jack-example-tools.changes    
2022-03-11 11:44:36.330832309 +0100
+++ 
/work/SRC/openSUSE:Factory/.jack-example-tools.new.2252680/jack-example-tools.changes
       2026-10-21 20:57:43.644586656 +0200
@@ -1,0 +2,13 @@
+Sat Oct 17 17:11:37 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 4 (changes since 1):
+  * Version 2: fix crashes in midi_latency_test, fix alsa_in
+    resampling regression, fix midiseq usage string
+  * Version 3: export internal-client entry points, fix macOS
+    and Windows builds
+  * Version 4: fix manpage and comments, drop non-standard
+    alloca.h include
+- fix-readline-support-leap.patch: rebased onto 4
+- Spec cleanup via spec-cleaner
+
+-------------------------------------------------------------------

Old:
----
  jack-example-tools-1.obscpio

New:
----
  jack-example-tools-4.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ jack-example-tools.spec ++++++
--- /var/tmp/diff_new_pack.qP4Hde/_old  2026-10-21 20:57:44.490622121 +0200
+++ /var/tmp/diff_new_pack.qP4Hde/_new  2026-10-21 20:57:44.491622163 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package jack-example-tools
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,11 +17,10 @@
 
 
 Name:           jack-example-tools
-Version:        1
+Version:        4
 Release:        0
 Summary:        Official examples and tools from the JACK project
-License:        GPL-2.0
-Group:          System/Sound Daemons
+License:        GPL-2.0-only
 URL:            https://jackaudio.org/
 Source0:        %{name}-%{version}.tar.xz
 Patch0:         fix-readline-support-leap.patch
@@ -30,14 +29,15 @@
 BuildRequires:  jack
 BuildRequires:  meson
 BuildRequires:  pkgconfig
-BuildRequires:  readline-devel
 BuildRequires:  pkgconfig(alsa)
+BuildRequires:  pkgconfig(history)
 BuildRequires:  pkgconfig(jack) >= 1.9.20
 BuildRequires:  pkgconfig(opus)
+BuildRequires:  pkgconfig(readline)
 BuildRequires:  pkgconfig(samplerate)
 BuildRequires:  pkgconfig(sndfile)
 # In order to have a transparent transition to the splitted packages
-Provides:       jack:/usr/bin/jack_connect
+Provides:       jack:%{_bindir}/jack_connect
 
 %description
 JACK is system for handling real-time, low latency audio
@@ -51,7 +51,7 @@
 and tools.
 
 %prep
-%setup -q -n %{name}-%{version}
+%setup -q
 %autopatch -p1
 
 %build
@@ -71,4 +71,3 @@
 %{_libdir}/jack/jack_internal_metro.so
 %{_libdir}/jack/jack_intime.so
 
-

++++++ _service ++++++
--- /var/tmp/diff_new_pack.qP4Hde/_old  2026-10-21 20:57:44.519623336 +0200
+++ /var/tmp/diff_new_pack.qP4Hde/_new  2026-10-21 20:57:44.524623546 +0200
@@ -1,9 +1,9 @@
 <?xml version="1.0"?>
 <services>
-  <service name="obs_scm" mode="disabled">
+  <service name="obs_scm" mode="manual">
     <param name="scm">git</param>
     <param 
name="url">https://github.com/jackaudio/jack-example-tools.git</param>
-    <param name="revision">refs/tags/1</param>
+    <param name="revision">refs/tags/4</param>
     <param name="versionformat">@PARENT_TAG@</param>
 <!--    <param name="revision">master</param>
     <param name="versionformat">@PARENT_TAG@+git%cd.%h</param>

++++++ fix-readline-support-leap.patch ++++++
--- /var/tmp/diff_new_pack.qP4Hde/_old  2026-10-21 20:57:44.542624301 +0200
+++ /var/tmp/diff_new_pack.qP4Hde/_new  2026-10-21 20:57:44.546624468 +0200
@@ -1,14 +1,14 @@
 From: Antonio Larrosa <[email protected]>
 Subject: Fix readline support in SLE/Leap 15.4
 
-Index: jack-example-tools-1/meson.build
+Index: jack-example-tools-4/meson.build
 ===================================================================
---- jack-example-tools-1.orig/meson.build
-+++ jack-example-tools-1/meson.build
-@@ -75,7 +75,7 @@ lib_jacknet = cc.find_library('jacknet',
- 
+--- jack-example-tools-4.orig/meson.build
++++ jack-example-tools-4/meson.build
+@@ -93,7 +93,7 @@
  dep_alsa = dependency('alsa', version: '>=1.0.18', required: alsa_required)
  dep_opus = dependency('opus', version: '>=0.9.0', required: 
get_option('opus_support'))
+ header_opus_custom = cc.check_header('opus/opus_custom.h')
 -dep_readline = dependency('readline', required: 
get_option('readline_support'))
 +dep_readline = cc.find_library('readline', required: 
get_option('readline_support'))
  dep_samplerate = dependency('samplerate', required: libsamplerate_required)

++++++ jack-example-tools-1.obscpio -> jack-example-tools-4.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/.cirrus.yml 
new/jack-example-tools-4/.cirrus.yml
--- old/jack-example-tools-1/.cirrus.yml        2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/.cirrus.yml        2023-02-02 12:26:35.000000000 
+0100
@@ -2,24 +2,15 @@
   freebsd_instance:
     matrix:
       - image_family: freebsd-12-3
-      - image_family: freebsd-13-0
+      - image_family: freebsd-13-1
 
   environment:
     CFLAGS: -O2 -pipe -fPIC -fstack-protector-strong -fno-strict-aliasing 
-I/usr/local/include
     CPPFLAGS: -O2 -pipe -fPIC -fstack-protector-strong -fno-strict-aliasing 
-I/usr/local/include
     LDFLAGS: -lreadline -L/usr/local/lib -fstack-protector-strong
 
-  # Install jack2 from source - replace by package once 1.9.20 is out.
   jack2_dependencies_script:
-    - pkg install -y pkgconf python3 libsndfile libsamplerate libsysinfo 
readline alsa-lib dbus expat opus git
-  jack2_source_script:
-    - git clone --branch develop --depth 1 
https://github.com/jackaudio/jack2.git /jack2
-  jack2_config_script:
-    - cd /jack2 && python3 ./waf configure --celt=no --sndfile=yes 
--samplerate=yes --alsa=yes --dbus --classic --autostart=dbus --readline=yes 
--opus=yes --example-tools=no --prefix /usr/local --pkgconfigdir 
libdata/pkgconfig
-  jack2_build_script:
-    - cd /jack2 && python3 ./waf
-  jack2_install_script:
-    - cd /jack2 && python3 ./waf install
+    - pkg install -y jackit pkgconf python3 libsndfile libsamplerate 
libsysinfo readline alsa-lib dbus expat opus git
 
   prepare_script:
     - mkdir /Install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/.github/workflows/build.yml 
new/jack-example-tools-4/.github/workflows/build.yml
--- old/jack-example-tools-1/.github/workflows/build.yml        2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/.github/workflows/build.yml        2023-02-02 
12:26:35.000000000 +0100
@@ -8,20 +8,26 @@
   pull_request:
     branches: [main]
 
+env:
+  JACK2_VERSION: v1.9.21
+  PAWPAW_CACHE_VERSION: 1
+  PAWPAW_JACK2_NO_CUSTOM_PREFIX: 1
+  PAWPAW_SKIP_LTO: 1
+  PAWPAW_VERSION: 01d07086586818e427b2898d2d446d30b68f3139
+
 jobs:
   build_arch_linux_jack1:
     runs-on: ubuntu-latest
     container:
       image: archlinux:latest
     steps:
-      - uses: actions/checkout@v2
-      - name: Install dependencies
-        run: pacman --noconfirm -Syu alsa-lib base-devel celt meson opus 
readline libsamplerate libsndfile zita-alsa-pcmi zita-resampler
-      - name: Install jack1
+      - uses: actions/checkout@v3
+      - name: Add pro-audio-legacy repository
         run: |
-          printf "[pro-audio]\nServer = 
https://pkgbuild.com/~dvzrv/repos/pro-audio/\$arch\n"; >> /etc/pacman.conf
+          printf "[pro-audio-legacy]\nServer = 
https://pkgbuild.com/~dvzrv/repos/pro-audio-legacy/\$arch\n"; >> /etc/pacman.conf
           pacman -Syy
-          pacman --noconfirm -S jack
+      - name: Install dependencies
+        run: pacman --noconfirm -Syu alsa-lib base-devel jack meson opus 
readline libsamplerate libsndfile zita-alsa-pcmi zita-resampler
       - name: Build jack-example-tools
         run: meson build && ninja -C build
       - name: Install jack-example-tools
@@ -31,12 +37,202 @@
     container:
       image: archlinux:latest
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v3
+      - name: Install dependencies
+        run: pacman --noconfirm -Syu alsa-lib base-devel jack2 meson opus 
readline libsamplerate libsndfile zita-alsa-pcmi zita-resampler
+      - name: Build jack-example-tools
+        run: meson build && ninja -C build
+      - name: Install jack-example-tools
+        run: ninja -C build install
+  build_arch_linux_pipewire_jack:
+    runs-on: ubuntu-latest
+    container:
+      image: archlinux:latest
+    steps:
+      - uses: actions/checkout@v3
+      - name: Install dependencies
+        run: pacman --noconfirm -Syu alsa-lib base-devel meson opus 
pipewire-jack readline libsamplerate libsndfile zita-alsa-pcmi zita-resampler
+      - name: Build jack-example-tools
+        run: meson build && ninja -C build
+      - name: Install jack-example-tools
+        run: ninja -C build install
+  build_alpine_linux:
+    runs-on: ubuntu-latest
+    container:
+      image: alpine:latest
+    steps:
+      - uses: actions/checkout@v3
       - name: Install dependencies
-        run: pacman --noconfirm -Syu alsa-lib base-devel celt meson opus 
readline libsamplerate libsndfile zita-alsa-pcmi zita-resampler
-      - name: Install jack2
-        run: pacman --noconfirm -S jack2
+        run: apk add g++ meson pkgconf alsa-lib-dev jack-dev opus-dev 
readline-dev libsamplerate-dev libsndfile-dev
       - name: Build jack-example-tools
         run: meson build && ninja -C build
       - name: Install jack-example-tools
         run: ninja -C build install
+  build_macos_latest:
+    runs-on: macos-latest
+    steps:
+      - uses: actions/checkout@v3
+      - name: Install dependencies
+        run: brew install jack meson opus pkg-config readline
+      - name: Build jack-example-tools
+        run: meson build && ninja -C build
+      - name: Install jack-example-tools
+        run: ninja -C build install
+  build_pawpaw_macos_intel:
+    runs-on: macos-10.15
+    steps:
+      - uses: actions/checkout@v3
+      - name: Set up cache
+        uses: actions/cache@v3
+        with:
+          path: ~/PawPawBuilds
+          key: macos-intel-v${{ env.PAWPAW_CACHE_VERSION }}
+      - name: Set up dependencies
+        run: brew install cmake jq meson
+      - name: Bootstrap macOS intel
+        shell: bash
+        run: |
+          if [ ! -d PawPaw ]; then
+            git clone https://github.com/DISTRHO/PawPaw.git
+            git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
+          fi
+          ./PawPaw/bootstrap-jack2.sh macos && ./PawPaw/.cleanup.sh macos
+      - name: Build jack2
+        shell: bash
+        run: |
+          ./PawPaw/build-jack2.sh macos && ./PawPaw/.cleanup.sh macos
+      - name: Build jack-example-tools
+        shell: bash
+        run: |
+          pushd PawPaw && source local.env macos && popd
+          meson build --prefix ${PAWPAW_PREFIX} || cat 
build/meson-logs/meson-log.txt
+          ninja -C build
+      - name: Install jack-example-tools
+        run: |
+          pushd PawPaw && source local.env macos && popd
+          ninja -C build install
+  build_pawpaw_macos_universal:
+    runs-on: macos-10.15
+    steps:
+      - uses: actions/checkout@v3
+      - name: Set up cache
+        uses: actions/cache@v3
+        with:
+          path: ~/PawPawBuilds
+          key: macos-universal-v${{ env.PAWPAW_CACHE_VERSION }}
+      - name: Set up dependencies
+        run: brew install cmake jq meson
+      - name: Fix up Xcode
+        run: |
+          sudo rm -Rf /Library/Developer/CommandLineTools/SDKs/*
+          sudo xcode-select -s /Applications/Xcode_12.3.app
+      - name: Bootstrap macOS intel
+        shell: bash
+        run: |
+          if [ ! -d PawPaw ]; then
+            git clone https://github.com/DISTRHO/PawPaw.git
+            git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
+          fi
+          ./PawPaw/bootstrap-jack2.sh macos-universal && ./PawPaw/.cleanup.sh 
macos-universal
+      - name: Build jack2
+        shell: bash
+        run: |
+          ./PawPaw/build-jack2.sh macos-universal && ./PawPaw/.cleanup.sh 
macos-universal
+      - name: Build jack-example-tools
+        shell: bash
+        run: |
+          pushd PawPaw && source local.env macos-universal && popd
+          meson build --prefix ${PAWPAW_PREFIX} || cat 
build/meson-logs/meson-log.txt
+          ninja -C build
+      - name: Install jack-example-tools
+        run: |
+          pushd PawPaw && source local.env macos-universal && popd
+          ninja -C build install
+  build_pawpaw_win32:
+    runs-on: ubuntu-20.04
+    steps:
+      - uses: actions/checkout@v3
+      - name: Set up cache
+        uses: actions/cache@v3
+        with:
+          path: ~/PawPawBuilds
+          key: win32-v${{ env.PAWPAW_CACHE_VERSION }}
+      - name: Fix GitHub's mess
+        run: |
+          sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
+          sudo apt-get update -qq
+          sudo apt-get install -yqq --allow-downgrades libgd3/focal 
libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
+          sudo apt-get purge -yqq libclang* libgbm* libllvm* libmono* moby* 
mono* php* libgdiplus libpcre2-posix3 libzip4
+      - name: Set up dependencies
+        run: |
+          sudo dpkg --add-architecture i386
+          sudo apt-get update -qq
+          sudo apt-get install -y autopoint build-essential curl cmake jq llvm 
meson mingw-w64 python3-pip \
+            binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 
wine-stable:i386
+          pip3 install 'meson>=0.58.0'
+      - name: Bootstrap win32 cross-compiled
+        shell: bash
+        run: |
+          if [ ! -d PawPaw ]; then
+            git clone https://github.com/DISTRHO/PawPaw.git
+            git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
+          fi
+          ./PawPaw/bootstrap-jack2.sh win32 && ./PawPaw/.cleanup.sh win32
+      - name: Build jack2
+        shell: bash
+        run: |
+          ./PawPaw/build-jack2.sh win32 && ./PawPaw/.cleanup.sh win32
+      - name: Build jack-example-tools
+        shell: bash
+        run: |
+          pushd PawPaw && source local.env win32 && popd
+          meson build --prefix ${PAWPAW_PREFIX} --cross-file 
PawPaw/setup/meson/win32.ini || cat build/meson-logs/meson-log.txt
+          ninja -C build
+      - name: Install jack-example-tools
+        run: |
+          pushd PawPaw && source local.env win32 && popd
+          ninja -C build install
+  build_pawpaw_win64:
+    runs-on: ubuntu-20.04
+    steps:
+      - uses: actions/checkout@v3
+      - name: Set up cache
+        uses: actions/cache@v3
+        with:
+          path: ~/PawPawBuilds
+          key: win64-v${{ env.PAWPAW_CACHE_VERSION }}
+      - name: Fix GitHub's mess
+        run: |
+          sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
+          sudo apt-get update -qq
+          sudo apt-get install -yqq --allow-downgrades libgd3/focal 
libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
+          sudo apt-get purge -yqq libclang* libgbm* libllvm* libmono* moby* 
mono* php* libgdiplus libpcre2-posix3 libzip4
+      - name: Set up dependencies
+        run: |
+          sudo dpkg --add-architecture i386
+          sudo apt-get update -qq
+          sudo apt-get install -y autopoint build-essential curl cmake jq llvm 
meson mingw-w64 python3-pip \
+            binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 
wine-stable
+          pip3 install 'meson>=0.58.0'
+      - name: Bootstrap win64 cross-compiled
+        shell: bash
+        run: |
+          if [ ! -d PawPaw ]; then
+            git clone https://github.com/DISTRHO/PawPaw.git
+            git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
+          fi
+          ./PawPaw/bootstrap-jack2.sh win64 && ./PawPaw/.cleanup.sh win64
+      - name: Build jack2
+        shell: bash
+        run: |
+          ./PawPaw/build-jack2.sh win64 && ./PawPaw/.cleanup.sh win64
+      - name: Build jack-example-tools
+        shell: bash
+        run: |
+          pushd PawPaw && source local.env win64 && popd
+          meson build --prefix ${PAWPAW_PREFIX} --cross-file 
PawPaw/setup/meson/win64.ini || cat build/meson-logs/meson-log.txt
+          ninja -C build
+      - name: Install jack-example-tools
+        run: |
+          pushd PawPaw && source local.env win64 && popd
+          ninja -C build install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/CHANGELOG.md 
new/jack-example-tools-4/CHANGELOG.md
--- old/jack-example-tools-1/CHANGELOG.md       2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/CHANGELOG.md       2023-02-02 12:26:35.000000000 
+0100
@@ -1,12 +1,24 @@
 # Changelog
 
-## [Unreleased]
+## [4]
 
-### Added
+### Fixes
+- Fix a typo in `alsa_in` manpage
+- Fix source-code comments and manpage for `jack_simple_client`
+- Remove includes of non-standard `alloca.h` header
 
-### Changed
+## [3]
 
-### Deleted
+### Fixes
+- Ensure internal clients export their function entry points
+- Fix macOS and Windows builds
+
+## [2]
+
+### Fixes
+- Fix crashes in `midi_latency_test`
+- Fix regression in `alsa_in` that broke resampling (reverted code to known 
good state)
+- Fix usage help string in `midiseq`
 
 ## [1]
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/common/netjack_packet.c 
new/jack-example-tools-4/common/netjack_packet.c
--- old/jack-example-tools-1/common/netjack_packet.c    2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/common/netjack_packet.c    2023-02-02 
12:26:35.000000000 +0100
@@ -39,7 +39,6 @@
 #define _GNU_SOURCE
 #endif
 
-#include <alloca.h>
 #include <math.h>
 #include <stdio.h>
 #include <memory.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/example-clients/.gitignore 
new/jack-example-tools-4/example-clients/.gitignore
--- old/jack-example-tools-1/example-clients/.gitignore 2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/.gitignore 1970-01-01 
01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-.deps/
-.libs/
-Makefile
-Makefile.in
-capture_client.o
-impulse_grabber.o
-inprocess.la
-inprocess.lo
-intime.la
-intime.lo
-jack_impulse_grabber
-jack_latent_client
-jack_metro
-jack_midiseq
-jack_midisine
-jack_rec
-jack_server_control
-jack_showtime
-jack_simple_client
-jack_simple_session_client
-jack_transport_client
-latent_client.o
-metro.o
-midiseq.o
-midisine.o
-server_control.o
-showtime.o
-simple_client.o
-simple_session_client.o
-transport_client.o
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/jack-example-tools-1/example-clients/impulse_grabber.c 
new/jack-example-tools-4/example-clients/impulse_grabber.c
--- old/jack-example-tools-1/example-clients/impulse_grabber.c  2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/impulse_grabber.c  2023-02-02 
12:26:35.000000000 +0100
@@ -203,11 +203,15 @@
 
        /* install a signal handler to properly quits jack client */
 #ifdef WIN32
+       signal(SIGINT, signal_handler);
+       signal(SIGABRT, signal_handler);
+       signal(SIGTERM, signal_handler);
+#else
        signal(SIGQUIT, signal_handler);
-       signal(SIGHUP, signal_handler);
-#endif
        signal(SIGTERM, signal_handler);
+       signal(SIGHUP, signal_handler);
        signal(SIGINT, signal_handler);
+#endif
 
        /* Wait for grab to finish */
        while (!grab_finished) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/example-clients/intime.c 
new/jack-example-tools-4/example-clients/intime.c
--- old/jack-example-tools-1/example-clients/intime.c   2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/intime.c   2023-02-02 
12:26:35.000000000 +0100
@@ -21,6 +21,7 @@
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+#include <inttypes.h>
 #include <stdio.h>
 #include <string.h>
 #include <jack/jack.h>
@@ -121,6 +122,7 @@
 }
 
 /* after internal client loaded */
+JACK_LIB_EXPORT
 int
 jack_initialize (jack_client_t *client, const char *load_init)
 {
@@ -150,6 +152,7 @@
 }
 
 /* before unloading */
+JACK_LIB_EXPORT
 void
 jack_finish (void *arg)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/example-clients/meson.build 
new/jack-example-tools-4/example-clients/meson.build
--- old/jack-example-tools-1/example-clients/meson.build        2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/meson.build        2023-02-02 
12:26:35.000000000 +0100
@@ -106,18 +106,20 @@
   )
 endif
 
-if has_jackctl_server_create2
-  c_args_jack_server_control = c_args_common + ['-D__JACK2__']
-else
-  c_args_jack_server_control = c_args_common + ['-D__JACK1__']
+if host_machine.system() != 'windows'
+  if has_jackctl_server_create2
+    c_args_jack_server_control = c_args_common + ['-D__JACK2__']
+  else
+    c_args_jack_server_control = c_args_common + ['-D__JACK1__']
+  endif
+  exe_jack_server_control = executable(
+    'jack_server_control',
+    c_args: c_args_jack_server_control,
+    sources: ['server_control.c'],
+    dependencies: [dep_jack, lib_jackserver],
+    install: true
+  )
 endif
-exe_jack_server_control = executable(
-  'jack_server_control',
-  c_args: c_args_jack_server_control,
-  sources: ['server_control.c'],
-  dependencies: [dep_jack, lib_jackserver],
-  install: true
-)
 
 exe_jack_showtime = executable(
   'jack_showtime',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/jack-example-tools-1/example-clients/midi_latency_test.c 
new/jack-example-tools-4/example-clients/midi_latency_test.c
--- old/jack-example-tools-1/example-clients/midi_latency_test.c        
2022-01-15 17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/midi_latency_test.c        
2023-02-02 12:26:35.000000000 +0100
@@ -163,7 +163,7 @@
         semaphore = NULL;
     }
 #else
-    semaphore = malloc(sizeof(semaphore_t));
+    semaphore = malloc(sizeof(sem_t));
     if (semaphore != NULL) {
         if (sem_init(semaphore, 0, 0)) {
             free(semaphore);
@@ -652,8 +652,7 @@
             break;
         default:
             {
-                char *s = "'- '";
-                s[2] = c;
+                char s[] = {'\'', '-', c, '\'', '\0'};
                 die(s, "invalid switch");
             }
         case -1:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/example-clients/midiseq.c 
new/jack-example-tools-4/example-clients/midiseq.c
--- old/jack-example-tools-1/example-clients/midiseq.c  2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/midiseq.c  2023-02-02 
12:26:35.000000000 +0100
@@ -45,7 +45,7 @@
        fprintf(stderr, "usage: jack_midiseq name nsamp [startindex note nsamp] 
...... [startindex note nsamp]\n");
        fprintf(stderr, "eg: jack_midiseq Sequencer 24000 0 60 8000 12000 63 
8000\n");
        fprintf(stderr, "will play a 1/2 sec loop (if srate is 48khz) with a c4 
note at the start of the loop\n");
-       fprintf(stderr, "that lasts for 12000 samples, then a d4# that starts 
at 1/4 sec that lasts for 800 samples\n");
+    fprintf(stderr, "that lasts for 8000 samples, then a d4# that starts at 
1/4 sec that lasts for 8000 samples\n");
 }
 
 static int process(jack_nframes_t nframes, void *arg)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/example-clients/simple_client.c 
new/jack-example-tools-4/example-clients/simple_client.c
--- old/jack-example-tools-1/example-clients/simple_client.c    2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/simple_client.c    2023-02-02 
12:26:35.000000000 +0100
@@ -43,7 +43,8 @@
  * special realtime thread once for each audio cycle.
  *
  * This client follows a simple rule: when the JACK transport is
- * running, copy the input port to the output.  When it stops, exit.
+ * running, write nframes sine wave samples to the two outputs ports.
+ * When it stops, exit.
  */
 
 int
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/jack-example-tools-1/example-clients/transport_client.c 
new/jack-example-tools-4/example-clients/transport_client.c
--- old/jack-example-tools-1/example-clients/transport_client.c 2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/example-clients/transport_client.c 2023-02-02 
12:26:35.000000000 +0100
@@ -9,9 +9,12 @@
 
 #include <stdio.h>
 #include <errno.h>
-#include <unistd.h>
+#include <inttypes.h>
 #include <stdlib.h>
 #include <string.h>
+#ifndef WIN32
+#include <unistd.h>
+#endif
 
 #include <jack/jack.h>
 
@@ -189,7 +192,11 @@
        /* keep running until the transport stops */
 
        while (client_state != Exit) {
+#ifdef WIN32
+               Sleep (1000);
+#else
                sleep (1);
+#endif
        }
 
        jack_client_close (client);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/man/alsa_in.0 
new/jack-example-tools-4/man/alsa_in.0
--- old/jack-example-tools-1/man/alsa_in.0      2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/man/alsa_in.0      2023-02-02 12:26:35.000000000 
+0100
@@ -67,7 +67,7 @@
 .TP
 \fB\-q \fI quality\fR  
 .br
-Set the quality of the resampler from 0 to 4. can significanly reduce cpu 
usage.
+Set the quality of the resampler from 0 to 4. can significantly reduce cpu 
usage.
 .TP
 \fB\-m \fI max_diff\fR  
 .br
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/man/jack_simple_client.0 
new/jack-example-tools-4/man/jack_simple_client.0
--- old/jack-example-tools-1/man/jack_simple_client.0   2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/man/jack_simple_client.0   2023-02-02 
12:26:35.000000000 +0100
@@ -8,9 +8,9 @@
 The client-name must be a yet unused client name.
 .SH DESCRIPTION
 .B jack_simple_client
-is an example client for the JACK Audio Connection Kit. It creates two
-ports (client-name:input and client-name:output) that pass the data
-unmodified.
+is an example client for the JACK Audio Connection Kit. It creates two output
+ports (client-name:output1 and client-name:output2) and plays a sine wave
+to these ports.
 .SH EXAMPLE
 jack_simple_client in_process_test
 .SH AUTHOR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/meson.build 
new/jack-example-tools-4/meson.build
--- old/jack-example-tools-1/meson.build        2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/meson.build        2023-02-02 12:26:35.000000000 
+0100
@@ -3,19 +3,22 @@
   ['c', 'cpp'],
   meson_version: '>=0.58.0',
   license: ['GPL2+'],
-  version: '1',
+  version: '4',
 )
 
 os = build_machine.system()
 cc = meson.get_compiler('c')
-lib_m = cc.find_library('m')
-lib_rt = cc.find_library('rt')
 
 alsa_required = false
 if get_option('alsa_in_out').enabled() or get_option('zalsa').enabled()
   alsa_required = true
 endif
 
+lib_rt_required = false
+if get_option('zalsa').enabled()
+  lib_rt_required = true
+endif
+
 libsamplerate_required = false
 if get_option('alsa_in_out').enabled() or 
get_option('jack_netsource').enabled()
   libsamplerate_required = true
@@ -62,23 +65,40 @@
 
     client_name = "foo";
     client = jack_client_open(client_name, JackNoStartServer, &status);
-    intclient = jack_internal_client_handle (client, client_name, &status);
+    intclient = jack_internal_client_handle(client, client_name, &status);
   }
   '''
 )
 message('Provides jack2-style jack_internal_client_handle(): ' + 
has_jack2_internal_client.to_string())
 
-lib_jackserver = cc.find_library('jackserver', required: true)
+if host_machine.system() == 'windows' and host_machine.cpu_family() == 'x86_64'
+  lib_jackserver_suffix = '64'
+else
+  lib_jackserver_suffix = ''
+endif
+
+# we must link to jackserver as shared library, which is hard if 
`-Wl,-Bstatic` is used in `LDFLAGS`
+# do a little dance to support such builds here
+# FIXME find a way to do something like `if link_args.contains('-Bstatic')`
+if host_machine.system() == 'windows'
+  lib_jackserver = declare_dependency(link_args: ['-Wl,-Bshared', 
'-ljackserver' + lib_jackserver_suffix, '-Wl,-Bstatic'])
+else
+  lib_jackserver = cc.find_library('jackserver' + lib_jackserver_suffix, 
required: true)
+endif
+
 has_jackctl_server_create2 = cc.has_function('jackctl_server_create2', 
dependencies: lib_jackserver, prefix: '#include <jack/control.h>')
 
 lib_jacknet = cc.find_library('jacknet', required: get_option('jack_net'))
 
 dep_alsa = dependency('alsa', version: '>=1.0.18', required: alsa_required)
 dep_opus = dependency('opus', version: '>=0.9.0', required: 
get_option('opus_support'))
+header_opus_custom = cc.check_header('opus/opus_custom.h')
 dep_readline = dependency('readline', required: get_option('readline_support'))
 dep_samplerate = dependency('samplerate', required: libsamplerate_required)
 dep_sndfile = dependency('sndfile', required: get_option('jack_rec'))
 dep_threads = dependency('threads')
+lib_m = cc.find_library('m')
+lib_rt = cc.find_library('rt', required: lib_rt_required)
 lib_zita_alsa_pcmi = cc.find_library('zita-alsa-pcmi', required: 
get_option('zalsa'))
 lib_zita_resampler = cc.find_library('zita-resampler', required: 
get_option('zalsa'))
 has_ppoll = cc.has_function('ppoll', prefix: '#define _GNU_SOURCE\n#include 
<sys/poll.h>')
@@ -91,17 +111,19 @@
 endif
 
 build_jack_net = false
-if get_option('jack_net').enabled() or (get_option('jack_net').auto() and 
lib_jacknet.found())
+# FIXME jacknet tools fail to build on windows
+if get_option('jack_net').enabled() or (get_option('jack_net').auto() and 
lib_jacknet.found() and host_machine.system() != 'windows')
   build_jack_net = true
 endif
 
 build_jack_netsource = false
-if get_option('jack_netsource').enabled() or 
(get_option('jack_netsource').auto() and dep_samplerate.found())
+# FIXME jacknet tools fail to build on windows
+if get_option('jack_netsource').enabled() or 
(get_option('jack_netsource').auto() and dep_samplerate.found() and 
host_machine.system() != 'windows')
   build_jack_netsource = true
 endif
 
 opus_support = false
-if get_option('opus_support').enabled() or (get_option('opus_support').auto() 
and dep_opus.found())
+if get_option('opus_support').enabled() or (get_option('opus_support').auto() 
and dep_opus.found() and header_opus_custom)
   opus_support = true
 endif
 
@@ -117,7 +139,7 @@
 
 build_zalsa = false
 if get_option('zalsa').enabled() or (
-  get_option('zalsa').auto() and dep_alsa.found() and 
lib_zita_alsa_pcmi.found() and lib_zita_resampler.found()
+  get_option('zalsa').auto() and dep_alsa.found() and lib_rt.found() and 
lib_zita_alsa_pcmi.found() and lib_zita_resampler.found()
 )
   build_zalsa = true
 endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/scripts/meson_create_symlink 
new/jack-example-tools-4/scripts/meson_create_symlink
--- old/jack-example-tools-1/scripts/meson_create_symlink       2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/scripts/meson_create_symlink       2023-02-02 
12:26:35.000000000 +0100
@@ -8,4 +8,4 @@
 
 set -eu
 
-ln -sv "$2" "$MESON_INSTALL_DESTDIR_PREFIX/$1/$3"
+ln -fsv "$2" "$MESON_INSTALL_DESTDIR_PREFIX/$1/$3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/alsa_in.c 
new/jack-example-tools-4/tools/alsa_in.c
--- old/jack-example-tools-1/tools/alsa_in.c    2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/alsa_in.c    2023-02-02 12:26:35.000000000 
+0100
@@ -361,7 +361,7 @@
 
        delay = snd_pcm_avail( alsa_handle );
 
-       delay -= round( jack_frames_since_cycle_start( client ) * 
static_resample_factor );
+       delay -= round( jack_frames_since_cycle_start( client ) / 
static_resample_factor );
        // Do it the hard way.
        // this is for compensating xruns etc...
 
@@ -443,7 +443,7 @@
        if( current_resample_factor > resample_upper_limit ) 
current_resample_factor = resample_upper_limit;
 
        // Now Calculate how many samples we need.
-       rlen = ceil( ((double)nframes) * current_resample_factor )+2;
+       rlen = ceil( ((double)nframes) / current_resample_factor )+2;
        assert( rlen > 2 );
 
        // Calculate resample_mean so we can init ourselves to saner values.
@@ -518,7 +518,7 @@
        jack_latency_range_t range;
        JSList *node;
 
-       range.min = range.max = round(target_delay / static_resample_factor);
+       range.min = range.max = round(target_delay * static_resample_factor);
 
        if (mode == JackCaptureLatency) {
                for (node = capture_ports; node; node = jack_slist_next (node)) 
{
@@ -758,7 +758,7 @@
 
        printf( "selected sample format: %s\n", formats[format].name );
 
-       static_resample_factor =  (double) sample_rate / (double) 
jack_sample_rate;
+       static_resample_factor = (double) jack_sample_rate / (double) 
sample_rate;
        resample_lower_limit = static_resample_factor * 0.25;
        resample_upper_limit = static_resample_factor * 4.0;
        resample_mean = static_resample_factor;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/alsa_out.c 
new/jack-example-tools-4/tools/alsa_out.c
--- old/jack-example-tools-1/tools/alsa_out.c   2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/alsa_out.c   2023-02-02 12:26:35.000000000 
+0100
@@ -4,7 +4,6 @@
  * as they would be used by many applications.
  */
 
-#include <alloca.h>
 #include <stdio.h>
 #include <errno.h>
 #include <unistd.h>
@@ -754,7 +753,7 @@
        if( !sample_rate )
                sample_rate = jack_sample_rate;
 
-       static_resample_factor =  (double) sample_rate / (double) 
jack_sample_rate;
+       static_resample_factor = (double) sample_rate / (double) 
jack_sample_rate;
        resample_lower_limit = static_resample_factor * 0.25;
        resample_upper_limit = static_resample_factor * 4.0;
        resample_mean = static_resample_factor;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/load_test.c 
new/jack-example-tools-4/tools/load_test.c
--- old/jack-example-tools-1/tools/load_test.c  2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/load_test.c  2023-02-02 12:26:35.000000000 
+0100
@@ -100,10 +100,16 @@
 
        client = jack_client_open( "load_test", JackNullOption, NULL );
 
+#ifdef WIN32
+       signal(SIGINT, signal_handler);
+       signal(SIGABRT, signal_handler);
+       signal(SIGTERM, signal_handler);
+#else
        signal(SIGQUIT, signal_handler);
        signal(SIGTERM, signal_handler);
        signal(SIGHUP, signal_handler);
        signal(SIGINT, signal_handler);
+#endif
 
        jack_on_shutdown(client, jack_shutdown, 0);
 
@@ -111,7 +117,11 @@
 
        jack_activate (client);
 
-       sleep( -1 );
+       #ifdef WIN32
+       Sleep (INFINITE);
+       #else
+       sleep (-1);
+       #endif
 
        exit (0);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/meson.build 
new/jack-example-tools-4/tools/meson.build
--- old/jack-example-tools-1/tools/meson.build  2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/meson.build  2023-02-02 12:26:35.000000000 
+0100
@@ -80,13 +80,15 @@
 if not has_jack1_internal_client and has_jack2_internal_client
   c_args_jack_unload = c_args_common + ['-D__JACK2__']
 endif
-exe_jack_unload = executable(
-  'jack_unload',
-  c_args: c_args_jack_unload,
-  sources: ['ipunload.c'],
-  dependencies: [dep_jack],
-  install: true
-)
+if has_jack1_internal_client or has_jack2_internal_client
+  exe_jack_unload = executable(
+    'jack_unload',
+    c_args: c_args_jack_unload,
+    sources: ['ipunload.c'],
+    dependencies: [dep_jack],
+    install: true
+  )
+endif
 
 exe_jack_unload = executable(
   'jack_load_test',
@@ -154,14 +156,17 @@
   install: true
 )
 
-# dont install, jack session is deprecated
-exe_jack_session_notify = executable(
-  'jack_session_notify',
-  sources: ['session_notify.c'],
-  dependencies: [dep_jack],
-  c_args: ['-Wno-deprecated-declarations'],
-  install: false
-)
+# FIXME deal with alloca on windows
+if host_machine.system() != 'windows'
+  # dont install, jack session is deprecated
+  exe_jack_session_notify = executable(
+    'jack_session_notify',
+    sources: ['session_notify.c'],
+    dependencies: [dep_jack],
+    c_args: ['-Wno-deprecated-declarations'],
+    install: false
+  )
+endif
 
 jack_transport_c_args = c_args_common
 jack_transport_deps = [dep_jack]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/midi_dump.c 
new/jack-example-tools-4/tools/midi_dump.c
--- old/jack-example-tools-1/tools/midi_dump.c  2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/midi_dump.c  2023-02-02 12:26:35.000000000 
+0100
@@ -190,7 +190,13 @@
                exit (EXIT_FAILURE);
        }
 
-#ifndef WIN32
+#ifdef WIN32
+       signal(SIGINT, wearedone);
+       signal(SIGABRT, wearedone);
+       signal(SIGTERM, wearedone);
+#else
+       signal(SIGQUIT, wearedone);
+       signal(SIGTERM, wearedone);
        signal(SIGHUP, wearedone);
        signal(SIGINT, wearedone);
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/session_notify.c 
new/jack-example-tools-4/tools/session_notify.c
--- old/jack-example-tools-1/tools/session_notify.c     2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/tools/session_notify.c     2023-02-02 
12:26:35.000000000 +0100
@@ -19,7 +19,6 @@
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-#include <alloca.h>
 #include <stdio.h>
 #include <errno.h>
 #include <unistd.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/transport.c 
new/jack-example-tools-4/tools/transport.c
--- old/jack-example-tools-1/tools/transport.c  2022-01-15 17:35:58.000000000 
+0100
+++ new/jack-example-tools-4/tools/transport.c  2023-02-02 12:26:35.000000000 
+0100
@@ -415,6 +415,7 @@
        return s;
 }
 
+#if HAVE_READLINE
 static char *dupstr(char *s)
 {
        char *r = malloc(strlen(s) + 1);
@@ -447,6 +448,7 @@
 
        return (char *) NULL;           /* No names matched. */
 }
+#endif
 
 static void command_loop()
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/tw.c 
new/jack-example-tools-4/tools/tw.c
--- old/jack-example-tools-1/tools/tw.c 2022-01-15 17:35:58.000000000 +0100
+++ new/jack-example-tools-4/tools/tw.c 2023-02-02 12:26:35.000000000 +0100
@@ -6,10 +6,13 @@
 
 #include <stdio.h>
 #include <errno.h>
-#include <unistd.h>
+#include <inttypes.h>
 #include <stdlib.h>
 #include <string.h>
 #include <signal.h>
+#ifndef WIN32
+#include <unistd.h>
+#endif
 
 #include <jack/jack.h>
 
@@ -248,15 +251,25 @@
        jack_free (ports);
 
     /* install a signal handler to properly quits jack client */
-    signal(SIGQUIT, signal_handler);
+#ifdef WIN32
+       signal(SIGINT, signal_handler);
+       signal(SIGABRT, signal_handler);
+       signal(SIGTERM, signal_handler);
+#else
+       signal(SIGQUIT, signal_handler);
        signal(SIGTERM, signal_handler);
        signal(SIGHUP, signal_handler);
        signal(SIGINT, signal_handler);
+#endif
 
        /* keep running until the transport stops */
 
        while (client_state != Exit) {
+       #ifdef WIN32
+               Sleep(1000);
+       #else
                sleep (1);
+       #endif
        }
 
        jack_client_close (client);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/zalsa/zita-a2j.cc 
new/jack-example-tools-4/tools/zalsa/zita-a2j.cc
--- old/jack-example-tools-1/tools/zalsa/zita-a2j.cc    2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/tools/zalsa/zita-a2j.cc    2023-02-02 
12:26:35.000000000 +0100
@@ -390,13 +390,14 @@
 
 extern "C" {
 
-int
-jack_initialize (jack_client_t* client, const char* load_init)
+JACK_LIB_EXPORT
+int jack_initialize (jack_client_t* client, const char* load_init)
 {
        zita_a2j *c = new zita_a2j();
        return c->jack_initialize(client, load_init);
 }
 
+JACK_LIB_EXPORT
 void jack_finish (void* arg)
 {
        if (!arg) return;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jack-example-tools-1/tools/zalsa/zita-j2a.cc 
new/jack-example-tools-4/tools/zalsa/zita-j2a.cc
--- old/jack-example-tools-1/tools/zalsa/zita-j2a.cc    2022-01-15 
17:35:58.000000000 +0100
+++ new/jack-example-tools-4/tools/zalsa/zita-j2a.cc    2023-02-02 
12:26:35.000000000 +0100
@@ -389,13 +389,14 @@
 
 extern "C" {
 
-int
-jack_initialize (jack_client_t* client, const char* load_init)
+JACK_LIB_EXPORT
+int jack_initialize (jack_client_t* client, const char* load_init)
 {
        zita_j2a *c = new zita_j2a();
        return c->jack_initialize(client, load_init);
 }
 
+JACK_LIB_EXPORT
 void jack_finish (void* arg)
 {
        if (!arg) return;

++++++ jack-example-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.qP4Hde/_old  2026-10-21 20:57:44.713631469 +0200
+++ /var/tmp/diff_new_pack.qP4Hde/_new  2026-10-21 20:57:44.716631595 +0200
@@ -1,5 +1,5 @@
 name: jack-example-tools
-version: 1
-mtime: 1642264558
-commit: b2d4f2f7c680db3582198a11d96bb09ee97042be
+version: 4
+mtime: 1675337195
+commit: 33de8b4285fa5054af1b37fe0496c110604ed564
 

Reply via email to