xterm.spec revision f2e35a3a
1f2e35a3aSmrg# $XTermId: xterm.spec,v 1.141 2021/02/08 20:30:49 tom Exp $ 20bd37d32SmrgSummary: X terminal emulator (development version) 30bd37d32Smrg%global my_middle xterm 40bd37d32Smrg%global my_suffix -dev 50bd37d32Smrg%global fullname %{my_middle}%{my_suffix} 60bd37d32Smrg%global my_class XTermDev 70bd37d32SmrgName: %{fullname} 8f2e35a3aSmrgVersion: 366 9e39b573cSmrgRelease: 1 10492d43a5SmrgLicense: X11 110bd37d32SmrgGroup: User Interface/X 12e39b573cSmrgSource: xterm-%{version}.tgz 13f2e35a3aSmrgURL: ftp://ftp.invisible-island.net/xterm/ 14f2e35a3aSmrgProvides: x-terminal-emulator >= %{version} 15492d43a5Smrg 16e0a2b6dfSmrg# This part (the build-requires) would be useful if the various distributions 17e0a2b6dfSmrg# had provided stable package-naming, or virtual packages to cover transitions. 18e0a2b6dfSmrg# However, they have not done this in the past. 19e0a2b6dfSmrg%define use_x_manpage %(test "x$_use_x_manpage" = xyes && echo 1 || echo 0) 20e0a2b6dfSmrg%if "%{use_x_manpage}" 21e0a2b6dfSmrg 22e0a2b6dfSmrg%global is_mandriva %(test -f /etc/mandriva-release && echo %{use_x_manpage} || echo 0) 23e0a2b6dfSmrg%global is_redhat %(test -f /etc/redhat-release && echo %{use_x_manpage} || echo 0) 24e0a2b6dfSmrg%global is_suse %(test -f /etc/SuSE-release && echo %{use_x_manpage} || echo 0) 25e0a2b6dfSmrg 26e0a2b6dfSmrg%if %{is_mandriva} 27e0a2b6dfSmrgBuildRequires: x11-docs 28e0a2b6dfSmrg%else 29e0a2b6dfSmrg%if %{is_redhat} 30e0a2b6dfSmrgBuildRequires: xorg-x11-docs 31e0a2b6dfSmrg%else 32e0a2b6dfSmrg%if %{is_suse} 33e0a2b6dfSmrgBuildRequires: xorg-docs 34e0a2b6dfSmrg%endif 35e0a2b6dfSmrg%endif 36e0a2b6dfSmrg%endif 37e0a2b6dfSmrg 38e0a2b6dfSmrg%endif 39e0a2b6dfSmrg 40492d43a5Smrg%description 41492d43a5Smrgxterm is the standard terminal emulator for the X Window System. 42492d43a5SmrgIt provides DEC VT102 and Tektronix 4014 compatible terminals for 43492d43a5Smrgprograms that cannot use the window system directly. This version 44492d43a5Smrgimplements ISO/ANSI colors, Unicode, and most of the control sequences 45492d43a5Smrgused by DEC VT220 terminals. 46492d43a5Smrg 47492d43a5SmrgThis package provides four commands: 480bd37d32Smrg a) %{fullname}, which is the actual terminal emulator 490bd37d32Smrg b) u%{fullname}, which is a wrapper around %{fullname} 500bd37d32Smrg which sets %{fullname} to use UTF-8 encoding when 510bd37d32Smrg the user's locale supports this, 520bd37d32Smrg c) koi8r%{fullname}, a wrapper similar to u%{fullname} 530bd37d32Smrg for locales that use the KOI8-R character set, and 540bd37d32Smrg d) resize%{my_suffix}. 55492d43a5Smrg 56492d43a5SmrgA complete list of control sequences supported by the X terminal emulator 570bd37d32Smrgis provided in /usr/share/doc/%{fullname}. 58492d43a5Smrg 590bd37d32SmrgThe %{fullname} program uses bitmap images provided by the xbitmaps package. 60492d43a5Smrg 610bd37d32SmrgThose interested in using koi8r%{fullname} will likely want to install the 62492d43a5Smrgxfonts-cyrillic package as well. 63492d43a5Smrg 640bd37d32SmrgThis package is configured to use "%{fullname}" and "%{my_class}" 650bd37d32Smrgfor the program and its resource class, to avoid conflict with other packages. 66e39b573cSmrg 67492d43a5Smrg%prep 68492d43a5Smrg 69f2e35a3aSmrg%global target_appdata %{fullname}.appdata.xml 70492d43a5Smrg 710bd37d32Smrg%define desktop_utils %(if which desktop-file-install 2>&1 >/dev/null ; then echo 1 || echo 0 ; fi) 720bd37d32Smrg%define icon_theme %(test -d /usr/share/icons/hicolor && echo 1 || echo 0) 73e0a2b6dfSmrg%define apps_x11r6 %(test -d /usr/X11R6/lib/X11/app-defaults && echo 1 || echo 0) 74492d43a5Smrg%define apps_shared %(test -d /usr/share/X11/app-defaults && echo 1 || echo 0) 75492d43a5Smrg%define apps_syscnf %(test -d /etc/X11/app-defaults && echo 1 || echo 0) 76492d43a5Smrg 77e0a2b6dfSmrg%if %{apps_x11r6} 78e0a2b6dfSmrg%define _xresdir %{_prefix}/X11R6/lib/X11/app-defaults 79e0a2b6dfSmrg%else 80492d43a5Smrg%if %{apps_shared} 81492d43a5Smrg%define _xresdir %{_datadir}/X11/app-defaults 82492d43a5Smrg%else 83492d43a5Smrg%define _xresdir %{_sysconfdir}/X11/app-defaults 84492d43a5Smrg%endif 85e0a2b6dfSmrg%endif 86492d43a5Smrg 87492d43a5Smrg%define _iconsdir %{_datadir}/icons 88492d43a5Smrg%define _pixmapsdir %{_datadir}/pixmaps 890bd37d32Smrg%define my_docdir %{_datadir}/doc/%{fullname} 900bd37d32Smrg 910bd37d32Smrg# no need for debugging symbols... 920bd37d32Smrg%define debug_package %{nil} 93492d43a5Smrg 94e39b573cSmrg%setup -q -n xterm-%{version} 95492d43a5Smrg 96492d43a5Smrg%build 97492d43a5SmrgCPPFLAGS="-DMISC_EXP -DEXP_HTTP_HEADERS" \ 98492d43a5Smrg%configure \ 99f2e35a3aSmrg --target %{_target_platform} \ 100f2e35a3aSmrg --prefix=%{_prefix} \ 101f2e35a3aSmrg --bindir=%{_bindir} \ 102f2e35a3aSmrg --datadir=%{_datadir} \ 103f2e35a3aSmrg --mandir=%{_mandir} \ 104492d43a5Smrg%if "%{my_suffix}" != "" 105f2e35a3aSmrg --program-suffix=%{my_suffix} \ 106f2e35a3aSmrg --without-xterm-symlink \ 1070bd37d32Smrg%endif 1080bd37d32Smrg%if "%{icon_theme}" 109f2e35a3aSmrg --with-icon-symlink=%{fullname} \ 110f2e35a3aSmrg --with-icon-theme \ 111f2e35a3aSmrg --with-icondir=%{_iconsdir} \ 112492d43a5Smrg%endif 113f2e35a3aSmrg --with-app-class=%{my_class} \ 114f2e35a3aSmrg --disable-imake \ 115f2e35a3aSmrg --enable-dabbrev \ 116f2e35a3aSmrg --enable-dec-locator \ 117f2e35a3aSmrg --enable-double-buffer \ 118f2e35a3aSmrg --enable-exec-xterm \ 119f2e35a3aSmrg --enable-hp-fkeys \ 120f2e35a3aSmrg --enable-load-vt-fonts \ 121f2e35a3aSmrg --enable-logfile-exec \ 122f2e35a3aSmrg --enable-logging \ 123f2e35a3aSmrg --enable-mini-luit \ 124f2e35a3aSmrg --enable-regis-graphics \ 125f2e35a3aSmrg --enable-sco-fkeys \ 126f2e35a3aSmrg --enable-toolbar \ 127f2e35a3aSmrg --enable-xmc-glitch \ 128f2e35a3aSmrg --with-app-defaults=%{_xresdir} \ 129f2e35a3aSmrg --with-pixmapdir=%{_pixmapsdir} \ 130f2e35a3aSmrg --with-own-terminfo=%{_datadir}/terminfo \ 131f2e35a3aSmrg --with-terminal-type=xterm-new \ 132f2e35a3aSmrg --with-utempter \ 133f2e35a3aSmrg --with-icon-name=mini.xterm \ 134f2e35a3aSmrg --with-xpm 135492d43a5Smrgmake 136492d43a5Smrg 137492d43a5Smrgchmod u+w XTerm.ad 138492d43a5Smrgcat >>XTerm.ad <<EOF 139492d43a5Smrg*backarrowKeyIsErase: true 140492d43a5Smrg*ptyInitialErase: true 141492d43a5SmrgEOF 142492d43a5Smrgls -l *.ad 143492d43a5Smrg 144492d43a5Smrg%install 145492d43a5Smrgrm -rf $RPM_BUILD_ROOT 146492d43a5Smrg 147492d43a5Smrg# Usually do not use install-ti, since that will conflict with ncurses. 148492d43a5Smrgmake install-bin install-man install-app install-icon \ 149492d43a5Smrg%if "%{install_ti}" == "yes" 150f2e35a3aSmrg install-ti \ 151492d43a5Smrg%endif 152f2e35a3aSmrg DESTDIR=$RPM_BUILD_ROOT \ 153f2e35a3aSmrg TERMINFO=%{_datadir}/terminfo 154492d43a5Smrg 155f2e35a3aSmrg mkdir -p $RPM_BUILD_ROOT%{my_docdir} 156f2e35a3aSmrg cp \ 157f2e35a3aSmrg ctlseqs.txt \ 158f2e35a3aSmrg README.i18n \ 159f2e35a3aSmrg THANKS \ 160f2e35a3aSmrg xterm.log.html \ 161f2e35a3aSmrg $RPM_BUILD_ROOT%{my_docdir}/ 162492d43a5Smrg 163f2e35a3aSmrg cp -r vttests \ 164f2e35a3aSmrg $RPM_BUILD_ROOT%{my_docdir}/ 165492d43a5Smrg 166f2e35a3aSmrg # The scripts are readable, but not executable, to let find-requires 167f2e35a3aSmrg # know that they do not depend on Perl packages. 168f2e35a3aSmrg chmod 644 $RPM_BUILD_ROOT%{my_docdir}/vttests/*.pl 169492d43a5Smrg 1700bd37d32Smrg%if "%{desktop_utils}" 171492d43a5Smrgmake install-desktop \ 172f2e35a3aSmrg DESKTOP_FLAGS="--dir $RPM_BUILD_ROOT%{_datadir}/applications" 173492d43a5Smrg 174492d43a5Smrgtest -n "%{my_suffix}" && \ 175492d43a5Smrg( cd $RPM_BUILD_ROOT%{_datadir}/applications 176f2e35a3aSmrg for p in *.desktop 177f2e35a3aSmrg do 178f2e35a3aSmrg mv $p `basename $p .desktop`%{my_suffix}.desktop 179f2e35a3aSmrg done 180492d43a5Smrg) 181f2e35a3aSmrg 182f2e35a3aSmrgmkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata && \ 183f2e35a3aSmrginstall -m 644 xterm.appdata.xml $RPM_BUILD_ROOT%{_datadir}/appdata/%{target_appdata} && \ 184f2e35a3aSmrg( cd $RPM_BUILD_ROOT%{_datadir}/appdata 185f2e35a3aSmrg sed -i \ 186f2e35a3aSmrg -e 's/>xterm\.desktop</>%{fullname}.desktop</' \ 187f2e35a3aSmrg -e 's/>XTerm</>%{my_class}</' \ 188f2e35a3aSmrg %{target_appdata} 189f2e35a3aSmrg) 190f2e35a3aSmrgdiff -u xterm.appdata.xml $RPM_BUILD_ROOT%{_datadir}/appdata/%{target_appdata} && \ 191492d43a5Smrg%endif 192492d43a5Smrg 1930bd37d32Smrg%post 1940bd37d32Smrg%if "%{icon_theme}" 1950bd37d32Smrgtouch --no-create %{_iconsdir}/hicolor 1960bd37d32Smrgif [ -x %{_bindir}/gtk-update-icon-cache ]; then 1970bd37d32Smrg %{_bindir}/gtk-update-icon-cache %{_iconsdir}/hicolor || : 1980bd37d32Smrgfi 1990bd37d32Smrg%endif 200e0a2b6dfSmrg# find-requires does not care about at this point 201e0a2b6dfSmrgchmod +x %{my_docdir}/vttests/*.* 2020bd37d32Smrg 2030bd37d32Smrg%postun 2040bd37d32Smrg%if "%{icon_theme}" 2050bd37d32Smrgtouch --no-create %{_iconsdir}/hicolor 2060bd37d32Smrgif [ -x %{_bindir}/gtk-update-icon-cache ]; then 2070bd37d32Smrg %{_bindir}/gtk-update-icon-cache %{_iconsdir}/hicolor || : 2080bd37d32Smrgfi 2090bd37d32Smrg%endif 2100bd37d32Smrg 211492d43a5Smrg%clean 212f2e35a3aSmrgif rm -rf $RPM_BUILD_ROOT; then 213f2e35a3aSmrg echo OK 214f2e35a3aSmrgelse 215f2e35a3aSmrg find $RPM_BUILD_ROOT -type f | grep -F -v /.nfs && exit 1 216f2e35a3aSmrgfi 217f2e35a3aSmrgexit 0 218492d43a5Smrg 219492d43a5Smrg%files 220492d43a5Smrg%defattr(-,root,root,-) 2210bd37d32Smrg%{_bindir}/koi8r%{fullname} 2220bd37d32Smrg%{_bindir}/%{fullname} 2230bd37d32Smrg%{_bindir}/u%{fullname} 224492d43a5Smrg%{_bindir}/resize%{my_suffix} 225492d43a5Smrg%{_mandir}/*/* 226492d43a5Smrg%{my_docdir}/* 227492d43a5Smrg%{_xresdir}/*XTerm* 228492d43a5Smrg 229492d43a5Smrg%if "%{install_ti}" == "yes" 230492d43a5Smrg%{_datadir}/terminfo/* 231492d43a5Smrg%endif 232492d43a5Smrg 2330bd37d32Smrg%if "%{desktop_utils}" 234f2e35a3aSmrg%config(missingok) %{_datadir}/appdata/%{target_appdata} 235f2e35a3aSmrg%config(missingok) %{_datadir}/applications/%{fullname}.desktop 236f2e35a3aSmrg%config(missingok) %{_datadir}/applications/u%{fullname}.desktop 237492d43a5Smrg%endif 238492d43a5Smrg 2390bd37d32Smrg%if "%{icon_theme}" 240f2e35a3aSmrg%{_iconsdir}/hicolor/*.png 241f2e35a3aSmrg%{_iconsdir}/hicolor/*.svg 242f2e35a3aSmrg%{_iconsdir}/hicolor/48x48/apps/*.png 243f2e35a3aSmrg%{_iconsdir}/hicolor/scalable/apps/*.svg 2440bd37d32Smrg%endif 245f2e35a3aSmrg%{_pixmapsdir}/*.xpm 2460bd37d32Smrg 247492d43a5Smrg%changelog 248492d43a5Smrg 249f2e35a3aSmrg* Sat Jul 25 2020 Thomas E. Dickey 250f2e35a3aSmrg- sixels are enabled by default 251f2e35a3aSmrg 252f2e35a3aSmrg* Sun Mar 08 2020 Thomas E. Dickey 253f2e35a3aSmrg- remove "--vendor" option from desktop-file-install 254f2e35a3aSmrg 255f2e35a3aSmrg* Sun Nov 17 2019 Thomas E. Dickey 256f2e35a3aSmrg- install appdata.xml file 257f2e35a3aSmrg 258f2e35a3aSmrg* Wed May 02 2018 Thomas E. Dickey 259f2e35a3aSmrg- install all icons 260f2e35a3aSmrg 2612e4f8982Smrg* Fri Jan 29 2016 Thomas E. Dickey 2622e4f8982Smrg- use --enable-screen-dumps 2632e4f8982Smrg 2640bd37d32Smrg* Mon May 27 2013 Thomas E. Dickey 2650bd37d32Smrg- use --with-icon-symlink 2660bd37d32Smrg 2670bd37d32Smrg* Mon Oct 08 2012 Thomas E. Dickey 2680bd37d32Smrg- added to pixmapsdir 2690bd37d32Smrg 2700bd37d32Smrg* Fri Jun 15 2012 Thomas E. Dickey 2710bd37d32Smrg- modify to support icon theme 2720bd37d32Smrg 273492d43a5Smrg* Fri Oct 22 2010 Thomas E. Dickey 274492d43a5Smrg- initial version. 275