]>
Commit | Line | Data |
---|---|---|
1cccaab5 | 1 | # TODO: |
ee68e9fa | 2 | # - deviced plugin (BR: libdeviced-devel >= 3.27.4) |
39abfbb5 JB |
3 | # |
4 | # Conditional build: | |
c661ac6e | 5 | %bcond_without sysprof # sysprof system profiler plugin |
be928a8e | 6 | %bcond_without apidocs # Sphinx based help + gi-docgen API documentation |
39abfbb5 | 7 | # |
8498f58c | 8 | Summary: IDE for writing GNOME-based software |
19c49b6b | 9 | Summary(pl.UTF-8): IDE do tworzenia oprogramowania opartego na GNOME |
8498f58c | 10 | Name: gnome-builder |
b284fd02 | 11 | Version: 41.3 |
cdf7b471 | 12 | Release: 1 |
19c49b6b | 13 | License: GPL v3+ |
8498f58c | 14 | Group: X11/Applications |
be928a8e | 15 | Source0: https://download.gnome.org/sources/gnome-builder/41/%{name}-%{version}.tar.xz |
b284fd02 JB |
16 | # Source0-md5: 802ba2b06939da5df11d9a34f7c499d2 |
17 | Patch0: %{name}-format.patch | |
8498f58c | 18 | URL: https://wiki.gnome.org/Apps/Builder |
3bb6040e | 19 | BuildRequires: appstream-glib |
517ea467 | 20 | BuildRequires: clang-devel >= 3.5 |
be928a8e | 21 | BuildRequires: cmark-devel >= 0.29.0 |
35233ca9 | 22 | BuildRequires: desktop-file-utils |
5512e48b | 23 | BuildRequires: devhelp-devel >= 3.26.0 |
c661ac6e | 24 | BuildRequires: enchant2-devel >= 2 |
b284fd02 | 25 | BuildRequires: flatpak-devel >= 1.11.2 |
19c49b6b JB |
26 | # -std=gnu11 for C |
27 | BuildRequires: gcc >= 6:4.7 | |
35233ca9 | 28 | BuildRequires: gettext-tools >= 0.19.8 |
8498f58c | 29 | BuildRequires: gjs-devel >= 1.42.0 |
3bb6040e | 30 | BuildRequires: glade-devel >= 3.22.0 |
be928a8e | 31 | BuildRequires: glib2-devel >= 1:2.69.1 |
ac0c2738 | 32 | BuildRequires: gobject-introspection-devel >= 1.48.0 |
85b36267 | 33 | BuildRequires: gspell-devel >= 1.2.0 |
be928a8e JB |
34 | BuildRequires: gtk+3-devel >= 3.24 |
35 | %{?with_apidocs:BuildRequires: gi-docgen} | |
3fb38ab7 | 36 | BuildRequires: gtk-webkit4-devel >= 2.26 |
3bb6040e | 37 | BuildRequires: gtksourceview4-devel >= 4.0.0 |
35233ca9 | 38 | BuildRequires: json-glib-devel >= 1.2.0 |
3bb6040e | 39 | BuildRequires: jsonrpc-glib-devel >= 3.30.0 |
3fb38ab7 | 40 | BuildRequires: libdazzle-devel >= 3.37.0 |
4c7cd77b | 41 | BuildRequires: libgit2-glib-devel >= 0.25.0 |
5512e48b | 42 | BuildRequires: libpeas-devel >= 1.22.0 |
4c5bc2e8 | 43 | BuildRequires: libportal-devel >= 0.3 |
d2eac2c1 | 44 | BuildRequires: libsoup-devel >= 2.52.0 |
19c49b6b JB |
45 | # C++11 |
46 | BuildRequires: libstdc++-devel >= 6:4.7 | |
47 | BuildRequires: libtool >= 2:2.2 | |
48 | BuildRequires: libxml2-devel >= 1:2.9.0 | |
517ea467 | 49 | BuildRequires: llvm-devel >= 3.5 |
3fb38ab7 | 50 | BuildRequires: meson >= 0.54.0 |
4c5bc2e8 | 51 | BuildRequires: ninja >= 1.5 |
3bb6040e | 52 | BuildRequires: ostree-devel |
35233ca9 | 53 | BuildRequires: pango-devel >= 1:1.38.0 |
be928a8e | 54 | BuildRequires: pcre2-common-devel |
19c49b6b | 55 | BuildRequires: pkgconfig >= 1:0.22 |
ac0c2738 | 56 | BuildRequires: python3-devel >= 1:3.2.3 |
35233ca9 | 57 | BuildRequires: python3-pygobject3-devel >= 3.22.0 |
be928a8e | 58 | %{?with_apidocs:BuildRequires: python3-sphinx_rtd_theme} |
336aa477 | 59 | BuildRequires: rpm-build >= 4.6 |
ba7368b7 | 60 | BuildRequires: rpmbuild(macros) >= 1.752 |
ee68e9fa | 61 | %{?with_apidocs:BuildRequires: sphinx-pdg-3} |
3fb38ab7 | 62 | %{?with_sysprof:BuildRequires: sysprof-ui-devel >= 3.37.1} |
8498f58c | 63 | BuildRequires: tar >= 1:1.22 |
c661ac6e | 64 | BuildRequires: template-glib-devel >= 3.28.0 |
ac0c2738 | 65 | BuildRequires: vala >= 2:0.30.0.55 |
3bb6040e | 66 | BuildRequires: vala-gtksourceview4 >= 4.0.0 |
3fb38ab7 | 67 | BuildRequires: vala-libdazzle >= 3.37.0 |
c661ac6e JB |
68 | BuildRequires: vala-libgit2-glib >= 0.25.0 |
69 | BuildRequires: vala-template-glib >= 3.28.0 | |
ee68e9fa | 70 | BuildRequires: vala-vte >= 0.46 |
d2eac2c1 | 71 | BuildRequires: vte-devel >= 0.46 |
8498f58c | 72 | BuildRequires: xz |
ac0c2738 | 73 | BuildRequires: yelp-tools |
be928a8e | 74 | Requires(post,postun): glib2 >= 1:2.69.1 |
8498f58c | 75 | Requires(post,postun): gtk-update-icon-cache |
be928a8e | 76 | Requires: cmark-lib >= 0.29.0 |
ac0c2738 | 77 | Requires: ctags |
5512e48b | 78 | Requires: devhelp-libs >= 3.26.0 |
c661ac6e | 79 | Requires: enchant2 >= 2 |
b284fd02 | 80 | Requires: flatpak-libs >= 1.11.2 |
8498f58c | 81 | Requires: gjs >= 1.42.0 |
3bb6040e | 82 | Requires: glade-libs >= 3.22.0 |
be928a8e | 83 | Requires: glib2 >= 1:2.69.1 |
c661ac6e | 84 | Requires: gspell >= 1.2.0 |
be928a8e | 85 | Requires: gtk+3 >= 3.24 |
3fb38ab7 | 86 | Requires: gtk-webkit4 >= 2.26 |
3bb6040e | 87 | Requires: gtksourceview4 >= 4.0.0 |
8498f58c | 88 | Requires: hicolor-icon-theme |
35233ca9 | 89 | Requires: json-glib >= 1.2.0 |
3bb6040e | 90 | Requires: jsonrpc-glib >= 3.30.0 |
3fb38ab7 | 91 | Requires: libdazzle >= 3.37.0 |
c661ac6e | 92 | Requires: libgit2-glib >= 0.25.0 |
5512e48b | 93 | Requires: libpeas >= 1.22.0 |
4c5bc2e8 | 94 | Requires: libportal >= 0.3 |
d2eac2c1 | 95 | Requires: libsoup >= 2.52.0 |
19c49b6b | 96 | Requires: libxml2 >= 1:2.9.0 |
35233ca9 JB |
97 | Requires: pango >= 1:1.38.0 |
98 | Requires: python3-modules >= 1:3.2.3 | |
99 | Requires: python3-pygobject3 >= 3.22.0 | |
3fb38ab7 | 100 | %{?with_sysprof:Requires: sysprof-ui-libs >= 3.37.1} |
c661ac6e | 101 | Requires: template-glib >= 3.28.0 |
d2eac2c1 | 102 | Requires: vte >= 0.46 |
3871e6e3 | 103 | Suggests: python3-jedi |
95b49819 | 104 | Suggests: python3-lxml |
336aa477 | 105 | Obsoletes: gnome-builder-mm < 3.24 |
8498f58c MB |
106 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
107 | ||
be928a8e JB |
108 | %define abiver 41.0 |
109 | %define apiver 41 | |
4c5bc2e8 | 110 | |
8498f58c MB |
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 | ||
19c49b6b JB |
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 | ||
8498f58c MB |
121 | %package devel |
122 | Summary: Development files for GNOME Builder | |
19c49b6b | 123 | Summary(pl.UTF-8): Pliki programistyczne GNOME Buildera |
8498f58c | 124 | Group: Development/Libraries |
517ea467 | 125 | Requires: %{name} = %{version}-%{release} |
be928a8e JB |
126 | Requires: glib2-devel >= 1:2.69.1 |
127 | Requires: gtk+3-devel >= 3.24 | |
3bb6040e JB |
128 | Requires: gtksourceview4-devel >= 4.0.0 |
129 | Requires: jsonrpc-glib-devel >= 3.30.0 | |
3fb38ab7 | 130 | Requires: libdazzle-devel >= 3.37.0 |
c661ac6e | 131 | Requires: libpeas-devel >= 1.22.0 |
35233ca9 | 132 | Requires: pango-devel >= 1:1.38.0 |
c661ac6e JB |
133 | Requires: template-glib-devel >= 3.28.0 |
134 | Requires: vte-devel >= 0.46 | |
336aa477 | 135 | Obsoletes: gnome-builder-mm-devel < 3.24 |
4c5bc2e8 | 136 | Obsoletes: vala-gnome-builder < 3.36 |
8498f58c MB |
137 | |
138 | %description devel | |
139 | This package provides development files for GNOME Builder. | |
140 | ||
19c49b6b JB |
141 | %description devel -l pl.UTF-8 |
142 | Ten pakiet zawiera pliki programistyczne GNOME Buildera. | |
143 | ||
c661ac6e JB |
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} | |
489a8f3e | 149 | BuildArch: noarch |
c661ac6e JB |
150 | |
151 | %description doc | |
152 | GNOME Builder documentation. | |
153 | ||
154 | %description doc -l pl.UTF-8 | |
155 | Dokumentacja do GNOME Buildera. | |
156 | ||
ee68e9fa JB |
157 | %package apidocs |
158 | Summary: API documentation for GNOME Builder libraries | |
159 | Summary(pl.UTF-8): Dokumentacja API bibliotek GNOME Buildera | |
160 | Group: Documentation | |
489a8f3e | 161 | BuildArch: noarch |
ee68e9fa JB |
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 | ||
8498f58c MB |
169 | %prep |
170 | %setup -q | |
b284fd02 | 171 | %patch0 -p1 |
8498f58c | 172 | |
f777fa5b JP |
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 | ||
8498f58c | 178 | %build |
5512e48b | 179 | %meson build \ |
ee68e9fa JB |
180 | %if %{with apidocs} |
181 | -Ddocs=true \ | |
182 | -Dhelp=true \ | |
183 | %endif | |
3fb38ab7 | 184 | -Dplugin_rls=true \ |
3bb6040e | 185 | -Dplugin_sysprof=%{__true_false sysprof} \ |
336aa477 | 186 | -Dplugin_vagrant=true |
ee68e9fa | 187 | # -Dplugin_deviced=true |
5512e48b JR |
188 | |
189 | %meson_build -C build | |
8498f58c MB |
190 | |
191 | %install | |
192 | rm -rf $RPM_BUILD_ROOT | |
193 | ||
5512e48b | 194 | %meson_install -C build |
05a345d0 | 195 | |
ee68e9fa | 196 | %if %{with apidocs} |
3fb38ab7 | 197 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnome-builder/en/{.buildinfo,_sources,objects.inv} |
be928a8e JB |
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} | |
ee68e9fa JB |
202 | %endif |
203 | ||
ac0c2738 | 204 | %find_lang %{name} --with-gnome |
8498f58c MB |
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) | |
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 |
252de218 | 231 | |
612f56ca JR |
232 | %{_libdir}/gnome-builder/plugins/cargo.plugin |
233 | %{_libdir}/gnome-builder/plugins/cargo_plugin.py | |
234 | ||
4c5bc2e8 JB |
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 | ||
05a345d0 | 239 | %{_libdir}/gnome-builder/plugins/eslint.plugin |
ec500595 | 240 | %{_libdir}/gnome-builder/plugins/eslint_plugin.py |
05a345d0 JR |
241 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.eslint.gschema.xml |
242 | ||
95b49819 JR |
243 | %{_libdir}/gnome-builder/plugins/find-other-file.plugin |
244 | %{_libdir}/gnome-builder/plugins/find_other_file.py | |
ac0c2738 | 245 | |
ec500595 JR |
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 | ||
4c5bc2e8 JB |
252 | %{_libdir}/gnome-builder/plugins/gvls.plugin |
253 | %{_libdir}/gnome-builder/plugins/gvls_plugin.py | |
254 | ||
ec500595 | 255 | %{_libdir}/gnome-builder/plugins/html_preview.gresource |
252de218 | 256 | %{_libdir}/gnome-builder/plugins/html-preview.plugin |
ec500595 | 257 | %{_libdir}/gnome-builder/plugins/html_preview.py |
252de218 | 258 | |
be928a8e JB |
259 | %{_libdir}/gnome-builder/plugins/jedi-language-server.plugin |
260 | %{_libdir}/gnome-builder/plugins/jedi_language_server_plugin.py | |
252de218 | 261 | |
ac0c2738 MB |
262 | %{_libdir}/gnome-builder/plugins/jhbuild.plugin |
263 | %{_libdir}/gnome-builder/plugins/jhbuild_plugin.py | |
264 | ||
c661ac6e | 265 | %{_libdir}/gnome-builder/plugins/make.plugin |
ec500595 JR |
266 | %{_libdir}/gnome-builder/plugins/make_plugin.gresource |
267 | %{_libdir}/gnome-builder/plugins/make_plugin.py | |
268 | ||
95b49819 | 269 | %{_libdir}/gnome-builder/plugins/meson-templates.plugin |
ec500595 JR |
270 | %{_libdir}/gnome-builder/plugins/meson_templates.gresource |
271 | %{_libdir}/gnome-builder/plugins/meson_templates.py | |
95b49819 | 272 | |
c661ac6e JB |
273 | %{_libdir}/gnome-builder/plugins/mono.plugin |
274 | %{_libdir}/gnome-builder/plugins/mono_plugin.py | |
275 | ||
95b49819 JR |
276 | %{_libdir}/gnome-builder/plugins/npm.plugin |
277 | %{_libdir}/gnome-builder/plugins/npm_plugin.py | |
278 | ||
c661ac6e JB |
279 | %{_libdir}/gnome-builder/plugins/phpize.plugin |
280 | %{_libdir}/gnome-builder/plugins/phpize_plugin.py | |
281 | ||
517ea467 JB |
282 | %{_libdir}/gnome-builder/plugins/python-gi-imports-completion.plugin |
283 | %{_libdir}/gnome-builder/plugins/python_gi_imports_completion.py | |
252de218 | 284 | |
77929274 JR |
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 | ||
4c5bc2e8 JB |
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 | ||
77929274 JR |
298 | %{_libdir}/gnome-builder/plugins/waf.plugin |
299 | %{_libdir}/gnome-builder/plugins/waf_plugin.py | |
300 | ||
40497b19 | 301 | %if %{with sysprof} |
c661ac6e JB |
302 | # not installed since 3.28 |
303 | #%{_libdir}/gnome-builder/plugins/sysprof.plugin | |
40497b19 JR |
304 | %endif |
305 | ||
40497b19 | 306 | %{_libdir}/gnome-builder/plugins/vala-pack.plugin |
4c5bc2e8 | 307 | %{_libdir}/gnome-builder/plugins/vala_pack_plugin.py |
40497b19 | 308 | |
be928a8e JB |
309 | %{_libdir}/gnome-builder/plugins/vala_langserv.plugin |
310 | %{_libdir}/gnome-builder/plugins/vala_langserv.py | |
311 | ||
05a345d0 | 312 | %{_libdir}/gnome-builder/plugins/valgrind.plugin |
95b49819 JR |
313 | %{_libdir}/gnome-builder/plugins/valgrind_plugin.gresource |
314 | %{_libdir}/gnome-builder/plugins/valgrind_plugin.py | |
05a345d0 | 315 | |
8498f58c | 316 | %{_datadir}/dbus-1/services/org.gnome.Builder.service |
19c49b6b | 317 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.gschema.xml |
ac0c2738 | 318 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.build.gschema.xml |
77929274 | 319 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.clang.gschema.xml |
19c49b6b | 320 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.code-insight.gschema.xml |
8498f58c MB |
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 | |
517ea467 | 323 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.extension-type.gschema.xml |
ac0c2738 MB |
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 | |
e5121d5c | 326 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugins.color_picker_plugin.gschema.xml |
ec500595 | 327 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.project.gschema.xml |
8498f58c | 328 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.project-tree.gschema.xml |
3fb38ab7 | 329 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.rust-analyzer.gschema.xml |
ac0c2738 | 330 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.terminal.gschema.xml |
517ea467 | 331 | %{_datadir}/glib-2.0/schemas/org.gnome.builder.workbench.gschema.xml |
3fb38ab7 JB |
332 | %{_datadir}/gtksourceview-4/styles/Adwaita*.style-scheme.xml |
333 | %{_datadir}/gtksourceview-4/styles/builder*.style-scheme.xml | |
c661ac6e | 334 | %{_datadir}/metainfo/org.gnome.Builder.appdata.xml |
19c49b6b | 335 | %{_desktopdir}/org.gnome.Builder.desktop |
77929274 JR |
336 | %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder-symbolic.svg |
337 | %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder.svg | |
ac0c2738 | 338 | %{py3_sitedir}/gi/overrides/Ide.py |
8498f58c MB |
339 | |
340 | %files devel | |
341 | %defattr(644,root,root,755) | |
5512e48b | 342 | %{_includedir}/gnome-builder |
4c5bc2e8 | 343 | %{_includedir}/gnome-builder-%{apiver} |
517ea467 | 344 | %dir %{_datadir}/gnome-builder/gir-1.0 |
be928a8e | 345 | %{_datadir}/gnome-builder/gir-1.0/Ide-%{abiver}.gir |
ac0c2738 | 346 | %dir %{_libdir}/gnome-builder/pkgconfig |
cdf7b471 | 347 | %{_libdir}/gnome-builder/pkgconfig/gnome-builder-%{version}.pc |
ee68e9fa JB |
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 |