From ea51a3885c56c669f8558592d0ac13a1aae0e548 Mon Sep 17 00:00:00 2001 From: Vivien Kraus Date: Tue, 31 Oct 2023 20:34:25 +0100 Subject: [PATCH] gnu: Add gmobile. * 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 Signed-off-by: Liliana Marie Prikler --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 27 ++++++ .../patches/gmobile-make-it-installable.patch | 89 +++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 gnu/packages/patches/gmobile-make-it-installable.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 77908768b7..6761ffa5dc 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -12915,6 +12915,33 @@ both peers support it. You might want that when communicating on a single 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..9db6554877 --- /dev/null +++ b/gnu/packages/patches/gmobile-make-it-installable.patch @@ -0,0 +1,89 @@ +From c1ea43a45f4588f21752b0ad679c43350a9c8905 Mon Sep 17 00:00:00 2001 +Message-ID: +From: Vivien Kraus +Date: Sun, 29 Oct 2023 19:00:44 +0100 +Subject: [PATCH] Install gmobile as a shared library. + +Tracked at https://gitlab.gnome.org/guidog/gmobile/-/issues/1 + +* 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 +