Subject: lib/14813: worm(6) no longer builds w/ new libcurses
To: None <gnats-bugs@gnats.netbsd.org>
From: None <thorpej@shagadelic.org>
List: netbsd-bugs
Date: 12/02/2001 14:16:20
>Number:         14813
>Category:       lib
>Synopsis:       worm(6) no longer builds w/ new libcurses
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    lib-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Dec 02 14:17:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Jason R. Thorpe
>Release:        NetBSD 1.5Y
>Organization:
Wasabi Systems, Inc.
>Environment:
	Cross-build of NetBSD/evbarm -current from NetBSD/i386 host.

>Description:
	worm(6) fails to build with the new libcurses:

worm.o: In function `main':
worm.o(.text+0x29c): undefined reference to `__baset'
collect2: ld returned 1 exit status
*** Error code 1

	worm(6) uses the old baudrate() interface to determine the
	speed of the TTY.

	The new libcurses still provides the baudrate() interface,
	but the mechanism used to implement it no longer exists
	inside libcurses.

	This same problem will manifest itself as a failure to
	run worm(6) when libcurses is updated on the system; an
	unresolved symbol error will be reported by the dynamic
	linker.

>How-To-Repeat:
	Attempt to build src/games/worm in a -current source stree, or
	attempt to run /usr/games/worm on a system on which libcurses
	has been updated.

>Fix:
	One of two things needs to happen:

		(1) The major number of libcurses needs to be bumped,
		    and a new baudrate() and ospeed need to be provided
		    that works with the new curses internals.  (Major
		    bump is because an exported interface was removed.)

		(2) __baset needs to be put back into libcurses.

>Release-Note:
>Audit-Trail:
>Unformatted: