Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37041976
en ru br
Репозитории ALT

Группа :: Разработка/GNOME и GTK+
Пакет: gnome-builder

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%def_disable snapshot
%define optflags_lto %nil

%define xdg_name org.gnome.Builder
%define ver_major 45
%define beta %nil
%define _libexecdir %_prefix/libexec
%define api_ver %ver_major.0

%def_with clang
%def_with sysprof
%def_with flatpak
%def_without docs
%def_with help
%def_with autotools
# disabled by default
%def_with vala
# Rust Language Server integration plugin (disabled by default)
%def_without rls
# SDK for Language Server Protocol (LSP)
# https://gitlab.gnome.org/esodan/gvls.git
%def_without gvls

Name: gnome-builder
Version: %ver_major.0
Release: alt1%beta

Summary: Builder - Develop software for GNOME
License: LGPLv2+
Group: Development/GNOME and GTK+
Url: https://wiki.gnome.org/Apps/Builder

%if_disabled snapshot
Source: ftp://ftp.gnome.org/pub/gnome/sources/%name/%ver_major/%name-%version%beta.tar.xz
%else
Source: %name-%version.tar
%endif
#https://l10n.gnome.org/media/upload/gnome-builder-master-po-ru-955618_BWaCuRU.po
Source1: %name-ru.po

%set_typelibdir %_libdir/%name/girepository-1.0

%define glib_ver 2.75.0
%define gtk_ver 4.10
%define adwaita_ver 1.4
%define panel_ver 1.4
%define gtksourceview_api_ver 5
%define gtksourceview_ver 5.8
%define git2_ver 1.1.0
%define devhelp_ver 3.30.0
%define xml_ver 2.9.0
%define vala_ver 0.37
%define sysprof_ver 3.34.0
%define vte_ver 0.70
%define gtkmm_ver 3.20
%define gspell_ver 1.8.0
%define peas_ver 2.0.0
%define json_glib_ver 1.2.0
%define template_glib_ver 3.36
%define soup3_ver 3.0
%define webkit_api_ver 6.0
%define webkit_ver 2.40.0
%define portal_ver 0.5
%define gi_docgen_ver 2021.9
%define jsonrpc_ver 3.43.0
%define dex_ver 0.4.0

%add_python3_path %_libdir/%name/plugins
%add_findreq_skiplist %_datadir/%name/plugins/*_templates/resources/*/*.py

Requires(pre): %name-data = %EVR
# src/libide/gui/ide-application-plugins.c
Requires: typelib(WebKit) = %webkit_api_ver
Requires: typelib(Jsonrpc) = 1.0

%{?_with_autotools:Requires: automake autoconf libtool}
#%{?_with_flatpak:Requires: flatpak-builder}
Requires: meson %_bindir/git %_bindir/indent %_bindir/xmllint
Requires: devhelp %_bindir/uncrustify %_bindir/ctags %_bindir/cmark
Requires: libpeas2-python3-loader

