Blob Blame Raw
# Template files in /usr/share/gnome-builder/plugins/autotools_templates/ can't be byte compiled
%global _python_bytecompile_errors_terminate_build 0

# Exclude privlibs
%global __provides_exclude_from ^%{_libdir}/gnome-builder
%global privlibs .*-private|libide|libgnome-builder-plugins
%global __requires_exclude ^(%{privlibs}).*\\.so.*

%global shortver %(v=%{version}; echo ${v%.*})

%global libdazzle_version 3.28.0
%global glib2_version 2.56.0
%global gtk3_version 3.22.26
%global json_glib_version 1.2.0
%global jsonrpc_glib_version 3.28.0
%global libpeas_version 1.22.0
%global template_glib_version 3.28.0
%global libgit2_glib_version 0.25.0
%global devhelp_version 3.25.1

Name:           gnome-builder
Version:        3.28.4
Release:        1%{?dist}
Summary:        IDE for writing GNOME-based software

# Note: Checked as of 3.20.2
#
# Most of GNOME Builder is licensed under the GPLv3+.
#
# Others are easy to identify
#
# The following files are MIT licensed:
#     - src/resources/css/markdown.css
#     - src/resources/js/marked.js
#
# The following files are licensed under the CC-BY-SA license:
#     - data/icons/
#
# The following files are licensed under the CC0 license:
#     - data/org.gnome.Builder.appdata.xml
#     - data/html-preview.png
License:        GPLv3+ and GPLv2+ and LGPLv3+ and LGPLv2+ and MIT and CC-BY-SA and CC0
URL:            https://wiki.gnome.org/Apps/Builder
Source0:        https://download.gnome.org/sources/%{name}/%{shortver}/%{name}-%{version}.tar.xz

BuildRequires:  vala-devel /usr/bin/vapigen
BuildRequires:  desktop-file-utils
BuildRequires:  gettext
BuildRequires:  meson
BuildRequires:  pkgconfig(enchant-2)
BuildRequires:  pkgconfig(flatpak)
BuildRequires:  pkgconfig(gio-2.0) >= %{glib2_version}
BuildRequires:  pkgconfig(gspell-1)
BuildRequires:  pkgconfig(gtk+-3.0) >= %{gtk3_version}
BuildRequires:  pkgconfig(gtksourceview-3.0)
BuildRequires:  pkgconfig(json-glib-1.0) >= %{json_glib_version}
BuildRequires:  pkgconfig(jsonrpc-glib-1.0) >= %{jsonrpc_glib_version}
BuildRequires:  pkgconfig(libdazzle-1.0) >= %{libdazzle_version}
BuildRequires:  pkgconfig(libdevhelp-3.0) >= %{devhelp_version}
BuildRequires:  pkgconfig(libgit2-glib-1.0) >= %{libgit2_glib_version}
BuildRequires:  pkgconfig(libpeas-1.0) >= %{libpeas_version}
BuildRequires:  pkgconfig(libxml-2.0)
BuildRequires:  pkgconfig(pangoft2)
BuildRequires:  pkgconfig(pygobject-3.0)
BuildRequires:  pkgconfig(sysprof-ui-2)
BuildRequires:  pkgconfig(template-glib-1.0) >= %{template_glib_version}
BuildRequires:  pkgconfig(vte-2.91)
BuildRequires:  pkgconfig(webkit2gtk-4.0)
BuildRequires:  /usr/bin/appstream-util
BuildRequires:  llvm-devel
BuildRequires:  clang-devel
BuildRequires:  python3-devel
BuildRequires:  python3-sphinx
BuildRequires:  itstool

Requires:       devhelp-libs%{?_isa} >= 1:%{devhelp_version}
Requires:       glib2%{?_isa} >= %{glib2_version}
Requires:       gtk3%{?_isa} >= %{gtk3_version}
Requires:       json-glib%{?_isa} >= %{json_glib_version}
Requires:       jsonrpc-glib%{?_isa} >= %{jsonrpc_glib_version}
Requires:       libdazzle%{?_isa} >= %{libdazzle_version}
Requires:       libgit2-glib%{?_isa} >= %{libgit2_glib_version}
Requires:       libpeas%{?_isa} >= %{libpeas_version}
Requires:       template-glib%{?_isa} >= %{template_glib_version}

