Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
@ 2021-07-18 21:10 paper42
  2021-07-18 21:15 ` [PR PATCH] [Updated] " paper42
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: paper42 @ 2021-07-18 21:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1634 bytes --]

There is a new pull request by paper42 against master on the void-packages repository

https://github.com/paper42/void-packages easyeffects
https://github.com/void-linux/void-packages/pull/32037

[NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [ ] #32027
- [ ] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

A patch file from https://github.com/void-linux/void-packages/pull/32037.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-easyeffects-32037.patch --]
[-- Type: text/x-diff, Size: 27822 bytes --]

From e1d3af665c475f9e9941eb8aa0da14c277e76605 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sat, 17 Jul 2021 10:48:46 +0200
Subject: [PATCH 1/8] meson: update to 0.58.1

---
 .../dont-use-native-pkgconfig-for-gir.patch   | 11 ---
 srcpkgs/meson/patches/fix-unittest.patch      | 77 -------------------
 ...dle-libraries-that-are-not-in-the-cu.patch | 54 +++++++++++++
 srcpkgs/meson/template                        |  7 +-
 4 files changed, 57 insertions(+), 92 deletions(-)
 delete mode 100644 srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
 delete mode 100644 srcpkgs/meson/patches/fix-unittest.patch
 create mode 100644 srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch

diff --git a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch b/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
deleted file mode 100644
index 3eefcff8e115..000000000000
--- a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-+++ b/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-@@ -403,7 +403,7 @@
- 
-     def _get_gir_dep(self, state):
-         if not self.gir_dep:
--            kwargs = {'native': True, 'required': True}
-+            kwargs = {'native': False, 'required': True}
-             holder = self.interpreter.func_dependency(state.current_node, ['gobject-introspection-1.0'], kwargs)
-             self.gir_dep = holder.held_object
-             giscanner = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
diff --git a/srcpkgs/meson/patches/fix-unittest.patch b/srcpkgs/meson/patches/fix-unittest.patch
deleted file mode 100644
index 8f73249b9f86..000000000000
--- a/srcpkgs/meson/patches/fix-unittest.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-commit 777cbe9c0faa018bafccf3e7adb8dad162276e35
-Author: Érico Rolim <erico.erc@gmail.com>
-Date:   Mon Feb 1 00:26:49 2021 -0300
-
-    tests/common: fix " 37 has function" test on musl systems.
-    
-    This commit fixes the test that asserts on whether the lchmod() function
-    should have been detected as available by Meson. It does so by assuming
-    that on Linux systems not using glibc, the function will be available.
-    
-    - fix comment about lchmod on Linux: musl has implemented the function
-    correctly since 2013, so the assumption in the test wasn't correct.
-    Furthermore, musl doesn't use glibc's stub mechanism.
-    - fix include to receive __GLIBC__ definition: including almost any
-    header in glibc will end up defining __GLIBC__, since most headers
-    include <features.h>. The <gnu/libc-version.h> header was probably
-    chosen because of its name, but its actual purpose is defining functions
-    for checking glibc version at runtime (instead of what the binary was
-    built with), so it isn't necessary to use it. Since it is a completely
-    non standard header, including it makes the test suite fail on musl due
-    to not finding the header.
-
-diff --git test cases/common/37 has function/meson.build test cases/common/37 has function/meson.build
-index 26f13d6fa..a59480c2d 100644
---- a/test cases/common/39 has function/meson.build	
-+++ b/test cases/common/39 has function/meson.build	
-@@ -44,11 +44,13 @@ foreach cc : compilers
-     error('Found non-existent function "hfkerhisadf".')
-   endif
- 
--  # With glibc on Linux lchmod is a stub that will always return an error,
--  # we want to detect that and declare that the function is not available.
--  # We can't check for the C library used here of course, but if it's not
--  # implemented in glibc it's probably not implemented in any other 'slimmer'
--  # C library variants either, so the check should be safe either way hopefully.
-+  # With glibc (before 2.32, see below) on Linux, lchmod is a stub that will
-+  # always return an error, we want to detect that and declare that the
-+  # function is not available.
-+  # We can't check for the C library used here of course, but the main
-+  # alternative Linux C library (musl) doesn't use glibc's stub mechanism;
-+  # also, it has implemented lchmod since 2013, so it should be safe to check
-+  # that lchmod is available on Linux when not using glibc.
-   if host_system == 'linux' or host_system == 'darwin'
-     assert (cc.has_function('poll', prefix : '#include <poll.h>',
-                             args : unit_test_args),
-@@ -57,15 +59,24 @@ foreach cc : compilers
-     has_lchmod = cc.has_function('lchmod', prefix : lchmod_prefix, args : unit_test_args)
- 
-     if host_system == 'linux'
--      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
--      message('GLIBC vetsion:', glibc_vers)
-+      # __GLIBC__ macro can be retrieved by including almost any C library header
-+      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <unistd.h>', args: unit_test_args)
-+      # __GLIBC__ will only be set for glibc
-+      if glibc_major != ''
-+        glibc_print = 'hi "@0@" hi'.format(glibc_major)
-+        message(glibc_print)
-+        glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <unistd.h>', args: unit_test_args)
-+        glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
-+        message('GLIBC version:', glibc_vers)
- 
--      # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
--      if glibc_vers.version_compare('<2.32')
--        assert (not has_lchmod, '"lchmod" check should have failed')
-+        # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
-+        if glibc_vers.version_compare('<2.32')
-+          assert (not has_lchmod, '"lchmod" check should have failed')
-+        else
-+          assert (has_lchmod, '"lchmod" check should have succeeded')
-+        endif
-       else
-+        # Other C libraries for Linux should have lchmod
-         assert (has_lchmod, '"lchmod" check should have succeeded')
-       endif
-     else
diff --git a/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
new file mode 100644
index 000000000000..cbec0aa37c17
--- /dev/null
+++ b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
@@ -0,0 +1,54 @@
+Revert "gnome: Handle libraries that are not in the current build dir"
+(gnome: Handle libraries that are not in the current build dir)
+
+This reverts commits df4314c7b88998aa9e7a497b1da04efb77110f60 (gnome: Handle libraries that are not in the current build dir) and 21897a10ca0295f65f158ed3cbac396bc5adbb54 (backends: Remove @PRIVATE_OUTDIR_(ABS)@ substitution"), because the revert of the first commit uses the substitutions removed by the second reverted commit.
+
+diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
+index ee5f4463a..9b4f34912 100644
+--- a/mesonbuild/backend/backends.py
++++ b/mesonbuild/backend/backends.py
+@@ -1250,6 +1250,18 @@ class Backend:
+                     else:
+                         pdir = self.get_target_private_dir(target)
+                     i = i.replace('@PRIVATE_DIR@', pdir)
++                if '@PRIVATE_OUTDIR_' in i:
++                    match = re.search(r'@PRIVATE_OUTDIR_(ABS_)?([^/\s*]*)@', i)
++                    if not match:
++                        msg = 'Custom target {!r} has an invalid argument {!r}' \
++                              ''.format(target.name, i)
++                        raise MesonException(msg)
++                    source = match.group(0)
++                    if match.group(1) is None and not target.absolute_paths:
++                        lead_dir = ''
++                    else:
++                        lead_dir = self.environment.get_build_dir()
++                    i = i.replace(source, os.path.join(lead_dir, outdir))
+             else:
+                 err_msg = 'Argument {0} is of unknown type {1}'
+                 raise RuntimeError(err_msg.format(str(i), str(type(i))))
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 99a6071d4..490bbb7fe 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -615,16 +615,15 @@ class GnomeModule(ExtensionModule):
+             else:
+                 # Because of https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/72
+                 # we can't use the full path until this is merged.
+-                libpath = os.path.join(girtarget.get_subdir(), girtarget.get_filename())
+                 if isinstance(girtarget, build.SharedLibrary):
+-                    # need to put our output directory first as we need to use the
+-                    # generated libraries instead of any possibly installed system/prefix
+-                    # ones.
+-                    ret += ["-L@BUILD_ROOT@/{}".format(os.path.dirname(libpath))]
+                     libname = girtarget.get_basename()
+                 else:
+-                    libname = os.path.join(f"@BUILD_ROOT@/{libpath}")
++                    libname = os.path.join("@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id(), girtarget.get_filename())
+                 ret += ['--library', libname]
++                # need to put our output directory first as we need to use the
++                # generated libraries instead of any possibly installed system/prefix
++                # ones.
++                ret += ["-L@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id()]
+                 # Needed for the following binutils bug:
+                 # https://github.com/mesonbuild/meson/issues/1911
+                 # However, g-ir-scanner does not understand -Wl,-rpath
diff --git a/srcpkgs/meson/template b/srcpkgs/meson/template
index bb484ec3e45e..94b33b6b5a1b 100644
--- a/srcpkgs/meson/template
+++ b/srcpkgs/meson/template
@@ -1,8 +1,7 @@
 # Template file for 'meson'
 pkgname=meson
-reverts="0.58.1_1"
-version=0.56.2
-revision=3
+version=0.58.1
+revision=2
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools"
 depends="ninja python3-setuptools"
@@ -15,7 +14,7 @@ license="Apache-2.0"
 homepage="https://mesonbuild.com"
 changelog="https://github.com/mesonbuild/meson/blob/master/docs/markdown/Release-notes-for-${version%.*}.0.md"
 distfiles="https://github.com/mesonbuild/meson/releases/download/$version/$pkgname-$version.tar.gz"
-checksum=3cb8bdb91383f7f8da642f916e4c44066a29262caa499341e2880f010edb87f4
+checksum=3144a3da662fcf79f1e5602fa929f2821cba4eba28c2c923fe0a7d3e3db04d5d
 
 # XXX: sanitizers aren't available on musl
 if [ "$XBPS_TARGET_LIBC" = glibc ]; then

From 96dc043ab922b4959cf006468f503743d31d31c3 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 19:24:14 +0200
Subject: [PATCH 2/8] gtk4: update to 4.2.1.

---
 srcpkgs/gtk4/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gtk4/template b/srcpkgs/gtk4/template
index 450d393b09c0..95143fa98020 100644
--- a/srcpkgs/gtk4/template
+++ b/srcpkgs/gtk4/template
@@ -1,6 +1,6 @@
 # Template file for 'gtk4'
 pkgname=gtk4
-version=4.2.0
+version=4.2.1
 revision=1
 wrksrc="gtk-${version}"
 build_style=meson
@@ -29,7 +29,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://www.gtk.org/"
 distfiles="${GNOME_SITE}/gtk/${version%.*}/gtk-${version}.tar.xz"
-checksum=e975f286e911666a79b6bcf486e6f99b0bd9d2b4cc348d19bce487a0b1c97072
+checksum=023169775de43f0a1fde066fbc19d78545ea6a7562c1915abde9b8ae4a7309e6
 
 # Package build options
 build_options="broadway cloudproviders colord cups gir vulkan wayland x11"

From 42013defd8ea292fea7c36f3ab142265f27d4a53 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:46:23 +0200
Subject: [PATCH 3/8] libsigc++3: update to 3.0.7.

---
 srcpkgs/libsigc++3/template | 5 +++--
 srcpkgs/libsigc++3/update   | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libsigc++3/template b/srcpkgs/libsigc++3/template
index 9c96b9ee4924..681f61a30a43 100644
--- a/srcpkgs/libsigc++3/template
+++ b/srcpkgs/libsigc++3/template
@@ -1,6 +1,6 @@
 # Template file for 'libsigc++3'
 pkgname=libsigc++3
-version=3.0.3
+version=3.0.7
 revision=1
 wrksrc=libsigc++-${version}
 build_style=meson
@@ -10,8 +10,9 @@ short_desc="Type-safe callback system for C++ programs"
 maintainer="q66 <daniel@octaforge.org>"
 license="LGPL-3.0-only"
 homepage="https://libsigcplusplus.github.io/libsigcplusplus/"
+changelog="https://github.com/libsigcplusplus/libsigcplusplus/blob/master/NEWS"
 distfiles="${GNOME_SITE}/libsigc++/${version%.*}/libsigc++-${version}.tar.xz"
-checksum=e4f4866a894bdbe053e4fb22ccc6bc4b6851fd31a4746fdd20b2cf6e87c6edb6
+checksum=bfbe91c0d094ea6bbc6cbd3909b7d98c6561eea8b6d9c0c25add906a6e83d733
 
 pre_configure() {
 	# build static library as well as shared
diff --git a/srcpkgs/libsigc++3/update b/srcpkgs/libsigc++3/update
index 0d3fa3bab911..34ea63170e8c 100644
--- a/srcpkgs/libsigc++3/update
+++ b/srcpkgs/libsigc++3/update
@@ -1 +1,2 @@
+pkgname=libsigc++
 pattern="libsigc\+\+-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From cc5d876aff0cdffd8361eb649f5238623831a546 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:12:29 +0200
Subject: [PATCH 4/8] New package: glibmm2.68-2.68.1

---
 common/shlibs               |  3 +++
 srcpkgs/glibmm2.68-devel    |  1 +
 srcpkgs/glibmm2.68/template | 27 +++++++++++++++++++++++++++
 srcpkgs/glibmm2.68/update   |  3 +++
 4 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/glibmm2.68-devel
 create mode 100644 srcpkgs/glibmm2.68/template
 create mode 100644 srcpkgs/glibmm2.68/update

diff --git a/common/shlibs b/common/shlibs
index 77c205b376d2..258334e67c7a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -665,6 +665,9 @@ libsigc-3.0.so.0 libsigc++3-3.0.3_1
 libglibmm-2.4.so.1 glibmm-2.24.0_1
 libgiomm-2.4.so.1 glibmm-2.24.0_1
 libglibmm_generate_extra_defs-2.4.so.1 glibmm-2.24.0_1
+libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
+libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
+libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
diff --git a/srcpkgs/glibmm2.68-devel b/srcpkgs/glibmm2.68-devel
new file mode 120000
index 000000000000..7879cbce406a
--- /dev/null
+++ b/srcpkgs/glibmm2.68-devel
@@ -0,0 +1 @@
+glibmm2.68
\ No newline at end of file
diff --git a/srcpkgs/glibmm2.68/template b/srcpkgs/glibmm2.68/template
new file mode 100644
index 000000000000..11eac004b7ff
--- /dev/null
+++ b/srcpkgs/glibmm2.68/template
@@ -0,0 +1,27 @@
+# Template file for 'glibmm2.68'
+pkgname=glibmm2.68
+version=2.68.1
+revision=1
+wrksrc="glibmm-$version"
+build_style=meson
+hostmakedepends="glib-devel perl pkg-config"
+makedepends="libglib-devel libsigc++3-devel"
+checkdepends="glib-networking"
+short_desc="C++ bindings for GLib"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://www.gtkmm.org"
+distfiles="${GNOME_SITE}/glibmm/${version%.*}/glibmm-${version}.tar.xz"
+checksum=6664e27c9a9cca81c29e35687f49f2e0d173a2fc9e98c3428311f707db532f8c
+
+glibmm2.68-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/lib/glibmm-2.68
+		vmove usr/lib/giomm-2.68
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/glibmm2.68/update b/srcpkgs/glibmm2.68/update
new file mode 100644
index 000000000000..c2768fb0e70f
--- /dev/null
+++ b/srcpkgs/glibmm2.68/update
@@ -0,0 +1,3 @@
+pkgname=glibmm
+site=https://gitlab.gnome.org/GNOME/glibmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 0898f104591de0413d59f6b8627f8ef7358e83fb Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:20:26 +0200
Subject: [PATCH 5/8] New package: cairomm1.16-1.16.1

---
 common/shlibs                |  1 +
 srcpkgs/cairomm1.16-devel    |  1 +
 srcpkgs/cairomm1.16/template | 24 ++++++++++++++++++++++++
 srcpkgs/cairomm1.16/update   |  2 ++
 4 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/cairomm1.16-devel
 create mode 100644 srcpkgs/cairomm1.16/template
 create mode 100644 srcpkgs/cairomm1.16/update

diff --git a/common/shlibs b/common/shlibs
index 258334e67c7a..70877d48f67f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -669,6 +669,7 @@ libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
 libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
 libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
+libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/cairomm1.16-devel b/srcpkgs/cairomm1.16-devel
new file mode 120000
index 000000000000..e427b6504ea5
--- /dev/null
+++ b/srcpkgs/cairomm1.16-devel
@@ -0,0 +1 @@
+cairomm1.16
\ No newline at end of file
diff --git a/srcpkgs/cairomm1.16/template b/srcpkgs/cairomm1.16/template
new file mode 100644
index 000000000000..e1f0e2dda546
--- /dev/null
+++ b/srcpkgs/cairomm1.16/template
@@ -0,0 +1,24 @@
+# Template file for 'cairomm1.16'
+pkgname=cairomm1.16
+version=1.16.1
+revision=1
+wrksrc="cairomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel fontconfig-devel libpng-devel libXrender-devel cairo-devel"
+short_desc="C++ bindings to Cairo vector graphics library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-or-later, MPL-1.1"
+homepage="https://www.cairographics.org/cairomm/"
+distfiles="http://cairographics.org/releases/cairomm-$version.tar.xz"
+checksum=6f6060d8e98dd4b8acfee2295fddbdd38cf487c07c26aad8d1a83bb9bff4a2c6
+
+cairomm1.16-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/cairomm*"
+		vmove usr/lib/pkgconfig
+	}
+}
diff --git a/srcpkgs/cairomm1.16/update b/srcpkgs/cairomm1.16/update
new file mode 100644
index 000000000000..aa4bf1b2c193
--- /dev/null
+++ b/srcpkgs/cairomm1.16/update
@@ -0,0 +1,2 @@
+pattern="LATEST-cairomm-\K[0-9.]+"
+ignore="*.?[13579].*"

From 44e6cb6224565366c92f2e24606d2a0772b9ba56 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:12:01 +0200
Subject: [PATCH 6/8] New package: pangomm2.48-2.48.1

---
 common/shlibs                |  1 +
 srcpkgs/pangomm2.48-devel    |  1 +
 srcpkgs/pangomm2.48/template | 25 +++++++++++++++++++++++++
 srcpkgs/pangomm2.48/update   |  3 +++
 4 files changed, 30 insertions(+)
 create mode 120000 srcpkgs/pangomm2.48-devel
 create mode 100644 srcpkgs/pangomm2.48/template
 create mode 100644 srcpkgs/pangomm2.48/update

diff --git a/common/shlibs b/common/shlibs
index 70877d48f67f..41c23b77998d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -671,6 +671,7 @@ libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
+libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/pangomm2.48-devel b/srcpkgs/pangomm2.48-devel
new file mode 120000
index 000000000000..5272be75915f
--- /dev/null
+++ b/srcpkgs/pangomm2.48-devel
@@ -0,0 +1 @@
+pangomm2.48
\ No newline at end of file
diff --git a/srcpkgs/pangomm2.48/template b/srcpkgs/pangomm2.48/template
new file mode 100644
index 000000000000..4bfc99a50ce1
--- /dev/null
+++ b/srcpkgs/pangomm2.48/template
@@ -0,0 +1,25 @@
+# Template file for 'pangomm2.48'
+pkgname=pangomm2.48
+version=2.48.1
+revision=1
+build_style=meson
+wrksrc="pangomm-$version"
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel glibmm2.68-devel cairomm1.16-devel pango-devel"
+short_desc="C++ bindings for the pango library"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+distfiles="${GNOME_SITE}/pangomm/${version%.*}/pangomm-${version}.tar.xz"
+checksum=776ad53e791e43106b7f40ff0834bee6e4eb1c6ad7cb6d215546f7a3df0edc4d
+
+pangomm2.48-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/pango*"
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/pangomm2.48/update b/srcpkgs/pangomm2.48/update
new file mode 100644
index 000000000000..dcf8a8115b45
--- /dev/null
+++ b/srcpkgs/pangomm2.48/update
@@ -0,0 +1,3 @@
+pkgname=pangomm
+site=https://gitlab.gnome.org/GNOME/pangomm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 9e1ff13dce8ff85ea97e77d6be4f6eec96cc08e1 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:35:51 +0200
Subject: [PATCH 7/8] New package: gtkmm4-4.2.0

---
 common/shlibs           |  1 +
 srcpkgs/gtkmm4-devel    |  1 +
 srcpkgs/gtkmm4/template | 31 +++++++++++++++++++++++++++++++
 srcpkgs/gtkmm4/update   |  3 +++
 4 files changed, 36 insertions(+)
 create mode 120000 srcpkgs/gtkmm4-devel
 create mode 100644 srcpkgs/gtkmm4/template
 create mode 100644 srcpkgs/gtkmm4/update

diff --git a/common/shlibs b/common/shlibs
index 41c23b77998d..ec5680699c4b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -675,6 +675,7 @@ libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
+libgtkmm-4.0.so.0 gtkmm4-4.0.0_1
 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1
 libsasl2.so.3 libsasl-2.1.26_1
 liblber-2.4.so.2 libldap-2.4.21_1
diff --git a/srcpkgs/gtkmm4-devel b/srcpkgs/gtkmm4-devel
new file mode 120000
index 000000000000..2fd4e3d7c98d
--- /dev/null
+++ b/srcpkgs/gtkmm4-devel
@@ -0,0 +1 @@
+gtkmm4
\ No newline at end of file
diff --git a/srcpkgs/gtkmm4/template b/srcpkgs/gtkmm4/template
new file mode 100644
index 000000000000..38d5e765449d
--- /dev/null
+++ b/srcpkgs/gtkmm4/template
@@ -0,0 +1,31 @@
+# Template file for 'gtkmm4'
+pkgname=gtkmm4
+version=4.2.0
+revision=1
+build_style=meson
+wrksrc="gtkmm-$version"
+hostmakedepends="pkg-config mm-common glib-devel"
+makedepends="gtk4-devel glibmm2.68-devel cairomm1.16-devel pangomm2.48-devel"
+checkdepends="xvfb-run"
+short_desc="C++ bindings for The GTK+ toolkit (v4)"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+changelog="https://gitlab.gnome.org/GNOME/gtkmm/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gtkmm/${version%.*}/gtkmm-${version}.tar.xz"
+checksum=480c4c38f2e7ffcf58f56bb4b4d612f3f0cac9fd5908fd2cd8249fe10592a98b
+
+do_check() {
+	xvfb-run ninja -C build test
+}
+
+gtkmm4-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/gtk*"
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/gtkmm4/update b/srcpkgs/gtkmm4/update
new file mode 100644
index 000000000000..c2c945d76e82
--- /dev/null
+++ b/srcpkgs/gtkmm4/update
@@ -0,0 +1,3 @@
+pkgname=gtkmm
+site=https://gitlab.gnome.org/GNOME/gtkmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 7d80cfd5983e02ab960608ad7e1a4d3e8d4c861d Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 20:31:15 +0200
Subject: [PATCH 8/8] New package: easyeffects-6.0.3

---
 srcpkgs/easyeffects/INSTALL.msg  |  4 ++++
 srcpkgs/easyeffects/template     | 22 ++++++++++++++++++++++
 srcpkgs/pulseeffects             |  1 +
 srcpkgs/pulseeffects/INSTALL.msg |  2 --
 srcpkgs/pulseeffects/template    | 19 -------------------
 5 files changed, 27 insertions(+), 21 deletions(-)
 create mode 100644 srcpkgs/easyeffects/INSTALL.msg
 create mode 100644 srcpkgs/easyeffects/template
 create mode 120000 srcpkgs/pulseeffects
 delete mode 100644 srcpkgs/pulseeffects/INSTALL.msg
 delete mode 100644 srcpkgs/pulseeffects/template

diff --git a/srcpkgs/easyeffects/INSTALL.msg b/srcpkgs/easyeffects/INSTALL.msg
new file mode 100644
index 000000000000..aa628df53f73
--- /dev/null
+++ b/srcpkgs/easyeffects/INSTALL.msg
@@ -0,0 +1,4 @@
+PulseEffects v5 was renamed to EasyEffects with the v6 update.
+
+EasyEffects only supports PipeWire, if you are using PulseAudio, install
+pulseeffects-legacy instead.
diff --git a/srcpkgs/easyeffects/template b/srcpkgs/easyeffects/template
new file mode 100644
index 000000000000..b224c2b41e24
--- /dev/null
+++ b/srcpkgs/easyeffects/template
@@ -0,0 +1,22 @@
+# Template file for 'easyeffects'
+pkgname=easyeffects
+version=6.0.3
+revision=1
+build_style=meson
+hostmakedepends="pkg-config gettext itstool"
+makedepends="gtkmm4-devel pipewire-devel zita-convolver-devel lilv-devel
+ libbs2b-devel fftw-devel libebur128-devel rnnoise-devel libsamplerate-devel
+ rubberband-devel speexdsp-devel json-c++"
+short_desc="Sound effects for systems using PipeWire"
+maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/wwmm/easyeffects"
+changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
+distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
+checksum=8bacae0aa8d668131dedfaef54819a25e23bafce4dcdf8dd7eb7f10796fce8df
+
+pulseeffects_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	build_style=meta
+	short_desc+=" (transitional dummy package)"
+}
diff --git a/srcpkgs/pulseeffects b/srcpkgs/pulseeffects
new file mode 120000
index 000000000000..f528ddb90f2d
--- /dev/null
+++ b/srcpkgs/pulseeffects
@@ -0,0 +1 @@
+easyeffects
\ No newline at end of file
diff --git a/srcpkgs/pulseeffects/INSTALL.msg b/srcpkgs/pulseeffects/INSTALL.msg
deleted file mode 100644
index 74c17ca2a8c5..000000000000
--- a/srcpkgs/pulseeffects/INSTALL.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-PulseEffects version 5 and later only support PipeWire and drop support for PulseAudio.
-If you want to use PulseEffects with PulseAudio, install pulseeffects-legacy instead.
diff --git a/srcpkgs/pulseeffects/template b/srcpkgs/pulseeffects/template
deleted file mode 100644
index 877e14b64341..000000000000
--- a/srcpkgs/pulseeffects/template
+++ /dev/null
@@ -1,19 +0,0 @@
-# Template file for 'pulseeffects'
-pkgname=pulseeffects
-version=5.0.4
-revision=1
-wrksrc=easyeffects-$version
-build_style=meson
-hostmakedepends="itstool pkg-config gettext"
-makedepends="boost-devel glib-devel gsettings-desktop-schemas-devel
- gst-plugins-bad1-devel gtkmm-devel libebur128-devel lilv-devel
- pipewire-devel sratom-devel zita-convolver-devel libbs2b-devel
- libsamplerate-devel libsndfile-devel rnnoise-devel"
-depends="calf gstreamer1-pipewire gst-plugins-good1 gst-plugins-bad1"
-short_desc="Sound effects for systems using PipeWire"
-maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
-license="GPL-3.0-or-later"
-homepage="https://github.com/wwmm/easyeffects"
-changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
-distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
-checksum=8c8e2f4c41ca690305e7ea6132eef1d529d0463c4146dd3ffa16616ad7d53005

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
@ 2021-07-18 21:15 ` paper42
  2021-07-24 11:45 ` Logarithmus
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: paper42 @ 2021-07-18 21:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1639 bytes --]

There is an updated pull request by paper42 against master on the void-packages repository

https://github.com/paper42/void-packages easyeffects
https://github.com/void-linux/void-packages/pull/32037

[NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [ ] #32027
- [ ] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

A patch file from https://github.com/void-linux/void-packages/pull/32037.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-easyeffects-32037.patch --]
[-- Type: text/x-diff, Size: 27822 bytes --]

From e1d3af665c475f9e9941eb8aa0da14c277e76605 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sat, 17 Jul 2021 10:48:46 +0200
Subject: [PATCH 1/8] meson: update to 0.58.1

---
 .../dont-use-native-pkgconfig-for-gir.patch   | 11 ---
 srcpkgs/meson/patches/fix-unittest.patch      | 77 -------------------
 ...dle-libraries-that-are-not-in-the-cu.patch | 54 +++++++++++++
 srcpkgs/meson/template                        |  7 +-
 4 files changed, 57 insertions(+), 92 deletions(-)
 delete mode 100644 srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
 delete mode 100644 srcpkgs/meson/patches/fix-unittest.patch
 create mode 100644 srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch

diff --git a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch b/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
deleted file mode 100644
index 3eefcff8e115..000000000000
--- a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-+++ b/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-@@ -403,7 +403,7 @@
- 
-     def _get_gir_dep(self, state):
-         if not self.gir_dep:
--            kwargs = {'native': True, 'required': True}
-+            kwargs = {'native': False, 'required': True}
-             holder = self.interpreter.func_dependency(state.current_node, ['gobject-introspection-1.0'], kwargs)
-             self.gir_dep = holder.held_object
-             giscanner = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
diff --git a/srcpkgs/meson/patches/fix-unittest.patch b/srcpkgs/meson/patches/fix-unittest.patch
deleted file mode 100644
index 8f73249b9f86..000000000000
--- a/srcpkgs/meson/patches/fix-unittest.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-commit 777cbe9c0faa018bafccf3e7adb8dad162276e35
-Author: Érico Rolim <erico.erc@gmail.com>
-Date:   Mon Feb 1 00:26:49 2021 -0300
-
-    tests/common: fix " 37 has function" test on musl systems.
-    
-    This commit fixes the test that asserts on whether the lchmod() function
-    should have been detected as available by Meson. It does so by assuming
-    that on Linux systems not using glibc, the function will be available.
-    
-    - fix comment about lchmod on Linux: musl has implemented the function
-    correctly since 2013, so the assumption in the test wasn't correct.
-    Furthermore, musl doesn't use glibc's stub mechanism.
-    - fix include to receive __GLIBC__ definition: including almost any
-    header in glibc will end up defining __GLIBC__, since most headers
-    include <features.h>. The <gnu/libc-version.h> header was probably
-    chosen because of its name, but its actual purpose is defining functions
-    for checking glibc version at runtime (instead of what the binary was
-    built with), so it isn't necessary to use it. Since it is a completely
-    non standard header, including it makes the test suite fail on musl due
-    to not finding the header.
-
-diff --git test cases/common/37 has function/meson.build test cases/common/37 has function/meson.build
-index 26f13d6fa..a59480c2d 100644
---- a/test cases/common/39 has function/meson.build	
-+++ b/test cases/common/39 has function/meson.build	
-@@ -44,11 +44,13 @@ foreach cc : compilers
-     error('Found non-existent function "hfkerhisadf".')
-   endif
- 
--  # With glibc on Linux lchmod is a stub that will always return an error,
--  # we want to detect that and declare that the function is not available.
--  # We can't check for the C library used here of course, but if it's not
--  # implemented in glibc it's probably not implemented in any other 'slimmer'
--  # C library variants either, so the check should be safe either way hopefully.
-+  # With glibc (before 2.32, see below) on Linux, lchmod is a stub that will
-+  # always return an error, we want to detect that and declare that the
-+  # function is not available.
-+  # We can't check for the C library used here of course, but the main
-+  # alternative Linux C library (musl) doesn't use glibc's stub mechanism;
-+  # also, it has implemented lchmod since 2013, so it should be safe to check
-+  # that lchmod is available on Linux when not using glibc.
-   if host_system == 'linux' or host_system == 'darwin'
-     assert (cc.has_function('poll', prefix : '#include <poll.h>',
-                             args : unit_test_args),
-@@ -57,15 +59,24 @@ foreach cc : compilers
-     has_lchmod = cc.has_function('lchmod', prefix : lchmod_prefix, args : unit_test_args)
- 
-     if host_system == 'linux'
--      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
--      message('GLIBC vetsion:', glibc_vers)
-+      # __GLIBC__ macro can be retrieved by including almost any C library header
-+      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <unistd.h>', args: unit_test_args)
-+      # __GLIBC__ will only be set for glibc
-+      if glibc_major != ''
-+        glibc_print = 'hi "@0@" hi'.format(glibc_major)
-+        message(glibc_print)
-+        glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <unistd.h>', args: unit_test_args)
-+        glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
-+        message('GLIBC version:', glibc_vers)
- 
--      # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
--      if glibc_vers.version_compare('<2.32')
--        assert (not has_lchmod, '"lchmod" check should have failed')
-+        # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
-+        if glibc_vers.version_compare('<2.32')
-+          assert (not has_lchmod, '"lchmod" check should have failed')
-+        else
-+          assert (has_lchmod, '"lchmod" check should have succeeded')
-+        endif
-       else
-+        # Other C libraries for Linux should have lchmod
-         assert (has_lchmod, '"lchmod" check should have succeeded')
-       endif
-     else
diff --git a/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
new file mode 100644
index 000000000000..cbec0aa37c17
--- /dev/null
+++ b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
@@ -0,0 +1,54 @@
+Revert "gnome: Handle libraries that are not in the current build dir"
+(gnome: Handle libraries that are not in the current build dir)
+
+This reverts commits df4314c7b88998aa9e7a497b1da04efb77110f60 (gnome: Handle libraries that are not in the current build dir) and 21897a10ca0295f65f158ed3cbac396bc5adbb54 (backends: Remove @PRIVATE_OUTDIR_(ABS)@ substitution"), because the revert of the first commit uses the substitutions removed by the second reverted commit.
+
+diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
+index ee5f4463a..9b4f34912 100644
+--- a/mesonbuild/backend/backends.py
++++ b/mesonbuild/backend/backends.py
+@@ -1250,6 +1250,18 @@ class Backend:
+                     else:
+                         pdir = self.get_target_private_dir(target)
+                     i = i.replace('@PRIVATE_DIR@', pdir)
++                if '@PRIVATE_OUTDIR_' in i:
++                    match = re.search(r'@PRIVATE_OUTDIR_(ABS_)?([^/\s*]*)@', i)
++                    if not match:
++                        msg = 'Custom target {!r} has an invalid argument {!r}' \
++                              ''.format(target.name, i)
++                        raise MesonException(msg)
++                    source = match.group(0)
++                    if match.group(1) is None and not target.absolute_paths:
++                        lead_dir = ''
++                    else:
++                        lead_dir = self.environment.get_build_dir()
++                    i = i.replace(source, os.path.join(lead_dir, outdir))
+             else:
+                 err_msg = 'Argument {0} is of unknown type {1}'
+                 raise RuntimeError(err_msg.format(str(i), str(type(i))))
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 99a6071d4..490bbb7fe 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -615,16 +615,15 @@ class GnomeModule(ExtensionModule):
+             else:
+                 # Because of https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/72
+                 # we can't use the full path until this is merged.
+-                libpath = os.path.join(girtarget.get_subdir(), girtarget.get_filename())
+                 if isinstance(girtarget, build.SharedLibrary):
+-                    # need to put our output directory first as we need to use the
+-                    # generated libraries instead of any possibly installed system/prefix
+-                    # ones.
+-                    ret += ["-L@BUILD_ROOT@/{}".format(os.path.dirname(libpath))]
+                     libname = girtarget.get_basename()
+                 else:
+-                    libname = os.path.join(f"@BUILD_ROOT@/{libpath}")
++                    libname = os.path.join("@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id(), girtarget.get_filename())
+                 ret += ['--library', libname]
++                # need to put our output directory first as we need to use the
++                # generated libraries instead of any possibly installed system/prefix
++                # ones.
++                ret += ["-L@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id()]
+                 # Needed for the following binutils bug:
+                 # https://github.com/mesonbuild/meson/issues/1911
+                 # However, g-ir-scanner does not understand -Wl,-rpath
diff --git a/srcpkgs/meson/template b/srcpkgs/meson/template
index bb484ec3e45e..94b33b6b5a1b 100644
--- a/srcpkgs/meson/template
+++ b/srcpkgs/meson/template
@@ -1,8 +1,7 @@
 # Template file for 'meson'
 pkgname=meson
-reverts="0.58.1_1"
-version=0.56.2
-revision=3
+version=0.58.1
+revision=2
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools"
 depends="ninja python3-setuptools"
@@ -15,7 +14,7 @@ license="Apache-2.0"
 homepage="https://mesonbuild.com"
 changelog="https://github.com/mesonbuild/meson/blob/master/docs/markdown/Release-notes-for-${version%.*}.0.md"
 distfiles="https://github.com/mesonbuild/meson/releases/download/$version/$pkgname-$version.tar.gz"
-checksum=3cb8bdb91383f7f8da642f916e4c44066a29262caa499341e2880f010edb87f4
+checksum=3144a3da662fcf79f1e5602fa929f2821cba4eba28c2c923fe0a7d3e3db04d5d
 
 # XXX: sanitizers aren't available on musl
 if [ "$XBPS_TARGET_LIBC" = glibc ]; then

From 96dc043ab922b4959cf006468f503743d31d31c3 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 19:24:14 +0200
Subject: [PATCH 2/8] gtk4: update to 4.2.1.

---
 srcpkgs/gtk4/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/gtk4/template b/srcpkgs/gtk4/template
index 450d393b09c0..95143fa98020 100644
--- a/srcpkgs/gtk4/template
+++ b/srcpkgs/gtk4/template
@@ -1,6 +1,6 @@
 # Template file for 'gtk4'
 pkgname=gtk4
-version=4.2.0
+version=4.2.1
 revision=1
 wrksrc="gtk-${version}"
 build_style=meson
@@ -29,7 +29,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://www.gtk.org/"
 distfiles="${GNOME_SITE}/gtk/${version%.*}/gtk-${version}.tar.xz"
-checksum=e975f286e911666a79b6bcf486e6f99b0bd9d2b4cc348d19bce487a0b1c97072
+checksum=023169775de43f0a1fde066fbc19d78545ea6a7562c1915abde9b8ae4a7309e6
 
 # Package build options
 build_options="broadway cloudproviders colord cups gir vulkan wayland x11"

From 42013defd8ea292fea7c36f3ab142265f27d4a53 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:46:23 +0200
Subject: [PATCH 3/8] libsigc++3: update to 3.0.7.

---
 srcpkgs/libsigc++3/template | 5 +++--
 srcpkgs/libsigc++3/update   | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libsigc++3/template b/srcpkgs/libsigc++3/template
index 9c96b9ee4924..681f61a30a43 100644
--- a/srcpkgs/libsigc++3/template
+++ b/srcpkgs/libsigc++3/template
@@ -1,6 +1,6 @@
 # Template file for 'libsigc++3'
 pkgname=libsigc++3
-version=3.0.3
+version=3.0.7
 revision=1
 wrksrc=libsigc++-${version}
 build_style=meson
@@ -10,8 +10,9 @@ short_desc="Type-safe callback system for C++ programs"
 maintainer="q66 <daniel@octaforge.org>"
 license="LGPL-3.0-only"
 homepage="https://libsigcplusplus.github.io/libsigcplusplus/"
+changelog="https://github.com/libsigcplusplus/libsigcplusplus/blob/master/NEWS"
 distfiles="${GNOME_SITE}/libsigc++/${version%.*}/libsigc++-${version}.tar.xz"
-checksum=e4f4866a894bdbe053e4fb22ccc6bc4b6851fd31a4746fdd20b2cf6e87c6edb6
+checksum=bfbe91c0d094ea6bbc6cbd3909b7d98c6561eea8b6d9c0c25add906a6e83d733
 
 pre_configure() {
 	# build static library as well as shared
diff --git a/srcpkgs/libsigc++3/update b/srcpkgs/libsigc++3/update
index 0d3fa3bab911..34ea63170e8c 100644
--- a/srcpkgs/libsigc++3/update
+++ b/srcpkgs/libsigc++3/update
@@ -1 +1,2 @@
+pkgname=libsigc++
 pattern="libsigc\+\+-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From cc5d876aff0cdffd8361eb649f5238623831a546 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:12:29 +0200
Subject: [PATCH 4/8] New package: glibmm2.68-2.68.1

---
 common/shlibs               |  3 +++
 srcpkgs/glibmm2.68-devel    |  1 +
 srcpkgs/glibmm2.68/template | 27 +++++++++++++++++++++++++++
 srcpkgs/glibmm2.68/update   |  3 +++
 4 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/glibmm2.68-devel
 create mode 100644 srcpkgs/glibmm2.68/template
 create mode 100644 srcpkgs/glibmm2.68/update

diff --git a/common/shlibs b/common/shlibs
index 77c205b376d2..258334e67c7a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -665,6 +665,9 @@ libsigc-3.0.so.0 libsigc++3-3.0.3_1
 libglibmm-2.4.so.1 glibmm-2.24.0_1
 libgiomm-2.4.so.1 glibmm-2.24.0_1
 libglibmm_generate_extra_defs-2.4.so.1 glibmm-2.24.0_1
+libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
+libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
+libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
diff --git a/srcpkgs/glibmm2.68-devel b/srcpkgs/glibmm2.68-devel
new file mode 120000
index 000000000000..7879cbce406a
--- /dev/null
+++ b/srcpkgs/glibmm2.68-devel
@@ -0,0 +1 @@
+glibmm2.68
\ No newline at end of file
diff --git a/srcpkgs/glibmm2.68/template b/srcpkgs/glibmm2.68/template
new file mode 100644
index 000000000000..11eac004b7ff
--- /dev/null
+++ b/srcpkgs/glibmm2.68/template
@@ -0,0 +1,27 @@
+# Template file for 'glibmm2.68'
+pkgname=glibmm2.68
+version=2.68.1
+revision=1
+wrksrc="glibmm-$version"
+build_style=meson
+hostmakedepends="glib-devel perl pkg-config"
+makedepends="libglib-devel libsigc++3-devel"
+checkdepends="glib-networking"
+short_desc="C++ bindings for GLib"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://www.gtkmm.org"
+distfiles="${GNOME_SITE}/glibmm/${version%.*}/glibmm-${version}.tar.xz"
+checksum=6664e27c9a9cca81c29e35687f49f2e0d173a2fc9e98c3428311f707db532f8c
+
+glibmm2.68-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/lib/glibmm-2.68
+		vmove usr/lib/giomm-2.68
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/glibmm2.68/update b/srcpkgs/glibmm2.68/update
new file mode 100644
index 000000000000..c2768fb0e70f
--- /dev/null
+++ b/srcpkgs/glibmm2.68/update
@@ -0,0 +1,3 @@
+pkgname=glibmm
+site=https://gitlab.gnome.org/GNOME/glibmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 0898f104591de0413d59f6b8627f8ef7358e83fb Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:20:26 +0200
Subject: [PATCH 5/8] New package: cairomm1.16-1.16.1

---
 common/shlibs                |  1 +
 srcpkgs/cairomm1.16-devel    |  1 +
 srcpkgs/cairomm1.16/template | 24 ++++++++++++++++++++++++
 srcpkgs/cairomm1.16/update   |  2 ++
 4 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/cairomm1.16-devel
 create mode 100644 srcpkgs/cairomm1.16/template
 create mode 100644 srcpkgs/cairomm1.16/update

diff --git a/common/shlibs b/common/shlibs
index 258334e67c7a..70877d48f67f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -669,6 +669,7 @@ libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
 libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
 libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
+libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/cairomm1.16-devel b/srcpkgs/cairomm1.16-devel
new file mode 120000
index 000000000000..e427b6504ea5
--- /dev/null
+++ b/srcpkgs/cairomm1.16-devel
@@ -0,0 +1 @@
+cairomm1.16
\ No newline at end of file
diff --git a/srcpkgs/cairomm1.16/template b/srcpkgs/cairomm1.16/template
new file mode 100644
index 000000000000..e1f0e2dda546
--- /dev/null
+++ b/srcpkgs/cairomm1.16/template
@@ -0,0 +1,24 @@
+# Template file for 'cairomm1.16'
+pkgname=cairomm1.16
+version=1.16.1
+revision=1
+wrksrc="cairomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel fontconfig-devel libpng-devel libXrender-devel cairo-devel"
+short_desc="C++ bindings to Cairo vector graphics library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-or-later, MPL-1.1"
+homepage="https://www.cairographics.org/cairomm/"
+distfiles="http://cairographics.org/releases/cairomm-$version.tar.xz"
+checksum=6f6060d8e98dd4b8acfee2295fddbdd38cf487c07c26aad8d1a83bb9bff4a2c6
+
+cairomm1.16-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/cairomm*"
+		vmove usr/lib/pkgconfig
+	}
+}
diff --git a/srcpkgs/cairomm1.16/update b/srcpkgs/cairomm1.16/update
new file mode 100644
index 000000000000..aa4bf1b2c193
--- /dev/null
+++ b/srcpkgs/cairomm1.16/update
@@ -0,0 +1,2 @@
+pattern="LATEST-cairomm-\K[0-9.]+"
+ignore="*.?[13579].*"

From d61517bb7f833160b764c1ef1b8583a3bd5d8ba2 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:12:01 +0200
Subject: [PATCH 6/8] New package: pangomm2.48-2.48.1

---
 common/shlibs                |  1 +
 srcpkgs/pangomm2.48-devel    |  1 +
 srcpkgs/pangomm2.48/template | 25 +++++++++++++++++++++++++
 srcpkgs/pangomm2.48/update   |  3 +++
 4 files changed, 30 insertions(+)
 create mode 120000 srcpkgs/pangomm2.48-devel
 create mode 100644 srcpkgs/pangomm2.48/template
 create mode 100644 srcpkgs/pangomm2.48/update

diff --git a/common/shlibs b/common/shlibs
index 70877d48f67f..41c23b77998d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -671,6 +671,7 @@ libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
+libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/pangomm2.48-devel b/srcpkgs/pangomm2.48-devel
new file mode 120000
index 000000000000..5272be75915f
--- /dev/null
+++ b/srcpkgs/pangomm2.48-devel
@@ -0,0 +1 @@
+pangomm2.48
\ No newline at end of file
diff --git a/srcpkgs/pangomm2.48/template b/srcpkgs/pangomm2.48/template
new file mode 100644
index 000000000000..291837c42612
--- /dev/null
+++ b/srcpkgs/pangomm2.48/template
@@ -0,0 +1,25 @@
+# Template file for 'pangomm2.48'
+pkgname=pangomm2.48
+version=2.48.1
+revision=1
+wrksrc="pangomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel glibmm2.68-devel cairomm1.16-devel pango-devel"
+short_desc="C++ bindings for the pango library"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+distfiles="${GNOME_SITE}/pangomm/${version%.*}/pangomm-${version}.tar.xz"
+checksum=776ad53e791e43106b7f40ff0834bee6e4eb1c6ad7cb6d215546f7a3df0edc4d
+
+pangomm2.48-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/pango*"
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/pangomm2.48/update b/srcpkgs/pangomm2.48/update
new file mode 100644
index 000000000000..dcf8a8115b45
--- /dev/null
+++ b/srcpkgs/pangomm2.48/update
@@ -0,0 +1,3 @@
+pkgname=pangomm
+site=https://gitlab.gnome.org/GNOME/pangomm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From e32064043e8c30187e747fcf8b05f90ae2f55dcc Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:35:51 +0200
Subject: [PATCH 7/8] New package: gtkmm4-4.2.0

---
 common/shlibs           |  1 +
 srcpkgs/gtkmm4-devel    |  1 +
 srcpkgs/gtkmm4/template | 31 +++++++++++++++++++++++++++++++
 srcpkgs/gtkmm4/update   |  3 +++
 4 files changed, 36 insertions(+)
 create mode 120000 srcpkgs/gtkmm4-devel
 create mode 100644 srcpkgs/gtkmm4/template
 create mode 100644 srcpkgs/gtkmm4/update

diff --git a/common/shlibs b/common/shlibs
index 41c23b77998d..ec5680699c4b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -675,6 +675,7 @@ libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
+libgtkmm-4.0.so.0 gtkmm4-4.0.0_1
 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1
 libsasl2.so.3 libsasl-2.1.26_1
 liblber-2.4.so.2 libldap-2.4.21_1
diff --git a/srcpkgs/gtkmm4-devel b/srcpkgs/gtkmm4-devel
new file mode 120000
index 000000000000..2fd4e3d7c98d
--- /dev/null
+++ b/srcpkgs/gtkmm4-devel
@@ -0,0 +1 @@
+gtkmm4
\ No newline at end of file
diff --git a/srcpkgs/gtkmm4/template b/srcpkgs/gtkmm4/template
new file mode 100644
index 000000000000..8c6926c570c7
--- /dev/null
+++ b/srcpkgs/gtkmm4/template
@@ -0,0 +1,31 @@
+# Template file for 'gtkmm4'
+pkgname=gtkmm4
+version=4.2.0
+revision=1
+wrksrc="gtkmm-$version"
+build_style=meson
+hostmakedepends="pkg-config mm-common glib-devel"
+makedepends="gtk4-devel glibmm2.68-devel cairomm1.16-devel pangomm2.48-devel"
+checkdepends="xvfb-run"
+short_desc="C++ bindings for The GTK+ toolkit (v4)"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+changelog="https://gitlab.gnome.org/GNOME/gtkmm/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gtkmm/${version%.*}/gtkmm-${version}.tar.xz"
+checksum=480c4c38f2e7ffcf58f56bb4b4d612f3f0cac9fd5908fd2cd8249fe10592a98b
+
+do_check() {
+	xvfb-run ninja -C build test
+}
+
+gtkmm4-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/gtk*"
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/gtkmm4/update b/srcpkgs/gtkmm4/update
new file mode 100644
index 000000000000..c2c945d76e82
--- /dev/null
+++ b/srcpkgs/gtkmm4/update
@@ -0,0 +1,3 @@
+pkgname=gtkmm
+site=https://gitlab.gnome.org/GNOME/gtkmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From b2f46542142481cbc7d9eeba60528bad5240a76e Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 20:31:15 +0200
Subject: [PATCH 8/8] New package: easyeffects-6.0.3

---
 srcpkgs/easyeffects/INSTALL.msg  |  4 ++++
 srcpkgs/easyeffects/template     | 22 ++++++++++++++++++++++
 srcpkgs/pulseeffects             |  1 +
 srcpkgs/pulseeffects/INSTALL.msg |  2 --
 srcpkgs/pulseeffects/template    | 19 -------------------
 5 files changed, 27 insertions(+), 21 deletions(-)
 create mode 100644 srcpkgs/easyeffects/INSTALL.msg
 create mode 100644 srcpkgs/easyeffects/template
 create mode 120000 srcpkgs/pulseeffects
 delete mode 100644 srcpkgs/pulseeffects/INSTALL.msg
 delete mode 100644 srcpkgs/pulseeffects/template

diff --git a/srcpkgs/easyeffects/INSTALL.msg b/srcpkgs/easyeffects/INSTALL.msg
new file mode 100644
index 000000000000..aa628df53f73
--- /dev/null
+++ b/srcpkgs/easyeffects/INSTALL.msg
@@ -0,0 +1,4 @@
+PulseEffects v5 was renamed to EasyEffects with the v6 update.
+
+EasyEffects only supports PipeWire, if you are using PulseAudio, install
+pulseeffects-legacy instead.
diff --git a/srcpkgs/easyeffects/template b/srcpkgs/easyeffects/template
new file mode 100644
index 000000000000..b224c2b41e24
--- /dev/null
+++ b/srcpkgs/easyeffects/template
@@ -0,0 +1,22 @@
+# Template file for 'easyeffects'
+pkgname=easyeffects
+version=6.0.3
+revision=1
+build_style=meson
+hostmakedepends="pkg-config gettext itstool"
+makedepends="gtkmm4-devel pipewire-devel zita-convolver-devel lilv-devel
+ libbs2b-devel fftw-devel libebur128-devel rnnoise-devel libsamplerate-devel
+ rubberband-devel speexdsp-devel json-c++"
+short_desc="Sound effects for systems using PipeWire"
+maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/wwmm/easyeffects"
+changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
+distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
+checksum=8bacae0aa8d668131dedfaef54819a25e23bafce4dcdf8dd7eb7f10796fce8df
+
+pulseeffects_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	build_style=meta
+	short_desc+=" (transitional dummy package)"
+}
diff --git a/srcpkgs/pulseeffects b/srcpkgs/pulseeffects
new file mode 120000
index 000000000000..f528ddb90f2d
--- /dev/null
+++ b/srcpkgs/pulseeffects
@@ -0,0 +1 @@
+easyeffects
\ No newline at end of file
diff --git a/srcpkgs/pulseeffects/INSTALL.msg b/srcpkgs/pulseeffects/INSTALL.msg
deleted file mode 100644
index 74c17ca2a8c5..000000000000
--- a/srcpkgs/pulseeffects/INSTALL.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-PulseEffects version 5 and later only support PipeWire and drop support for PulseAudio.
-If you want to use PulseEffects with PulseAudio, install pulseeffects-legacy instead.
diff --git a/srcpkgs/pulseeffects/template b/srcpkgs/pulseeffects/template
deleted file mode 100644
index 877e14b64341..000000000000
--- a/srcpkgs/pulseeffects/template
+++ /dev/null
@@ -1,19 +0,0 @@
-# Template file for 'pulseeffects'
-pkgname=pulseeffects
-version=5.0.4
-revision=1
-wrksrc=easyeffects-$version
-build_style=meson
-hostmakedepends="itstool pkg-config gettext"
-makedepends="boost-devel glib-devel gsettings-desktop-schemas-devel
- gst-plugins-bad1-devel gtkmm-devel libebur128-devel lilv-devel
- pipewire-devel sratom-devel zita-convolver-devel libbs2b-devel
- libsamplerate-devel libsndfile-devel rnnoise-devel"
-depends="calf gstreamer1-pipewire gst-plugins-good1 gst-plugins-bad1"
-short_desc="Sound effects for systems using PipeWire"
-maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
-license="GPL-3.0-or-later"
-homepage="https://github.com/wwmm/easyeffects"
-changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
-distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
-checksum=8c8e2f4c41ca690305e7ea6132eef1d529d0463c4146dd3ffa16616ad7d53005

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
  2021-07-18 21:15 ` [PR PATCH] [Updated] " paper42
