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