30c338
%global libname mesonbuild
30c338
25b4e3
# Don’t run the tests by default, since they are rather flaky.
25b4e3
# I’ll get to getting them running eventually, but free time is sparse.
25b4e3
# — ekulik
30c338
%bcond_with check
30c338
30c338
Name:           meson
aedb1b
Version:        0.58.2
aedb1b
Release:        2%{?dist}
30c338
Summary:        High productivity build system
30c338
30c338
License:        ASL 2.0
25b4e3
URL:            https://mesonbuild.com/
25b4e3
Source:         https://github.com/mesonbuild/meson/releases/download/%{version}/%{name}-%{version}.tar.gz
30c338
30c338
BuildArch:      noarch
30c338
25b4e3
BuildRequires:  python3-devel
25b4e3
BuildRequires:  python3-setuptools
25b4e3
Requires:       python%{python3_version}dist(setuptools)
25b4e3
Requires:       ninja-build
25b4e3
Requires:       python3-devel
25b4e3
30c338
%if %{with check}
30c338
BuildRequires:  ninja-build
25b4e3
# Some tests expect the unversioned executable
25b4e3
BuildRequires:  /usr/bin/python
30c338
# Various languages
30c338
BuildRequires:  gcc
30c338
BuildRequires:  libasan
30c338
BuildRequires:  gcc-c++
30c338
BuildRequires:  gcc-gfortran
30c338
BuildRequires:  gcc-objc
30c338
BuildRequires:  gcc-objc++
30c338
BuildRequires:  java-devel
25b4e3
BuildRequires:  libomp-devel
30c338
BuildRequires:  mono-core mono-devel
30c338
BuildRequires:  rust
30c338
# Since the build is noarch, we can't use %%ifarch
30c338
#%%ifarch %%{ldc_arches}
30c338
#BuildRequires:  ldc
30c338
#%%endif
30c338
# Various libs support
30c338
BuildRequires:  boost-devel
30c338
BuildRequires:  gtest-devel
30c338
BuildRequires:  gmock-devel
30c338
BuildRequires:  qt5-qtbase-devel
25b4e3
BuildRequires:  qt5-qtbase-private-devel
25b4e3
BuildRequires:  qt5-linguist
30c338
BuildRequires:  vala
25b4e3
BuildRequires:  python3-gobject-base
30c338
BuildRequires:  wxGTK3-devel
30c338
BuildRequires:  flex
30c338
BuildRequires:  bison
30c338
BuildRequires:  gettext
30c338
BuildRequires:  gnustep-base-devel
30c338
BuildRequires:  %{_bindir}/gnustep-config
30c338
BuildRequires:  git-core
30c338
BuildRequires:  pkgconfig(protobuf)
30c338
BuildRequires:  pkgconfig(glib-2.0)
30c338
BuildRequires:  pkgconfig(glib-sharp-2.0)
30c338
BuildRequires:  pkgconfig(gobject-introspection-1.0)
30c338
BuildRequires:  gtk-doc
30c338
BuildRequires:  itstool
30c338
BuildRequires:  pkgconfig(zlib)
25b4e3
BuildRequires:  python3dist(cython)
30c338
BuildRequires:  pkgconfig(sdl2)
30c338
BuildRequires:  %{_bindir}/pcap-config
30c338
BuildRequires:  pkgconfig(vulkan)
30c338
BuildRequires:  llvm-devel
30c338
BuildRequires:  cups-devel
30c338
%endif
25b4e3
30c338
%description
30c338
Meson is a build system designed to optimize programmer
30c338
productivity. It aims to do this by providing simple, out-of-the-box
30c338
support for modern software development tools and practices, such as
30c338
unit tests, coverage reports, Valgrind, CCache and the like.
30c338
30c338
%prep
30c338
%autosetup -p1
25b4e3
# Macro should not change when we are redefining bindir
25b4e3
sed -i -e "/^%%__meson /s| .*$| %{_bindir}/%{name}|" data/macros.%{name}
30c338
30c338
%build
30c338
%py3_build
30c338
30c338
%install
30c338
%py3_install
25b4e3
install -Dpm0644 -t %{buildroot}%{rpmmacrodir} data/macros.%{name}
30c338
30c338
%if %{with check}
30c338
%check
25b4e3
# Remove Boost tests for now, because it requires Python 2
25b4e3
rm -rf "test cases/frameworks/1 boost"
25b4e3
# Remove MPI tests for now because it is complicated to run
25b4e3
rm -rf "test cases/frameworks/17 mpi"
30c338
export MESON_PRINT_TEST_OUTPUT=1
25b4e3
%{__python3} ./run_tests.py
30c338
%endif
30c338
30c338
%files
30c338
%license COPYING
30c338
%{_bindir}/%{name}
30c338
%{python3_sitelib}/%{libname}/
30c338
%{python3_sitelib}/%{name}-*.egg-info/
30c338
%{_mandir}/man1/%{name}.1*
30c338
%{rpmmacrodir}/macros.%{name}
30c338
%dir %{_datadir}/polkit-1
30c338
%dir %{_datadir}/polkit-1/actions
30c338
%{_datadir}/polkit-1/actions/com.mesonbuild.install.policy
30c338
30c338
30c338
%changelog
aedb1b
* Tue Nov 16 2021 Tomas Pelka <tpelka@redhat.com> - 0.58.2-2
aedb1b
- Bump release and rebuild in -candidate target to fix gating issues
aedb1b
  Resolves: rhbz#2006519
aedb1b
aedb1b
* Mon Oct 18 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 0.58.2-1
aedb1b
- Update meson to 0.58-2
aedb1b
  Resolves: rhbz#2006519
aedb1b
25b4e3
* Tue Dec 15 2020 Danilo C. L. de Paula <ddepaula@redhat.com> - 0.55.3-3
25b4e3
- build: use PIE objects for static libraries
25b4e3
  Resolves: rhbz#1899620
25b4e3
  (meson builds QEMU with PIC objects instead of PIE)
25b4e3
25b4e3
* Thu Oct 15 2020 Danilo C. L. de Paula <ddepaula@redhat.com> - 0.55.3-2
25b4e3
- Add python3-devel dependency, as asked by the BZ..
25b4e3
- Resolves: rhbz#1872692
25b4e3
25b4e3
* Thu Oct 08 2020 Danilo de Paula <ddepaula@redhat.com> - 0.55.3-1
25b4e3
- Update to 0.55.3, based on upstream Fedora
25b4e3
- Resolves: rhbz#1872692
25b4e3
30c338
* Mon Feb 04 2019 Stephen Gallagher <sgallagh@redhat.com> - 0.49.2-1
30c338
- Update to 0.49.2
30c338
- Drop upstreamed patch
30c338
- Resolves: rhbz#1666733
30c338
30c338
* Mon Dec 10 2018 Stephen Gallagher <sgallagh@redhat.com> - 0.45.1-3
30c338
- Backport patch to fix gnome.mkenums_simple() when used with file() arguments
30c338
30c338
* Mon Aug 13 2018 Troy Dawson <tdawson@redhat.com> - 0.45.1-2
30c338
- Add Requires python3-devel
30c338
30c338
* Wed Mar 21 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.45.1-1
30c338
- Update to 0.45.1
30c338
30c338
* Sun Mar 04 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.45.0-1
30c338
- Update to 0.45.0
30c338
30c338
* Tue Feb 20 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.44.1-1
30c338
- Update to 0.44.1
30c338
30c338
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.44.0-2
30c338
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
30c338
30c338
* Sun Dec 10 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.44.0-1
30c338
- Update to 0.44.0
30c338
30c338
* Mon Oct 09 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.43.0-1
30c338
- Update to 0.43.0
30c338
30c338
* Tue Sep 12 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.42.1-1
30c338
- Update to 0.42.1
30c338
30c338
* Fri Aug 18 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.42.0-1
30c338
- Update to 0.42.0
30c338
30c338
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.41.2-2
30c338
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
30c338
30c338
* Wed Jul 19 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.41.2-1
30c338
- Update to 0.41.2
30c338
30c338
* Tue Jul 18 2017 Kalev Lember <klember@redhat.com> - 0.41.1-3
30c338
- Backport various gtk-doc fixes from upstream
30c338
30c338
* Thu Jul 13 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.41.1-2
30c338
- Strip trailing slash from pkg-config files
30c338
30c338
* Mon Jun 19 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.41.1-1
30c338
- Update to 0.41.1
30c338
30c338
* Tue Jun 13 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.41.0-1
30c338
- Update to 0.41.0
30c338
30c338
* Wed May 31 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.40.1-2
30c338
- Don't run ldc tests
30c338
30c338
* Fri Apr 28 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.40.1-1
30c338
- Update to 0.40.1
30c338
30c338
* Sun Apr 23 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.40.0-1
30c338
- Update to 0.40.0
30c338
30c338
* Thu Apr 13 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.39.1-2
30c338
- Exclude ldc for module builds
30c338
30c338
* Thu Mar 16 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.39.1-1
30c338
- Update to 0.39.1
30c338
30c338
* Mon Mar 06 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.39.0-1
30c338
- Update to 0.39.0
30c338
30c338
* Tue Feb 07 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.38.1-1
30c338
- Update to 0.38.1
30c338
30c338
* Sun Jan 29 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.38.0-1
30c338
- Update to 0.38.0
30c338
30c338
* Thu Dec 22 2016 Miro Hrončok <mhroncok@redhat.com> - 0.37.1-2
30c338
- Rebuild for Python 3.6
30c338
30c338
* Tue Dec 20 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.37.1-1
30c338
- Update to 0.37.1
30c338
30c338
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.37.0-2
30c338
- Rebuild for Python 3.6
30c338
30c338
* Sun Dec 18 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.37.0-1
30c338
- Update to 0.37.0
30c338
30c338
* Thu Dec 15 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.36.0-4
30c338
- Backport more RPM macro fixes (FPC ticket #655)
30c338
30c338
* Tue Dec 13 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.36.0-3
30c338
- Backport fixes to RPM macros
30c338
30c338
* Sat Dec 03 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.36.0-2
30c338
- Print test output during build
30c338
30c338
* Mon Nov 14 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.36.0-1
30c338
- Update to 0.36.0
30c338
30c338
* Tue Oct 18 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.35.1-1
30c338
- Update to 0.35.1 (RHBZ #1385986)
30c338
30c338
* Tue Oct 11 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.35.0-3
30c338
- Backport couple of fixes
30c338
30c338
* Wed Oct 05 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.35.0-2
30c338
- Apply patch to fix FTBFS
30c338
30c338
* Mon Oct 03 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.35.0-1
30c338
- Update to 0.35.0
30c338
30c338
* Wed Sep 07 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.34.0-2
30c338
- Run D test suite
30c338
30c338
* Wed Sep 07 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.34.0-1
30c338
- Update to 0.34.0
30c338
30c338
* Tue Aug 09 2016 Jon Ciesla <limburgher@gmail.com> - 0.33.0-2
30c338
- Obsoletes fix.
30c338
30c338
* Tue Aug 09 2016 Jon Ciesla <limburgher@gmail.com> - 0.33.0-1
30c338
- 0.33.0
30c338
- GUI dropped upstream.
30c338
30c338
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.31.0-2
30c338
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
30c338
30c338
* Thu Apr 14 2016 Igor Gnatenko <ignatenko@redhat.com> - 0.31.0-1
30c338
- Update to 0.31.0
30c338
30c338
* Sun Mar 20 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.30.0-1
30c338
- Update to 0.30.0
30c338
30c338
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.29.0-2
30c338
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
30c338
30c338
* Sun Jan 24 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.29.0-1
30c338
- Update to 0.29.0
30c338
30c338
* Fri Jan 15 2016 Jonathan Wakely <jwakely@redhat.com> - 0.28.0-2
30c338
- Rebuilt for Boost 1.60
30c338
30c338
* Mon Dec 28 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.28.0-1
30c338
- 0.28.0
30c338
30c338
* Wed Nov 25 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.27.0-1
30c338
- 0.27.0
30c338
30c338
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.26.0-3
30c338
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
30c338
30c338
* Fri Oct 30 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.26.0-2
30c338
- Fix rpm macros for using optflags
30c338
30c338
* Sun Sep 13 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.26.0-1
30c338
- 0.26.0
30c338
30c338
* Thu Aug 27 2015 Jonathan Wakely <jwakely@redhat.com> - 0.25.0-4
30c338
- Rebuilt for Boost 1.59
30c338
30c338
* Wed Jul 29 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.25.0-3
30c338
- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159
30c338
30c338
* Wed Jul 22 2015 David Tardon <dtardon@redhat.com> - 0.25.0-2
30c338
- rebuild for Boost 1.58
30c338
30c338
* Sun Jul 12 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.25.0-1
30c338
- 0.25.0
30c338
30c338
* Sat Jul 11 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.24.0-3
30c338
- Update URLs
30c338
- drop unneded hacks in install section
30c338
- enable print test output for tests
30c338
30c338
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.24.0-2
30c338
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
30c338
30c338
* Mon May 25 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.24.0-1
30c338
- Update to 0.24.0
30c338
30c338
* Thu May 21 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.23.0-3.20150328git0ba1d54
30c338
- Update to latest git
30c338
30c338
* Thu May 21 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.23.0-3
30c338
- Add patch to accept .S files
30c338
30c338
* Wed Apr 29 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.23.0-2
30c338
- Add python3 to Requires (Thanks to Ilya Kyznetsov)
30c338
30c338
* Tue Mar 31 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.23.0-1
30c338
- 0.23.0
30c338
30c338
* Sat Mar 28 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-9.20150328git3b49b71
30c338
- Update to latest git
30c338
30c338
* Mon Mar 23 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-9.20150325git18550fe
30c338
- Update to latest git
30c338
- Include mesonintrospect
30c338
30c338
* Mon Mar 23 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-9.20150322git78d31ca
30c338
- Fix filelists for mesongui (python-bytecode-without-source)
30c338
30c338
* Sun Mar 22 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-8.20150322git78d31ca
30c338
- Enable C# tests
30c338
30c338
* Sun Mar 22 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-7.20150322git78d31ca
30c338
- update to latest git
30c338
- fix tests on arm
30c338
30c338
* Sat Mar 21 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-7.20150321gita084a8e
30c338
- update to latest git
30c338
30c338
* Mon Mar 16 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-7.20150316gitfa2c659
30c338
- update to latest git
30c338
30c338
* Tue Mar 10 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-7.20150310gitf9f51b1
30c338
- today's git snapshot with support for cool GNOME features
30c338
- re-enable wxGTK3 tests, package fixed in rawhide
30c338
30c338
* Thu Feb 26 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-6.git7581895
30c338
- split gui to subpkg
30c338
- update to latest snapshot
30c338
- enable tests
30c338
30c338
* Thu Feb 26 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-5.gitc6dbf98
30c338
- Fix packaging style
30c338
- Make package noarch
30c338
30c338
* Mon Feb 23 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-4.git.c6dbf98
30c338
- Use development version
30c338
30c338
* Sat Feb 21 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.22.0-3
30c338
- Add ninja-build to requires
30c338
30c338
* Thu Jan 22 2015 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.22.0-2
30c338
- fix shebang in python files
30c338
30c338
* Wed Jan 21 2015 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.22.0-1
30c338
- Initial package