]> git.pld-linux.org Git - packages/vte.git/blobdiff - vte.spec
- updated to 0.74.0
[packages/vte.git] / vte.spec
index 6579ea57d41e123e23d89db92d3e9097f0cd56c9..598242420807ff324f6ee37e09ddeebebdeaff55 100644 (file)
--- a/vte.spec
+++ b/vte.spec
@@ -1,42 +1,49 @@
 #
 # Conditional build:
-%bcond_with    gtk4    # GTK+ 4 based library [doesn't build with 3.90]
+%bcond_without apidocs # API documentation
+%bcond_without glade   # Glade catalog
+%bcond_without gtk4    # GTK+ 4 based library
+%bcond_without systemd # systemd
 
 Summary:       VTE terminal widget library
 Summary(pl.UTF-8):     Biblioteka z kontrolką terminala VTE
 Name:          vte
-Version:       0.60.2
+Version:       0.74.0
 Release:       1
 # some files have LGPL v2.1+ signature, but some LGPL v3+
 License:       LGPL v3+ (library), GPL v3+ (app)
 Group:         X11/Libraries
-Source0:       http://ftp.gnome.org/pub/GNOME/sources/vte/0.60/%{name}-%{version}.tar.xz
-# Source0-md5: 1a0b5395915d2f3c88484511b38cc584
+Source0:       https://download.gnome.org/sources/vte/0.74/%{name}-%{version}.tar.xz
+# Source0-md5: ab2df0e0c0f197eb16eb4894bf8d2826
 Patch0:                %{name}-wordsep.patch
+URL:           https://wiki.gnome.org/Apps/Terminal/VTE
 BuildRequires: cairo-gobject-devel
 BuildRequires: docbook-dtd412-xml
 BuildRequires: fribidi-devel >= 1.0.0
+# C11
+BuildRequires: gcc >= 6:4.7
 BuildRequires: gdk-pixbuf2-devel
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
 BuildRequires: glib2-devel >= 1:2.52.0
 BuildRequires: gnutls-devel >= 3.2.7
 BuildRequires: gobject-introspection-devel >= 0.10.0
 BuildRequires: gperf
-BuildRequires: gtk+3-devel >= 3.20.0
-%{?with_gtk4:BuildRequires:    gtk+4-devel >= 4.0.0}
-BuildRequires: gtk-doc >= 1.13
+BuildRequires: gtk+3-devel >= 3.24.0
+%{?with_gtk4:BuildRequires:    gtk4-devel >= 4.0.1}
+%{?with_apidocs:BuildRequires: gi-docgen}
 BuildRequires: intltool >= 0.40.0
 BuildRequires: libicu-devel >= 4.8
-# C++17 support (-std=gnu++17, with constexpr lambdas support)
-BuildRequires: libstdc++-devel >= 6:7.0
+# C++20 support (-std=gnu++2a, char8_t)
+BuildRequires: libstdc++-devel >= 6:9.0
 BuildRequires: libxml2-progs >= 2
-BuildRequires: meson >= 0.50.0
+BuildRequires: meson >= 0.60.0
 BuildRequires: ninja >= 1.5
 BuildRequires: pango-devel >= 1:1.22.0
 BuildRequires: pcre2-8-devel >= 10.21
 BuildRequires: pkgconfig
-BuildRequires: rpmbuild(macros) >= 1.736
-BuildRequires: systemd-devel >= 1:220
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.752
+%{?with_systemd:BuildRequires: systemd-devel >= 1:220}
 BuildRequires: tar >= 1:1.22
 BuildRequires: vala >= 2:0.24
 BuildRequires: xz
@@ -44,12 +51,11 @@ BuildRequires:      zlib-devel
 Requires:      fribidi >= 1.0.0
 Requires:      glib2 >= 1:2.52.0
 Requires:      gnutls >= 3.2.7
-Requires:      gtk+3 >= 3.20.0
+Requires:      gtk+3 >= 3.24.0
 Requires:      libicu >= 4.8
 Requires:      pango >= 1:1.22.0
-Requires:      systemd-libs >= 1:220
+%{?with_systemd:Requires:      systemd-libs >= 1:220}
 Obsoletes:     vte-common < 0.42.0
-Obsoletes:     vte-glade < 0.58.0
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -67,7 +73,7 @@ License:      LGPL v3+
 Group:         X11/Development/Libraries
 Requires:      %{name} = %{version}-%{release}
 Requires:      glib2-devel >= 1:2.52.0