@ 2021-07-24 11:45 ` Logarithmus
  2021-08-04 21:52 ` [PR PATCH] [Updated] " paper42
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Logarithmus @ 2021-07-24 11:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New comment by Logarithmus on void-packages repository

https://github.com/void-linux/void-packages/pull/32037#issuecomment-886041666

Comment:
Good job!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
  2021-07-18 21:15 ` [PR PATCH] [Updated] " paper42
  2021-07-24 11:45 ` Logarithmus
@ 2021-08-04 21:52 ` paper42
  2021-08-24 22:04 ` paper42
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: paper42 @ 2021-08-04 21:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1639 bytes --]

There is an updated pull request by paper42 against master on the void-packages repository

https://github.com/paper42/void-packages easyeffects
https://github.com/void-linux/void-packages/pull/32037

[NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [ ] #32027
- [ ] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

A patch file from https://github.com/void-linux/void-packages/pull/32037.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-easyeffects-32037.patch --]
[-- Type: text/x-diff, Size: 26793 bytes --]

From a0cdc6fe94d005e895b2508eb495eea158c0b5eb Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sat, 17 Jul 2021 10:48:46 +0200
Subject: [PATCH 1/7] meson: update to 0.58.1

---
 .../dont-use-native-pkgconfig-for-gir.patch   | 11 ---
 srcpkgs/meson/patches/fix-unittest.patch      | 77 -------------------
 ...dle-libraries-that-are-not-in-the-cu.patch | 54 +++++++++++++
 srcpkgs/meson/template                        |  7 +-
 4 files changed, 57 insertions(+), 92 deletions(-)
 delete mode 100644 srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
 delete mode 100644 srcpkgs/meson/patches/fix-unittest.patch
 create mode 100644 srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch

diff --git a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch b/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
deleted file mode 100644
index 3eefcff8e115..000000000000
--- a/srcpkgs/meson/patches/dont-use-native-pkgconfig-for-gir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-+++ b/mesonbuild/modules/gnome.py	2020-06-29 19:00:15.000000000 +0200
-@@ -403,7 +403,7 @@
- 
-     def _get_gir_dep(self, state):
-         if not self.gir_dep:
--            kwargs = {'native': True, 'required': True}
-+            kwargs = {'native': False, 'required': True}
-             holder = self.interpreter.func_dependency(state.current_node, ['gobject-introspection-1.0'], kwargs)
-             self.gir_dep = holder.held_object
-             giscanner = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
diff --git a/srcpkgs/meson/patches/fix-unittest.patch b/srcpkgs/meson/patches/fix-unittest.patch
deleted file mode 100644
index 8f73249b9f86..000000000000
--- a/srcpkgs/meson/patches/fix-unittest.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-commit 777cbe9c0faa018bafccf3e7adb8dad162276e35
-Author: Érico Rolim <erico.erc@gmail.com>
-Date:   Mon Feb 1 00:26:49 2021 -0300
-
-    tests/common: fix " 37 has function" test on musl systems.
-    
-    This commit fixes the test that asserts on whether the lchmod() function
-    should have been detected as available by Meson. It does so by assuming
-    that on Linux systems not using glibc, the function will be available.
-    
-    - fix comment about lchmod on Linux: musl has implemented the function
-    correctly since 2013, so the assumption in the test wasn't correct.
-    Furthermore, musl doesn't use glibc's stub mechanism.
-    - fix include to receive __GLIBC__ definition: including almost any
-    header in glibc will end up defining __GLIBC__, since most headers
-    include <features.h>. The <gnu/libc-version.h> header was probably
-    chosen because of its name, but its actual purpose is defining functions
-    for checking glibc version at runtime (instead of what the binary was
-    built with), so it isn't necessary to use it. Since it is a completely
-    non standard header, including it makes the test suite fail on musl due
-    to not finding the header.
-
-diff --git test cases/common/37 has function/meson.build test cases/common/37 has function/meson.build
-index 26f13d6fa..a59480c2d 100644
---- a/test cases/common/39 has function/meson.build	
-+++ b/test cases/common/39 has function/meson.build	
-@@ -44,11 +44,13 @@ foreach cc : compilers
-     error('Found non-existent function "hfkerhisadf".')
-   endif
- 
--  # With glibc on Linux lchmod is a stub that will always return an error,
--  # we want to detect that and declare that the function is not available.
--  # We can't check for the C library used here of course, but if it's not
--  # implemented in glibc it's probably not implemented in any other 'slimmer'
--  # C library variants either, so the check should be safe either way hopefully.
-+  # With glibc (before 2.32, see below) on Linux, lchmod is a stub that will
-+  # always return an error, we want to detect that and declare that the
-+  # function is not available.
-+  # We can't check for the C library used here of course, but the main
-+  # alternative Linux C library (musl) doesn't use glibc's stub mechanism;
-+  # also, it has implemented lchmod since 2013, so it should be safe to check
-+  # that lchmod is available on Linux when not using glibc.
-   if host_system == 'linux' or host_system == 'darwin'
-     assert (cc.has_function('poll', prefix : '#include <poll.h>',
-                             args : unit_test_args),
-@@ -57,15 +59,24 @@ foreach cc : compilers
-     has_lchmod = cc.has_function('lchmod', prefix : lchmod_prefix, args : unit_test_args)
- 
-     if host_system == 'linux'
--      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <gnu/libc-version.h>', args: unit_test_args)
--      glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
--      message('GLIBC vetsion:', glibc_vers)
-+      # __GLIBC__ macro can be retrieved by including almost any C library header
-+      glibc_major = cc.get_define('__GLIBC__', prefix: '#include <unistd.h>', args: unit_test_args)
-+      # __GLIBC__ will only be set for glibc
-+      if glibc_major != ''
-+        glibc_print = 'hi "@0@" hi'.format(glibc_major)
-+        message(glibc_print)
-+        glibc_minor = cc.get_define('__GLIBC_MINOR__', prefix: '#include <unistd.h>', args: unit_test_args)
-+        glibc_vers = '@0@.@1@'.format(glibc_major, glibc_minor)
-+        message('GLIBC version:', glibc_vers)
- 
--      # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
--      if glibc_vers.version_compare('<2.32')
--        assert (not has_lchmod, '"lchmod" check should have failed')
-+        # lchmod was implemented in glibc 2.32 (https://sourceware.org/pipermail/libc-announce/2020/000029.html)
-+        if glibc_vers.version_compare('<2.32')
-+          assert (not has_lchmod, '"lchmod" check should have failed')
-+        else
-+          assert (has_lchmod, '"lchmod" check should have succeeded')
-+        endif
-       else
-+        # Other C libraries for Linux should have lchmod
-         assert (has_lchmod, '"lchmod" check should have succeeded')
-       endif
-     else
diff --git a/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
new file mode 100644
index 000000000000..cbec0aa37c17
--- /dev/null
+++ b/srcpkgs/meson/patches/revert-gnome-Handle-libraries-that-are-not-in-the-cu.patch
@@ -0,0 +1,54 @@
+Revert "gnome: Handle libraries that are not in the current build dir"
+(gnome: Handle libraries that are not in the current build dir)
+
+This reverts commits df4314c7b88998aa9e7a497b1da04efb77110f60 (gnome: Handle libraries that are not in the current build dir) and 21897a10ca0295f65f158ed3cbac396bc5adbb54 (backends: Remove @PRIVATE_OUTDIR_(ABS)@ substitution"), because the revert of the first commit uses the substitutions removed by the second reverted commit.
+
+diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
+index ee5f4463a..9b4f34912 100644
+--- a/mesonbuild/backend/backends.py
++++ b/mesonbuild/backend/backends.py
+@@ -1250,6 +1250,18 @@ class Backend:
+                     else:
+                         pdir = self.get_target_private_dir(target)
+                     i = i.replace('@PRIVATE_DIR@', pdir)
++                if '@PRIVATE_OUTDIR_' in i:
++                    match = re.search(r'@PRIVATE_OUTDIR_(ABS_)?([^/\s*]*)@', i)
++                    if not match:
++                        msg = 'Custom target {!r} has an invalid argument {!r}' \
++                              ''.format(target.name, i)
++                        raise MesonException(msg)
++                    source = match.group(0)
++                    if match.group(1) is None and not target.absolute_paths:
++                        lead_dir = ''
++                    else:
++                        lead_dir = self.environment.get_build_dir()
++                    i = i.replace(source, os.path.join(lead_dir, outdir))
+             else:
+                 err_msg = 'Argument {0} is of unknown type {1}'
+                 raise RuntimeError(err_msg.format(str(i), str(type(i))))
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 99a6071d4..490bbb7fe 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -615,16 +615,15 @@ class GnomeModule(ExtensionModule):
+             else:
+                 # Because of https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/72
+                 # we can't use the full path until this is merged.
+-                libpath = os.path.join(girtarget.get_subdir(), girtarget.get_filename())
+                 if isinstance(girtarget, build.SharedLibrary):
+-                    # need to put our output directory first as we need to use the
+-                    # generated libraries instead of any possibly installed system/prefix
+-                    # ones.
+-                    ret += ["-L@BUILD_ROOT@/{}".format(os.path.dirname(libpath))]
+                     libname = girtarget.get_basename()
+                 else:
+-                    libname = os.path.join(f"@BUILD_ROOT@/{libpath}")
++                    libname = os.path.join("@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id(), girtarget.get_filename())
+                 ret += ['--library', libname]
++                # need to put our output directory first as we need to use the
++                # generated libraries instead of any possibly installed system/prefix
++                # ones.
++                ret += ["-L@PRIVATE_OUTDIR_ABS_%s@" % girtarget.get_id()]
+                 # Needed for the following binutils bug:
+                 # https://github.com/mesonbuild/meson/issues/1911
+                 # However, g-ir-scanner does not understand -Wl,-rpath
diff --git a/srcpkgs/meson/template b/srcpkgs/meson/template
index bb484ec3e45e..94b33b6b5a1b 100644
--- a/srcpkgs/meson/template
+++ b/srcpkgs/meson/template
@@ -1,8 +1,7 @@
 # Template file for 'meson'
 pkgname=meson
-reverts="0.58.1_1"
-version=0.56.2
-revision=3
+version=0.58.1
+revision=2
 build_style=python3-module
 hostmakedepends="python3-devel python3-setuptools"
 depends="ninja python3-setuptools"
@@ -15,7 +14,7 @@ license="Apache-2.0"
 homepage="https://mesonbuild.com"
 changelog="https://github.com/mesonbuild/meson/blob/master/docs/markdown/Release-notes-for-${version%.*}.0.md"
 distfiles="https://github.com/mesonbuild/meson/releases/download/$version/$pkgname-$version.tar.gz"
-checksum=3cb8bdb91383f7f8da642f916e4c44066a29262caa499341e2880f010edb87f4
+checksum=3144a3da662fcf79f1e5602fa929f2821cba4eba28c2c923fe0a7d3e3db04d5d
 
 # XXX: sanitizers aren't available on musl
 if [ "$XBPS_TARGET_LIBC" = glibc ]; then

From 2198bfbcc6e621ca0084a0cf7e43c33aa22e95be Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:46:23 +0200
Subject: [PATCH 2/7] libsigc++3: update to 3.0.7.

---
 srcpkgs/libsigc++3/template | 5 +++--
 srcpkgs/libsigc++3/update   | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libsigc++3/template b/srcpkgs/libsigc++3/template
index 9c96b9ee4924..681f61a30a43 100644
--- a/srcpkgs/libsigc++3/template
+++ b/srcpkgs/libsigc++3/template
@@ -1,6 +1,6 @@
 # Template file for 'libsigc++3'
 pkgname=libsigc++3
-version=3.0.3
+version=3.0.7
 revision=1
 wrksrc=libsigc++-${version}
 build_style=meson
@@ -10,8 +10,9 @@ short_desc="Type-safe callback system for C++ programs"
 maintainer="q66 <daniel@octaforge.org>"
 license="LGPL-3.0-only"
 homepage="https://libsigcplusplus.github.io/libsigcplusplus/"
+changelog="https://github.com/libsigcplusplus/libsigcplusplus/blob/master/NEWS"
 distfiles="${GNOME_SITE}/libsigc++/${version%.*}/libsigc++-${version}.tar.xz"
-checksum=e4f4866a894bdbe053e4fb22ccc6bc4b6851fd31a4746fdd20b2cf6e87c6edb6
+checksum=bfbe91c0d094ea6bbc6cbd3909b7d98c6561eea8b6d9c0c25add906a6e83d733
 
 pre_configure() {
 	# build static library as well as shared
diff --git a/srcpkgs/libsigc++3/update b/srcpkgs/libsigc++3/update
index 0d3fa3bab911..34ea63170e8c 100644
--- a/srcpkgs/libsigc++3/update
+++ b/srcpkgs/libsigc++3/update
@@ -1 +1,2 @@
+pkgname=libsigc++
 pattern="libsigc\+\+-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 2db2705c3aec9396cc9741b9e2db67647d219733 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:12:29 +0200
Subject: [PATCH 3/7] New package: glibmm2.68-2.68.1

---
 common/shlibs               |  3 +++
 srcpkgs/glibmm2.68-devel    |  1 +
 srcpkgs/glibmm2.68/template | 27 +++++++++++++++++++++++++++
 srcpkgs/glibmm2.68/update   |  3 +++
 4 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/glibmm2.68-devel
 create mode 100644 srcpkgs/glibmm2.68/template
 create mode 100644 srcpkgs/glibmm2.68/update

diff --git a/common/shlibs b/common/shlibs
index f768a637aed5..3ad06425d50d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -665,6 +665,9 @@ libsigc-3.0.so.0 libsigc++3-3.0.3_1
 libglibmm-2.4.so.1 glibmm-2.24.0_1
 libgiomm-2.4.so.1 glibmm-2.24.0_1
 libglibmm_generate_extra_defs-2.4.so.1 glibmm-2.24.0_1
+libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
+libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
+libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
diff --git a/srcpkgs/glibmm2.68-devel b/srcpkgs/glibmm2.68-devel
new file mode 120000
index 000000000000..7879cbce406a
--- /dev/null
+++ b/srcpkgs/glibmm2.68-devel
@@ -0,0 +1 @@
+glibmm2.68
\ No newline at end of file
diff --git a/srcpkgs/glibmm2.68/template b/srcpkgs/glibmm2.68/template
new file mode 100644
index 000000000000..11eac004b7ff
--- /dev/null
+++ b/srcpkgs/glibmm2.68/template
@@ -0,0 +1,27 @@
+# Template file for 'glibmm2.68'
+pkgname=glibmm2.68
+version=2.68.1
+revision=1
+wrksrc="glibmm-$version"
+build_style=meson
+hostmakedepends="glib-devel perl pkg-config"
+makedepends="libglib-devel libsigc++3-devel"
+checkdepends="glib-networking"
+short_desc="C++ bindings for GLib"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://www.gtkmm.org"
+distfiles="${GNOME_SITE}/glibmm/${version%.*}/glibmm-${version}.tar.xz"
+checksum=6664e27c9a9cca81c29e35687f49f2e0d173a2fc9e98c3428311f707db532f8c
+
+glibmm2.68-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/lib/glibmm-2.68
+		vmove usr/lib/giomm-2.68
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/glibmm2.68/update b/srcpkgs/glibmm2.68/update
new file mode 100644
index 000000000000..c2768fb0e70f
--- /dev/null
+++ b/srcpkgs/glibmm2.68/update
@@ -0,0 +1,3 @@
+pkgname=glibmm
+site=https://gitlab.gnome.org/GNOME/glibmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 1a84d8fd556374a954aac8a17ac2760a7adcd174 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:20:26 +0200
Subject: [PATCH 4/7] New package: cairomm1.16-1.16.1

---
 common/shlibs                |  1 +
 srcpkgs/cairomm1.16-devel    |  1 +
 srcpkgs/cairomm1.16/template | 24 ++++++++++++++++++++++++
 srcpkgs/cairomm1.16/update   |  2 ++
 4 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/cairomm1.16-devel
 create mode 100644 srcpkgs/cairomm1.16/template
 create mode 100644 srcpkgs/cairomm1.16/update

diff --git a/common/shlibs b/common/shlibs
index 3ad06425d50d..bc00d063236d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -669,6 +669,7 @@ libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
 libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
 libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
+libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/cairomm1.16-devel b/srcpkgs/cairomm1.16-devel
new file mode 120000
index 000000000000..e427b6504ea5
--- /dev/null
+++ b/srcpkgs/cairomm1.16-devel
@@ -0,0 +1 @@
+cairomm1.16
\ No newline at end of file
diff --git a/srcpkgs/cairomm1.16/template b/srcpkgs/cairomm1.16/template
new file mode 100644
index 000000000000..e1f0e2dda546
--- /dev/null
+++ b/srcpkgs/cairomm1.16/template
@@ -0,0 +1,24 @@
+# Template file for 'cairomm1.16'
+pkgname=cairomm1.16
+version=1.16.1
+revision=1
+wrksrc="cairomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel fontconfig-devel libpng-devel libXrender-devel cairo-devel"
+short_desc="C++ bindings to Cairo vector graphics library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-or-later, MPL-1.1"
+homepage="https://www.cairographics.org/cairomm/"
+distfiles="http://cairographics.org/releases/cairomm-$version.tar.xz"
+checksum=6f6060d8e98dd4b8acfee2295fddbdd38cf487c07c26aad8d1a83bb9bff4a2c6
+
+cairomm1.16-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/cairomm*"
+		vmove usr/lib/pkgconfig
+	}
+}
diff --git a/srcpkgs/cairomm1.16/update b/srcpkgs/cairomm1.16/update
new file mode 100644
index 000000000000..aa4bf1b2c193
--- /dev/null
+++ b/srcpkgs/cairomm1.16/update
@@ -0,0 +1,2 @@
+pattern="LATEST-cairomm-\K[0-9.]+"
+ignore="*.?[13579].*"

From 5976cab5e9599c326102c0782a28d454857c3775 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:12:01 +0200
Subject: [PATCH 5/7] New package: pangomm2.48-2.48.1

---
 common/shlibs                |  1 +
 srcpkgs/pangomm2.48-devel    |  1 +
 srcpkgs/pangomm2.48/template | 25 +++++++++++++++++++++++++
 srcpkgs/pangomm2.48/update   |  3 +++
 4 files changed, 30 insertions(+)
 create mode 120000 srcpkgs/pangomm2.48-devel
 create mode 100644 srcpkgs/pangomm2.48/template
 create mode 100644 srcpkgs/pangomm2.48/update

diff --git a/common/shlibs b/common/shlibs
index bc00d063236d..6ff07dd9477b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -671,6 +671,7 @@ libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
+libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/pangomm2.48-devel b/srcpkgs/pangomm2.48-devel
new file mode 120000
index 000000000000..5272be75915f
--- /dev/null
+++ b/srcpkgs/pangomm2.48-devel
@@ -0,0 +1 @@
+pangomm2.48
\ No newline at end of file
diff --git a/srcpkgs/pangomm2.48/template b/srcpkgs/pangomm2.48/template
new file mode 100644
index 000000000000..291837c42612
--- /dev/null
+++ b/srcpkgs/pangomm2.48/template
@@ -0,0 +1,25 @@
+# Template file for 'pangomm2.48'
+pkgname=pangomm2.48
+version=2.48.1
+revision=1
+wrksrc="pangomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel glibmm2.68-devel cairomm1.16-devel pango-devel"
+short_desc="C++ bindings for the pango library"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+distfiles="${GNOME_SITE}/pangomm/${version%.*}/pangomm-${version}.tar.xz"
+checksum=776ad53e791e43106b7f40ff0834bee6e4eb1c6ad7cb6d215546f7a3df0edc4d
+
+pangomm2.48-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/pango*"
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/pangomm2.48/update b/srcpkgs/pangomm2.48/update
new file mode 100644
index 000000000000..dcf8a8115b45
--- /dev/null
+++ b/srcpkgs/pangomm2.48/update
@@ -0,0 +1,3 @@
+pkgname=pangomm
+site=https://gitlab.gnome.org/GNOME/pangomm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From ee3e8452217c844fadc51db35e50df3f97cb6b04 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:35:51 +0200
Subject: [PATCH 6/7] New package: gtkmm4-4.2.0

---
 common/shlibs           |  1 +
 srcpkgs/gtkmm4-devel    |  1 +
 srcpkgs/gtkmm4/template | 31 +++++++++++++++++++++++++++++++
 srcpkgs/gtkmm4/update   |  3 +++
 4 files changed, 36 insertions(+)
 create mode 120000 srcpkgs/gtkmm4-devel
 create mode 100644 srcpkgs/gtkmm4/template
 create mode 100644 srcpkgs/gtkmm4/update

diff --git a/common/shlibs b/common/shlibs
index 6ff07dd9477b..d10efc4e7037 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -675,6 +675,7 @@ libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
+libgtkmm-4.0.so.0 gtkmm4-4.0.0_1
 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1
 libsasl2.so.3 libsasl-2.1.26_1
 liblber-2.4.so.2 libldap-2.4.21_1
diff --git a/srcpkgs/gtkmm4-devel b/srcpkgs/gtkmm4-devel
new file mode 120000
index 000000000000..2fd4e3d7c98d
--- /dev/null
+++ b/srcpkgs/gtkmm4-devel
@@ -0,0 +1 @@
+gtkmm4
\ No newline at end of file
diff --git a/srcpkgs/gtkmm4/template b/srcpkgs/gtkmm4/template
new file mode 100644
index 000000000000..8c6926c570c7
--- /dev/null
+++ b/srcpkgs/gtkmm4/template
@@ -0,0 +1,31 @@
+# Template file for 'gtkmm4'
+pkgname=gtkmm4
+version=4.2.0
+revision=1
+wrksrc="gtkmm-$version"
+build_style=meson
+hostmakedepends="pkg-config mm-common glib-devel"
+makedepends="gtk4-devel glibmm2.68-devel cairomm1.16-devel pangomm2.48-devel"
+checkdepends="xvfb-run"
+short_desc="C++ bindings for The GTK+ toolkit (v4)"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+changelog="https://gitlab.gnome.org/GNOME/gtkmm/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gtkmm/${version%.*}/gtkmm-${version}.tar.xz"
+checksum=480c4c38f2e7ffcf58f56bb4b4d612f3f0cac9fd5908fd2cd8249fe10592a98b
+
+do_check() {
+	xvfb-run ninja -C build test
+}
+
+gtkmm4-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/gtk*"
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/gtkmm4/update b/srcpkgs/gtkmm4/update
new file mode 100644
index 000000000000..c2c945d76e82
--- /dev/null
+++ b/srcpkgs/gtkmm4/update
@@ -0,0 +1,3 @@
+pkgname=gtkmm
+site=https://gitlab.gnome.org/GNOME/gtkmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From e03bbac2c2bfe18eb2a31dfdff94aa84004706a4 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 20:31:15 +0200
Subject: [PATCH 7/7] New package: easyeffects-6.0.3

---
 srcpkgs/easyeffects/INSTALL.msg  |  4 ++++
 srcpkgs/easyeffects/template     | 22 ++++++++++++++++++++++
 srcpkgs/pulseeffects             |  1 +
 srcpkgs/pulseeffects/INSTALL.msg |  2 --
 srcpkgs/pulseeffects/template    | 19 -------------------
 5 files changed, 27 insertions(+), 21 deletions(-)
 create mode 100644 srcpkgs/easyeffects/INSTALL.msg
 create mode 100644 srcpkgs/easyeffects/template
 create mode 120000 srcpkgs/pulseeffects
 delete mode 100644 srcpkgs/pulseeffects/INSTALL.msg
 delete mode 100644 srcpkgs/pulseeffects/template

diff --git a/srcpkgs/easyeffects/INSTALL.msg b/srcpkgs/easyeffects/INSTALL.msg
new file mode 100644
index 000000000000..aa628df53f73
--- /dev/null
+++ b/srcpkgs/easyeffects/INSTALL.msg
@@ -0,0 +1,4 @@
+PulseEffects v5 was renamed to EasyEffects with the v6 update.
+
+EasyEffects only supports PipeWire, if you are using PulseAudio, install
+pulseeffects-legacy instead.
diff --git a/srcpkgs/easyeffects/template b/srcpkgs/easyeffects/template
new file mode 100644
index 000000000000..b224c2b41e24
--- /dev/null
+++ b/srcpkgs/easyeffects/template
@@ -0,0 +1,22 @@
+# Template file for 'easyeffects'
+pkgname=easyeffects
+version=6.0.3
+revision=1
+build_style=meson
+hostmakedepends="pkg-config gettext itstool"
+makedepends="gtkmm4-devel pipewire-devel zita-convolver-devel lilv-devel
+ libbs2b-devel fftw-devel libebur128-devel rnnoise-devel libsamplerate-devel
+ rubberband-devel speexdsp-devel json-c++"
+short_desc="Sound effects for systems using PipeWire"
+maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/wwmm/easyeffects"
+changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
+distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
+checksum=8bacae0aa8d668131dedfaef54819a25e23bafce4dcdf8dd7eb7f10796fce8df
+
+pulseeffects_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	build_style=meta
+	short_desc+=" (transitional dummy package)"
+}
diff --git a/srcpkgs/pulseeffects b/srcpkgs/pulseeffects
new file mode 120000
index 000000000000..f528ddb90f2d
--- /dev/null
+++ b/srcpkgs/pulseeffects
@@ -0,0 +1 @@
+easyeffects
\ No newline at end of file
diff --git a/srcpkgs/pulseeffects/INSTALL.msg b/srcpkgs/pulseeffects/INSTALL.msg
deleted file mode 100644
index 74c17ca2a8c5..000000000000
--- a/srcpkgs/pulseeffects/INSTALL.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-PulseEffects version 5 and later only support PipeWire and drop support for PulseAudio.
-If you want to use PulseEffects with PulseAudio, install pulseeffects-legacy instead.
diff --git a/srcpkgs/pulseeffects/template b/srcpkgs/pulseeffects/template
deleted file mode 100644
index 877e14b64341..000000000000
--- a/srcpkgs/pulseeffects/template
+++ /dev/null
@@ -1,19 +0,0 @@
-# Template file for 'pulseeffects'
-pkgname=pulseeffects
-version=5.0.4
-revision=1
-wrksrc=easyeffects-$version
-build_style=meson
-hostmakedepends="itstool pkg-config gettext"
-makedepends="boost-devel glib-devel gsettings-desktop-schemas-devel
- gst-plugins-bad1-devel gtkmm-devel libebur128-devel lilv-devel
- pipewire-devel sratom-devel zita-convolver-devel libbs2b-devel
- libsamplerate-devel libsndfile-devel rnnoise-devel"
-depends="calf gstreamer1-pipewire gst-plugins-good1 gst-plugins-bad1"
-short_desc="Sound effects for systems using PipeWire"
-maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
-license="GPL-3.0-or-later"
-homepage="https://github.com/wwmm/easyeffects"
-changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
-distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
-checksum=8c8e2f4c41ca690305e7ea6132eef1d529d0463c4146dd3ffa16616ad7d53005

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
                   ` (2 preceding siblings ...)
  2021-08-04 21:52 ` [PR PATCH] [Updated] " paper42
@ 2021-08-24 22:04 ` paper42
  2021-08-31 20:11 ` [PR PATCH] [Updated] " paper42
  2021-08-31 20:12 ` [PR PATCH] [Merged]: " paper42
  5 siblings, 0 replies; 7+ messages in thread
From: paper42 @ 2021-08-24 22:04 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1639 bytes --]

There is an updated pull request by paper42 against master on the void-packages repository

https://github.com/paper42/void-packages easyeffects
https://github.com/void-linux/void-packages/pull/32037

[NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [x] #32027
- [x] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

A patch file from https://github.com/void-linux/void-packages/pull/32037.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-easyeffects-32037.patch --]
[-- Type: text/x-diff, Size: 15806 bytes --]

From be672c0fc45a3aacafbc6d7c8491efdd2f5651a2 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:46:23 +0200
Subject: [PATCH 1/6] libsigc++3: update to 3.0.7.

---
 srcpkgs/libsigc++3/template | 5 +++--
 srcpkgs/libsigc++3/update   | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libsigc++3/template b/srcpkgs/libsigc++3/template
index 9c96b9ee4924..681f61a30a43 100644
--- a/srcpkgs/libsigc++3/template
+++ b/srcpkgs/libsigc++3/template
@@ -1,6 +1,6 @@
 # Template file for 'libsigc++3'
 pkgname=libsigc++3
-version=3.0.3
+version=3.0.7
 revision=1
 wrksrc=libsigc++-${version}
 build_style=meson
@@ -10,8 +10,9 @@ short_desc="Type-safe callback system for C++ programs"
 maintainer="q66 <daniel@octaforge.org>"
 license="LGPL-3.0-only"
 homepage="https://libsigcplusplus.github.io/libsigcplusplus/"
+changelog="https://github.com/libsigcplusplus/libsigcplusplus/blob/master/NEWS"
 distfiles="${GNOME_SITE}/libsigc++/${version%.*}/libsigc++-${version}.tar.xz"
-checksum=e4f4866a894bdbe053e4fb22ccc6bc4b6851fd31a4746fdd20b2cf6e87c6edb6
+checksum=bfbe91c0d094ea6bbc6cbd3909b7d98c6561eea8b6d9c0c25add906a6e83d733
 
 pre_configure() {
 	# build static library as well as shared
diff --git a/srcpkgs/libsigc++3/update b/srcpkgs/libsigc++3/update
index 0d3fa3bab911..34ea63170e8c 100644
--- a/srcpkgs/libsigc++3/update
+++ b/srcpkgs/libsigc++3/update
@@ -1 +1,2 @@
+pkgname=libsigc++
 pattern="libsigc\+\+-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 01db0462630cc2a101f1439ed060931434fe9d76 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:12:29 +0200
Subject: [PATCH 2/6] New package: glibmm2.68-2.68.1

---
 common/shlibs               |  3 +++
 srcpkgs/glibmm2.68-devel    |  1 +
 srcpkgs/glibmm2.68/template | 27 +++++++++++++++++++++++++++
 srcpkgs/glibmm2.68/update   |  3 +++
 4 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/glibmm2.68-devel
 create mode 100644 srcpkgs/glibmm2.68/template
 create mode 100644 srcpkgs/glibmm2.68/update

diff --git a/common/shlibs b/common/shlibs
index 1723c8ed88da..315dea98eb21 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -665,6 +665,9 @@ libsigc-3.0.so.0 libsigc++3-3.0.3_1
 libglibmm-2.4.so.1 glibmm-2.24.0_1
 libgiomm-2.4.so.1 glibmm-2.24.0_1
 libglibmm_generate_extra_defs-2.4.so.1 glibmm-2.24.0_1
+libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
+libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
+libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
diff --git a/srcpkgs/glibmm2.68-devel b/srcpkgs/glibmm2.68-devel
new file mode 120000
index 000000000000..7879cbce406a
--- /dev/null
+++ b/srcpkgs/glibmm2.68-devel
@@ -0,0 +1 @@
+glibmm2.68
\ No newline at end of file
diff --git a/srcpkgs/glibmm2.68/template b/srcpkgs/glibmm2.68/template
new file mode 100644
index 000000000000..11eac004b7ff
--- /dev/null
+++ b/srcpkgs/glibmm2.68/template
@@ -0,0 +1,27 @@
+# Template file for 'glibmm2.68'
+pkgname=glibmm2.68
+version=2.68.1
+revision=1
+wrksrc="glibmm-$version"
+build_style=meson
+hostmakedepends="glib-devel perl pkg-config"
+makedepends="libglib-devel libsigc++3-devel"
+checkdepends="glib-networking"
+short_desc="C++ bindings for GLib"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://www.gtkmm.org"
+distfiles="${GNOME_SITE}/glibmm/${version%.*}/glibmm-${version}.tar.xz"
+checksum=6664e27c9a9cca81c29e35687f49f2e0d173a2fc9e98c3428311f707db532f8c
+
+glibmm2.68-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/lib/glibmm-2.68
+		vmove usr/lib/giomm-2.68
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/glibmm2.68/update b/srcpkgs/glibmm2.68/update
new file mode 100644
index 000000000000..c2768fb0e70f
--- /dev/null
+++ b/srcpkgs/glibmm2.68/update
@@ -0,0 +1,3 @@
+pkgname=glibmm
+site=https://gitlab.gnome.org/GNOME/glibmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 4abda1535b04ebd12f7fcd93b7d3a29c18e31a21 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:20:26 +0200
Subject: [PATCH 3/6] New package: cairomm1.16-1.16.1

---
 common/shlibs                |  1 +
 srcpkgs/cairomm1.16-devel    |  1 +
 srcpkgs/cairomm1.16/template | 24 ++++++++++++++++++++++++
 srcpkgs/cairomm1.16/update   |  2 ++
 4 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/cairomm1.16-devel
 create mode 100644 srcpkgs/cairomm1.16/template
 create mode 100644 srcpkgs/cairomm1.16/update

diff --git a/common/shlibs b/common/shlibs
index 315dea98eb21..ce67312633bf 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -669,6 +669,7 @@ libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
 libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
 libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
+libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/cairomm1.16-devel b/srcpkgs/cairomm1.16-devel
new file mode 120000
index 000000000000..e427b6504ea5
--- /dev/null
+++ b/srcpkgs/cairomm1.16-devel
@@ -0,0 +1 @@
+cairomm1.16
\ No newline at end of file
diff --git a/srcpkgs/cairomm1.16/template b/srcpkgs/cairomm1.16/template
new file mode 100644
index 000000000000..e1f0e2dda546
--- /dev/null
+++ b/srcpkgs/cairomm1.16/template
@@ -0,0 +1,24 @@
+# Template file for 'cairomm1.16'
+pkgname=cairomm1.16
+version=1.16.1
+revision=1
+wrksrc="cairomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel fontconfig-devel libpng-devel libXrender-devel cairo-devel"
+short_desc="C++ bindings to Cairo vector graphics library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-or-later, MPL-1.1"
+homepage="https://www.cairographics.org/cairomm/"
+distfiles="http://cairographics.org/releases/cairomm-$version.tar.xz"
+checksum=6f6060d8e98dd4b8acfee2295fddbdd38cf487c07c26aad8d1a83bb9bff4a2c6
+
+cairomm1.16-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/cairomm*"
+		vmove usr/lib/pkgconfig
+	}
+}
diff --git a/srcpkgs/cairomm1.16/update b/srcpkgs/cairomm1.16/update
new file mode 100644
index 000000000000..aa4bf1b2c193
--- /dev/null
+++ b/srcpkgs/cairomm1.16/update
@@ -0,0 +1,2 @@
+pattern="LATEST-cairomm-\K[0-9.]+"
+ignore="*.?[13579].*"

From 58251adce699b7983e6b360a5d0da7a7e1044208 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:12:01 +0200
Subject: [PATCH 4/6] New package: pangomm2.48-2.48.1

---
 common/shlibs                |  1 +
 srcpkgs/pangomm2.48-devel    |  1 +
 srcpkgs/pangomm2.48/template | 25 +++++++++++++++++++++++++
 srcpkgs/pangomm2.48/update   |  3 +++
 4 files changed, 30 insertions(+)
 create mode 120000 srcpkgs/pangomm2.48-devel
 create mode 100644 srcpkgs/pangomm2.48/template
 create mode 100644 srcpkgs/pangomm2.48/update

diff --git a/common/shlibs b/common/shlibs
index ce67312633bf..545d9061ad63 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -671,6 +671,7 @@ libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
+libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/pangomm2.48-devel b/srcpkgs/pangomm2.48-devel
new file mode 120000
index 000000000000..5272be75915f
--- /dev/null
+++ b/srcpkgs/pangomm2.48-devel
@@ -0,0 +1 @@
+pangomm2.48
\ No newline at end of file
diff --git a/srcpkgs/pangomm2.48/template b/srcpkgs/pangomm2.48/template
new file mode 100644
index 000000000000..291837c42612
--- /dev/null
+++ b/srcpkgs/pangomm2.48/template
@@ -0,0 +1,25 @@
+# Template file for 'pangomm2.48'
+pkgname=pangomm2.48
+version=2.48.1
+revision=1
+wrksrc="pangomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel glibmm2.68-devel cairomm1.16-devel pango-devel"
+short_desc="C++ bindings for the pango library"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+distfiles="${GNOME_SITE}/pangomm/${version%.*}/pangomm-${version}.tar.xz"
+checksum=776ad53e791e43106b7f40ff0834bee6e4eb1c6ad7cb6d215546f7a3df0edc4d
+
+pangomm2.48-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/pango*"
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/pangomm2.48/update b/srcpkgs/pangomm2.48/update
new file mode 100644
index 000000000000..dcf8a8115b45
--- /dev/null
+++ b/srcpkgs/pangomm2.48/update
@@ -0,0 +1,3 @@
+pkgname=pangomm
+site=https://gitlab.gnome.org/GNOME/pangomm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 60545fbbd6ac44020c82d42739a7b3576d2e0b22 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:35:51 +0200
Subject: [PATCH 5/6] New package: gtkmm4-4.2.0

---
 common/shlibs           |  1 +
 srcpkgs/gtkmm4-devel    |  1 +
 srcpkgs/gtkmm4/template | 31 +++++++++++++++++++++++++++++++
 srcpkgs/gtkmm4/update   |  3 +++
 4 files changed, 36 insertions(+)
 create mode 120000 srcpkgs/gtkmm4-devel
 create mode 100644 srcpkgs/gtkmm4/template
 create mode 100644 srcpkgs/gtkmm4/update

diff --git a/common/shlibs b/common/shlibs
index 545d9061ad63..44149b4c17f7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -675,6 +675,7 @@ libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
+libgtkmm-4.0.so.0 gtkmm4-4.0.0_1
 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1
 libsasl2.so.3 libsasl-2.1.26_1
 liblber-2.4.so.2 libldap-2.4.21_1
diff --git a/srcpkgs/gtkmm4-devel b/srcpkgs/gtkmm4-devel
new file mode 120000
index 000000000000..2fd4e3d7c98d
--- /dev/null
+++ b/srcpkgs/gtkmm4-devel
@@ -0,0 +1 @@
+gtkmm4
\ No newline at end of file
diff --git a/srcpkgs/gtkmm4/template b/srcpkgs/gtkmm4/template
new file mode 100644
index 000000000000..8c6926c570c7
--- /dev/null
+++ b/srcpkgs/gtkmm4/template
@@ -0,0 +1,31 @@
+# Template file for 'gtkmm4'
+pkgname=gtkmm4
+version=4.2.0
+revision=1
+wrksrc="gtkmm-$version"
+build_style=meson
+hostmakedepends="pkg-config mm-common glib-devel"
+makedepends="gtk4-devel glibmm2.68-devel cairomm1.16-devel pangomm2.48-devel"
+checkdepends="xvfb-run"
+short_desc="C++ bindings for The GTK+ toolkit (v4)"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+changelog="https://gitlab.gnome.org/GNOME/gtkmm/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gtkmm/${version%.*}/gtkmm-${version}.tar.xz"
+checksum=480c4c38f2e7ffcf58f56bb4b4d612f3f0cac9fd5908fd2cd8249fe10592a98b
+
+do_check() {
+	xvfb-run ninja -C build test
+}
+
+gtkmm4-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/gtk*"
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/gtkmm4/update b/srcpkgs/gtkmm4/update
new file mode 100644
index 000000000000..c2c945d76e82
--- /dev/null
+++ b/srcpkgs/gtkmm4/update
@@ -0,0 +1,3 @@
+pkgname=gtkmm
+site=https://gitlab.gnome.org/GNOME/gtkmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 563e925da6c94510eae724ca36b99001727c78ef Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 20:31:15 +0200
Subject: [PATCH 6/6] New package: easyeffects-6.1.0

---
 srcpkgs/easyeffects/INSTALL.msg  |  4 ++++
 srcpkgs/easyeffects/template     | 22 ++++++++++++++++++++++
 srcpkgs/pulseeffects             |  1 +
 srcpkgs/pulseeffects/INSTALL.msg |  2 --
 srcpkgs/pulseeffects/template    | 19 -------------------
 5 files changed, 27 insertions(+), 21 deletions(-)
 create mode 100644 srcpkgs/easyeffects/INSTALL.msg
 create mode 100644 srcpkgs/easyeffects/template
 create mode 120000 srcpkgs/pulseeffects
 delete mode 100644 srcpkgs/pulseeffects/INSTALL.msg
 delete mode 100644 srcpkgs/pulseeffects/template

diff --git a/srcpkgs/easyeffects/INSTALL.msg b/srcpkgs/easyeffects/INSTALL.msg
new file mode 100644
index 000000000000..aa628df53f73
--- /dev/null
+++ b/srcpkgs/easyeffects/INSTALL.msg
@@ -0,0 +1,4 @@
+PulseEffects v5 was renamed to EasyEffects with the v6 update.
+
+EasyEffects only supports PipeWire, if you are using PulseAudio, install
+pulseeffects-legacy instead.
diff --git a/srcpkgs/easyeffects/template b/srcpkgs/easyeffects/template
new file mode 100644
index 000000000000..29bd1de0c45b
--- /dev/null
+++ b/srcpkgs/easyeffects/template
@@ -0,0 +1,22 @@
+# Template file for 'easyeffects'
+pkgname=easyeffects
+version=6.1.0
+revision=1
+build_style=meson
+hostmakedepends="pkg-config gettext itstool glib-devel"
+makedepends="gtkmm4-devel pipewire-devel zita-convolver-devel lilv-devel
+ libbs2b-devel fftw-devel libebur128-devel rnnoise-devel libsamplerate-devel
+ rubberband-devel speexdsp-devel json-c++"
+short_desc="Sound effects for systems using PipeWire"
+maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/wwmm/easyeffects"
+changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
+distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
+checksum=0af13df5685e5417be913c4bf79254d07250f033ed218b040bfc7c9c54ad9d5e
+
+pulseeffects_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	build_style=meta
+	short_desc+=" (transitional dummy package)"
+}
diff --git a/srcpkgs/pulseeffects b/srcpkgs/pulseeffects
new file mode 120000
index 000000000000..f528ddb90f2d
--- /dev/null
+++ b/srcpkgs/pulseeffects
@@ -0,0 +1 @@
+easyeffects
\ No newline at end of file
diff --git a/srcpkgs/pulseeffects/INSTALL.msg b/srcpkgs/pulseeffects/INSTALL.msg
deleted file mode 100644
index 74c17ca2a8c5..000000000000
--- a/srcpkgs/pulseeffects/INSTALL.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-PulseEffects version 5 and later only support PipeWire and drop support for PulseAudio.
-If you want to use PulseEffects with PulseAudio, install pulseeffects-legacy instead.
diff --git a/srcpkgs/pulseeffects/template b/srcpkgs/pulseeffects/template
deleted file mode 100644
index 877e14b64341..000000000000
--- a/srcpkgs/pulseeffects/template
+++ /dev/null
@@ -1,19 +0,0 @@
-# Template file for 'pulseeffects'
-pkgname=pulseeffects
-version=5.0.4
-revision=1
-wrksrc=easyeffects-$version
-build_style=meson
-hostmakedepends="itstool pkg-config gettext"
-makedepends="boost-devel glib-devel gsettings-desktop-schemas-devel
- gst-plugins-bad1-devel gtkmm-devel libebur128-devel lilv-devel
- pipewire-devel sratom-devel zita-convolver-devel libbs2b-devel
- libsamplerate-devel libsndfile-devel rnnoise-devel"
-depends="calf gstreamer1-pipewire gst-plugins-good1 gst-plugins-bad1"
-short_desc="Sound effects for systems using PipeWire"
-maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
-license="GPL-3.0-or-later"
-homepage="https://github.com/wwmm/easyeffects"
-changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
-distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
-checksum=8c8e2f4c41ca690305e7ea6132eef1d529d0463c4146dd3ffa16616ad7d53005

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
                   ` (3 preceding siblings ...)
  2021-08-24 22:04 ` paper42
@ 2021-08-31 20:11 ` paper42
  2021-08-31 20:12 ` [PR PATCH] [Merged]: " paper42
  5 siblings, 0 replies; 7+ messages in thread
From: paper42 @ 2021-08-31 20:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1629 bytes --]

There is an updated pull request by paper42 against master on the void-packages repository

https://github.com/paper42/void-packages easyeffects
https://github.com/void-linux/void-packages/pull/32037

gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [x] #32027
- [x] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

A patch file from https://github.com/void-linux/void-packages/pull/32037.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-easyeffects-32037.patch --]
[-- Type: text/x-diff, Size: 15822 bytes --]

From af5383888d7dbcfad70aa63eabb42df3ab085169 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:46:23 +0200
Subject: [PATCH 1/6] libsigc++3: update to 3.0.7.

---
 srcpkgs/libsigc++3/template | 5 +++--
 srcpkgs/libsigc++3/update   | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libsigc++3/template b/srcpkgs/libsigc++3/template
index 9c96b9ee4924..681f61a30a43 100644
--- a/srcpkgs/libsigc++3/template
+++ b/srcpkgs/libsigc++3/template
@@ -1,6 +1,6 @@
 # Template file for 'libsigc++3'
 pkgname=libsigc++3
-version=3.0.3
+version=3.0.7
 revision=1
 wrksrc=libsigc++-${version}
 build_style=meson
@@ -10,8 +10,9 @@ short_desc="Type-safe callback system for C++ programs"
 maintainer="q66 <daniel@octaforge.org>"
 license="LGPL-3.0-only"
 homepage="https://libsigcplusplus.github.io/libsigcplusplus/"
+changelog="https://github.com/libsigcplusplus/libsigcplusplus/blob/master/NEWS"
 distfiles="${GNOME_SITE}/libsigc++/${version%.*}/libsigc++-${version}.tar.xz"
-checksum=e4f4866a894bdbe053e4fb22ccc6bc4b6851fd31a4746fdd20b2cf6e87c6edb6
+checksum=bfbe91c0d094ea6bbc6cbd3909b7d98c6561eea8b6d9c0c25add906a6e83d733
 
 pre_configure() {
 	# build static library as well as shared
diff --git a/srcpkgs/libsigc++3/update b/srcpkgs/libsigc++3/update
index 0d3fa3bab911..34ea63170e8c 100644
--- a/srcpkgs/libsigc++3/update
+++ b/srcpkgs/libsigc++3/update
@@ -1 +1,2 @@
+pkgname=libsigc++
 pattern="libsigc\+\+-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From b93f33ad8ed396a583213facd9498d5d153f33fd Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:12:29 +0200
Subject: [PATCH 2/6] New package: glibmm2.68-2.68.1

---
 common/shlibs               |  3 +++
 srcpkgs/glibmm2.68-devel    |  1 +
 srcpkgs/glibmm2.68/template | 27 +++++++++++++++++++++++++++
 srcpkgs/glibmm2.68/update   |  3 +++
 4 files changed, 34 insertions(+)
 create mode 120000 srcpkgs/glibmm2.68-devel
 create mode 100644 srcpkgs/glibmm2.68/template
 create mode 100644 srcpkgs/glibmm2.68/update

diff --git a/common/shlibs b/common/shlibs
index 74aec4fd2500..9b2208367999 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -665,6 +665,9 @@ libsigc-3.0.so.0 libsigc++3-3.0.3_1
 libglibmm-2.4.so.1 glibmm-2.24.0_1
 libgiomm-2.4.so.1 glibmm-2.24.0_1
 libglibmm_generate_extra_defs-2.4.so.1 glibmm-2.24.0_1
+libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
+libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
+libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
diff --git a/srcpkgs/glibmm2.68-devel b/srcpkgs/glibmm2.68-devel
new file mode 120000
index 000000000000..7879cbce406a
--- /dev/null
+++ b/srcpkgs/glibmm2.68-devel
@@ -0,0 +1 @@
+glibmm2.68
\ No newline at end of file
diff --git a/srcpkgs/glibmm2.68/template b/srcpkgs/glibmm2.68/template
new file mode 100644
index 000000000000..11eac004b7ff
--- /dev/null
+++ b/srcpkgs/glibmm2.68/template
@@ -0,0 +1,27 @@
+# Template file for 'glibmm2.68'
+pkgname=glibmm2.68
+version=2.68.1
+revision=1
+wrksrc="glibmm-$version"
+build_style=meson
+hostmakedepends="glib-devel perl pkg-config"
+makedepends="libglib-devel libsigc++3-devel"
+checkdepends="glib-networking"
+short_desc="C++ bindings for GLib"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://www.gtkmm.org"
+distfiles="${GNOME_SITE}/glibmm/${version%.*}/glibmm-${version}.tar.xz"
+checksum=6664e27c9a9cca81c29e35687f49f2e0d173a2fc9e98c3428311f707db532f8c
+
+glibmm2.68-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/lib/glibmm-2.68
+		vmove usr/lib/giomm-2.68
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/glibmm2.68/update b/srcpkgs/glibmm2.68/update
new file mode 100644
index 000000000000..c2768fb0e70f
--- /dev/null
+++ b/srcpkgs/glibmm2.68/update
@@ -0,0 +1,3 @@
+pkgname=glibmm
+site=https://gitlab.gnome.org/GNOME/glibmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From 306208f0ff0b8b0574224e0f37d9df9ce3a0a606 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Wed, 14 Jul 2021 23:20:26 +0200
Subject: [PATCH 3/6] New package: cairomm1.16-1.16.1

---
 common/shlibs                |  1 +
 srcpkgs/cairomm1.16-devel    |  1 +
 srcpkgs/cairomm1.16/template | 24 ++++++++++++++++++++++++
 srcpkgs/cairomm1.16/update   |  2 ++
 4 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/cairomm1.16-devel
 create mode 100644 srcpkgs/cairomm1.16/template
 create mode 100644 srcpkgs/cairomm1.16/update

diff --git a/common/shlibs b/common/shlibs
index 9b2208367999..90383a0ab6d7 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -669,6 +669,7 @@ libglibmm-2.68.so.1 glibmm2.68-2.68.0_1
 libgiomm-2.68.so.1 glibmm2.68-2.68.0_1
 libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
+libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/cairomm1.16-devel b/srcpkgs/cairomm1.16-devel
new file mode 120000
index 000000000000..e427b6504ea5
--- /dev/null
+++ b/srcpkgs/cairomm1.16-devel
@@ -0,0 +1 @@
+cairomm1.16
\ No newline at end of file
diff --git a/srcpkgs/cairomm1.16/template b/srcpkgs/cairomm1.16/template
new file mode 100644
index 000000000000..e1f0e2dda546
--- /dev/null
+++ b/srcpkgs/cairomm1.16/template
@@ -0,0 +1,24 @@
+# Template file for 'cairomm1.16'
+pkgname=cairomm1.16
+version=1.16.1
+revision=1
+wrksrc="cairomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel fontconfig-devel libpng-devel libXrender-devel cairo-devel"
+short_desc="C++ bindings to Cairo vector graphics library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="GPL-2.0-or-later, MPL-1.1"
+homepage="https://www.cairographics.org/cairomm/"
+distfiles="http://cairographics.org/releases/cairomm-$version.tar.xz"
+checksum=6f6060d8e98dd4b8acfee2295fddbdd38cf487c07c26aad8d1a83bb9bff4a2c6
+
+cairomm1.16-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/cairomm*"
+		vmove usr/lib/pkgconfig
+	}
+}
diff --git a/srcpkgs/cairomm1.16/update b/srcpkgs/cairomm1.16/update
new file mode 100644
index 000000000000..aa4bf1b2c193
--- /dev/null
+++ b/srcpkgs/cairomm1.16/update
@@ -0,0 +1,2 @@
+pattern="LATEST-cairomm-\K[0-9.]+"
+ignore="*.?[13579].*"

From 361252663ac8258ca498a67a6eb50234a0dfd173 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:12:01 +0200
Subject: [PATCH 4/6] New package: pangomm2.48-2.48.1

---
 common/shlibs                |  1 +
 srcpkgs/pangomm2.48-devel    |  1 +
 srcpkgs/pangomm2.48/template | 25 +++++++++++++++++++++++++
 srcpkgs/pangomm2.48/update   |  3 +++
 4 files changed, 30 insertions(+)
 create mode 120000 srcpkgs/pangomm2.48-devel
 create mode 100644 srcpkgs/pangomm2.48/template
 create mode 100644 srcpkgs/pangomm2.48/update

diff --git a/common/shlibs b/common/shlibs
index 90383a0ab6d7..4bcb3aaafdc2 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -671,6 +671,7 @@ libglibmm_generate_extra_defs-2.68.so.1 glibmm2.68-2.68.0_1
 libcairomm-1.0.so.1 cairomm-1.8.4_1
 libcairomm-1.16.so.1 cairomm1.16-1.16.0_1
 libpangomm-1.4.so.1 pangomm-2.26.0_1
+libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
diff --git a/srcpkgs/pangomm2.48-devel b/srcpkgs/pangomm2.48-devel
new file mode 120000
index 000000000000..5272be75915f
--- /dev/null
+++ b/srcpkgs/pangomm2.48-devel
@@ -0,0 +1 @@
+pangomm2.48
\ No newline at end of file
diff --git a/srcpkgs/pangomm2.48/template b/srcpkgs/pangomm2.48/template
new file mode 100644
index 000000000000..291837c42612
--- /dev/null
+++ b/srcpkgs/pangomm2.48/template
@@ -0,0 +1,25 @@
+# Template file for 'pangomm2.48'
+pkgname=pangomm2.48
+version=2.48.1
+revision=1
+wrksrc="pangomm-$version"
+build_style=meson
+hostmakedepends="pkg-config"
+makedepends="libsigc++3-devel glibmm2.68-devel cairomm1.16-devel pango-devel"
+short_desc="C++ bindings for the pango library"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+distfiles="${GNOME_SITE}/pangomm/${version%.*}/pangomm-${version}.tar.xz"
+checksum=776ad53e791e43106b7f40ff0834bee6e4eb1c6ad7cb6d215546f7a3df0edc4d
+
+pangomm2.48-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/pango*"
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/pangomm2.48/update b/srcpkgs/pangomm2.48/update
new file mode 100644
index 000000000000..dcf8a8115b45
--- /dev/null
+++ b/srcpkgs/pangomm2.48/update
@@ -0,0 +1,3 @@
+pkgname=pangomm
+site=https://gitlab.gnome.org/GNOME/pangomm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From f82b710539e5609e2e951f3823215345bb2fda04 Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Thu, 15 Jul 2021 00:35:51 +0200
Subject: [PATCH 5/6] New package: gtkmm4-4.2.0

---
 common/shlibs           |  1 +
 srcpkgs/gtkmm4-devel    |  1 +
 srcpkgs/gtkmm4/template | 31 +++++++++++++++++++++++++++++++
 srcpkgs/gtkmm4/update   |  3 +++
 4 files changed, 36 insertions(+)
 create mode 120000 srcpkgs/gtkmm4-devel
 create mode 100644 srcpkgs/gtkmm4/template
 create mode 100644 srcpkgs/gtkmm4/update

diff --git a/common/shlibs b/common/shlibs
index 4bcb3aaafdc2..87c27c459aad 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -675,6 +675,7 @@ libpangomm-2.48.so.1 pangomm2.48-2.48.0_1
 libatkmm-1.6.so.1 atkmm-2.22.1_1
 libgtkmm-3.0.so.1 gtkmm-2.99.5_1
 libgdkmm-3.0.so.1 gtkmm-2.99.5_1
+libgtkmm-4.0.so.0 gtkmm4-4.0.0_1
 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1
 libsasl2.so.3 libsasl-2.1.26_1
 liblber-2.4.so.2 libldap-2.4.21_1
diff --git a/srcpkgs/gtkmm4-devel b/srcpkgs/gtkmm4-devel
new file mode 120000
index 000000000000..2fd4e3d7c98d
--- /dev/null
+++ b/srcpkgs/gtkmm4-devel
@@ -0,0 +1 @@
+gtkmm4
\ No newline at end of file
diff --git a/srcpkgs/gtkmm4/template b/srcpkgs/gtkmm4/template
new file mode 100644
index 000000000000..8c6926c570c7
--- /dev/null
+++ b/srcpkgs/gtkmm4/template
@@ -0,0 +1,31 @@
+# Template file for 'gtkmm4'
+pkgname=gtkmm4
+version=4.2.0
+revision=1
+wrksrc="gtkmm-$version"
+build_style=meson
+hostmakedepends="pkg-config mm-common glib-devel"
+makedepends="gtk4-devel glibmm2.68-devel cairomm1.16-devel pangomm2.48-devel"
+checkdepends="xvfb-run"
+short_desc="C++ bindings for The GTK+ toolkit (v4)"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="https://gtkmm.org"
+changelog="https://gitlab.gnome.org/GNOME/gtkmm/-/raw/master/NEWS"
+distfiles="${GNOME_SITE}/gtkmm/${version%.*}/gtkmm-${version}.tar.xz"
+checksum=480c4c38f2e7ffcf58f56bb4b4d612f3f0cac9fd5908fd2cd8249fe10592a98b
+
+do_check() {
+	xvfb-run ninja -C build test
+}
+
+gtkmm4-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove "usr/lib/gtk*"
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/gtkmm4/update b/srcpkgs/gtkmm4/update
new file mode 100644
index 000000000000..c2c945d76e82
--- /dev/null
+++ b/srcpkgs/gtkmm4/update
@@ -0,0 +1,3 @@
+pkgname=gtkmm
+site=https://gitlab.gnome.org/GNOME/gtkmm/-/tags
+pattern="$pkgname-\K[0-9]\.[0-9]*[02468]\.[0-9.]*[0-9](?=)"

From ddccae409bf58012002986b1afe5cb98d3780aee Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Sun, 18 Jul 2021 20:31:15 +0200
Subject: [PATCH 6/6] pulseeffects: rename to easyeffects and update

---
 srcpkgs/easyeffects/INSTALL.msg  |  4 ++++
 srcpkgs/easyeffects/template     | 22 ++++++++++++++++++++++
 srcpkgs/pulseeffects             |  1 +
 srcpkgs/pulseeffects/INSTALL.msg |  2 --
 srcpkgs/pulseeffects/template    | 19 -------------------
 5 files changed, 27 insertions(+), 21 deletions(-)
 create mode 100644 srcpkgs/easyeffects/INSTALL.msg
 create mode 100644 srcpkgs/easyeffects/template
 create mode 120000 srcpkgs/pulseeffects
 delete mode 100644 srcpkgs/pulseeffects/INSTALL.msg
 delete mode 100644 srcpkgs/pulseeffects/template

diff --git a/srcpkgs/easyeffects/INSTALL.msg b/srcpkgs/easyeffects/INSTALL.msg
new file mode 100644
index 000000000000..aa628df53f73
--- /dev/null
+++ b/srcpkgs/easyeffects/INSTALL.msg
@@ -0,0 +1,4 @@
+PulseEffects v5 was renamed to EasyEffects with the v6 update.
+
+EasyEffects only supports PipeWire, if you are using PulseAudio, install
+pulseeffects-legacy instead.
diff --git a/srcpkgs/easyeffects/template b/srcpkgs/easyeffects/template
new file mode 100644
index 000000000000..29bd1de0c45b
--- /dev/null
+++ b/srcpkgs/easyeffects/template
@@ -0,0 +1,22 @@
+# Template file for 'easyeffects'
+pkgname=easyeffects
+version=6.1.0
+revision=1
+build_style=meson
+hostmakedepends="pkg-config gettext itstool glib-devel"
+makedepends="gtkmm4-devel pipewire-devel zita-convolver-devel lilv-devel
+ libbs2b-devel fftw-devel libebur128-devel rnnoise-devel libsamplerate-devel
+ rubberband-devel speexdsp-devel json-c++"
+short_desc="Sound effects for systems using PipeWire"
+maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/wwmm/easyeffects"
+changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
+distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
+checksum=0af13df5685e5417be913c4bf79254d07250f033ed218b040bfc7c9c54ad9d5e
+
+pulseeffects_package() {
+	depends="${sourcepkg}>=${version}_${revision}"
+	build_style=meta
+	short_desc+=" (transitional dummy package)"
+}
diff --git a/srcpkgs/pulseeffects b/srcpkgs/pulseeffects
new file mode 120000
index 000000000000..f528ddb90f2d
--- /dev/null
+++ b/srcpkgs/pulseeffects
@@ -0,0 +1 @@
+easyeffects
\ No newline at end of file
diff --git a/srcpkgs/pulseeffects/INSTALL.msg b/srcpkgs/pulseeffects/INSTALL.msg
deleted file mode 100644
index 74c17ca2a8c5..000000000000
--- a/srcpkgs/pulseeffects/INSTALL.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-PulseEffects version 5 and later only support PipeWire and drop support for PulseAudio.
-If you want to use PulseEffects with PulseAudio, install pulseeffects-legacy instead.
diff --git a/srcpkgs/pulseeffects/template b/srcpkgs/pulseeffects/template
deleted file mode 100644
index 877e14b64341..000000000000
--- a/srcpkgs/pulseeffects/template
+++ /dev/null
@@ -1,19 +0,0 @@
-# Template file for 'pulseeffects'
-pkgname=pulseeffects
-version=5.0.4
-revision=1
-wrksrc=easyeffects-$version
-build_style=meson
-hostmakedepends="itstool pkg-config gettext"
-makedepends="boost-devel glib-devel gsettings-desktop-schemas-devel
- gst-plugins-bad1-devel gtkmm-devel libebur128-devel lilv-devel
- pipewire-devel sratom-devel zita-convolver-devel libbs2b-devel
- libsamplerate-devel libsndfile-devel rnnoise-devel"
-depends="calf gstreamer1-pipewire gst-plugins-good1 gst-plugins-bad1"
-short_desc="Sound effects for systems using PipeWire"
-maintainer="Artur Sinila <freesoftware@logarithmus.dev>"
-license="GPL-3.0-or-later"
-homepage="https://github.com/wwmm/easyeffects"
-changelog="https://raw.githubusercontent.com/wwmm/easyeffects/master/CHANGELOG.md"
-distfiles="https://github.com/wwmm/easyeffects/archive/v${version}.tar.gz"
-checksum=8c8e2f4c41ca690305e7ea6132eef1d529d0463c4146dd3ffa16616ad7d53005

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Merged]: gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
  2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
                   ` (4 preceding siblings ...)
  2021-08-31 20:11 ` [PR PATCH] [Updated] " paper42
@ 2021-08-31 20:12 ` paper42
  5 siblings, 0 replies; 7+ messages in thread
From: paper42 @ 2021-08-31 20:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1469 bytes --]

There's a merged pull request on the void-packages repository

gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects
https://github.com/void-linux/void-packages/pull/32037

Description:
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)

