]> git.pld-linux.org Git - packages/gnome-builder.git/blame - gnome-builder.spec
update deprecated meson macros
[packages/gnome-builder.git] / gnome-builder.spec
CommitLineData
1cccaab5 1# TODO:
f622ebd8 2# - switch to gtk4-update-icon-cache
ee68e9fa 3# - deviced plugin (BR: libdeviced-devel >= 3.27.4)
39abfbb5
JB
4#
5# Conditional build:
c661ac6e 6%bcond_without sysprof # sysprof system profiler plugin
be928a8e 7%bcond_without apidocs # Sphinx based help + gi-docgen API documentation
39abfbb5 8#
8498f58c 9Summary: IDE for writing GNOME-based software
19c49b6b 10Summary(pl.UTF-8): IDE do tworzenia oprogramowania opartego na GNOME
8498f58c 11Name: gnome-builder
1ccb0b24 12Version: 45.0
8819b051 13Release: 3
19c49b6b 14License: GPL v3+
8498f58c 15Group: X11/Applications
1ccb0b24
JB
16Source0: https://download.gnome.org/sources/gnome-builder/45/%{name}-%{version}.tar.xz
17# Source0-md5: dc095a68d1b4d44b7ee7eda5fd3c9c10
8ce73bde 18Patch0: missing-includes.patch
8498f58c 19URL: https://wiki.gnome.org/Apps/Builder
3bb6040e 20BuildRequires: appstream-glib
517ea467 21BuildRequires: clang-devel >= 3.5
be928a8e 22BuildRequires: cmark-devel >= 0.29.0
35233ca9 23BuildRequires: desktop-file-utils
f622ebd8
JB
24BuildRequires: dspy-devel >= 1.4.0
25BuildRequires: editorconfig-devel
c661ac6e 26BuildRequires: enchant2-devel >= 2
b284fd02 27BuildRequires: flatpak-devel >= 1.11.2
19c49b6b
JB
28# -std=gnu11 for C
29BuildRequires: gcc >= 6:4.7
35233ca9 30BuildRequires: gettext-tools >= 0.19.8
d0f45117 31BuildRequires: glib2-devel >= 1:2.75.0
1ccb0b24
JB
32BuildRequires: gobject-introspection-devel >= 1.74
33BuildRequires: gtk4-devel >= 4.10
be928a8e 34%{?with_apidocs:BuildRequires: gi-docgen}
d0f45117 35BuildRequires: gtk-webkit6-devel >= 2.40
1ccb0b24 36BuildRequires: gtksourceview5-devel >= 5.8
35233ca9 37BuildRequires: json-glib-devel >= 1.2.0
d0f45117 38BuildRequires: jsonrpc-glib-devel >= 3.43.0
1ccb0b24
JB
39BuildRequires: libadwaita-devel >= 1.4
40BuildRequires: libdex-devel >= 0.2
f622ebd8 41BuildRequires: libgit2-glib-devel >= 1.1.0
1ccb0b24 42BuildRequires: libpeas2-devel >= 2.0
d0f45117 43BuildRequires: libpanel-devel >= 1.1.2
f622ebd8
JB
44BuildRequires: libportal-gtk4-devel
45BuildRequires: libsoup3-devel >= 3.0
b14f9614
JB
46# -std=c++2a
47BuildRequires: libstdc++-devel >= 6:8
19c49b6b 48BuildRequires: libxml2-devel >= 1:2.9.0
517ea467 49BuildRequires: llvm-devel >= 3.5
f622ebd8 50BuildRequires: meson >= 0.60
4c5bc2e8 51BuildRequires: ninja >= 1.5
3bb6040e 52BuildRequires: ostree-devel
35233ca9 53BuildRequires: pango-devel >= 1:1.38.0
be928a8e 54BuildRequires: pcre2-common-devel
19c49b6b 55BuildRequires: pkgconfig >= 1:0.22
ac0c2738 56BuildRequires: python3-devel >= 1:3.2.3
be928a8e 57%{?with_apidocs:BuildRequires: python3-sphinx_rtd_theme}
336aa477 58BuildRequires: rpm-build >= 4.6
2af9d48e 59BuildRequires: rpmbuild(macros) >= 2.029
d0f45117 60BuildRequires: sed >= 4.0
ee68e9fa 61%{?with_apidocs:BuildRequires: sphinx-pdg-3}
1ccb0b24 62%{?with_sysprof:BuildRequires: sysprof-devel >= 45.0}
8498f58c 63BuildRequires: tar >= 1:1.22
d0f45117 64BuildRequires: template-glib-devel >= 3.36.1
ac0c2738 65BuildRequires: vala >= 2:0.30.0.55
1ccb0b24 66BuildRequires: vala-gtksourceview5 >= 5.8
f622ebd8 67BuildRequires: vala-libgit2-glib >= 1.1.0
d0f45117 68BuildRequires: vala-template-glib >= 3.36.1
f622ebd8 69BuildRequires: vte-gtk4-devel >= 0.70.0
8498f58c 70BuildRequires: xz
ac0c2738 71BuildRequires: yelp-tools
d0f45117 72Requires(post,postun): glib2 >= 1:2.75.0
8498f58c 73Requires(post,postun): gtk-update-icon-cache
be928a8e 74Requires: cmark-lib >= 0.29.0
ac0c2738 75Requires: ctags
f622ebd8 76Requires: dspy-libs >= 1.4.0
c661ac6e 77Requires: enchant2 >= 2
b284fd02 78Requires: flatpak-libs >= 1.11.2
d0f45117 79Requires: glib2 >= 1:2.75.0
1ccb0b24 80Requires: gtk4 >= 4.10
d0f45117 81Requires: gtk-webkit6 >= 2.40
1ccb0b24 82Requires: gtksourceview5 >= 5.8
8498f58c 83Requires: hicolor-icon-theme
35233ca9 84Requires: json-glib >= 1.2.0
d0f45117 85Requires: jsonrpc-glib >= 3.43.0
1ccb0b24
JB
86Requires: libadwaita >= 1.4
87Requires: libdex >= 0.2
f622ebd8 88Requires: libgit2-glib >= 1.1.0
d0f45117 89Requires: libpanel >= 1.1.2
1ccb0b24 90Requires: libpeas2 >= 2.0
4c5bc2e8 91Requires: libportal >= 0.3
f622ebd8 92Requires: libsoup3 >= 3.0
19c49b6b 93Requires: libxml2 >= 1:2.9.0
35233ca9
JB
94Requires: pango >= 1:1.38.0
95Requires: python3-modules >= 1:3.2.3
d0f45117 96Requires: template-glib >= 3.36.1
f622ebd8 97Requires: vte-gtk4 >= 0.70.0
3871e6e3 98Suggests: python3-jedi
95b49819 99Suggests: python3-lxml
336aa477 100Obsoletes: gnome-builder-mm < 3.24
8498f58c
MB
101BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
102
1ccb0b24
JB
103%define abiver 45
104%define apiver 45
4c5bc2e8 105
d0f45117
JB
106# must comply to pygobject3 due to "..importer" import
107%define py3_gi_overridesdir %{py3_sitedir}/gi/overrides
8d63a934 108
8498f58c
MB
109%description
110Builder attempts to be an IDE for writing software for GNOME. It does
111not try to be a generic IDE, but one specialized for writing GNOME
112software.
113
19c49b6b
JB
114%description -l pl.UTF-8
115Builder jest próbą stworzenia IDE do rozwijania oprogramowania dla
116GNOME. Nie próbuje być ogólnym IDE, ale wyspecjalizowanym do pisania
117oprogramowania dla GNOME.
118
8498f58c
MB
119%package devel
120Summary: Development files for GNOME Builder
19c49b6b 121Summary(pl.UTF-8): Pliki programistyczne GNOME Buildera
8498f58c 122Group: Development/Libraries
517ea467 123Requires: %{name} = %{version}-%{release}
d0f45117
JB
124Requires: glib2-devel >= 1:2.75.0
125Requires: gtk-webkit6-devel >= 2.40
1ccb0b24
JB
126Requires: gtk4-devel >= 4.10
127Requires: gtksourceview5-devel >= 5.8
128Requires: libpeas2-devel >= 2.0
d0f45117 129Requires: template-glib-devel >= 3.36.1
f622ebd8 130Requires: vte-gtk4-devel >= 0.70.0
336aa477 131Obsoletes: gnome-builder-mm-devel < 3.24
4c5bc2e8 132Obsoletes: vala-gnome-builder < 3.36
8498f58c
MB
133
134%description devel
135This package provides development files for GNOME Builder.
136
19c49b6b
JB
137%description devel -l pl.UTF-8
138Ten pakiet zawiera pliki programistyczne GNOME Buildera.
139
c661ac6e
JB
140%package doc
141Summary: GNOME Builder documentation
142Summary(pl.UTF-8): Dokumentacja do GNOME Buildera
143Group: Documentation
144Requires: %{name} = %{version}-%{release}
489a8f3e 145BuildArch: noarch
c661ac6e
JB
146
147%description doc
148GNOME Builder documentation.
149
150%description doc -l pl.UTF-8
151Dokumentacja do GNOME Buildera.
152
ee68e9fa
JB
153%package apidocs
154Summary: API documentation for GNOME Builder libraries
155Summary(pl.UTF-8): Dokumentacja API bibliotek GNOME Buildera
156Group: Documentation
489a8f3e 157BuildArch: noarch
ee68e9fa
JB
158
159%description apidocs
160API documentation for GNOME Builder libraries.
161
162%description apidocs -l pl.UTF-8
163Dokumentacja API bibliotek GNOME Buildera.
164
8498f58c
MB
165%prep
166%setup -q
8ce73bde 167%patch0 -p1
8498f58c 168
d0f45117
JB
169# drop useless shebang
170grep -q /usr/bin/env src/libide/Ide.py || exit 1
171%{__sed} -i -e '1d' src/libide/Ide.py
f777fa5b 172
8498f58c 173%build
d0f45117
JB
174# python.purelibdir changed to place overrides file properly
175# (possible only because there are no other system-wide python modules installed)
5512e48b 176%meson build \
ee68e9fa
JB
177%if %{with apidocs}
178 -Ddocs=true \
179 -Dhelp=true \
180%endif
b14f9614 181 -Dplugin_clangd=true \
d0f45117
JB
182 -Dplugin_sysprof=%{__true_false sysprof} \
183 -Dpython.bytecompile=2 \
184 -Dpython.purelibdir=%{py3_sitedir}
ee68e9fa 185# -Dplugin_deviced=true
5512e48b 186
60e8d9a8 187%ninja_build -C build
8498f58c
MB
188
189%install
190rm -rf $RPM_BUILD_ROOT
191
60e8d9a8 192%ninja_install -C build
05a345d0 193
f622ebd8
JB
194# for external plugins
195install -d $RPM_BUILD_ROOT%{_libdir}/gnome-builder/plugins
196
ee68e9fa 197%if %{with apidocs}
3fb38ab7 198%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnome-builder/en/{.buildinfo,_sources,objects.inv}
be928a8e 199
2af9d48e
JB
200install -d $RPM_BUILD_ROOT%{_gidocdir}
201%{__mv} $RPM_BUILD_ROOT%{_docdir}/libide $RPM_BUILD_ROOT%{_gidocdir}
ee68e9fa
JB
202%endif
203
ac0c2738 204%find_lang %{name} --with-gnome
8498f58c
MB
205
206%clean
207rm -rf $RPM_BUILD_ROOT
208
209%post
210%glib_compile_schemas
211%update_icon_cache hicolor
212
213%postun
214%glib_compile_schemas
215%update_icon_cache hicolor
216
217%files -f %{name}.lang
218%defattr(644,root,root,755)
c2c301fb 219%doc AUTHORS NEWS README.md
8498f58c 220%attr(755,root,root) %{_bindir}/gnome-builder
19c49b6b 221%dir %{_libdir}/gnome-builder
19c49b6b 222%dir %{_libdir}/gnome-builder/girepository-1.0
be928a8e 223%{_libdir}/gnome-builder/girepository-1.0/Ide-%{abiver}.typelib
517ea467 224%dir %{_libdir}/gnome-builder/plugins
77929274 225%attr(755,root,root) %{_libexecdir}/gnome-builder-clang
be928a8e 226%attr(755,root,root) %{_libexecdir}/gnome-builder-flatpak
d850a6cd 227%attr(755,root,root) %{_libexecdir}/gnome-builder-git
252de218
JB
228%dir %{_datadir}/gnome-builder
229%{_datadir}/gnome-builder/fonts
ee68e9fa 230%{_datadir}/gnome-builder/icons
f622ebd8 231%{_datadir}/gnome-builder/styles
8498f58c 232%{_datadir}/dbus-1/services/org.gnome.Builder.service
19c49b6b 233%{_datadir}/glib-2.0/schemas/org.gnome.builder.gschema.xml
ac0c2738 234%{_datadir}/glib-2.0/schemas/org.gnome.builder.build.gschema.xml
77929274 235%{_datadir}/glib-2.0/schemas/org.gnome.builder.clang.gschema.xml
19c49b6b 236%{_datadir}/glib-2.0/schemas/org.gnome.builder.code-insight.gschema.xml
f622ebd8
JB
237%{_datadir}/glib-2.0/schemas/org.gnome.builder.copyright.gschema.xml
238%{_datadir}/glib-2.0/schemas/org.gnome.builder.debug.gschema.xml
8498f58c
MB
239%{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.gschema.xml
240%{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.language.gschema.xml
517ea467 241%{_datadir}/glib-2.0/schemas/org.gnome.builder.extension-type.gschema.xml
d0f45117 242%{_datadir}/glib-2.0/schemas/org.gnome.builder.flatpak.gschema.xml
ac0c2738 243%{_datadir}/glib-2.0/schemas/org.gnome.builder.plugin.gschema.xml
ec500595 244%{_datadir}/glib-2.0/schemas/org.gnome.builder.project.gschema.xml
8498f58c 245%{_datadir}/glib-2.0/schemas/org.gnome.builder.project-tree.gschema.xml
f622ebd8
JB
246%{_datadir}/glib-2.0/schemas/org.gnome.builder.shellcmd.gschema.xml
247%{_datadir}/glib-2.0/schemas/org.gnome.builder.shellcmd.command.gschema.xml
248%{_datadir}/glib-2.0/schemas/org.gnome.builder.spelling.gschema.xml
249%{_datadir}/glib-2.0/schemas/org.gnome.builder.sysprof.gschema.xml
ac0c2738 250%{_datadir}/glib-2.0/schemas/org.gnome.builder.terminal.gschema.xml
f622ebd8 251%{_datadir}/glib-2.0/schemas/org.gnome.builder.valgrind.gschema.xml
c661ac6e 252%{_datadir}/metainfo/org.gnome.Builder.appdata.xml
19c49b6b 253%{_desktopdir}/org.gnome.Builder.desktop
77929274
JR
254%{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder-symbolic.svg
255%{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder.svg
8d63a934 256%{py3_gi_overridesdir}/Ide.py
d0f45117 257%{py3_gi_overridesdir}/__pycache__/Ide.cpython-*.py[co]
8498f58c
MB
258
259%files devel
260%defattr(644,root,root,755)
4c5bc2e8 261%{_includedir}/gnome-builder-%{apiver}
517ea467 262%dir %{_datadir}/gnome-builder/gir-1.0
be928a8e 263%{_datadir}/gnome-builder/gir-1.0/Ide-%{abiver}.gir
b14f9614 264%{_pkgconfigdir}/gnome-builder-%{version}.pc
ee68e9fa
JB
265
266%if %{with apidocs}
267%files doc
268%defattr(644,root,root,755)
269%dir %{_docdir}/gnome-builder
270%{_docdir}/gnome-builder/en
271
272%files apidocs
273%defattr(644,root,root,755)
2af9d48e 274%{_gidocdir}/libide
ee68e9fa 275%endif
This page took 0.128823 seconds and 4 git commands to generate.