libaccounts-glib: 1.23 -> 1.24

- Switched to the Meson Build System
This commit is contained in:
worldofpeace 2018-11-07 17:05:19 -05:00
parent 179b8146e6
commit 913a6510ed
2 changed files with 72 additions and 15 deletions

View file

@ -1,29 +1,48 @@
{ stdenv, fetchFromGitLab, autoconf, automake, glib
, gtk-doc, libtool, libxml2, libxslt, pkgconfig, sqlite }:
{ stdenv, fetchFromGitLab, meson, ninja, glib, check, python3, vala, gtk-doc, glibcLocales
, libxml2, libxslt, pkgconfig, sqlite, docbook_xsl, docbook_xml_dtd_43, gobjectIntrospection }:
let version = "1.23"; in
stdenv.mkDerivation rec {
name = "libaccounts-glib-${version}";
version = "1.24";
outputs = [ "out" "dev" "devdoc" "py" ];
src = fetchFromGitLab {
sha256 = "11cvl3ch0y93756k90mw1swqv0ylr8qgalmvcn5yari8z4sg6cgg";
rev = "VERSION_${version}";
repo = "libaccounts-glib";
owner = "accounts-sso";
repo = "libaccounts-glib";
rev = version;
sha256 = "0y8smg1rd279lrr9ad8b499i8pbkajmwd4xn41rdh9h93hs9apn7";
};
buildInputs = [ glib libxml2 libxslt sqlite ];
nativeBuildInputs = [ autoconf automake gtk-doc libtool pkgconfig ];
# See: https://gitlab.com/accounts-sso/libaccounts-glib/merge_requests/22
patches = [ ./py-override.patch ];
postPatch = ''
NOCONFIGURE=1 ./autogen.sh
'';
nativeBuildInputs = [
check
docbook_xml_dtd_43
docbook_xsl
glibcLocales
gobjectIntrospection
gtk-doc
meson
ninja
pkgconfig
vala
];
configurePhase = ''
HAVE_GCOV_FALSE="#" ./configure $configureFlags --prefix=$out
'';
buildInputs = [
glib
libxml2
libxslt
python3.pkgs.pygobject3
sqlite
];
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; # since glib-2.46
LC_ALL = "en_US.UTF-8";
mesonFlags = [
"-Dpy-overrides-dir=${placeholder ''py''}/${python3.sitePackages}/gi/overrides"
];
meta = with stdenv.lib; {
description = "Library for managing accounts which can be used from GLib applications";

View file

@ -0,0 +1,38 @@
diff --git a/libaccounts-glib/pygobject/meson.build b/libaccounts-glib/pygobject/meson.build
index fa1f4a0..588c4ce 100644
--- a/libaccounts-glib/pygobject/meson.build
+++ b/libaccounts-glib/pygobject/meson.build
@@ -1,11 +1,19 @@
-python3 = import('python3')
-python_exec = python3.find_python()
-python_exec_result = run_command(python_exec, ['-c', 'import gi; from os.path import abspath; print(abspath(gi._overridesdir))'])
+py_override = get_option('py-overrides-dir')
-if python_exec_result.returncode() != 0
- error('Failed to retreive the python GObject override directory')
+if py_override == ''
+ python3 = import('python3')
+ python_exec = python3.find_python()
+
+ python_exec_result = run_command(python_exec, ['-c', 'import gi; from os.path import abspath; print(abspath(gi._overridesdir))'])
+
+ if python_exec_result.returncode() != 0
+ error('Failed to retreive the python GObject override directory')
+ endif
+
+ py_override = python_exec_result.stdout().strip()
endif
-install_data('Accounts.py',
- install_dir: join_paths(python_exec_result.stdout().strip())
+install_data(
+ 'Accounts.py',
+ install_dir: py_override
)
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644
index 0000000..2c33804
--- /dev/null
+++ b/meson_options.txt
@@ -0,0 +1 @@
+option('py-overrides-dir', type : 'string', value : '', description: 'Path to pygobject overrides directory')