2 # - switch to gtk4-update-icon-cache
3 # - deviced plugin (BR: libdeviced-devel >= 3.27.4)
6 %bcond_without sysprof # sysprof system profiler plugin
7 %bcond_without apidocs # Sphinx based help + gi-docgen API documentation
9 Summary: IDE for writing GNOME-based software
10 Summary(pl.UTF-8): IDE do tworzenia oprogramowania opartego na GNOME
15 Group: X11/Applications
16 Source0: https://download.gnome.org/sources/gnome-builder/45/%{name}-%{version}.tar.xz
17 # Source0-md5: dc095a68d1b4d44b7ee7eda5fd3c9c10
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: dspy-devel >= 1.4.0
24 BuildRequires: editorconfig-devel
25 BuildRequires: enchant2-devel >= 2
26 BuildRequires: flatpak-devel >= 1.11.2
28 BuildRequires: gcc >= 6:4.7
29 BuildRequires: gettext-tools >= 0.19.8
30 BuildRequires: glib2-devel >= 1:2.75.0
31 BuildRequires: gobject-introspection-devel >= 1.74
32 BuildRequires: gtk4-devel >= 4.10
33 %{?with_apidocs:BuildRequires: gi-docgen}
34 BuildRequires: gtk-webkit6-devel >= 2.40
35 BuildRequires: gtksourceview5-devel >= 5.8
36 BuildRequires: json-glib-devel >= 1.2.0
37 BuildRequires: jsonrpc-glib-devel >= 3.43.0
38 BuildRequires: libadwaita-devel >= 1.4
39 BuildRequires: libdex-devel >= 0.2
40 BuildRequires: libgit2-glib-devel >= 1.1.0
41 BuildRequires: libpeas2-devel >= 2.0
42 BuildRequires: libpanel-devel >= 1.1.2
43 BuildRequires: libportal-gtk4-devel
44 BuildRequires: libsoup3-devel >= 3.0
46 BuildRequires: libstdc++-devel >= 6:8
47 BuildRequires: libxml2-devel >= 1:2.9.0
48 BuildRequires: llvm-devel >= 3.5
49 BuildRequires: meson >= 0.60
50 BuildRequires: ninja >= 1.5
51 BuildRequires: ostree-devel
52 BuildRequires: pango-devel >= 1:1.38.0
53 BuildRequires: pcre2-common-devel
54 BuildRequires: pkgconfig >= 1:0.22
55 BuildRequires: python3-devel >= 1:3.2.3
56 %{?with_apidocs:BuildRequires: python3-sphinx_rtd_theme}
57 BuildRequires: rpm-build >= 4.6
58 BuildRequires: rpmbuild(macros) >= 2.029
59 BuildRequires: sed >= 4.0
60 %{?with_apidocs:BuildRequires: sphinx-pdg-3}
61 %{?with_sysprof:BuildRequires: sysprof-devel >= 45.0}
62 BuildRequires: tar >= 1:1.22
63 BuildRequires: template-glib-devel >= 3.36.1
64 BuildRequires: vala >= 2:0.30.0.55
65 BuildRequires: vala-gtksourceview5 >= 5.8
66 BuildRequires: vala-libgit2-glib >= 1.1.0
67 BuildRequires: vala-template-glib >= 3.36.1
68 BuildRequires: vte-gtk4-devel >= 0.70.0
70 BuildRequires: yelp-tools
71 Requires(post,postun): glib2 >= 1:2.75.0
72 Requires(post,postun): gtk-update-icon-cache
73 Requires: cmark-lib >= 0.29.0
75 Requires: dspy-libs >= 1.4.0
76 Requires: enchant2 >= 2
77 Requires: flatpak-libs >= 1.11.2
78 Requires: glib2 >= 1:2.75.0
79 Requires: gtk4 >= 4.10
80 Requires: gtk-webkit6 >= 2.40
81 Requires: gtksourceview5 >= 5.8
82 Requires: hicolor-icon-theme
83 Requires: json-glib >= 1.2.0
84 Requires: jsonrpc-glib >= 3.43.0
85 Requires: libadwaita >= 1.4
86 Requires: libdex >= 0.2
87 Requires: libgit2-glib >= 1.1.0
88 Requires: libpanel >= 1.1.2
89 Requires: libpeas2 >= 2.0
90 Requires: libportal >= 0.3
91 Requires: libsoup3 >= 3.0
92 Requires: libxml2 >= 1:2.9.0
93 Requires: pango >= 1:1.38.0
94 Requires: python3-modules >= 1:3.2.3
95 %{?with_sysprof:Requires: sysprof-ui-libs >= 3.46.0}
96 Requires: template-glib >= 3.36.1
97 Requires: vte-gtk4 >= 0.70.0
98 Suggests: python3-jedi
99 Suggests: python3-lxml
100 Obsoletes: gnome-builder-mm < 3.24
101 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
106 # must comply to pygobject3 due to "..importer" import
107 %define py3_gi_overridesdir %{py3_sitedir}/gi/overrides
110 Builder attempts to be an IDE for writing software for GNOME. It does
111 not try to be a generic IDE, but one specialized for writing GNOME
114 %description -l pl.UTF-8
115 Builder jest próbą stworzenia IDE do rozwijania oprogramowania dla
116 GNOME. Nie próbuje być ogólnym IDE, ale wyspecjalizowanym do pisania
117 oprogramowania dla GNOME.
120 Summary: Development files for GNOME Builder
121 Summary(pl.UTF-8): Pliki programistyczne GNOME Buildera
122 Group: Development/Libraries
123 Requires: %{name} = %{version}-%{release}
124 Requires: glib2-devel >= 1:2.75.0
125 Requires: gtk-webkit6-devel >= 2.40
126 Requires: gtk4-devel >= 4.10
127 Requires: gtksourceview5-devel >= 5.8
128 Requires: libpeas2-devel >= 2.0
129 Requires: template-glib-devel >= 3.36.1
130 Requires: vte-gtk4-devel >= 0.70.0
131 Obsoletes: gnome-builder-mm-devel < 3.24
132 Obsoletes: vala-gnome-builder < 3.36
135 This package provides development files for GNOME Builder.
137 %description devel -l pl.UTF-8
138 Ten pakiet zawiera pliki programistyczne GNOME Buildera.
141 Summary: GNOME Builder documentation
142 Summary(pl.UTF-8): Dokumentacja do GNOME Buildera
144 Requires: %{name} = %{version}-%{release}
148 GNOME Builder documentation.
150 %description doc -l pl.UTF-8
151 Dokumentacja do GNOME Buildera.
154 Summary: API documentation for GNOME Builder libraries
155 Summary(pl.UTF-8): Dokumentacja API bibliotek GNOME Buildera
160 API documentation for GNOME Builder libraries.
162 %description apidocs -l pl.UTF-8
163 Dokumentacja API bibliotek GNOME Buildera.
168 # drop useless shebang
169 grep -q /usr/bin/env src/libide/Ide.py || exit 1
170 %{__sed} -i -e '1d' src/libide/Ide.py
173 # python.purelibdir changed to place overrides file properly
174 # (possible only because there are no other system-wide python modules installed)
180 -Dplugin_clangd=true \
181 -Dplugin_sysprof=%{__true_false sysprof} \
182 -Dpython.bytecompile=2 \
183 -Dpython.purelibdir=%{py3_sitedir}
184 # -Dplugin_deviced=true
186 %meson_build -C build
189 rm -rf $RPM_BUILD_ROOT
191 %meson_install -C build
193 # for external plugins
194 install -d $RPM_BUILD_ROOT%{_libdir}/gnome-builder/plugins
197 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnome-builder/en/{.buildinfo,_sources,objects.inv}
199 install -d $RPM_BUILD_ROOT%{_gidocdir}
200 %{__mv} $RPM_BUILD_ROOT%{_docdir}/libide $RPM_BUILD_ROOT%{_gidocdir}
203 %find_lang %{name} --with-gnome
206 rm -rf $RPM_BUILD_ROOT
209 %glib_compile_schemas
210 %update_icon_cache hicolor
213 %glib_compile_schemas
214 %update_icon_cache hicolor
216 %files -f %{name}.lang
217 %defattr(644,root,root,755)
218 %doc AUTHORS NEWS README.md
219 %attr(755,root,root) %{_bindir}/gnome-builder
220 %dir %{_libdir}/gnome-builder
221 %dir %{_libdir}/gnome-builder/girepository-1.0
222 %{_libdir}/gnome-builder/girepository-1.0/Ide-%{abiver}.typelib
223 %dir %{_libdir}/gnome-builder/plugins
224 %attr(755,root,root) %{_libexecdir}/gnome-builder-clang
225 %attr(755,root,root) %{_libexecdir}/gnome-builder-flatpak
226 %attr(755,root,root) %{_libexecdir}/gnome-builder-git
227 %dir %{_datadir}/gnome-builder
228 %{_datadir}/gnome-builder/fonts
229 %{_datadir}/gnome-builder/icons
230 %{_datadir}/gnome-builder/styles
231 %{_datadir}/dbus-1/services/org.gnome.Builder.service
232 %{_datadir}/glib-2.0/schemas/org.gnome.builder.gschema.xml
233 %{_datadir}/glib-2.0/schemas/org.gnome.builder.build.gschema.xml
234 %{_datadir}/glib-2.0/schemas/org.gnome.builder.clang.gschema.xml
235 %{_datadir}/glib-2.0/schemas/org.gnome.builder.code-insight.gschema.xml
236 %{_datadir}/glib-2.0/schemas/org.gnome.builder.copyright.gschema.xml
237 %{_datadir}/glib-2.0/schemas/org.gnome.builder.debug.gschema.xml
238 %{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.gschema.xml
239 %{_datadir}/glib-2.0/schemas/org.gnome.builder.editor.language.gschema.xml
240 %{_datadir}/glib-2.0/schemas/org.gnome.builder.extension-type.gschema.xml
241 %{_datadir}/glib-2.0/schemas/org.gnome.builder.flatpak.gschema.xml
242 %{_datadir}/glib-2.0/schemas/org.gnome.builder.plugin.gschema.xml
243 %{_datadir}/glib-2.0/schemas/org.gnome.builder.project.gschema.xml
244 %{_datadir}/glib-2.0/schemas/org.gnome.builder.project-tree.gschema.xml
245 %{_datadir}/glib-2.0/schemas/org.gnome.builder.shellcmd.gschema.xml
246 %{_datadir}/glib-2.0/schemas/org.gnome.builder.shellcmd.command.gschema.xml
247 %{_datadir}/glib-2.0/schemas/org.gnome.builder.spelling.gschema.xml
248 %{_datadir}/glib-2.0/schemas/org.gnome.builder.sysprof.gschema.xml
249 %{_datadir}/glib-2.0/schemas/org.gnome.builder.terminal.gschema.xml
250 %{_datadir}/glib-2.0/schemas/org.gnome.builder.valgrind.gschema.xml
251 %{_datadir}/metainfo/org.gnome.Builder.appdata.xml
252 %{_desktopdir}/org.gnome.Builder.desktop
253 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder-symbolic.svg
254 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Builder.svg
255 %{py3_gi_overridesdir}/Ide.py
256 %{py3_gi_overridesdir}/__pycache__/Ide.cpython-*.py[co]
259 %defattr(644,root,root,755)
260 %{_includedir}/gnome-builder-%{apiver}
261 %dir %{_datadir}/gnome-builder/gir-1.0
262 %{_datadir}/gnome-builder/gir-1.0/Ide-%{abiver}.gir
263 %{_pkgconfigdir}/gnome-builder-%{version}.pc
267 %defattr(644,root,root,755)
268 %dir %{_docdir}/gnome-builder
269 %{_docdir}/gnome-builder/en
272 %defattr(644,root,root,755)