Requires:       flatpak-builder
Recommends:     clang
Recommends:     gnome-code-assistance
Recommends:     meson
Recommends:     python3-jedi

%description
Builder attempts to be an IDE for writing software for GNOME. It does not try
to be a generic IDE, but one specialized for writing GNOME software.

%package        devel
Summary:        Development files for %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.

%prep
%autosetup -p1

%build
%meson -Denable_gtk_doc=true
%meson_build

%install
%meson_install
%find_lang %{name}

%check
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/org.gnome.Builder.appdata.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Builder.desktop

%files -f gnome-builder.lang
%doc NEWS README.md
%license COPYING
%{_bindir}/gnome-builder
%exclude %{_libdir}/gnome-builder/pkgconfig/
%{_libdir}/gnome-builder/
%{python3_sitearch}/gi/
%{_datadir}/applications/org.gnome.Builder.desktop
%{_datadir}/dbus-1/services/org.gnome.Builder.service
%{_datadir}/glib-2.0/schemas/org.gnome.builder*.gschema.xml
%exclude %{_datadir}/gnome-builder/gir-1.0/
%exclude %{_datadir}/gnome-builder/vapi/
%{_datadir}/gnome-builder/
%{_datadir}/gtksourceview-3.0/styles/builder*.xml
%{_datadir}/icons/hicolor/*/actions/*.png
%{_datadir}/icons/hicolor/*/apps/org.gnome.Builder*.png
%{_datadir}/metainfo/org.gnome.Builder.appdata.xml

%files devel
%{_includedir}/gnome-builder/
%{_libdir}/gnome-builder/pkgconfig/
%{_datadir}/gnome-builder/gir-1.0/
%{_datadir}/gnome-builder/vapi/

%changelog
* Sat Jul 28 2018 Kalev Lember <klember@redhat.com> - 3.28.4-1
- Update to 3.28.4

* Tue Jun 26 2018 Kalev Lember <klember@redhat.com> - 3.28.3-1
- Update to 3.28.3

* Tue May 29 2018 Kalev Lember <klember@redhat.com> - 3.28.2-1
- Update to 3.28.2

* Tue Apr 10 2018 Kalev Lember <klember@redhat.com> - 3.28.1-1
- Update to 3.28.1

* Wed Mar 14 2018 Kalev Lember <klember@redhat.com> - 3.28.0-1
- Update to 3.28.0

* Sun Mar 11 2018 Kalev Lember <klember@redhat.com> - 3.27.92-2
- Rebuilt for gspell 1.8

* Mon Mar 05 2018 Kalev Lember <klember@redhat.com> - 3.27.92-1
- Update to 3.27.92

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.27.90-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Mon Feb 05 2018 Kalev Lember <klember@redhat.com> - 3.27.90-1
- Update to 3.27.90

* Fri Jan 05 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.27.3-4
- Remove obsolete scriptlets

* Wed Dec 20 2017 Kalev Lember <klember@redhat.com> - 3.27.3-3
- Rebuilt for vala 0.40

* Tue Dec 19 2017 Kalev Lember <klember@redhat.com> - 3.27.3-2
- Filter private libgnome-builder-plugins.so from gnome-builder requires

* Tue Dec 19 2017 Kalev Lember <klember@redhat.com> - 3.27.3-1
- Update to 3.27.3

* Fri Nov 03 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.26.2-2
- Rebuild for LLVM5

* Wed Nov 01 2017 Kalev Lember <klember@redhat.com> - 3.26.2-1
- Update to 3.26.2

* Tue Oct 24 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.26.1-2
- Rebuild for LLVM 5.0

* Sun Oct 08 2017 Kalev Lember <klember@redhat.com> - 3.26.1-1
- Update to 3.26.1

* Wed Sep 13 2017 Kalev Lember <klember@redhat.com> - 3.26.0-1
- Update to 3.26.0

* Thu Sep 07 2017 Kalev Lember <klember@redhat.com> - 3.25.92-1
- Update to 3.25.92

* Sun Aug 27 2017 Kalev Lember <klember@redhat.com> - 3.25.91-1
- Update to 3.25.91

* Fri Aug 25 2017 Kalev Lember <klember@redhat.com> - 3.25.90-3
- Rebuilt for libdevhelp soname bump

* Mon Aug 21 2017 Kalev Lember <klember@redhat.com> - 3.25.90-2
- Rebuilt for vala 0.38

* Tue Aug 15 2017 Kalev Lember <klember@redhat.com> - 3.25.90-1
- Update to 3.25.90

* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.25.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.25.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Jul 21 2017 Kalev Lember <klember@redhat.com> - 3.25.5-1
- Update to 3.25.5

* Wed Jul 19 2017 Kalev Lember <klember@redhat.com> - 3.25.4-1
- Update to 3.25.4

* Tue Jul 18 2017 Kalev Lember <klember@redhat.com> - 3.25.3-1
- Update to 3.25.3
- Switch to meson build system
- Set minimum versions for various required libraries

* Sat Jul 08 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.25.2-3
- Rebuild for libgit2 0.26.x

* Tue Jun 13 2017 Kalev Lember <klember@redhat.com> - 3.25.2-2
- Filter private libraries, thanks to Yanko Kaneti for the patch

* Mon Jun 12 2017 Kalev Lember <klember@redhat.com> - 3.25.2-1
- Update to 3.25.2

* Thu May 25 2017 Peter Robinson <pbrobinson@fedoraproject.org> 3.24.2-2
- Rebuild clang/llvm-4

* Tue May 09 2017 Kalev Lember <klember@redhat.com> - 3.24.2-1
- Update to 3.24.2

* Tue Apr 11 2017 Kalev Lember <klember@redhat.com> - 3.24.1-1
- Update to 3.24.1

* Fri Mar 24 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.24.0-3
- Rebuild for LLVM4

* Tue Mar 21 2017 Kalev Lember <klember@redhat.com> - 3.24.0-2
- Rebuilt for libdevhelp soname bump

* Mon Mar 20 2017 Kalev Lember <klember@redhat.com> - 3.24.0-1
- Update to 3.24.0

* Fri Mar 17 2017 Kalev Lember <klember@redhat.com> - 3.23.92-1
- Update to 3.23.92
- Add Recommends: flatpak-builder for flatpak building

* Tue Feb 28 2017 Richard Hughes <rhughes@redhat.com> - 3.23.91-1
- Update to 3.23.91

* Mon Feb 13 2017 Kalev Lember <klember@redhat.com> - 3.22.4-3
- Rebuilt for vala 0.36

* Wed Feb 08 2017 Kalev Lember <klember@redhat.com> - 3.22.4-2
- Rebuilt for libgit2 soname bump

* Thu Dec 22 2016 Kalev Lember <klember@redhat.com> - 3.22.4-1
- Update to 3.22.4

* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 3.22.3-3
- Rebuild for Python 3.6

* Thu Dec 01 2016 Kalev Lember <klember@redhat.com> - 3.22.3-2
- Enable flatpak support

* Tue Nov 29 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.22.3-1
- Update to 3.22.3

* Wed Nov 02 2016 Kalev Lember <klember@redhat.com> - 3.22.2-1
- Update to 3.22.2

* Wed Oct 12 2016 Kalev Lember <klember@redhat.com> - 3.22.1-1
- Update to 3.22.1

* Mon Sep 26 2016 Dan Horák <dan[at]danny.cz> - 3.22.0-3
- add missing BR

