diff mbox series

[bug#66823,gnome-team,v2,1/6] gnu: Add gmobile.

Message ID 854e947c25e90629325280969b8ab0561679cb4a.1698610511.git.vivien@planete-kraus.eu
State New
Headers show
Series Add GNOME Calls, slightly better | expand

Commit Message

Vivien Kraus Oct. 29, 2023, 6:34 p.m. UTC
* gnu/packages/gnome.scm (gmobile): New variable.
* gnu/packages/patches/gmobile-make-it-installable.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.

Change-Id: If36413dfa1ee1e6156f2652fa86282283b592b36
---
 gnu/local.mk                                  |  1 +
 gnu/packages/gnome.scm                        | 27 ++++++
 .../patches/gmobile-make-it-installable.patch | 87 +++++++++++++++++++
 3 files changed, 115 insertions(+)
 create mode 100644 gnu/packages/patches/gmobile-make-it-installable.patch

Comments

Maxim Cournoyer Oct. 31, 2023, 2:30 p.m. UTC | #1
Hi!

Vivien Kraus <vivien@planete-kraus.eu> writes:

> * gnu/packages/gnome.scm (gmobile): New variable.
> * gnu/packages/patches/gmobile-make-it-installable.patch: New file.

Great work!  Did you forward it upstream?  It'd be nice to have them
maintained the change forward!  If you have done so, please mention the
upstream MR in the patch, so that we can track its status.
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 9befa202ad..92b56289f2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1318,6 +1318,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/glibc-2.29-supported-locales.patch     	\
   %D%/packages/patches/glibc-supported-locales.patch     	\
   %D%/packages/patches/glslang-install-static-libs.patch     	\
+  %D%/packages/patches/gmobile-make-it-installable.patch	\
   %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
   %D%/packages/patches/gmp-faulty-test.patch			\
   %D%/packages/patches/gnash-fix-giflib-version.patch	        \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index a86ddc34b3..0933bf7d34 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -12915,6 +12915,33 @@  (define-public jsonrpc-glib
 host to avoid parser overhead and memory-allocator fragmentation.")
     (license license:lgpl2.1+)))
 
+(define-public gmobile
+  (package
+    (name "gmobile")
+    (version "0.0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.gnome.org/guidog/gmobile")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name "gmobile" version))
+       (sha256
+        (base32
+         "0lr22nj4ypzxbjim1a7ay07nh4vx3dqc895qql437gda6x0rvn2p"))
+       (patches
+        (search-patches "gmobile-make-it-installable.patch"))))
+    (build-system meson-build-system)
+    (native-inputs
+     (list `(,glib "bin") ; for glib-compile-resources
+           pkg-config))
+    (propagated-inputs
+     (list glib json-glib))
+    (synopsis "Functions useful in mobile related, glib based projects")
+    (description "This package provides functions for mobiles.")
+    (home-page "https://gitlab.gnome.org/guidog/gmobile")
+    (license license:lgpl2.1+)))
+
 (define-public feedbackd
   (package
     (name "feedbackd")
diff --git a/gnu/packages/patches/gmobile-make-it-installable.patch b/gnu/packages/patches/gmobile-make-it-installable.patch
new file mode 100644
index 0000000000..03e106c2b0
--- /dev/null
+++ b/gnu/packages/patches/gmobile-make-it-installable.patch
@@ -0,0 +1,87 @@ 
+From c1ea43a45f4588f21752b0ad679c43350a9c8905 Mon Sep 17 00:00:00 2001
+Message-ID: <c1ea43a45f4588f21752b0ad679c43350a9c8905.1698604357.git.vivien@planete-kraus.eu>
+From: Vivien Kraus <vivien@planete-kraus.eu>
+Date: Sun, 29 Oct 2023 19:00:44 +0100
+Subject: [PATCH] Install gmobile as a shared library.
+
+* src/meson.build: Install the header files.  Import pkgconfig.
+Generate a pkg-config definition.
+(gm_lib): use "library", not "static_library".  Install it.
+(gmobile_gir): Install it.
+* meson.build: Install gm-config.h.
+---
+ meson.build     |  1 +
+ src/meson.build | 22 +++++++++++++++++++---
+ 2 files changed, 20 insertions(+), 3 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index e9f6c62..51ebeac 100644
+--- a/meson.build
++++ b/meson.build
+@@ -83,6 +83,7 @@ root_inc = include_directories('.')
+ configure_file(
+   output: 'gm-config.h',
+   configuration: config_h,
++  install_dir: get_option('includedir')
+ )
+ 
+ subdir('data')
+diff --git a/src/meson.build b/src/meson.build
+index ee98a39..3dedbe4 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -1,3 +1,5 @@
++pkg = import('pkgconfig')
++
+ gm_deps = [
+   gio_dep,
+   glib_dep,
+@@ -37,18 +39,33 @@ gm_c_args = [
+   '-DG_LOG_DOMAIN="gmobile"',
+ ]
+ 
+-gm_lib = static_library(
++gm_lib = library(
+   'gmobile',
+   gm_sources,
+   include_directories: root_inc,
+   c_args: gm_c_args,
+-  dependencies: gm_deps)
++  dependencies: gm_deps,
++  install: true)
++
++pkg.generate(gm_lib)
+ 
+ gmobile_dep = declare_dependency(
+   include_directories: [root_inc, include_directories('.')],
+   dependencies: gm_deps,
+   link_with: gm_lib)
+ 
++install_headers(
++  'gmobile.h',
++  'gm-cutout.h',
++  'gm-device-info.h',
++  'gm-device-tree.h',
++  'gm-display-panel.h',
++  'gm-error.h',
++  'gm-main.h',
++  'gm-rect.h',
++  'gm-svg-path.h',
++  'gm-timeout.h')
++
+ if get_option('gtk_doc')
+   gmobile_gir_extra_args = [
+     '--c-include=gmobile.h',
+@@ -66,7 +83,6 @@ if get_option('gtk_doc')
+        identifier_prefix: 'Gm',
+                link_with: gm_lib,
+                 includes: ['Gio-2.0'],
+-                 install: false,
+               extra_args: gmobile_gir_extra_args,
+    )
+ endif
+
+base-commit: 382fc89472176d2f1d435517cad53d969d8b8eff
+-- 
+2.41.0
+