BuildRequires(pre): rpm-macros-meson rpm-build-python3 rpm-build-gir
BuildRequires: /proc meson gcc-c++ flex mm-common yelp-tools
BuildRequires: %_bindir/ctags %_bindir/tidy %_bindir/uncrustify
BuildRequires: libgio-devel >= %glib_ver
BuildRequires: /usr/bin/appstream-util desktop-file-utils
BuildRequires: libgtk4-devel >= %gtk_ver libadwaita-devel >= %adwaita_ver
BuildRequires: libpanel-devel >= %panel_ver
BuildRequires: libgtksourceview%gtksourceview_api_ver-devel >= %gtksourceview_ver
BuildRequires: libgit2-glib-devel >= %git2_ver libdevhelp-devel >= %devhelp_ver
BuildRequires: libwebkitgtk%webkit_api_ver-devel >= %webkit_ver
BuildRequires: libxml2-devel >= %xml_ver libpeas2-devel >= %peas_ver libvte3-devel >= %vte_ver
BuildRequires: libjson-glib-devel >= %json_glib_ver libpcre2-devel
BuildRequires: python3-devel python3-module-pygobject3-devel
BuildRequires: gobject-introspection-devel libgtk4-gir-devel libpanel-gir-devel libvte3-gir-devel
BuildRequires: libgtksourceview%gtksourceview_api_ver-gir-devel libgit2-glib-gir-devel libpeas2-gir-devel
BuildRequires: libjson-glib-gir-devel libsoup3.0-gir-devel >= %soup3_ver libwebkitgtk%webkit_api_ver-gir-devel
BuildRequires: libvala-devel >= %vala_ver vala-tools
BuildRequires: libgspell-devel >= %gspell_ver libenchant2-devel
BuildRequires: libtemplate-glib-devel >= %template_glib_ver libdspy-devel libeditorconfig-devel
BuildRequires: libjsonrpc-glib-devel >= %jsonrpc_ver
BuildRequires: libtemplate-glib-gir-devel libjsonrpc-glib-gir-devel
BuildRequires: libdex-gir-devel
BuildRequires: libgtkmm4-devel >= %gtkmm_ver
BuildRequires: cmark-devel
BuildRequires: pkgconfig(libportal-gtk4)
BuildRequires: libdex-devel >= %dex_ver
%{?_with_clang:BuildRequires: llvm-devel clang-devel}
%{?_with_docs:BuildRequires: gi-docgen >= %gi_docgen_ver}
%{?_with_help:BuildRequires: python3-module-sphinx python3-module-sphinx_rtd_theme}
%{?_with_flatpak:BuildRequires: libflatpak-devel libostree-devel libportal-devel >= %portal_ver}
%{?_with_sysprof:BuildRequires: sysprof-devel >= %sysprof_ver}

%description
Builder attempts to be an IDE for writing software for GNOME. It does not
try to be a generic IDE, but one specialized for writing GNOME software.
We believe that this focus will help us to build something great.

%package data
Summary: Arch independent files for GNOME Builder
Group: Development/GNOME and GTK+
BuildArch: noarch

%description data
This package provides noarch data needed for Gnome Builder to work.

%package clang
Summary: Clang/LLVW dependent part for GNOME Builder
Group: Development/GNOME and GTK+
Requires: %name = %EVR

%description clang
This package provides files for Gnome Builder to work with Clang/LLVW.

%prep
%setup -n %name-%version%beta
sed -i 's|\(#\!/usr/bin/env python\)$|\13|' src/plugins/*/*.py
#cp %SOURCE1 po/ru.po

%build
%meson \
%{?_without_clang:-Dplugin_clang=false} \
%{?_without_sysprof:-Dplugin_sysprof=false} \
%{?_with_docs:-Ddocs=true} \
%{?_with_help:-Dhelp=true} \
%{?_without_flatpak:-Dplugin_flatpak=false} \
%{?_with_autotools:-Dplugin_autotools=true} \
%{?_with_rls:-Dplugin_rls=true} \
%{?_with_gvls:-Dplugin_gvls=true}
%nil
%meson_build -v

%install
%meson_install
%find_lang --with-gnome %name

%files -f %name.lang
%_bindir/%name
%_libexecdir/%name-git
%_libexecdir/%name-flatpak
%dir %_libdir/%name
%dir %_libdir/%name/girepository-1.0
%_libdir/%name/girepository-1.0/Ide-%ver_major.typelib
%_includedir/%name-%ver_major/
%_pkgconfigdir/%name-%version.pc
%python3_sitelibdir_noarch/gi/overrides/Ide.py
%python3_sitelibdir_noarch/gi/overrides/__pycache__/
%doc README* AUTHORS NEWS

%if_with clang
%files clang
%_libexecdir/%name-clang
%endif

%files data
%_desktopdir/%xdg_name.desktop
%_datadir/dbus-1/services/%xdg_name.service
%_datadir/glib-2.0/schemas/org.gnome.builder.build.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.clang.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.code-insight.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.copyright.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.debug.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.editor.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.editor.language.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.extension-type.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.flatpak.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.plugin.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.project.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.project-tree.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.shellcmd.command.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.shellcmd.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.spelling.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.sysprof.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.terminal.gschema.xml
%_datadir/glib-2.0/schemas/org.gnome.builder.valgrind.gschema.xml
%_datadir/%name/
%_iconsdir/hicolor/*/*/*.*
%_datadir/metainfo/%xdg_name.appdata.xml

%{?_with_docs:%_datadir/doc/libide/}
%{?_with_help:%_datadir/doc/%name/}

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin