From owner-cvs-ports@FreeBSD.ORG Mon Aug 28 06:29:06 2006 Return-Path: X-Original-To: cvs-ports@freebsd.org Delivered-To: cvs-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 93B2F16A4DE; Mon, 28 Aug 2006 06:29:06 +0000 (UTC) (envelope-from schilling@fokus.fraunhofer.de) Received: from mailhub.fokus.fraunhofer.de (mailhub.fokus.fraunhofer.de [193.174.154.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8B2043D45; Mon, 28 Aug 2006 06:29:04 +0000 (GMT) (envelope-from schilling@fokus.fraunhofer.de) Received: from burner.fokus.fraunhofer.de (burner [10.147.65.166]) by mailhub.fokus.fraunhofer.de (8.11.6p2/8.11.6) with ESMTP id k7S6SFF25643; Mon, 28 Aug 2006 08:28:15 +0200 (MEST) Received: (from jes@localhost) by burner.fokus.fraunhofer.de (8.12.9+Sun/8.12.9/Submit) id k7S6RBh1019446; Mon, 28 Aug 2006 08:27:11 +0200 (CEST) From: Joerg Schilling Message-Id: <200608280627.k7S6RBh1019446@burner.fokus.fraunhofer.de> Date: Mon, 28 Aug 2006 08:27:10 +0200 To: cvs-ports@freebsd.org, marius@freebsd.org User-Agent: nail 11.22 3/20/05 MIME-Version: 1.0 Content-Type: text/plain; charset=ISO8859-1 Content-Transfer-Encoding: 8bit Cc: Subject: Re: cvs commit: ports/sysutils/cdrdao/files X-BeenThere: cvs-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Aug 2006 06:29:06 -0000 >Fix build on 7.0-CURRENT sparc64 by ignoring the result of executing >avoffset. What happens is that on sparc64 when avoffset is compiled >with optimizations, it dumps core due to a SIGILL instead of failing >gracefully. If this happens during the build of a Schily tool like >cdrtools etc, it doesn't cause any further problems as all build >errors are ignored in the Schily build system. When built as part of >cdrdao, build errors in the Schily libs are reported upwards though, >albeit with an illegal exit status of -1, which was ignored until a >change in sh(1) earlier this year. I am not shure about the background of this patch, but it seems that you have a major missconception of the Schily Makefile system..... 1) The Schily Makefile system does not ignore the exist status except when you are using a broken make program (e.g. smake-1.2a23 that calls "sh -c command...." instead of "sh -ce command....") or a shell that incorrectly handles the -e flag. It seems that there sre still peple who do not understand the POSIX shell rules correctly. 2) If avoffset dumps core, you found a serious problem that needs to be fixed. The expected error situations for avoffset (when stack scanning is not possible on a specific platform) is to receive a SIGBUS or a SIGDEV. There is a handler that catches these signals and calls exit(0). If you see a SIGILL, then you should check your compiler....or find another reason why an illegal instruction gets executed while the code only follows a linked list. Using the Sun C-compiler, I receive a SIGBUS (with address allignement error) on Sparc using 64 bits. In any case: note that cdrdao does not seem to be well maintained and still uses more than 2 year old code. And it seems that someone did try to add partial workarounds for a broken shell that seems to ignore the -e flag. Jörg -- EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin js@cs.tu-berlin.de (uni) schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/old/private/ ftp://ftp.berlios.de/pub/schily