meson/meson.spec
2019-03-24 00:18:58 +03:00

132 lines
3.4 KiB
RPMSpec

%define debug %nil
%define debug_package %nil
%bcond_with check
Summary: High productivity build system
Name: meson
Version: 0.44.1
Release: 1
License: ASL 2.0
Group: Development/Tools
Url: http://mesonbuild.com/
Source0: https://github.com/mesonbuild/meson/releases/download/%{version}/%{name}-%{version}.tar.gz
Source1: https://github.com/mesonbuild/meson/releases/download/%{version}/%{name}-%{version}.tar.gz.asc
Source2: %{name}.macros
BuildRequires: python3-setuptools
BuildRequires: pkgconfig(python3) >= 3.4
%if %{with check}
BuildRequires: locales
BuildRequires: ninja
# Various languages
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: gcc-gfortran
BuildRequires: gcc-objc
BuildRequires: gcc-objc++
BuildRequires: gnustep-base-devel
BuildRequires: mono
BuildRequires: rust
BuildRequires: java-devel
BuildRequires: pkgconfig(mono)
# Various libs support
BuildRequires: bison
BuildRequires: flex
BuildRequires: gettext
BuildRequires: git
BuildRequires: gtk-doc
BuildRequires: itstool
BuildRequires: locales-en
BuildRequires: nasm
BuildRequires: pkgconfig
BuildRequires: qt5-linguist-tools
BuildRequires: qt5-tools
BuildRequires: texlive-epstopdf
BuildRequires: units
BuildRequires: vala
BuildRequires: vala-tools
BuildRequires: asan-devel
BuildRequires: boost-devel
BuildRequires: cups-devel
BuildRequires: gmock-devel
BuildRequires: gtest-devel
BuildRequires: libwmf-devel
BuildRequires: llvm-devel
BuildRequires: pcap-devel
BuildRequires: wxgtku3.0-devel
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(glib-sharp-2.0)
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(protobuf)
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(vapigen)
BuildRequires: pkgconfig(zlib)
BuildRequires: python3-gobject3
BuildRequires: python3-cython
%endif
Requires: ninja
Requires: python3-setuptools
BuildArch: noarch
%description
Meson is a build system designed to optimize programmer productivity. It aims
to do this by providing simple, out-of-the-box support for modern software
development tools and practices, such as unit tests, coverage reports,
Valgrind, CCache and the like.
%files
%doc README.md COPYING
%{_bindir}/%{name}
%{_bindir}/mesonconf
%{_bindir}/mesonintrospect
%{_bindir}/mesontest
%{_bindir}/wraptool
%{_mandir}/man1/%{name}*.1.*
%{_mandir}/man1/wraptool.1.*
%{py3_puresitedir}/mesonbuild/
%{py3_puresitedir}/%{name}-%{version}-py*.egg-info/
%{_sys_macros_dir}/%{name}.macros
#{_datadir}/polkit-1/actions/com.mesonbuild.install.policy
#----------------------------------------------------------------------------
%prep
%setup -q
%build
%py3_build
%install
%py3_install
# Install our rpm macro helper for meson
install -D -m 0644 %{SOURCE2} %{buildroot}%{_sys_macros_dir}/%{name}.macros
%if %{with check}
%check
# Lack of gmock and vulkan.
rm -rf "test cases/frameworks/3 gmock/"
rm -rf "test cases/frameworks/18 vulkan/"
# Remove MPI tests for now because it is complicated to run.
rm -rf "test cases/frameworks/17 mpi"
# Due to missing libtinfo
rm -rf "test cases/frameworks/15 llvm"
# Cannot find libboost_thread.so which exists
rm -rf "test cases/frameworks/1 boost"
rm -rf "test cases/frameworks/22 gir link order"
rm -rf "test cases/common/190 openmp"
export MESON_PRINT_TEST_OUTPUT=1
export LC_ALL=UTF-8
%__python3 run_tests.py
%endif