From 0e8b6ef23461d0cae0ba5af77e227c57e72a52a7 Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Thu, 3 Nov 2016 21:24:27 +0100 Subject: [PATCH 1/4] tcsh: compile with -fno-optimize-strlen The gcc compiler optimization to replace a call of malloc followed by a call of memset with a calloc call conflicts with tcshs own implementation of calloc, which calls malloc and memset. This bug is reported to and acknowledged by the maintainer ( http://mx.gw.com/pipermail/tcsh-bugs/2015-May/000930.html ) and should be fixed in the next tcsh release. --- tcsh.be0 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tcsh.be0 b/tcsh.be0 index 369d9ca71..286ba34bc 100755 --- a/tcsh.be0 +++ b/tcsh.be0 @@ -53,9 +53,9 @@ SRCURL[0]="http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/tcsh-${PKGVER # bee_patch "${@}" #} -#mee_configure() { -# bee_configure -#} +mee_configure() { + CFLAGS=-fno-optimize-strlen bee_configure +} #mee_build() { # bee_build From 9eb9fa2f2e83c62fc26e52b141218caf753bb3a9 Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Thu, 3 Nov 2016 21:45:06 +0100 Subject: [PATCH 2/4] tcsh: install csh link into $BINDIR The build script incorrectly installed the csh symlink into $BEE_BINDIR, which is the bin directory of the "bee" command instead of into $BINDIR which is the bin directory of the package. Usually this is the same. --- tcsh.be0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tcsh.be0 b/tcsh.be0 index 286ba34bc..ebc437e2e 100755 --- a/tcsh.be0 +++ b/tcsh.be0 @@ -63,7 +63,7 @@ mee_configure() { mee_install() { bee_install - ( cd "${D}"/"${BEE_BINDIR}"; ln -sv tcsh csh ) + ( cd "${D}"/"${BINDIR}"; ln -sv tcsh csh ) ( cd "${D}"/"${MANDIR}/man1"; ln -sv tcsh.1 csh.1 ) } ## by default this may be 'make install DESTDIR="${D}"' From 83415acf663279c5774e14196efe5b759e7c1174 Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Thu, 3 Nov 2016 22:02:26 +0100 Subject: [PATCH 3/4] tcsh: use straightforward symlink commands This avoids a fork an a chdir. --- tcsh.be0 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tcsh.be0 b/tcsh.be0 index ebc437e2e..0629b30fd 100755 --- a/tcsh.be0 +++ b/tcsh.be0 @@ -63,8 +63,8 @@ mee_configure() { mee_install() { bee_install - ( cd "${D}"/"${BINDIR}"; ln -sv tcsh csh ) - ( cd "${D}"/"${MANDIR}/man1"; ln -sv tcsh.1 csh.1 ) + ln -s tcsh "$D/$BINDIR/csh" + ln -s csh.1 "$D/$MANDIR/man1/tcsh" } ## by default this may be 'make install DESTDIR="${D}"' From fb0782076eb2844f8dfd8d05c54134c570c5d1ae Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Thu, 3 Nov 2016 21:53:25 +0100 Subject: [PATCH 4/4] tcsh: update revision from 6.19.00-0 to 6.19.00-1 Due to an incompatible compiler optimization, 6.19.00-0 is unusable. This revision contains a fix ( -fno-optimize-strlen ). See related commit. --- tcsh.be0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tcsh.be0 b/tcsh.be0 index 0629b30fd..ea8a60bcf 100755 --- a/tcsh.be0 +++ b/tcsh.be0 @@ -1,6 +1,6 @@ #!/usr/bin/env beesh -# BEE_VERSION tcsh-6.19.00-0 +# BEE_VERSION tcsh-6.19.00-1 ## this file was created by bee init and should be executed to build a ## bee-package. (Additional hints are located at the end of this file.)