#### Have the results of the proposed changes been tested?
- [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR

easyeffects requires very recent dependencies
* It needs gtkmm4
* I had to bump the versions of pangomm, cairomm and glibmm to a new ABI series, so they need to be split from their older siblings.
* libsigc++3>=3.0.6, so I bumped that too
* it needs meson>=0.57 which is not in repositories yet, so I temporarily imported PR #32027
* it requires gtk>=4.2.1 (PR #31820), so I bumped the version too in this PR

so before this PR can be moved from the draft stage, following PRs or equivalents have to be merged:
- [x] #32027
- [x] #31820

cc @Logarithmus - the maintainer of pulseeffects, now easyeffects
cc @Gottox - I assigned you as the maintainer of *mm (except for pangomm which is orphaned) packages because you maintain their older siblings
cc @q66 - I bumped the version of libsigc++3 which you maintain to 3.0.7

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-08-31 20:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-18 21:10 [PR PATCH] [NOMERGE] gtkmm4, pangomm2.48, cairomm1.16, glibmm2.68, pulseeffects -> easyeffects paper42
2021-07-18 21:15 ` [PR PATCH] [Updated] " paper42
2021-07-24 11:45 ` Logarithmus
2021-08-04 21:52 ` [PR PATCH] [Updated] " paper42
2021-08-24 22:04 ` paper42
2021-08-31 20:11 ` [PR PATCH] [Updated] " paper42
2021-08-31 20:12 ` [PR PATCH] [Merged]: " paper42

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).