-Requires:      gtk+3-devel >= 3.20.0
+Requires:      gtk+3-devel >= 3.24.0
 Requires:      pango-devel >= 1:1.22.0
 Conflicts:     gnome-libs-devel < 1.4.1.2
 
@@ -78,6 +84,19 @@ This package contains header files for GTK+ 3 based vte library.
 Pliki nagłówkowe potrzebne do kompilowania programów używających
 biblioteki vte opartej na GTK+ 3.
 
+%package glade
+Summary:       VTE catalog file for Glade
+Summary(pl.UTF-8):     Plik katalogu VTE dla Glade
+Group:         X11/Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+Requires:      glade >= 3
+
+%description glade
+VTE catalog file for Glade.
+
+%description glade -l pl.UTF-8
+Plik katalogu VTE dla Glade.
+
 %package -n vala-vte
 Summary:       Vala API for VTE library
 Summary(pl.UTF-8):     API języka Vala dla biblioteki VTE
@@ -85,9 +104,7 @@ License:     LGPL v3+
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 Requires:      vala >= 2:0.24
-%if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
-%endif
 
 %description -n vala-vte
 Vala API for VTE library.
@@ -100,9 +117,7 @@ Summary:    VTE API documentation (GTK+ 3 version)
 Summary(pl.UTF-8):     Dokumentacja API VTE (wersja dla GTK+ 3)
 Group:         Documentation
 Requires:      gtk-doc-common
-%if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
-%endif
 
 %description apidocs
 VTE API documentation (GTK+ 3 version).
@@ -110,15 +125,89 @@ VTE API documentation (GTK+ 3 version).
 %description apidocs -l pl.UTF-8
 Dokumentacja API VTE (wersja dla GTK+ 3).
 
+%package gtk4
+Summary:       VTE terminal widget library (GTK 4 version)
+Summary(pl.UTF-8):     Biblioteka z kontrolką terminala VTE (wersja dla GTK 4)
+Group:         Libraries
+Requires:      fribidi >= 1.0.0
+Requires:      glib2 >= 1:2.52.0
+Requires:      gnutls >= 3.2.7
+Requires:      gtk4 >= 4.0.1
+Requires:      libicu >= 4.8
+Requires:      pango >= 1:1.22.0
+%{?with_systemd:Requires:      systemd-libs >= 1:220}
+# for common files
+Suggests:      %{name} = %{version}-%{release}
+
+%description gtk4
+The vte package contains a terminal widget for GTK 4.x. It's used by
+gnome-terminal among other programs.
+
+%description gtk4 -l pl.UTF-8
+Ten pakiet zawiera kontrolkę terminala dla GTK 4. Jest używany przez
+gnome-terminal oraz inne programy.
+
+%package gtk4-devel
+Summary:       Header files for VTE for GTK 4
+Summary(pl.UTF-8):     Pliki nagłówkowe VTE dla GTK 4
+License:       LGPL v3+
+Group:         X11/Development/Libraries
+Requires:      %{name}-gtk4 = %{version}-%{release}
+Requires:      glib2-devel >= 1:2.52.0
+Requires:      gtk4-devel >= 4.0.1
+Requires:      pango-devel >= 1:1.22.0
+
+%description gtk4-devel
+This package contains header files for GTK 4 based vte library.
+
+%description gtk4-devel -l pl.UTF-8
+Pliki nagłówkowe potrzebne do kompilowania programów używających
+biblioteki vte opartej na GTK 4.
+
+%package -n vala-vte-gtk4
+Summary:       Vala API for VTE library (GTK 4 version)
+Summary(pl.UTF-8):     API języka Vala dla biblioteki VTE (wersja dla GTK 4)
+License:       LGPL v3+
+Group:         Development/Libraries
+Requires:      %{name}-gtk4-devel = %{version}-%{release}
+Requires:      vala >= 2:0.24
+BuildArch:     noarch
+
+%description -n vala-vte-gtk4
+Vala API for VTE library (GTK 4 version).
+
+%description -n vala-vte-gtk4 -l pl.UTF-8
+API języka Vala dla biblioteki VTE (wersja dla GTK 4).
+
+%package gtk4-apidocs
+Summary:       VTE API documentation (GTK 4 version)
+Summary(pl.UTF-8):     Dokumentacja API VTE (wersja dla GTK 4)
+Group:         Documentation
+Requires:      gtk-doc-common
+BuildArch:     noarch
+
+%description gtk4-apidocs
+VTE API documentation (GTK 4 version).
+
+%description gtk4-apidocs -l pl.UTF-8
+Dokumentacja API VTE (wersja dla GTK 4).
+
 %prep
 %setup -q
 %patch0 -p1
 
