git: ad53f6a063e5 - main - devel/libdex: new port

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Wed, 11 Jun 2025 11:54:56 UTC
The branch main has been updated by bapt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ad53f6a063e523d8edacb15c1e8a2eec5b9a9ce8

commit ad53f6a063e523d8edacb15c1e8a2eec5b9a9ce8
Author:     Olivier Duchateau <duchateau.olivier@gmail.com>
AuthorDate: 2025-06-11 11:42:19 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2025-06-11 11:54:43 +0000

    devel/libdex: new port
    
    Dex is a library supporting "Deferred Execution" with the explicit goal
    of integrating with GNOME and GTK-based applications.
    
    PR:     286697
---
 devel/Makefile                           |  1 +
 devel/libdex/Makefile                    | 19 ++++++++++++++++++
 devel/libdex/distinfo                    |  3 +++
 devel/libdex/files/patch-src_meson.build | 13 ++++++++++++
 devel/libdex/pkg-descr                   |  2 ++
 devel/libdex/pkg-plist                   | 34 ++++++++++++++++++++++++++++++++
 6 files changed, 72 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 010c28982736..eb09ba1bd74b 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1262,6 +1262,7 @@
     SUBDIR += libcutl
     SUBDIR += libcwd
     SUBDIR += libdaemon
+    SUBDIR += libdex
     SUBDIR += libdap
     SUBDIR += libdatadog
     SUBDIR += libdatovka
diff --git a/devel/libdex/Makefile b/devel/libdex/Makefile
new file mode 100644
index 000000000000..b24b3c3ba02f
--- /dev/null
+++ b/devel/libdex/Makefile
@@ -0,0 +1,19 @@
+PORTNAME=	libdex
+PORTVERSION=	0.10.0
+CATEGORIES=	devel
+MASTER_SITES=	GNOME
+DIST_SUBDIR=	gnome
+
+MAINTAINER=	gnome@FreeBSD.org
+COMMENT=	Library supporting Deferred Execution for GTK applications
+WWW=		https://gitlab.gnome.org/GNOME/libdex
+
+LICENSE=	LGPL21
+
+USES=		gnome meson pkgconfig tar:xz vala:build
+USE_GNOME=	glib20 introspection:build
+
+MESON_ARGS=	-Dexamples=false \
+		-Dtests=false
+
+.include <bsd.port.mk>
diff --git a/devel/libdex/distinfo b/devel/libdex/distinfo
new file mode 100644
index 000000000000..553776a34f8b
--- /dev/null
+++ b/devel/libdex/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1745070522
+SHA256 (gnome/libdex-0.10.0.tar.xz) = 98a69626aa7646ad455bea7a7f92d2a1ffa47e4559a154a1bfe98c16fa711ee1
+SIZE (gnome/libdex-0.10.0.tar.xz) = 101652
diff --git a/devel/libdex/files/patch-src_meson.build b/devel/libdex/files/patch-src_meson.build
new file mode 100644
index 000000000000..cfa8db083191
--- /dev/null
+++ b/devel/libdex/files/patch-src_meson.build
@@ -0,0 +1,13 @@
+src/meson.build:69:21: ERROR: C shared or static library 'atomic' not found
+
+--- src/meson.build.orig	2025-03-15 19:01:29 UTC
++++ src/meson.build
+@@ -65,7 +65,7 @@ libdex_deps = [
+   glib_dep,
+ ]
+ 
+-if host_machine.system() != 'darwin'
++if host_machine.system() == 'linux'
+   libatomic_dep = cc.find_library('atomic')
+   if not cc.links('int main(){}', dependencies: [libatomic_dep])
+     error('libatomic dependency is missing!')
diff --git a/devel/libdex/pkg-descr b/devel/libdex/pkg-descr
new file mode 100644
index 000000000000..ea0e4b0a1422
--- /dev/null
+++ b/devel/libdex/pkg-descr
@@ -0,0 +1,2 @@
+Dex is a library supporting "Deferred Execution" with the explicit goal
+of integrating with GNOME and GTK-based applications.
diff --git a/devel/libdex/pkg-plist b/devel/libdex/pkg-plist
new file mode 100644
index 000000000000..729529264a38
--- /dev/null
+++ b/devel/libdex/pkg-plist
@@ -0,0 +1,34 @@
+include/libdex-1/dex-aio.h
+include/libdex-1/dex-async-pair.h
+include/libdex-1/dex-async-result.h
+include/libdex-1/dex-block.h
+include/libdex-1/dex-cancellable.h
+include/libdex-1/dex-channel.h
+include/libdex-1/dex-delayed.h
+include/libdex-1/dex-enums.h
+include/libdex-1/dex-error.h
+include/libdex-1/dex-fiber.h
+include/libdex-1/dex-future-set.h
+include/libdex-1/dex-future.h
+include/libdex-1/dex-gio.h
+include/libdex-1/dex-init.h
+include/libdex-1/dex-main-scheduler.h
+include/libdex-1/dex-object.h
+include/libdex-1/dex-platform.h
+include/libdex-1/dex-promise.h
+include/libdex-1/dex-scheduler.h
+include/libdex-1/dex-static-future.h
+include/libdex-1/dex-thread-pool-scheduler.h
+include/libdex-1/dex-timeout.h
+include/libdex-1/dex-unix-signal.h
+include/libdex-1/dex-version-macros.h
+include/libdex-1/dex-version.h
+include/libdex-1/libdex.h
+lib/girepository-1.0/Dex-1.typelib
+lib/libdex-1.so
+lib/libdex-1.so.1
+lib/libdex-1.so.1.0.0
+libdata/pkgconfig/libdex-1.pc
+share/gir-1.0/Dex-1.gir
+share/vala/vapi/libdex-1.deps
+share/vala/vapi/libdex-1.vapi