* Thu Sep 22 2016 Kalev Lember <klember@redhat.com> - 3.22.0-2
- Rebuilt for vala 0.34

* Tue Sep 20 2016 Kalev Lember <klember@redhat.com> - 3.22.0-1
- Update to 3.22.0
- Don't set group tags

* Fri Sep 02 2016 Kalev Lember <klember@redhat.com> - 3.21.91-1
- Update to 3.21.91

* Tue Aug 23 2016 Kalev Lember <klember@redhat.com> - 3.21.90-1
- Update to 3.21.90

* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.21.1-2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

* Tue May 03 2016 Kalev Lember <klember@redhat.com> - 3.21.1-1
- Update to 3.21.1

* Thu Apr 28 2016 Igor Gnatenko <ignatenko@redhat.com> - 3.20.2-1
- Update to 3.20.2

* Thu Mar 24 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.20.0-1
- Update to 3.20.0

* Sun Mar 20 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.19.90-3
- Rebuilt for libgit2 0.24.0

* Mon Mar 07 2016 Kalev Lember <klember@redhat.com> - 3.19.90-2
- Rebuilt for vala 0.32

* Mon Feb 29 2016 Richard Hughes <rhughes@redhat.com> - 3.19.90-1
- Update to 3.19.90

* Fri Feb 19 2016 David King <amigadave@amigadave.com> - 3.19.4-5
- Rebuilt for libclang bump

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.19.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Thu Jan 28 2016 Adam Jackson <ajax@redhat.com> 3.19.4-3
- Rebuild for llvm 3.7.1 library split

* Wed Jan 27 2016 David King <amigadave@amigadave.com> - 3.19.4-2
- Fix build against pygobject3

* Wed Jan 27 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.19.4-1
- Update to 3.19.4

* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org>
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5

* Sat Oct 17 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.18.1-2
- Backport patches from upstream

* Thu Oct 15 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.18.1-1
- Update to 3.18.1

* Wed Sep 23 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.18.0-2
- Add python3-jedi to Recommends

* Mon Sep 21 2015 Kalev Lember <klember@redhat.com> - 3.18.0-1
- Update to 3.18.0

* Thu Sep 17 2015 Kalev Lember <klember@redhat.com> - 3.17.92-1
- Update to 3.17.92

* Sat Aug 29 2015 Kalev Lember <klember@redhat.com> - 3.16.3-7
- Backport more fixes for libgit2-glib API changes

* Sat Aug 29 2015 Kalev Lember <klember@redhat.com> - 3.16.3-6
- Drop unneeded uncrustify dependency
- Use make_install macro

* Thu Jul 30 2015 Igor Gnatenko <ignatenko@src.gnome.org> - 3.16.3-5
- Adopt to new API in libgit2-glib (0.23.0)

* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.16.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Sat Jun 13 2015 Michael Catanzaro <mcatanzaro@gnome.org> - 3.16.3-3
- Remove ineffective local storage crash patch.
- Add patch to increase the max number of files.

* Mon Jun 01 2015 Michael Catanzaro <mcatanzaro@gnome.org> - 3.16.3-2
- Disable HTML5 local storage to avoid a crash.

* Mon May 18 2015  Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.16.3-1
- Update to 3.16.3

* Fri Apr 17 2015 David King <amigadave@amigadave.com> - 3.16.2-2
- Require a recent enough libgit2-glib (#1212804)

* Thu Apr 16 2015 Kalev Lember <kalevlember@gmail.com> - 3.16.2-1
- Update to 3.16.2

* Tue Apr 14 2015 Kalev Lember <kalevlember@gmail.com> - 3.16.1-1
- Update to 3.16.1

* Tue Mar 24 2015 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 3.16.0-1
- Update to 3.16.0

* Thu Jan 29 2015 David King <amigadave@amigadave.com> - 3.15.4.1-2
- Add uncrustify Requires

* Fri Jan 23 2015 David King <amigadave@amigadave.com> - 3.15.4.1-1
- Initial packaging (#1185301)