xterm/xterm.spec
Marcus Meissner 6057e3b2d6 - Patch #353 - 2020/02/01
- amend change in patch #352 for button-events to fix a case where some followup events were not processed soon enough (report/patch by Jimmy Aguilar Mena).
  - handle MappingNotify X event, to improve recovery when switching keyboard configurations using xkbcomp (prompted by discussion with Frank Mosch, Debian #661295). There is more work needed here, possibly in the X libraries.
  - improve discussion of mouse-mode in ctlseqs.ms (suggested by Igor van den Hoven).
  - further improve checks for Xft max-advance-width to take into account fonts which use two cells for ambiguous width characters. Also improve the time used for these checks (reports by Yuri Pankov, Frank Mosch).
  - fix a few spelling errors reported by codespell (report by Jens Schleusener).
  - modify run-tic.sh to prefer development version of ncurses since changes to terminfo file in patch #345 rely upon bug-fixes in ncurses (prompted by discussion with Will Senn).
- Patch #352 - 2020/01/16
  - adjust fontsize data to handle a minor inconsistency from recent Xft versions (Debian #880407, adapted from patch by Vincent Lefevre).
  - add a table to the manual page description of forceBoxChars to alert the reader to the special characters aside from “line-drawing” which are drawn directly when this resource is set (Debian #931305).
  - improve checkXft logic which attempts to detect fonts whose max-advance-width is inconsistent with the actual glyph widths. For some fonts, it is necessary to check additional characters (report/analysis by Jan Engelhardt).
  - improve configure-checks for X headers and libraries on recent MacOS, which has moved those files under /usr/X11.
  - improve portability of iconify/deiconify feature by taking into account some window managers which manipulate the EWMH _NET_WM_STATE property, adding/removing _NET_WM_STATE_HIDDEN rather than actually minimizing the window (prompted by discussion with Jörg Breitbart).
  - improve workaround from patch #287 for the -iconic option when configured with toolbar by postponing the extra request for minimizing the window to the end of menu-initialization.
  - modify xevents special-case for mouse-events to include button-events so that the meta key by itself can generate button-events (report/analysis by Mattias Engdegård).
  - amend SGR-stack change from patch #348 to not associate bold attribute with background color (report by Nicholas Marriott).
  - fix copy/paste error in manual page (patch by Larry Hynes).
  - add definitions in xterm_io.h so that GNU/Hurd will use posix_openpty (patch by Samuel Thibault).
  - build-fix in debug-tracing, for esctest.
  - updated autoconf macros
  - update config.guess
- Patch #351 - 2019/11/17
  - correct logic in property_to_string for deciding when to fallback from UTF-8 decoding to ISO-8859-1 decoding, broken in xterm #350 (FreeBSD #241961).
  - add -report-icons to help-message.
  - improved autoconf macros:
    -   CF_ADD_LIBS: the change to filter out duplicates caused this to append rather than prepend. revise to fix that.
    -   CF_GCC_VERSION and CF_GCC_WARNINGS: move checks to distinguish icc/clang from gcc from the macro which handles the --enable-warnings option, to make this work without-warnings for the inline-checks.
  - update config.guess, config.sub
  - correct status in XTGETXRES replies when the resource was not found.
  - fix some gcc, cppcheck, clang and coverity warnings.

OBS-URL: https://build.opensuse.org/package/show/X11:terminals/xterm?expand=0&rev=182
2020-03-26 12:24:55 +00:00

188 lines
5.2 KiB
RPMSpec

#
# spec file for package xterm
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define splitbin 0%{?suse_version} >= 1300
Name: xterm
Version: 353
Release: 0
Summary: The basic X terminal program
License: MIT
Group: System/X11/Utilities
URL: http://invisible-island.net/xterm/
Source: ftp://ftp.invisible-island.net/xterm/%{name}-%{version}.tgz
Source1: ftp://ftp.invisible-island.net/xterm/%{name}-%{version}.tgz.asc
Source2: luitx
Source3: Backarrow2Delete
Source4: Backarrow2BackSpace
Source5: README.SUSE
Source6: terminal.png
Source8: 20x20ja.bdf.bz2
Source9: 20x20ko.bdf.bz2
Source11: xterm.keyring
# Snoop for the escape sequence assignment of the keypad
Source20: snooper.tar.bz2
Patch1: xterm-settings.patch
Patch2: xterm-sigwinch.patch
Patch3: xterm-double_width_fonts.patch
Patch4: xterm-desktop_file_icon.patch
Patch5: xterm-forbid_window_and_font_ops.patch
Patch6: xterm-enable_libtinfo.patch
Patch7: xterm-allow_iso-utf_fonts_in_menu.patch
Patch8: xterm-decomposed_bitmaps.patch
Patch9: xterm-desktop-item-in-gnome-utilities-appfolder.patch
Patch10: xterm-better-fonts.patch
BuildRequires: groff
BuildRequires: ncurses-devel
BuildRequires: pkgconfig
BuildRequires: update-desktop-files
BuildRequires: pkgconfig(freetype2)
Provides: XFree86:%{_prefix}/X11R6/bin/xterm
Provides: xorg-x11:%{_prefix}/X11R6/bin/xterm
%if %{splitbin}
Requires: %{name}-bin
%endif
%if 0%{?suse_version} > 1220
BuildRequires: fontpackages-devel
%endif
BuildRequires: bdftopcf
BuildRequires: utempter-devel
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(x11-xcb)
BuildRequires: pkgconfig(xaw7)
BuildRequires: pkgconfig(xft)
Requires: luit
%if 0%{?suse_version} > 1220
#reconfigure_fonts_prereq
%endif
%description
%if %{splitbin}
This package contains the basic X.Org terminal program desktop launcher.
%package bin
Summary: The basic X terminal program
Group: System/X11/Utilities
%description bin
%endif
This package contains the basic X.Org terminal program.
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
cp -t . %{SOURCE8} %{SOURCE9}
bunzip2 %{basename:%{SOURCE8}} %{basename:%{SOURCE9}}
%build
%define xappdefs %{_datadir}/X11/app-defaults
%define xfontsd %{_datadir}/fonts
%define xterminfo %{_libexecdir}/X11%{_sysconfdir}
%configure \
--enable-256-color \
--enable-dec-locator \
--enable-hp-fkeys \
--enable-luit \
--enable-mini-luit \
--enable-sco-fkeys \
--enable-wide-chars \
--with-utempter \
--with-tty-group=tty \
--with-app-defaults=%{xappdefs} \
--enable-backarrow-is-erase \
--enable-sixel-graphics \
#ensure we do not lose FreeType support (boo#911683)
grep "#define XRENDERFONT 1" xtermcfg.h
make %{?_smp_mflags}
if ! which bdftopcf &> /dev/null; then exit 1; fi
for i in *.bdf
do
bdftopcf "$i" | gzip -n -9 >"${i%.bdf}.pcf.gz"
done
%install
%make_install
mkdir -p %{buildroot}%{xterminfo}
install -m 644 terminfo %{buildroot}%{xterminfo}/xterm.terminfo
install -m 644 termcap %{buildroot}%{xterminfo}/xterm.termcap
install -m 755 $RPM_SOURCE_DIR/luitx %{buildroot}%{_bindir}
install -m 755 $RPM_SOURCE_DIR/Backarrow2Delete %{buildroot}%{_bindir}
install -m 755 $RPM_SOURCE_DIR/Backarrow2BackSpace %{buildroot}%{_bindir}
install -m 644 $RPM_SOURCE_DIR/README.SUSE .
mkdir -p %{buildroot}%{_datadir}/pixmaps
install -m 644 $RPM_SOURCE_DIR/terminal.png \
%{buildroot}%{_datadir}/pixmaps
mkdir -p %{buildroot}%{xfontsd}/misc/
install -m 644 *.pcf.gz %{buildroot}%{xfontsd}/misc/
%suse_update_desktop_file -i xterm TerminalEmulator
%if 0%{?suse_version} > 1220
%reconfigure_fonts_scriptlets
%endif
%files
%{_datadir}/applications/xterm.desktop
%{_datadir}/pixmaps/*
%if %{splitbin}
%files bin
%endif
%doc README README.i18n README.SUSE
%{_bindir}/luitx
%attr(755,root,root) %{_bindir}/xterm
%{_bindir}/resize
%{_bindir}/uxterm
%{_bindir}/koi8rxterm
%{_bindir}/Backarrow2Delete
%{_bindir}/Backarrow2BackSpace
%{_mandir}/man1/xterm.1.gz
%{_mandir}/man1/resize.1.gz
%{_mandir}/man1/koi8rxterm.1.gz
%{_mandir}/man1/uxterm.1.gz
%dir %{xterminfo}
%{xterminfo}/xterm.termcap
%{xterminfo}/xterm.terminfo
%dir %{xfontsd}/misc
%{xfontsd}/misc/20x20ja.pcf.gz
%{xfontsd}/misc/20x20ko.pcf.gz
%dir %{xappdefs}
%{xappdefs}/KOI8RXTerm
%{xappdefs}/KOI8RXTerm-color
%{xappdefs}/UXTerm
%{xappdefs}/UXTerm-color
%{xappdefs}/XTerm
%{xappdefs}/XTerm-color
%changelog