]>
Commit | Line | Data |
---|---|---|
1 | # TODO: | |
2 | # - deviced plugin (BR: libdeviced-devel >= 3.27.4) | |
3 | # | |
4 | # Conditional build: | |
5 | %bcond_without sysprof # sysprof system profiler plugin | |
6 | %bcond_without apidocs # Sphinx based help + gi-docgen API documentation | |
7 | # | |
8 | Summary: IDE for writing GNOME-based software | |
9 | Summary(pl.UTF-8): IDE do tworzenia oprogramowania opartego na GNOME | |
10 | Name: gnome-builder | |
11 | Version: 41.3 | |
12 | Release: 1 | |
13 | License: GPL v3+ | |
14 | Group: X11/Applications | |
15 | Source0: https://download.gnome.org/sources/gnome-builder/41/%{name}-%{version}.tar.xz | |
16 | # Source0-md5: 802ba2b06939da5df11d9a34f7c499d2 | |
17 | Patch0: %{name}-format.patch | |
18 | URL: https://wiki.gnome.org/Apps/Builder | |
19 | BuildRequires: appstream-glib | |
20 | BuildRequires: clang-devel >= 3.5 | |
21 | BuildRequires: cmark-devel >= 0.29.0 | |
22 | BuildRequires: desktop-file-utils | |
23 | BuildRequires: devhelp-devel >= 3.26.0 | |
24 | BuildRequires: enchant2-devel >= 2 | |
25 | BuildRequires: flatpak-devel >= 1.11.2 | |
26 | # -std=gnu11 for C | |
27 | BuildRequires: gcc >= 6:4.7 | |
28 | BuildRequires: gettext-tools >= 0.19.8 | |
29 | BuildRequires: gjs-devel >= 1.42.0 | |
30 | BuildRequires: glade-devel >= 3.22.0 | |
31 | BuildRequires: glib2-devel >= 1:2.69.1 | |
32 | BuildRequires: gobject-introspection-devel >= 1.48.0 | |
33 | BuildRequires: gspell-devel >= 1.2.0 | |
34 | BuildRequires: gtk+3-devel >= 3.24 | |
35 | %{?with_apidocs:BuildRequires: gi-docgen} | |
36 | BuildRequires: gtk-webkit4-devel >= 2.26 | |
37 | BuildRequires: gtksourceview4-devel >= 4.0.0 | |
38 | BuildRequires: json-glib-devel >= 1.2.0 | |
39 | BuildRequires: jsonrpc-glib-devel >= 3.30.0 | |
40 | BuildRequires: libdazzle-devel >= 3.37.0 | |
41 | BuildRequires: libgit2-glib-devel >= 0.25.0 | |
42 | BuildRequires: libpeas-devel >= 1.22.0 | |
43 | BuildRequires: libportal-devel >= 0.3 | |
44 | BuildRequires: libsoup-devel >= 2.52.0 | |
45 | # C++11 | |
46 | BuildRequires: libstdc++-devel >= 6:4.7 | |
47 | BuildRequires: libtool >= 2:2.2 | |
48 | BuildRequires: libxml2-devel >= 1:2.9.0 | |
49 | BuildRequires: llvm-devel >= 3.5 | |
50 | BuildRequires: meson >= 0.54.0 | |
51 | BuildRequires: ninja >= 1.5 | |
52 | BuildRequires: ostree-devel | |
53 | BuildRequires: pango-devel >= 1:1.38.0 | |
54 | BuildRequires: pcre2-common-devel | |
55 | BuildRequires: pkgconfig >= 1:0.22 | |
56 | BuildRequires: python3-devel >= 1:3.2.3 | |
57 | BuildRequires: python3-pygobject3-devel >= 3.22.0 | |
58 | %{?with_apidocs:BuildRequires: python3-sphinx_rtd_theme} | |
59 | BuildRequires: rpm-build >= 4.6 | |
60 | BuildRequires: rpmbuild(macros) >= 1.752 | |
61 | %{?with_apidocs:BuildRequires: sphinx-pdg-3} | |
62 | %{?with_sysprof:BuildRequires: sysprof-ui-devel >= 3.37.1} | |
63 | BuildRequires: tar >= 1:1.22 | |
64 | BuildRequires: template-glib-devel >= 3.28.0 | |
65 | BuildRequires: vala >= 2:0.30.0.55 | |
66 | BuildRequires: vala-gtksourceview4 >= 4.0.0 | |
67 | BuildRequires: vala-libdazzle >= 3.37.0 | |
68 | BuildRequires: vala-libgit2-glib >= 0.25.0 | |
69 | BuildRequires: vala-template-glib >= 3.28.0 | |
70 | BuildRequires: vala-vte >= 0.46 | |
71 | BuildRequires: vte-devel >= 0.46 | |
72 | BuildRequires: xz | |
73 | BuildRequires: yelp-tools | |
74 | Requires(post,postun): glib2 >= 1:2.69.1 | |
75 | Requires(post,postun): gtk-update-icon-cache | |
76 | Requires: cmark-lib >= 0.29.0 | |
77 | Requires: ctags | |
78 | Requires: devhelp-libs >= 3.26.0 | |
79 | Requires: enchant2 >= 2 | |
80 | Requires: flatpak-libs >= 1.11.2 | |
81 | Requires: gjs >= 1.42.0 | |
82 | Requires: glade-libs >= 3.22.0 | |
83 | Requires: glib2 >= 1:2.69.1 | |
84 | Requires: gspell >= 1.2.0 | |
85 | Requires: gtk+3 >= 3.24 | |
86 | Requires: gtk-webkit4 >= 2.26 | |
87 | Requires: gtksourceview4 >= 4.0.0 | |
88 | Requires: hicolor-icon-theme | |
89 | Requires: json-glib >= 1.2.0 | |
90 | Requires: jsonrpc-glib >= 3.30.0 | |
91 | Requires: libdazzle >= 3.37.0 | |
92 | Requires: libgit2-glib >= 0.25.0 | |
93 | Requires: libpeas >= 1.22.0 | |
94 | Requires: libportal >= 0.3 | |
95 | Requires: libsoup >= 2.52.0 | |
96 | Requires: libxml2 >= 1:2.9.0 | |
97 | Requires: pango >= 1:1.38.0 | |
98 | Requires: python3-modules >= 1:3.2.3 | |
99 | Requires: python3-pygobject3 >= 3.22.0 | |
100 | %{?with_sysprof:Requires: sysprof-ui-libs >= 3.37.1} | |
101 | Requires: template-glib >= 3.28.0 | |
102 | Requires: vte >= 0.46 | |
103 | Suggests: python3-jedi | |
104 | Suggests: python3-lxml | |
105 | Obsoletes: gnome-builder-mm < 3.24 | |
106 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
107 | ||
108 | %define abiver 41.0 | |
109 | %define apiver 41 | |
110 | ||
111 | %description | |
112 | Builder attempts to be an IDE for writing software for GNOME. It does | |
113 | not try to be a generic IDE, but one specialized for writing GNOME | |
114 | software. | |
115 | ||
116 | %description -l pl.UTF-8 | |
117 | Builder jest próbą stworzenia IDE do rozwijania oprogramowania dla | |
118 | GNOME. Nie próbuje być ogólnym IDE, ale wyspecjalizowanym do pisania | |
119 | oprogramowania dla GNOME. | |
120 | ||
121 | %package devel | |
122 | Summary: Development files for GNOME Builder | |
123 | Summary(pl.UTF-8): Pliki programistyczne GNOME Buildera | |
124 | Group: Development/Libraries | |
125 | Requires: %{name} = %{version}-%{release} | |
126 | Requires: glib2-devel >= 1:2.69.1 | |
127 | Requires: gtk+3-devel >= 3.24 | |
128 | Requires: gtksourceview4-devel >= 4.0.0 | |
129 | Requires: jsonrpc-glib-devel >= 3.30.0 | |
130 | Requires: libdazzle-devel >= 3.37.0 | |
131 | Requires: libpeas-devel >= 1.22.0 | |
132 | Requires: pango-devel >= 1:1.38.0 | |
133 | Requires: template-glib-devel >= 3.28.0 | |
134 | Requires: vte-devel >= 0.46 | |
135 | Obsoletes: gnome-builder-mm-devel < 3.24 | |
136 | Obsoletes: vala-gnome-builder < 3.36 | |
137 | ||
138 | %description devel | |
139 | This package provides development files for GNOME Builder. | |
140 | ||
141 | %description devel -l pl.UTF-8 | |
142 | Ten pakiet zawiera pliki programistyczne GNOME Buildera. | |
143 | ||
144 | %package doc | |
145 | Summary: GNOME Builder documentation | |
146 | Summary(pl.UTF-8): Dokumentacja do GNOME Buildera | |
147 | Group: Documentation | |
148 | Requires: %{name} = %{version}-%{release} | |
149 | BuildArch: noarch | |
150 | ||
151 | %description doc | |
152 | GNOME Builder documentation. | |
153 | ||
154 | %description doc -l pl.UTF-8 | |
155 | Dokumentacja do GNOME Buildera. | |
156 | ||
157 | %package apidocs | |
158 | Summary: API documentation for GNOME Builder libraries | |
159 | Summary(pl.UTF-8): Dokumentacja API bibliotek GNOME Buildera | |
160 | Group: Documentation | |
161 | BuildArch: noarch | |
162 | ||
163 | %description apidocs | |
164 | API documentation for GNOME Builder libraries. | |
165 | ||
166 | %description apidocs -l pl.UTF-8 | |
167 | Dokumentacja API bibliotek GNOME Buildera. | |
168 | ||
169 | %prep | |
170 | %setup -q | |
171 | %patch0 -p1 | |
172 | ||
173 | grep -rl /usr/bin/env src/plugins src/libide | xargs sed -i -e '1{ | |
174 | s,^#!.*bin/env python3,#!%{__python3}, | |
175 | s,^#!.*bin/env python$,#!%{__python}, | |
176 | }' | |
177 | ||
178 | %build | |
179 | %meson build \ | |
180 | %if %{with apidocs} | |
181 | -Ddocs=true \ | |
182 | -Dhelp=true \ | |
183 | %endif | |
184 | -Dplugin_rls=true \ | |
185 | -Dplugin_sysprof=%{__true_false sysprof} \ | |
186 | -Dplugin_vagrant=true | |
187 | # -Dplugin_deviced=true | |
188 | ||
189 | %meson_build -C build | |
190 | ||
191 | %install | |
192 | rm -rf $RPM_BUILD_ROOT | |
193 | ||
194 | %meson_install -C build | |
195 | ||
196 | %if %{with apidocs} | |
197 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnome-builder/en/{.buildinfo,_sources,objects.inv} | |
198 | ||
199 | # FIXME: where to package gi-docgen generated docs? | |
200 | install -d $RPM_BUILD_ROOT%{_gtkdocdir} | |
201 | %{__mv} $RPM_BUILD_ROOT%{_docdir}/libide $RPM_BUILD_ROOT%{_gtkdocdir} | |
202 | %endif | |
203 | ||
204 | %find_lang %{name} --with-gnome | |
205 | ||
206 | %clean | |
207 | rm -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) | |
219 | %doc AUTHORS NEWS README.md | |
220 | %attr(755,root,root) %{_bindir}/gnome-builder | |
221 | %dir %{_libdir}/gnome-builder | |
222 | %dir %{_libdir}/gnome-builder/girepository-1.0 | |
223 | %{_libdir}/gnome-builder/girepository-1.0/Ide-%{abiver}.typelib | |
224 | %dir %{_libdir}/gnome-builder/plugins | |
225 | %attr(755,root,root) %{_libexecdir}/gnome-builder-clang | |
226 | %attr(755,root,root) %{_libexecdir}/gnome-builder-flatpak | |
227 | %attr(755,root,root) %{_libexecdir}/gnome-builder-git | |
228 | %dir %{_datadir}/gnome-builder | |
229 | %{_datadir}/gnome-builder/fonts | |
230 | %{_datadir}/gnome-builder/icons | |
231 | ||
232 | %{_libdir}/gnome-builder/plugins/cargo.plugin | |
233 | %{_libdir}/gnome-builder/plugins/cargo_plugin.py | |
234 | ||
235 | %{_libdir}/gnome-builder/plugins/copyright.plugin | |
236 | %{_libdir}/gnome-builder/plugins/copyright_plugin.py | |
237 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.copyright.gschema.xml | |
238 | ||
239 | %{_libdir}/gnome-builder/plugins/eslint.plugin | |
240 | %{_libdir}/gnome-builder/plugins/eslint_plugin.py | |
241 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.eslint.gschema.xml | |
242 | ||
243 | %{_libdir}/gnome-builder/plugins/find-other-file.plugin | |
244 | %{_libdir}/gnome-builder/plugins/find_other_file.py | |
245 | ||
246 | %{_libdir}/gnome-builder/plugins/gjs_symbols.plugin | |
247 | %{_libdir}/gnome-builder/plugins/gjs_symbols.py | |
248 | ||
249 | %{_libdir}/gnome-builder/plugins/go-langserv.plugin | |
250 | %{_libdir}/gnome-builder/plugins/go_langserver_plugin.py | |
251 | ||
252 | %{_libdir}/gnome-builder/plugins/gvls.plugin | |
253 | %{_libdir}/gnome-builder/plugins/gvls_plugin.py | |
254 | ||
255 | %{_libdir}/gnome-builder/plugins/html_preview.gresource | |
256 | %{_libdir}/gnome-builder/plugins/html-preview.plugin | |
257 | %{_libdir}/gnome-builder/plugins/html_preview.py | |
258 | ||
259 | %{_libdir}/gnome-builder/plugins/jedi-language-server.plugin | |
260 | %{_libdir}/gnome-builder/plugins/jedi_language_server_plugin.py | |
261 | ||
262 | %{_libdir}/gnome-builder/plugins/jhbuild.plugin | |
263 | %{_libdir}/gnome-builder/plugins/jhbuild_plugin.py | |
264 | ||
265 | %{_libdir}/gnome-builder/plugins/make.plugin | |
266 | %{_libdir}/gnome-builder/plugins/make_plugin.gresource | |
267 | %{_libdir}/gnome-builder/plugins/make_plugin.py | |
268 | ||
269 | %{_libdir}/gnome-builder/plugins/meson-templates.plugin | |
270 | %{_libdir}/gnome-builder/plugins/meson_templates.gresource | |
271 | %{_libdir}/gnome-builder/plugins/meson_templates.py | |
272 | ||
273 | %{_libdir}/gnome-builder/plugins/mono.plugin | |
274 | %{_libdir}/gnome-builder/plugins/mono_plugin.py | |
275 | ||
276 | %{_libdir}/gnome-builder/plugins/npm.plugin | |
277 | %{_libdir}/gnome-builder/plugins/npm_plugin.py | |
278 | ||
279 | %{_libdir}/gnome-builder/plugins/phpize.plugin | |
280 | %{_libdir}/gnome-builder/plugins/phpize_plugin.py | |
281 | ||
282 | %{_libdir}/gnome-builder/plugins/python-gi-imports-completion.plugin | |
283 | %{_libdir}/gnome-builder/plugins/python_gi_imports_completion.py | |
284 | ||
285 | %{_libdir}/gnome-builder/plugins/gradle.plugin | |
286 | %{_libdir}/gnome-builder/plugins/gradle_plugin.py | |
287 | ||
288 | %{_libdir}/gnome-builder/plugins/maven.plugin | |
289 | %{_libdir}/gnome-builder/plugins/maven_plugin.py | |
290 | ||
291 | %{_libdir}/gnome-builder/plugins/rls.plugin | |
292 | %{_libdir}/gnome-builder/plugins/rls_plugin.py | |
293 | ||
294 | %{_libdir}/gnome-builder/plugins/stylelint.plugin | |
295 | %{_libdir}/gnome-builder/plugins/stylelint_plugin.py | |
296 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.stylelint.gschema.xml | |
297 | ||
298 | %{_libdir}/gnome-builder/plugins/waf.plugin | |
299 | %{_libdir}/gnome-builder/plugins/waf_plugin.py | |
300 | ||
301 | %if %{with sysprof} | |
302 | # not installed since 3.28 | |
303 | #%{_libdir}/gnome-builder/plugins/sysprof.plugin | |
304 | %endif | |
305 | ||
306 | %{_libdir}/gnome-builder/plugins/vala-pack.plugin | |
307 | %{_libdir}/gnome-builder/plugins/vala_pack_plugin.py | |
308 | ||
309 | %{_libdir}/gnome-builder/plugins/vala_langserv.plugin | |
310 | %{_libdir}/gnome-builder/plugins/vala_langserv.py | |
311 | ||
312 | %{_libdir}/gnome-builder/plugins/valgrind.plugin | |
313 | %{_libdir}/gnome-builder/plugins/valgrind_plugin.gresource | |
314 | %{_libdir}/gnome-builder/plugins/valgrind_plugin.py | |
315 | ||
316 | %{_datadir}/dbus-1/services/org.gnome.Builder.service | |
317 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.gschema.xml | |
318 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.build.gschema.xml | |
319 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.clang.gschema.xml | |
320 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.code-insight.gschema.xml | |
321 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.gschema.xml | |
322 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.language.gschema.xml | |
323 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.extension-type.gschema.xml | |
324 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.gnome-code-assistance.gschema.xml | |
325 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugin.gschema.xml | |
326 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.color_picker_plugin.gschema.xml | |
327 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.project.gschema.xml | |
328 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.project-tree.gschema.xml | |
329 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.rust-analyzer.gschema.xml | |
330 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.terminal.gschema.xml | |
331 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.workbench.gschema.xml | |
332 | %{_datadir}/gtksourceview-4/styles/Adwaita*.style-scheme.xml | |
333 | %{_datadir}/gtksourceview-4/styles/builder*.style-scheme.xml | |
334 | %{_datadir}/metainfo/org.gnome.Builder.appdata.xml | |
335 | %{_desktopdir}/org.gnome.Builder.desktop | |
336 | %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder-symbolic.svg | |
337 | %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder.svg | |
338 | %{py3_sitedir}/gi/overrides/Ide.py | |
339 | ||
340 | %files devel | |
341 | %defattr(644,root,root,755) | |
342 | %{_includedir}/gnome-builder | |
343 | %{_includedir}/gnome-builder-%{apiver} | |
344 | %dir %{_datadir}/gnome-builder/gir-1.0 | |
345 | %{_datadir}/gnome-builder/gir-1.0/Ide-%{abiver}.gir | |
346 | %dir %{_libdir}/gnome-builder/pkgconfig | |
347 | %{_libdir}/gnome-builder/pkgconfig/gnome-builder-%{version}.pc | |
348 | ||
349 | %if %{with apidocs} | |
350 | %files doc | |
351 | %defattr(644,root,root,755) | |
352 | %dir %{_docdir}/gnome-builder | |
353 | %{_docdir}/gnome-builder/en | |
354 | ||
355 | %files apidocs | |
356 | %defattr(644,root,root,755) | |
357 | %{_gtkdocdir}/libide | |
358 | %endif |