From owner-freebsd-ports-bugs@FreeBSD.ORG Sun Jun 12 19:40:12 2005 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8CD1816A41C for ; Sun, 12 Jun 2005 19:40:12 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 41D6743D55 for ; Sun, 12 Jun 2005 19:40:12 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.3/8.13.3) with ESMTP id j5CJeC5J095442 for ; Sun, 12 Jun 2005 19:40:12 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.3/8.13.1/Submit) id j5CJeCAb095441; Sun, 12 Jun 2005 19:40:12 GMT (envelope-from gnats) Resent-Date: Sun, 12 Jun 2005 19:40:12 GMT Resent-Message-Id: <200506121940.j5CJeCAb095441@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Björn König Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 681D716A41C; Sun, 12 Jun 2005 19:33:22 +0000 (GMT) (envelope-from bkoenig@cs.tu-berlin.de) Received: from mail.efacilitas.de (efacilitas.de [213.133.110.227]) by mx1.FreeBSD.org (Postfix) with ESMTP id E78A243D1D; Sun, 12 Jun 2005 19:33:21 +0000 (GMT) (envelope-from bkoenig@cs.tu-berlin.de) Received: from hoppel.local (port-212-202-39-126.dynamic.qsc.de [212.202.39.126]) by mail.efacilitas.de (Postfix) with SMTP id 1D4B8123939; Sun, 12 Jun 2005 21:31:47 +0200 (CEST) Received: by hoppel.local (sSMTP sendmail emulation); Sun, 12 Jun 2005 21:31:50 +0200 Message-Id: <20050612193147.1D4B8123939@mail.efacilitas.de> Date: Sun, 12 Jun 2005 21:31:50 +0200 From: "Björn König" To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: krion@FreeBSD.org Subject: ports/82171: Port devel/sdl12: libSDL-1.1 is broken in a world with NO_USB X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Björn König List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jun 2005 19:40:12 -0000 >Number: 82171 >Category: ports >Synopsis: Port devel/sdl12: libSDL-1.1 is broken in a world with NO_USB >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jun 12 19:40:11 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Björn König >Release: FreeBSD 5.4-RELEASE-p1 i386 >Organization: >Environment: >Description: If you have a world which was built with NO_USB=yes then libusbhid.so doesn't exist. The current Makefile of the port devel/sdl12 just assumes that the old libusb.so is present and trusts in the correctness of the configure script; but it'll screw up and won't specify any joystick subsystem in this case; not even the dummy. This breaks libSDL-1.1 and causes that all ports that depend on this library won't compile. You'll get the following errors if you try to link with libSDL-1.1: libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickUpdate' libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickOpen' libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickQuit' libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickName' libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickInit' libSDL-1.1.so: undefined reference to `SDL_SYS_JoystickClose' >How-To-Repeat: Rename usbhid.h to pretend that we live in a world with NO_USB. cd /usr/include mv usbhid.h usbhid.h.bak Build and install devel/sdl12. cd /usr/ports/devel/sdl12i make install clean Try to build a port that depends on devel/sdl12. cd /usr/ports/x11/electricsheep make build This will fail with the error messages that were mentioned in the description section of this PR. >Fix: The devel/sdl12 port should make a more accurate check whether USB related libraries are available. If they aren't then disable support for joysticks. Another solution would be to use the dummy joystick subsystem, but I was too lazy to create a suitable patch right now. I'll do this if desired. --- Makefile.diff begins here --- --- Makefile.orig Sun Jun 12 19:51:09 2005 +++ Makefile Sun Jun 12 19:52:01 2005 @@ -71,8 +71,10 @@ .if exists(/usr/include/libusbhid.h) CONFIGURE_ENV+= USB_LIBS=-lusbhid CFLAGS+= -DHAVE_LIBUSBHID_H -.else +.elif exists(/usr/include/libusb.h) CONFIGURE_ENV+= USB_LIBS=-lusb +.else +CONFIGURE_ARGS+=--enable-joystick=no .endif MAN3!= ${CAT} ${FILESDIR}/man3 --- Makefile.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: