%define _bindir /bin Summary: An enhanced version of csh, the C shell. Name: tcsh Version: 6.12 Release: 9 License: distributable Group: System Environment/Shells Source: ftp://ftp.astron.com/pub/tcsh/tcsh-%{version}.00.tar.gz Patch0: tcsh-6.10.00-utmp.patch Patch1: tcsh-6.09.00-termios.patch Patch2: tcsh-6.08.00-security.patch Patch3: tcsh-6.08.00-pathmax.patch Patch4: tcsh-6.09.00-strcoll.patch Patch5: tcsh-6.09.00-locale.patch Patch6: tcsh-6.10.00-glibc_compat.patch Patch7: tcsh-6.10.00-dspmbyte.patch Patch8: tcsh-6.11.00-termcap.patch Patch9: tcsh-6.12.00-setpgrp.patch Provides: csh = %{version} Prereq: fileutils, grep URL: http://www.tcsh.org/ Buildroot: %{_tmppath}/%{name}-%{version}-root BuildPrereq: groff, libtermcap-devel %description Tcsh is an enhanced but completely compatible version of csh, the C shell. Tcsh is a command language interpreter which can be used both as an interactive login shell and as a shell script command processor. Tcsh includes a command line editor, programmable word completion, spelling correction, a history mechanism, job control and a C language like syntax. %prep %setup -q -n %{name}-%{version}.00 %patch0 -p1 -b .utmp %patch1 -p1 -b .termios # upstreamed in 6.10.00 #%patch2 -p1 -b .security # XXX not applied #%patch3 -p1 -b .pathmax # upstreamed in 6.10.00 #%patch4 -p1 -b .strcoll %patch5 -p1 -b .locale %patch6 -p1 -b .glibc_compat %patch7 -p1 -b .mbyte %patch8 -p1 -b .termcap %patch9 -p1 -b .setpgrp nroff -me eight-bit.me > eight-bit.txt autoreconf cat > catalogs << _EOF de ISO-8859-1 german el ISO-8859-7 greek en ISO-8859-1 C es ISO-8859-1 spanish et ISO-8859-1 et fi ISO-8859-1 finnish fr ISO-8859-1 french it ISO-8859-1 italian ja eucJP ja pl ISO-8859-2 pl ru ISO-8859-5 russian uk ISO-8859-1 ukrainian _EOF cat catalogs | while read lang charset language ; do if ! grep -q '^$ codeset=' nls/$language/set1 ; then echo '$ codeset='$charset > nls/$language/set1.codeset cat nls/$language/set1 >> nls/$language/set1.codeset cat nls/$language/set1.codeset > nls/$language/set1 rm nls/$language/set1.codeset fi done %build cp /usr/share/libtool/config.{sub,guess} . %ifarch x86_64 # Workaround for problem with gcc-3.2.1-1 as of 2002-12-05 -ECL export CFLAGS="-O1 -fPIC" %endif %configure --without-hesiod make all %{__perl} tcsh.man2html make -C nls catalogs %install [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf ${RPM_BUILD_ROOT} mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1 ${RPM_BUILD_ROOT}%{_bindir} install -m 755 tcsh ${RPM_BUILD_ROOT}%{_bindir}/tcsh install -m 644 tcsh.man ${RPM_BUILD_ROOT}%{_mandir}/man1/tcsh.1 ln -sf tcsh ${RPM_BUILD_ROOT}%{_bindir}/csh ln -sf tcsh.1 ${RPM_BUILD_ROOT}%{_mandir}/man1/csh.1 cat catalogs | while read lang charset language ; do dest=${RPM_BUILD_ROOT}%{_datadir}/locale/$lang/LC_MESSAGES if test -f tcsh.$language.cat ; then mkdir -p $dest install -m644 tcsh.$language.cat $dest/tcsh fi done %clean [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf ${RPM_BUILD_ROOT} %post if [ ! -f /etc/shells ]; then echo "%{_bindir}/tcsh" >> /etc/shells echo "%{_bindir}/csh" >> /etc/shells else grep -q '^%{_bindir}/tcsh$' /etc/shells || \ echo "%{_bindir}/tcsh" >> /etc/shells grep -q '^%{_bindir}/csh$' /etc/shells || \ echo "%{_bindir}/csh" >> /etc/shells fi %postun if [ ! -x %{_bindir}/tcsh ]; then grep -v '^%{_bindir}/tcsh$' /etc/shells | \ grep -v '^%{_bindir}/csh$' > /etc/shells.rpm cat /etc/shells.rpm > /etc/shells && rm /etc/shells.rpm fi %files %defattr(-,root,root) %doc FAQ Fixes NewThings complete.tcsh eight-bit.txt tcsh.html %{_bindir}/tcsh %{_bindir}/csh %{_mandir}/*/* %lang(de) %{_datadir}/locale/de/LC_MESSAGES/tcsh* %lang(el) %{_datadir}/locale/el/LC_MESSAGES/tcsh* %lang(en) %{_datadir}/locale/en/LC_MESSAGES/tcsh* %lang(es) %{_datadir}/locale/es/LC_MESSAGES/tcsh* %lang(et) %{_datadir}/locale/et/LC_MESSAGES/tcsh* %lang(fi) %{_datadir}/locale/fi/LC_MESSAGES/tcsh* %lang(fr) %{_datadir}/locale/fr/LC_MESSAGES/tcsh* %lang(it) %{_datadir}/locale/it/LC_MESSAGES/tcsh* %lang(ja) %{_datadir}/locale/ja/LC_MESSAGES/tcsh* %lang(pl) %{_datadir}/locale/pl/LC_MESSAGES/tcsh* %lang(ru) %{_datadir}/locale/ru/LC_MESSAGES/tcsh* %lang(uk) %{_datadir}/locale/uk/LC_MESSAGES/tcsh* %changelog * Tue Jun 15 2004 Elliot Lee - rebuilt * Fri Feb 13 2004 Elliot Lee - rebuilt * Tue Feb 10 2004 Nalin Dahyabhai 6.12-7 - remove declaration of setpgrp() which conflicts with libc's (#115185) * Fri Nov 21 2003 Nalin Dahyabhai 6.12-6 - add missing buildprereqs on groff, libtermcap-devel (#110599) * Tue Jul 8 2003 Nalin Dahyabhai - update URL * Wed Jun 04 2003 Elliot Lee - rebuilt * Wed Jan 22 2003 Tim Powers - rebuilt * Thu Dec 05 2002 Elliot Lee 6.12-3 - Merge changes from 8.0-hammer * Tue Nov 19 2002 Nalin Dahyabhai 6.12-3 - rebuild * Thu Aug 08 2002 Phil Knirsch 6.12-2 - Added csh.1 symlink to manpages. * Tue Jun 4 2002 Nalin Dahyabhai 6.11-1 - update to 6.11 * Thu May 23 2002 Tim Powers - automated rebuild * Thu Jan 31 2002 Bill Nottingham - rebuild in new env * Sun Jun 24 2001 Elliot Lee - Bump release + rebuild. * Wed Mar 28 2001 Akira TAGOH 6.10-5 - Fixed check locale. * Tue Feb 6 2001 Adrian Havill - use instead of for pickier lib (#25935) - allow arguments for login shells (#19926) * Thu Nov 30 2000 Nalin Dahyabhai - update to 6.10.00 to fix here-script vulnerability * Wed Sep 18 2000 Adrian Havill - fix catalog locale dirname for Japanese * Thu Jun 15 2000 Jeff Johnson - FHS packaging. - add locale support (#10345). * Tue Mar 7 2000 Jeff Johnson - rebuild for sparc baud rates > 38400. * Mon Jan 31 2000 Cristian Gafton - rebuild to fix dependencies * Thu Jan 27 2000 Jeff Johnson - append entries to spanking new /etc/shells. * Mon Jan 10 2000 Jeff Johnson - update to 6.09. - fix strcoll oddness (#6000, #6244, #6398). * Sat Sep 25 1999 Michael K. Johnson - fix $shell by using --bindir * Sun Mar 21 1999 Cristian Gafton - auto rebuild in the new build environment (release 5) * Wed Feb 24 1999 Cristian Gafton - patch for using PATH_MAX instead of some silly internal #defines for variables that handle filenames. * Fri Nov 6 1998 Jeff Johnson - update to 6.08.00. * Fri Oct 02 1998 Cristian Gafton - upgraded to 6.07.09 from the freebsd - security fix * Wed Aug 5 1998 Jeff Johnson - use -ltermcap so that /bin/tcsh can be used in single user mode w/o /usr. - update url's * Mon Apr 27 1998 Prospector System - translations modified for de, fr, tr * Thu Oct 21 1997 Cristian Gafton - updated to 6.07; added BuildRoot - cleaned up the spec file; fixed source url * Wed Sep 03 1997 Erik Troan - added termios hacks for new glibc - added /bin/csh to file list * Fri Jun 13 1997 Erik Troan - built against glibc * Fri Feb 07 1997 Erik Troan - Provides csh, adds and removes /bin/csh from /etc/shells if csh package isn't installed.