]> git.pld-linux.org Git - packages/gnome-builder.git/blob - gnome-builder.spec
0a489a8c8cb15f782696da10027b05de83ffe07b
[packages/gnome-builder.git] / gnome-builder.spec
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:        2
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_sitescriptdir}/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
This page took 0.0411 seconds and 2 git commands to generate.