summaryrefslogtreecommitdiffstats
path: root/build-aux
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux')
-rwxr-xr-xbuild-aux/ci/ci-helper.sh61
-rw-r--r--build-aux/ci/lsan.supp19
-rw-r--r--build-aux/flatpak/libparted-include.patch22
-rw-r--r--build-aux/flatpak/org.gnome.Settings.json819
-rwxr-xr-xbuild-aux/flatpak/polkit-autogen4
-rw-r--r--build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch132
-rw-r--r--build-aux/meson.build1
-rw-r--r--build-aux/meson/meson_post_install.py15
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])