[gtk-vnc] build: switch RPM spec builds to use meson instead of autotools



commit 6de3973e12f3da60e65490f01ae99dbcdfe64aa4
Author: Daniel P. Berrangé <berrange redhat com>
Date:   Mon Aug 5 18:00:16 2019 +0100

    build: switch RPM spec builds to use meson instead of autotools
    
    Signed-off-by: Daniel P. Berrangé <berrange redhat com>

 gtk-vnc.spec.in       | 17 ++++++-----------
 mingw-gtk-vnc.spec.in | 21 ++++++++-------------
 2 files changed, 14 insertions(+), 24 deletions(-)
---
diff --git a/gtk-vnc.spec.in b/gtk-vnc.spec.in
index 2ee5078..3af2b6a 100644
--- a/gtk-vnc.spec.in
+++ b/gtk-vnc.spec.in
@@ -26,12 +26,13 @@ BuildRequires: python3-devel
 BuildRequires: python
 %endif
 %endif
-BuildRequires: gnutls-devel libgcrypt-devel cyrus-sasl-devel zlib-devel intltool
+BuildRequires: gnutls-devel libgcrypt-devel cyrus-sasl-devel zlib-devel
 BuildRequires: gobject-introspection-devel
 BuildRequires: gtk3-devel
 BuildRequires: vala-tools
 BuildRequires: pulseaudio-libs-devel
 BuildRequires: /usr/bin/pod2man
+BuildRequires: meson
 
 %description
 gtk-vnc is a VNC viewer widget for GTK. It is built using coroutines
@@ -111,18 +112,12 @@ Libraries, includes, etc. to compile with the gtk-vnc library
 %autosetup -n gtk-vnc-%{version}
 
 %build
-%configure --enable-introspection=yes \
-          --with-tls-priority=%{tls_priority}
-%__make %{?_smp_mflags} V=1
+%meson
+%meson_build
 chmod -x examples/*.pl examples/*.js examples/*.py
 
 %install
-rm -fr %{buildroot}
-
-%__make install DESTDIR=%{buildroot}
-
-rm -f %{buildroot}%{_libdir}/*.a
-rm -f %{buildroot}%{_libdir}/*.la
+%meson_install
 
 %find_lang %{name}
 
@@ -143,7 +138,7 @@ rm -f %{buildroot}%{_libdir}/*.la
 %postun -n gtk-vnc2 -p /sbin/ldconfig
 
 %check
-make %{?_smp_mflags} check
+%meson_test
 
 
 %files -n gvnc -f %{name}.lang
diff --git a/mingw-gtk-vnc.spec.in b/mingw-gtk-vnc.spec.in
index 11988a7..857e5b9 100644
--- a/mingw-gtk-vnc.spec.in
+++ b/mingw-gtk-vnc.spec.in
@@ -30,7 +30,9 @@ BuildRequires: mingw32-gtk3
 BuildRequires: mingw64-gtk3
 
 BuildRequires: pkgconfig
-BuildRequires: intltool
+BuildRequires: meson
+BuildRequires: gcc
+BuildRequires: gettext
 
 BuildRequires: /usr/bin/pod2man
 
@@ -96,25 +98,18 @@ allowing it to be completely asynchronous while remaining single threaded.
 
 
 %build
-%mingw_configure --without-examples --without-sasl
-%mingw_make %{?_smp_mflags} V=1
+%mingw_meson
+%mingw_ninja
 
 
 %install
-%mingw_make_install DESTDIR=$RPM_BUILD_ROOT
+export DESTDIR=%{buildroot}
+%mingw_ninja install
 
-# Remove static libraries but DON'T remove *.dll.a files.
-rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/libgtk-vnc-2.0.a
-rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/libgvnc-1.0.a
 rm -f $RPM_BUILD_ROOT%{mingw32_mandir}/man1/gvnccapture.1*
-rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/libgtk-vnc-2.0.a
-rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/libgvnc-1.0.a
 rm -f $RPM_BUILD_ROOT%{mingw64_mandir}/man1/gvnccapture.1*
 
-# Drop all .la files
-find $RPM_BUILD_ROOT -name "*.la" -delete
-
-%find_lang gtk-vnc
+%mingw_find_lang gtk-vnc
 
 
 # Mingw32


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]