+# it seems 9.0 with -std=gnu++2a is sufficient for 0.68.x (-std=gnu++20 option was added in 10.0)
+%{__sed} -i -e '/cxx_req_std/ s/gnu++20/gnu++2a/; /gxx_req_version/ s/10\.0/9.0/' meson.build
+# ...except for single test, which wants consteval and constinit
+%{__sed} -i -e 's/consteval //;s/constinit //' src/pastify-test.cc
+
 %build
 %meson build \
-       -Ddocs=true \
+       %{?with_apidocs:-Ddocs=true} \
+       %{!?with_glade:-Dglade=false} \
        -Dgtk3=true \
-       -Dgtk4=%{__true_false gtk4}
+       -Dgtk4=%{__true_false gtk4} \
+       %{!?with_systemd:-D_systemd=false} \
 
 %ninja_build -C build
 
@@ -127,6 +216,12 @@ rm -rf $RPM_BUILD_ROOT
 
 %ninja_install -C build
 
+%if %{with apidocs}
+# FIXME: where to package gi-docgen generated docs?
+install -d $RPM_BUILD_ROOT%{_gtkdocdir}
+%{__mv} $RPM_BUILD_ROOT%{_docdir}/vte-2.91* $RPM_BUILD_ROOT%{_gtkdocdir}
+%endif
+
 %find_lang %{name}-2.91
 
 %clean
@@ -135,18 +230,24 @@ rm -rf $RPM_BUILD_ROOT
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
 
+%post  gtk4 -p /sbin/ldconfig
+%postun        gtk4 -p /sbin/ldconfig
+
 %files -f vte-2.91.lang
 %defattr(644,root,root,755)
-%doc AUTHORS NEWS README.md
+%doc AUTHORS ChangeLog README.md
 %attr(755,root,root) %{_bindir}/vte-2.91
+# gtk-version neutral, move to common?
 %attr(755,root,root) %{_libexecdir}/vte-urlencode-cwd
 %attr(755,root,root) %{_libdir}/libvte-2.91.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libvte-2.91.so.0
 %{_libdir}/girepository-1.0/Vte-2.91.typelib
 %config(noreplace) %verify(not md5 mtime size) /etc/profile.d/vte.csh
 %config(noreplace) %verify(not md5 mtime size) /etc/profile.d/vte.sh
+%if %{with systemd}
 %dir %{systemduserunitdir}/vte-spawn-.scope.d
 %{systemduserunitdir}/vte-spawn-.scope.d/defaults.conf
+%endif
 
 %files devel
 %defattr(644,root,root,755)
@@ -155,11 +256,46 @@ rm -rf $RPM_BUILD_ROOT
 %{_pkgconfigdir}/vte-2.91.pc
 %{_datadir}/gir-1.0/Vte-2.91.gir
 
+%if %{with glade}
+%files glade
+%defattr(644,root,root,755)
+%{_datadir}/glade/catalogs/vte-2.91.xml
+%{_datadir}/glade/pixmaps/hicolor/*x*/actions/widget-vte-terminal.png
+%endif
+
 %files -n vala-vte
 %defattr(644,root,root,755)
 %{_datadir}/vala/vapi/vte-2.91.deps
 %{_datadir}/vala/vapi/vte-2.91.vapi
 
+%if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
 %{_gtkdocdir}/vte-2.91
+%endif
+
+%if %{with gtk4}
+%files gtk4
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/vte-2.91-gtk4
+%attr(755,root,root) %{_libdir}/libvte-2.91-gtk4.so.0
+%{_libdir}/girepository-1.0/Vte-3.91.typelib
+
+%files gtk4-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libvte-2.91-gtk4.so
+%{_includedir}/vte-2.91-gtk4
+%{_pkgconfigdir}/vte-2.91-gtk4.pc
+%{_datadir}/gir-1.0/Vte-3.91.gir
+
+%files -n vala-vte-gtk4
+%defattr(644,root,root,755)
+%{_datadir}/vala/vapi/vte-2.91-gtk4.deps
+%{_datadir}/vala/vapi/vte-2.91-gtk4.vapi
+
+%if %{with apidocs}
+%files gtk4-apidocs
+%defattr(644,root,root,755)
+%{_gtkdocdir}/vte-2.91-gtk4
+%endif
+%endif
This page took 0.037316 seconds and 4 git commands to generate.