Date: Sat, 11 Jan 2003 15:45:20 -0800 (PST) From: Peter Wemm <peter@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: ports/shells/zsh Makefile ports/shells/zsh/files patch-Src::utils.c Message-ID: <200301112345.h0BNjKaX057880@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
peter 2003/01/11 15:45:20 PST
Modified files:
shells/zsh Makefile
Added files:
shells/zsh/files patch-Src::utils.c
Log:
Make zsh not segfault on ia64 due to a generic misconfiguration that
just happens to be fatal there, and a coding botch. The first problem is
that it assumes a termcap interface (which is an emulation on freebsd),
and provides its own terminfo wrappers around termcap.. so that's two
avoidable translation layers... termcap file -> terminfo (libncurses) ->
termcap API emulation (libncurses) -> terminfo (zsh emlulation). zsh
forgot to prototype the tiget* functions (which return pointers) so we
have an integer (implicit declaration) being cast to a pointer which
is fatal. The second problem is that zsh tries to use _mktemp() to get
around the __warn_references in our C library, but also neglects a
prototype there and has the same fatal int/pointer problem.
It is likely all the zsh* ports need these fixes. A test compile on
pluto1.freebsd.org will highlight the problem.
I do not know why the packaging fails for ia64. termcap.so and
terminfo.so are not being built for some reason, this change doesn't
solve that problem.
Revision Changes Path
1.57 +1 -1 ports/shells/zsh/Makefile
1.1 +8 -0 ports/shells/zsh/files/patch-Src::utils.c (new)
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301112345.h0BNjKaX057880>
