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