diff options
Diffstat (limited to 'build-aux')
-rwxr-xr-x | build-aux/ci/ci-helper.sh | 61 | ||||
-rw-r--r-- | build-aux/ci/lsan.supp | 19 | ||||
-rw-r--r-- | build-aux/flatpak/libparted-include.patch | 22 | ||||
-rw-r--r-- | build-aux/flatpak/org.gnome.Settings.json | 819 | ||||
-rwxr-xr-x | build-aux/flatpak/polkit-autogen | 4 | ||||
-rw-r--r-- | build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch | 132 | ||||
-rw-r--r-- | build-aux/meson.build | 1 | ||||
-rw-r--r-- | build-aux/meson/meson_post_install.py | 15 |
8 files changed, 1073 insertions, 0 deletions
diff --git a/build-aux/ci/ci-helper.sh b/build-aux/ci/ci-helper.sh new file mode 100755 index 0000000..ddecded --- /dev/null +++ b/build-aux/ci/ci-helper.sh @@ -0,0 +1,61 @@ +#!/bin/bash -e + +function do_print_labels(){ + + if [[ -n "${1}" ]]; then + label_len=${#1} + span=$(((54 - $label_len) / 2)) + + echo + echo "= ======================================================== =" + printf "%s %${span}s %s %${span}s %s\n" "=" "" "$1" "" "=" + echo "= ======================================================== =" + else + echo "= ========================= Done ========================= =" + echo + fi +} + +function do_show_info(){ + + local compiler=gcc + + echo -n "Processors: "; grep -c ^processor /proc/cpuinfo + grep ^MemTotal /proc/meminfo + id; uname -a + printenv + echo '-----------------------------------------' + cat /etc/*-release + echo '-----------------------------------------' + + if [[ ! -z $CC ]]; then + compiler=$CC + fi + echo 'Compiler version' + $compiler --version + echo '-----------------------------------------' + $compiler -dM -E -x c /dev/null + echo '-----------------------------------------' +} + +function do_check_warnings(){ + + cat compilation.log | grep "warning:" | awk '{total+=1}END{print "Total number of warnings: "total}' +} + +# ----------- ----------- +if [[ $1 == "INFO" ]]; then + do_print_labels 'Build environment ' + do_show_info + do_print_labels + +elif [[ $1 == "GIT_INFO" ]]; then + do_print_labels 'Commit' + git log --pretty=format:"%h %cd %s" -1; echo + do_print_labels + +elif [[ $1 == "WARNINGS" ]]; then + do_print_labels 'Warning Report ' + do_check_warnings + do_print_labels +fi
\ No newline at end of file diff --git a/build-aux/ci/lsan.supp b/build-aux/ci/lsan.supp new file mode 100644 index 0000000..841cdb7 --- /dev/null +++ b/build-aux/ci/lsan.supp @@ -0,0 +1,19 @@ +# https://bugs.freedesktop.org/show_bug.cgi?id=105466 +leak:libfontconfig.so.1 + +# Unknown and unreported bugs +leak:__GI___vasprintf_chk +leak:__interceptor_malloc +leak:__alloc_dir +leak:libglib-2.0.so.0 + +# Needing attention +leak:<unknown module> +leak:test_timezone_gfx + +######## +# __GI___vasprintf_chk /usr/src/debug/glibc-2.27.9000-432-g104502102c/debug/vasprintf_chk.c:80 +# __alloc_dir ../sysdeps/posix/opendir.c:118 +# g_malloc (/lib64/libglib-2.0.so.0+0x523c5) +# g_realloc (/lib64/libglib-2.0.so.0+0x5247d) +######## diff --git a/build-aux/flatpak/libparted-include.patch b/build-aux/flatpak/libparted-include.patch new file mode 100644 index 0000000..82ca3e4 --- /dev/null +++ b/build-aux/flatpak/libparted-include.patch @@ -0,0 +1,22 @@ +From ba5e0451b51c983e40afd123b6e0d3eddb55e610 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" <rjones@redhat.com> +Date: Sat, 24 Mar 2018 17:37:02 +0000 +Subject: linux: Include <sys/sysmacros.h> for major() macro. + +Since glibc 2.27 this header is required. +--- + libparted/arch/linux.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libparted/arch/linux.c b/libparted/arch/linux.c +index 31b98ab..7e86b51 100644 +--- a/libparted/arch/linux.c ++++ b/libparted/arch/linux.c +@@ -41,6 +41,7 @@ + #include <sys/utsname.h> /* for uname() */ + #include <scsi/scsi.h> + #include <assert.h> ++#include <sys/sysmacros.h> + #ifdef ENABLE_DEVICE_MAPPER + #include <libdevmapper.h> + #endif diff --git a/build-aux/flatpak/org.gnome.Settings.json b/build-aux/flatpak/org.gnome.Settings.json new file mode 100644 index 0000000..a88ce70 --- /dev/null +++ b/build-aux/flatpak/org.gnome.Settings.json @@ -0,0 +1,819 @@ +{ + "app-id" : "org.gnome.Settings", + "runtime" : "org.gnome.Sdk", + "runtime-version" : "master", + "sdk" : "org.gnome.Sdk", + "command" : "gnome-control-center", + "rename-desktop-file" : "gnome-control-center.desktop", + "tags" : [ + "devel" + ], + "desktop-file-name-prefix" : "(Development) ", + "finish-args" : [ + "--device=dri", + "--env=DCONF_USER_CONFIG_DIR=.config/dconf", + "--filesystem=host", + "--own-name=org.gnome.ControlCenter", + "--own-name=org.gnome.SessionManager", + "--share=ipc", + "--share=network", + "--socket=x11", + "--socket=pulseaudio", + "--socket=session-bus", + "--socket=system-bus", + "--socket=wayland" + ], + "build-options" : { + "cflags" : "-O2 -g", + "cxxflags" : "-O2 -g", + "env" : { + "V" : "1" + } + }, + "x-run-args" : [ + "--verbose" + ], + "cleanup" : [ + "/include", + "/share/aclocal", + "/man", + "/share/man", + "/share/gtk-doc", + "/share/vala", + "*.la", + "*.a" + ], + "modules" : [ + { + "name" : "pwquality", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-python-bindings" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/libpwquality/libpwquality.git" + } + ] + }, + { + "name": "intltool", + "cleanup": [ "*" ], + "sources": [ + { + "type": "archive", + "url": "https://launchpad.net/intltool/trunk/0.51.0/+download/intltool-0.51.0.tar.gz", + "sha256": "67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd" + } + ] + }, + { + "name" : "polkit", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-polkitd", + "--disable-man-pages", + "--disable-introspection", + "--disable-examples", + "--disable-gtk-doc", + "--disable-libelogind", + "--disable-libsystemd-login", + "--with-systemdsystemunitdir=no", + "--with-authdb=dummy", + "--with-authfw=none" + ], + "rm-configure" : true, + "cleanup" : [ + "/bin/*", + "/etc/pam.d", + "/etc/dbus-1", + "/share/dbus-1/system-services/*", + "/share/polkit-1", + "/lib/polkit-1" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://www.freedesktop.org/software/polkit/releases/polkit-0.116.tar.gz", + "sha256" : "88170c9e711e8db305a12fdb8234fac5706c61969b94e084d0f117d8ec5d34b1" + }, + { + "type" : "patch", + "path" : "polkit-build-Add-option-to-build-without-polkitd.patch" + }, + { + "type" : "file", + "path" : "polkit-autogen", + "dest-filename" : "autogen.sh" + } + ] + }, + { + "name" : "accountservice", + "buildsystem" : "meson", + "config-opts" : [ + "-Ddocbook=false", + "-Delogind=false", + "-Dgtk_doc=false", + "-Dintrospection=false", + "-Dsystemd=false", + "-Dsystemdsystemunitdir=no" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://anongit.freedesktop.org/accountsservice" + } + ] + }, + { + "name" : "libusb1", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-udev" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://github.com/libusb/libusb.git" + } + ] + }, + { + "name" : "gusb", + "buildsystem" : "meson", + "config-opts" : [ + "-Ddocs=false", + "-Dtests=false", + "-Dvapi=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://github.com/hughsie/libgusb.git" + } + ] + }, + { + "name" : "udev", + "config-opts" : [ + "--disable-hwdb", + "--disable-logging", + "--disable-gudev", + "--disable-introspection", + "--disable-keymap", + "--disable-mtd_probe" + ], + "cleanup" : [ + "/include", + "/etc", + "/libexec", + "/sbin", + "/lib/pkgconfig", + "/man", + "/share/aclocal", + "/share/doc", + "/share/gtk-doc", + "/share/man", + "/share/pkgconfig", + "*.la", + "*.a" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://github.com/gentoo/eudev.git" + } + ] + }, + { + "name" : "gudev", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-umockdev" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/libgudev.git" + } + ] + }, + { + "name" : "colord", + "buildsystem" : "meson", + "config-opts" : [ + "-Dargyllcms_sensor=false", + "-Dbash_completion=false", + "-Dman=false", + "-Dudev_rules=false", + "-Dsystemd=false", + "-Dvapi=false", + "-Ddocs=false", + "-Dtests=false", + "-Dinstalled_tests=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://github.com/hughsie/colord.git" + } + ] + }, + { + "name" : "colord-gtk", + "buildsystem" : "meson", + "config-opts" : [ + "-Dman=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://github.com/hughsie/colord-gtk.git" + } + ] + }, + { + "name" : "rest", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "git", + "branch" : "librest-0-7", + "url" : "https://gitlab.gnome.org/GNOME/librest.git" + } + ] + }, + { + "name" : "gnome-online-accounts", + "buildsystem" : "meson", + "build-options" : { + "cflags" : "-Wno-error" + }, + "config-opts" : [ + "-Dgtk_doc=false", + "-Dintrospection=false", + "-Dvapi=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-online-accounts.git" + } + ] + }, + { + "name" : "gnome-desktop", + "buildsystem" : "meson", + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-desktop.git" + } + ] + }, + { + "name" : "geocode-glib", + "buildsystem" : "meson", + "config-opts" : [ + "-Denable-gtk-doc=false", + "-Denable-introspection=false", + "-Denable-installed-tests=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/geocode-glib.git" + } + ] + }, + { + "name" : "libgweather", + "buildsystem" : "meson", + "config-opts" : [ + "-Dglade_catalog=false", + "-Denable_vala=false", + "-Dgtk_doc=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/libgweather.git" + } + ] + }, + { + "name" : "upower", + "buildsystem" : "autotools", + "config-opts" : [ + "--prefix=/app", + "--with-systemdsystemunitdir=/app/lib/systemd/system", + "--disable-gtk-doc", + "--disable-man-pages", + "--disable-tests" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://anongit.freedesktop.org/upower" + } + ] + }, + { + "name" : "libwacom", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/linuxwacom/libwacom.git" + } + ] + }, + { + "name" : "libndp", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : " http://libndp.org/files/libndp-1.6.tar.gz", + "sha256" : "0c7dfa84e013bd5e569ef2c6292a6f72cfaf14f4ff77a77425e52edc33ffac0e" + } + ] + }, + { + "name" : "NetworkManager", + "buildsystem" : "meson", + "build-options" : { + "cflags" : "-ltinfo", + "cxxflags" : "-ltinfo" + }, + "config-opts" : [ + "-Dlibaudit=no", + "-Ddbus_conf_dir=/app/etc/dbus-1/system.d", + "-Ddbus_ifaces_dir=/app/share/dbus-1/interfaces", + "-Ddbus_sys_dir=/app/share/dbus-1/system.d", + "-Ddnsmasq=/usr/bin/true", + "-Ddocs=false", + "-Dintrospection=false", + "-Diptables=/usr/bin/true", + "-Djson_validation=false", + "-Dlibnm_glib=false", + "-Dlibpsl=false", + "-Dmodem_manager=false", + "-Dnmtui=false", + "-Dovs=false", + "-Dppp=false", + "-Dqt=false", + "-Dselinux=false", + "-Dsession_tracking=no", + "-Dsystemdsystemunitdir='no'", + "-Dsystemd_journal=false", + "-Dtests=no", + "-Dvapi=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git" + } + ] + }, + { + "name" : "mobile-broadband-provider-info", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git" + } + ] + }, + { + "name" : "libnma", + "buildsystem" : "meson", + "config-opts" : [ + "-Dgtk_doc=false", + "-Dintrospection=false", + "-Dvapi=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/libnma.git" + } + ] + }, + { + "name" : "network-manager-applet", + "buildsystem" : "meson", + "config-opts" : [ + "-Dappindicator=no", + "-Dgtk_doc=false", + "-Dintrospection=false", + "-Dlibnm_gtk=false", + "-Dselinux=false", + "-Dteam=false", + "-Dwwan=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/network-manager-applet.git" + } + ] + }, + { + "name" : "ModemManager", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-introspection", + "--disable-vala", + "--with-udev-base-dir=/app/lib", + "--with-systemdsystemunitdir=/app/lib/systemd/system", + "--without-mbim", + "--without-qmi" + ], + "sources" : [ + { + "type" : "git", + "url" : "git://anongit.freedesktop.org/ModemManager/ModemManager" + } + ] + }, + { + "name" : "gnome-settings-daemon", + "buildsystem" : "meson", + "config-opts" : [ + "-Dsystemd=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-settings-daemon.git" + } + ], + "modules": [ + { + "name": "libcanberra", + "sources": [ + { + "type": "archive", + "url": "http://0pointer.de/lennart/projects/libcanberra/libcanberra-0.30.tar.xz", + "sha256": "c2b671e67e0c288a69fc33dc1b6f1b534d07882c2aceed37004bf48c601afa72" + } + ], + "config-opts": [ + "--disable-alsa", + "--disable-null", + "--disable-oss" + ] + } + ] + }, + { + "name" : "gnome-bluetooth", + "buildsystem" : "meson", + "config-opts" : [ + "-Dintrospection=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-bluetooth.git" + } + ] + }, + { + "name" : "grilo", + "buildsystem" : "meson", + "config-opts" : [ + "-Denable-grl-pls=false", + "-Denable-gtk-doc=false", + "-Denable-introspection=false", + "-Denable-test-ui=false", + "-Denable-vala=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/grilo.git" + } + ] + }, + { + "name" : "openldap", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-slapd" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.46.tgz", + "sha256" : "9a90dcb86b99ae790ccab93b7585a31fbcbeec8c94bf0f7ab0ca0a87ea0c4b2d" + } + ] + }, + { + "name" : "libtirpc", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "http://downloads.sourceforge.net/sourceforge/libtirpc/libtirpc-1.2.6.tar.bz2", + "sha256" : "4278e9a5181d5af9cd7885322fdecebc444f9a3da87c526e7d47f7a12a37d1cc" + } + ] + }, + { + "name" : "rpcsvc-proto", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "https://github.com/thkukuk/rpcsvc-proto/archive/v1.4.tar.gz", + "sha256" : "eaa227686b84e8ae20181d2119c0ccac29d82371441844008019a134dafe3613" + } + ] + }, + { + "name" : "lmdb", + "buildsystem" : "simple", + "build-commands" : [ + "cd libraries/liblmdb/ && make prefix=/app install" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://github.com/LMDB/lmdb/archive/LMDB_0.9.23.tar.gz", + "sha256" : "abf42e91f046787ed642d9eb21812a5c473f3ba5854124484d16eadbe0aa9c81" + } + ] + }, + { + "name" : "samba", + "buildsystem" : "autotools", + "config-opts" : [ + "--without-json", + "--without-ad-dc", + "--without-pam" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://download.samba.org/pub/samba/stable/samba-4.11.0.tar.gz", + "sha256" : "6adf1c74afff1f3f7e14060cc5a36111a6721d644ea51ed1b22da46051e48e9c" + } + ] + }, + { + "name" : "libgtop2", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-introspection" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/libgtop.git" + } + ] + }, + { + "name" : "cheese", + "buildsystem" : "meson", + "config-opts" : [ + "-Dintrospection=false", + "-Dgtk_doc=false", + "-Dman=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/cheese.git" + } + ] + }, + { + "name" : "libhandy", + "buildsystem" : "meson", + "config-opts" : [ + "-Dexamples=false", + "-Dglade_catalog=disabled", + "-Dintrospection=disabled", + "-Dtests=false", + "-Dvapi=false" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/libhandy.git" + } + ] + }, + { + "name" : "gsound", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gsound.git" + } + ] + }, + { + "name" : "libkmod", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/kmod/kmod-25.tar.xz", + "sha256" : "7165e6496656159dcb909a91ed708a0fe273a4b128b4b1dc997ccb5189eef1cd" + } + ] + }, + { + "name" : "lvm2", + "buildsystem" : "autotools", + "config-opts" : [ + "--prefix=/app", + "--enable-cmdlib", + "--enable-dmeventd", + "--enable-pkgconfig", + "--with-usrlibdir=/app/lib", + "--with-usrbindir=/app/bin", + "--with-staticdir=/app/bin" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://www.sourceware.org/pub/lvm2/LVM2.2.02.177.tgz", + "sha256" : "4025a23ec9b15c2cb7486d151c29dc953b75efc4d452cfe9dbbc7c0fac8e80f2" + } + ], + "post-install" : [ + "chmod 755 /app/sbin/dm*", + "chmod 755 /app/sbin/lvm*", + "chmod 755 /app/lib/libdevmapper-event-lvm2.so.2.02", + "chmod 755 /app/lib/libdevmapper-event-lvm2mirror.so", + "chmod 755 /app/lib/libdevmapper-event-lvm2raid.so", + "chmod 755 /app/lib/libdevmapper-event-lvm2snapshot.so", + "chmod 755 /app/lib/libdevmapper-event-lvm2thin.so", + "chmod 755 /app/lib/libdevmapper-event.so.1.02", + "chmod 755 /app/lib/libdevmapper.so.1.02", + "chmod 755 /app/lib/liblvm2cmd.so.2.02" + ] + }, + { + "name" : "parted", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "http://ftp.gnu.org/gnu/parted/parted-3.2.tar.xz", + "sha256" : "858b589c22297cacdf437f3baff6f04b333087521ab274f7ab677cb8c6bb78e4" + }, + { + "type" : "patch", + "path" : "libparted-include.patch" + } + ] + }, + { + "name" : "mpfr", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "https://www.mpfr.org/mpfr-4.0.2/mpfr-4.0.2.tar.xz", + "sha256" : "1d3be708604eae0e42d578ba93b390c2a145f17743a744d8f3f8c2ad5855a38a" + } + ] + }, + { + "name" : "bytesize", + "buildsystem" : "autotools", + "config-opts" : [ + "--with-gtk-doc=no" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/storaged-project/libbytesize.git" + } + ] + }, + { + "name" : "cryptsetup", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/cryptsetup-1.7.5.tar.xz", + "sha256" : "2b30cd1d0dd606a53ac77b406e1d37798d4b0762fa89de6ea546201906a251bd" + } + ] + }, + { + "name" : "swig", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/swig/swig.git" + } + ] + }, + { + "name" : "volume-key", + "buildsystem" : "simple", + "build-commands" : [ + "autoreconf -i", + "./configure --prefix=/app", + "make install" + ], + "sources" : [ + { + "type" : "archive", + "url" : "https://github.com/felixonmars/volume_key/archive/volume_key-0.3.11.tar.gz", + "sha256" : "92250506756eca19a0b6f50c16d3502eb5566ea4725645d7c5d87eb5cc8f3fd8" + } + ] + }, + { + "name" : "libblockdev", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-tests", + "--with-btrfs=no", + "--with-dm=no", + "--with-gtk-doc=no", + "--with-kbd=no", + "--with-lvm=no", + "--with-lvm-dbus=no", + "--with-mpath=no", + "--with-nvdimm=no", + "--with-tools=no", + "--with-vdo=no" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/storaged-project/libblockdev.git" + } + ] + }, + { + "name" : "atasmart", + "buildsystem" : "autotools", + "sources" : [ + { + "type" : "archive", + "url" : "http://0pointer.de/public/libatasmart-0.19.tar.xz", + "sha256" : "61f0ea345f63d28ab2ff0dc352c22271661b66bf09642db3a4049ac9dbdb0f8d" + } + ] + }, + { + "name" : "udisks", + "buildsystem" : "autotools", + "config-opts" : [ + "--disable-introspection", + "--disable-lvm2", + "--with-systemdsystemunitdir=/app/lib/systemd/system", + "--with-tmpfilesdir=/app/lib/tmpfiles.d" + ], + "sources" : [ + { + "type" : "git", + "url" : "https://github.com/storaged-project/udisks.git" + } + ] + }, + { + "name" : "gnome-backgrounds", + "buildsystem" : "meson", + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-backgrounds.git" + } + ] + }, + { + "name" : "gnome-control-center", + "buildsystem" : "meson", + "sources" : [ + { + "type" : "git", + "url" : "https://gitlab.gnome.org/GNOME/gnome-control-center.git" + } + ], + "config-opts" : [ + "-Dtracing=true", + "-Dprofile=development" + ] + } + ] +} diff --git a/build-aux/flatpak/polkit-autogen b/build-aux/flatpak/polkit-autogen new file mode 100755 index 0000000..3ba457e --- /dev/null +++ b/build-aux/flatpak/polkit-autogen @@ -0,0 +1,4 @@ +#!/bin/sh + +gtkdocize --flavour no-tmpl +autoreconf -if diff --git a/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch b/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch new file mode 100644 index 0000000..651f53b --- /dev/null +++ b/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch @@ -0,0 +1,132 @@ +From 1073a44277316348d40d86ecec908f1d4812f360 Mon Sep 17 00:00:00 2001 +From: Christian Hergert <chergert@redhat.com> +Date: Mon, 27 May 2019 11:49:09 -0700 +Subject: [PATCH] flatpak: make polkit suitable for use within flatpak + +This is based on patches from Patrick Griffis with additional fixes +to allow us to disable use of PAM within Flaptak. +--- + configure.ac | 20 ++++++++++++++++---- + src/Makefile.am | 6 +++++- + src/polkitagent/Makefile.am | 5 +++++ + test/Makefile.am | 6 +++++- + 4 files changed, 31 insertions(+), 6 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 5cedb4e..729d78d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -79,11 +79,13 @@ PKG_CHECK_MODULES(GLIB, [gmodule-2.0 gio-unix-2.0 >= 2.30.0]) + AC_SUBST(GLIB_CFLAGS) + AC_SUBST(GLIB_LIBS) + +-PKG_CHECK_MODULES(LIBJS, [mozjs-60]) ++AS_IF([test x${enable_polkitd} = yes], [ ++ PKG_CHECK_MODULES(LIBJS, [mozjs-60]) + +-AC_SUBST(LIBJS_CFLAGS) +-AC_SUBST(LIBJS_CXXFLAGS) +-AC_SUBST(LIBJS_LIBS) ++ AC_SUBST(LIBJS_CFLAGS) ++ AC_SUBST(LIBJS_CXXFLAGS) ++ AC_SUBST(LIBJS_LIBS) ++]) + + EXPAT_LIB="" + AC_ARG_WITH(expat, [ --with-expat=<dir> Use expat from here], +@@ -236,6 +238,15 @@ if test "x$with_systemdsystemunitdir" != "xno"; then + fi + AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$systemdsystemunitdir"]) + ++dnl --------------------------------------------------------------------------- ++dnl - Disable polkitd when using library alone ++dnl --------------------------------------------------------------------------- ++ ++AC_ARG_ENABLE([polkitd], ++ [AS_HELP_STRING([--disable-polkitd], [Do not build polkitd])], ++ [enable_polkitd=$enableval], [enable_polkitd=yes]) ++AM_CONDITIONAL(BUILD_POLKITD, [test x${enable_polkitd} = yes]) ++ + dnl --------------------------------------------------------------------------- + dnl - User for running polkitd + dnl --------------------------------------------------------------------------- +@@ -579,6 +590,7 @@ echo " + Session tracking: ${SESSION_TRACKING} + PAM support: ${have_pam} + systemdsystemunitdir: ${systemdsystemunitdir} ++ polkitd: ${enable_polkitd} + polkitd user: ${POLKITD_USER}" + + if test "$have_pam" = yes ; then +diff --git a/src/Makefile.am b/src/Makefile.am +index 09fc7b3..c6fe91b 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -1,5 +1,9 @@ + +-SUBDIRS = polkit polkitbackend polkitagent programs ++SUBDIRS = polkit polkitagent programs ++ ++if BUILD_POLKITD ++SUBDIRS += polkitbackend ++endif + + if BUILD_EXAMPLES + SUBDIRS += examples +diff --git a/src/polkitagent/Makefile.am b/src/polkitagent/Makefile.am +index 49720db..633f9d4 100644 +--- a/src/polkitagent/Makefile.am ++++ b/src/polkitagent/Makefile.am +@@ -79,6 +79,7 @@ libpolkit_agent_1_la_LIBADD = \ + + libpolkit_agent_1_la_LDFLAGS = -export-symbols-regex '(^polkit_.*)' + ++if !POLKIT_AUTHFW_NONE + libprivdir = $(prefix)/lib/polkit-1 + libpriv_PROGRAMS = polkit-agent-helper-1 + +@@ -113,6 +114,8 @@ polkit_agent_helper_1_LDFLAGS = \ + $(AM_LDFLAGS) \ + $(NULL) + ++endif # !POLKIT_AUTHFW_NONE ++ + if HAVE_INTROSPECTION + + girdir = $(INTROSPECTION_GIRDIR) +@@ -142,6 +145,7 @@ include $(INTROSPECTION_MAKEFILE) + + endif # HAVE_INTROSPECTION + ++if !POLKIT_AUTHFW_NONE + # polkit-agent-helper-1 need to be setuid root because it's used to + # authenticate not only the invoking user, but possibly also root + # and/or other users. +@@ -149,6 +153,7 @@ endif # HAVE_INTROSPECTION + install-data-hook: + -chown root $(DESTDIR)$(libprivdir)/polkit-agent-helper-1 + -chmod 4755 $(DESTDIR)$(libprivdir)/polkit-agent-helper-1 ++endif # !POLKIT_AUTHFW_NONE + + EXTRA_DIST = polkitagentmarshal.list polkitagentenumtypes.h.template polkitagentenumtypes.c.template + CLEANFILES = $(gir_DATA) $(typelibs_DATA) +diff --git a/test/Makefile.am b/test/Makefile.am +index 59d0680..d43b0fe 100644 +--- a/test/Makefile.am ++++ b/test/Makefile.am +@@ -1,7 +1,11 @@ + +-SUBDIRS = mocklibc . polkit polkitbackend ++SUBDIRS = mocklibc . polkit + AM_CFLAGS = $(GLIB_CFLAGS) + ++if BUILD_POLKITD ++SUBDIRS += polkitbackend ++endif ++ + noinst_LTLIBRARIES = libpolkit-test-helper.la + libpolkit_test_helper_la_SOURCES = polkittesthelper.c polkittesthelper.h + libpolkit_test_helper_la_LIBADD = $(GLIB_LIBS) +-- +2.21.0 + diff --git a/build-aux/meson.build b/build-aux/meson.build new file mode 100644 index 0000000..1b42906 --- /dev/null +++ b/build-aux/meson.build @@ -0,0 +1 @@ +meson.add_install_script('meson/meson_post_install.py', control_center_datadir) diff --git a/build-aux/meson/meson_post_install.py b/build-aux/meson/meson_post_install.py new file mode 100644 index 0000000..f9119e1 --- /dev/null +++ b/build-aux/meson/meson_post_install.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python3 + +import os +import subprocess +import sys + +gsettingsschemadir = os.path.join(sys.argv[1], 'glib-2.0', 'schemas') +icondir = os.path.join(sys.argv[1], 'icons', 'hicolor') + +if not os.environ.get('DESTDIR'): + print('Compiling gsettings schemas...') + subprocess.call(['glib-compile-schemas', gsettingsschemadir]) + + print('Update icon cache...') + subprocess.call(['gtk-update-icon-cache', '-f', '-t', icondir]) |