From 14cf5b95d2ae0a8b6d413727f75ac234aae351f1 Mon Sep 17 00:00:00 2001 From: Enno Boland Date: Fri, 28 Apr 2017 09:28:42 +0200 Subject: [PATCH] common/build-style: add meson build style also use build_style=meson in all templates that use meson. --- common/build-style/meson.sh | 25 +++++++++++++++++++++++++ srcpkgs/budgie-desktop/template | 13 +++---------- srcpkgs/gnome-recipes/template | 12 ++---------- 3 files changed, 30 insertions(+), 20 deletions(-) create mode 100644 common/build-style/meson.sh diff --git a/common/build-style/meson.sh b/common/build-style/meson.sh new file mode 100644 index 00000000000..f0e076fa285 --- /dev/null +++ b/common/build-style/meson.sh @@ -0,0 +1,25 @@ +# +# This helper is for templates using GNU configure scripts. +# +do_configure() { + : ${meson_cmd:=meson} + : ${meson_builddir:=build} + + ${meson_cmd} --prefix=/usr --buildtype=plain ${configure_args} . ${meson_builddir} +} + +do_build() { + : ${make_cmd:=ninja} + : ${make_build_target:=all} + : ${meson_builddir:=build} + + ${make_cmd} -C ${meson_builddir} ${makejobs} ${make_build_args} ${make_build_target} +} + +do_install() { + : ${make_cmd:=ninja} + : ${make_install_target:=install} + : ${meson_builddir:=build} + + DESTDIR=${DESTDIR} ${make_cmd} -C ${meson_builddir} ${make_install_args} ${make_install_target} +} diff --git a/srcpkgs/budgie-desktop/template b/srcpkgs/budgie-desktop/template index ff912ebc486..60f7ce0175c 100644 --- a/srcpkgs/budgie-desktop/template +++ b/srcpkgs/budgie-desktop/template @@ -8,6 +8,7 @@ makedepends="libglib-devel gtk+3-devel libpeas-devel pulseaudio-devel gnome-desk libuuid-devel polkit-devel gettext-devel ibus-devel accountsservice-devel upower-devel gnome-bluetooth-devel" depends="gnome-session" +build_style="meson" # Needs gobject-introspection and libgirepository-devel, vala, gjs ... nocross=yes short_desc="Budgie desktop" @@ -17,14 +18,6 @@ homepage="https://github.com/solus-project/budgie-desktop" distfiles="https://github.com/solus-project/${pkgname}/releases/download/v${version}/${pkgname}-${version}.tar.xz" checksum=bb37acbc6edddf64860352fac73fd968801e29ce0e66962ef2a3dd3a443d568f -do_configure() { - meson --prefix=/usr --buildtype=plain build -} - -do_build() { - ninja -C build -} - -do_install() { - LD=$CC DESTDIR="$DESTDIR" ninja -C build install +pre_install() { + export LD=$CC } diff --git a/srcpkgs/gnome-recipes/template b/srcpkgs/gnome-recipes/template index 14a727fa35b..a106e497742 100644 --- a/srcpkgs/gnome-recipes/template +++ b/srcpkgs/gnome-recipes/template @@ -3,6 +3,7 @@ pkgname=gnome-recipes version=1.4.4 revision=1 _libgd_hash=97a852cdf3d37776f9c98f730d7dcbbe995bdeb7 +build_style=meson hostmakedepends="glib intltool itstool pkg-config meson git" makedepends="gtk+3-devel gnome-autoar-devel gspell-devel libcanberra-devel libsoup-devel" @@ -14,17 +15,8 @@ distfiles="${GNOME_SITE}/${pkgname}/${version%.*}/${pkgname}-${version}.tar.xz" checksum=b8e3bcee39b85437a68039ddb35f6f54cfb3ed7ab2a6320bb74dad4846f186e6 nocross=https://build.voidlinux.eu/builders/armv7l-musl_builder/builds/2155/steps/shell_3/logs/stdio -do_configure() { +pre_configure() { # meson_post_install.py updates icon cache, desktop database etc. # nothing that we need. It fails in this setup, so make it a nop ln -sf /bin/true meson_post_install.py - meson --prefix=/usr --buildtype=plain build -} - -do_build() { - ninja -C build -} - -do_install() { - DESTDIR="$DESTDIR" ninja -C build install }