From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Jan 26 23:00:32 2006 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 120E016A420 for ; Thu, 26 Jan 2006 23:00:32 +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 CEC4743D55 for ; Thu, 26 Jan 2006 23:00:18 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k0QN0DkQ059756 for ; Thu, 26 Jan 2006 23:00:13 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k0QN0DY5059752; Thu, 26 Jan 2006 23:00:13 GMT (envelope-from gnats) Resent-Date: Thu, 26 Jan 2006 23:00:13 GMT Resent-Message-Id: <200601262300.k0QN0DY5059752@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, NIIMI Satoshi Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AC2D116A420 for ; Thu, 26 Jan 2006 22:53:43 +0000 (GMT) (envelope-from sa2c@sa2c.net) Received: from sakura.and.or.jp (sakura.and.or.jp [59.106.20.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id DD21C43D4C for ; Thu, 26 Jan 2006 22:53:42 +0000 (GMT) (envelope-from sa2c@sa2c.net) Received: from sakura.and.or.jp (localhost [127.0.0.1]) by sakura.and.or.jp (Postfix) with ESMTP id 981A161C45 for ; Fri, 27 Jan 2006 07:53:41 +0900 (JST) Received: from berkeley.l.sa2c.net (berkeley.vpn.and.or.jp [10.46.49.3]) by sakura.and.or.jp (Postfix) with ESMTP id 6B8ED61C1E for ; Fri, 27 Jan 2006 07:53:41 +0900 (JST) Received: by berkeley.l.sa2c.net (Postfix, from userid 3104) id 54D5411476; Fri, 27 Jan 2006 07:53:41 +0900 (JST) Message-Id: <20060126225341.54D5411476@berkeley.l.sa2c.net> Date: Fri, 27 Jan 2006 07:53:41 +0900 (JST) From: NIIMI Satoshi To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/92398: MAINTAINER: lang/sbcl: update to 0.9.9 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: NIIMI Satoshi List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Jan 2006 23:00:32 -0000 >Number: 92398 >Category: ports >Synopsis: MAINTAINER: lang/sbcl: update to 0.9.9 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Thu Jan 26 23:00:12 GMT 2006 >Closed-Date: >Last-Modified: >Originator: NIIMI Satoshi >Release: FreeBSD 6.0-RELEASE-p4 i386 >Organization: >Environment: System: FreeBSD berkeley.l.sa2c.net 6.0-RELEASE-p4 FreeBSD 6.0-RELEASE-p4 #2: Wed Jan 25 20:26:06 JST 2006 root@berkeley.l.sa2c.net:/usr/obj/usr/src/sys/GENERIC i386 >Description: Update lang/sbcl to 0.9.9. >How-To-Repeat: >Fix: Please note to exec "cvs rm -f files/patch-sigsegv" before commit. --- sbcl.diff begins here --- Index: Makefile =================================================================== RCS file: /home/ncvs/ports/lang/sbcl/Makefile,v retrieving revision 1.27 diff -u -r1.27 Makefile --- Makefile 28 Dec 2005 13:35:28 -0000 1.27 +++ Makefile 26 Jan 2006 19:51:17 -0000 @@ -6,7 +6,7 @@ # PORTNAME= sbcl -PORTVERSION= 0.9.8 +PORTVERSION= 0.9.9 CATEGORIES= lang lisp MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= sbcl @@ -28,7 +28,7 @@ BUILD_DEPENDS= lisp:${PORTSDIR}/lang/cmucl LISP_CMD= "lisp -noinit -batch" .else -BOOT_VERSION= ${PORTVERSION} +BOOT_VERSION= 0.9.8 .endif USE_REINPLACE= yes Index: distinfo =================================================================== RCS file: /home/ncvs/ports/lang/sbcl/distinfo,v retrieving revision 1.17 diff -u -r1.17 distinfo --- distinfo 28 Dec 2005 13:35:28 -0000 1.17 +++ distinfo 26 Jan 2006 19:51:22 -0000 @@ -1,9 +1,9 @@ -MD5 (sbcl-0.9.8-source.tar.bz2) = 4a8a3de71aff073b4e23e5bc2e432b27 -SHA256 (sbcl-0.9.8-source.tar.bz2) = 08a02e2db4a20446282cd6475d17aaf2625a35080f5bac5e7833fe31186bb2d6 -SIZE (sbcl-0.9.8-source.tar.bz2) = 2674853 -MD5 (sbcl-0.9.8-html.tar.bz2) = 598bc9c1fe88b8ea0d97082fc528fba4 -SHA256 (sbcl-0.9.8-html.tar.bz2) = 4edd847864f1ac0b1e9d039d0559d2d534540bd66d0c71d25b0bb8723c97502d -SIZE (sbcl-0.9.8-html.tar.bz2) = 119641 +MD5 (sbcl-0.9.9-source.tar.bz2) = 4aafb2ce07bd7933f7edec29b404a595 +SHA256 (sbcl-0.9.9-source.tar.bz2) = 117762d02aa4748964c814fb20b0481322fdec1948b748c9159b0942a675eb8c +SIZE (sbcl-0.9.9-source.tar.bz2) = 2695081 +MD5 (sbcl-0.9.9-html.tar.bz2) = a884ab78a3e4f5ecc516fc7197fe2fd6 +SHA256 (sbcl-0.9.9-html.tar.bz2) = 324c36660f37f9cbccab9c07d4f714f761b177350585d34c3d890c9f4557f0b6 +SIZE (sbcl-0.9.9-html.tar.bz2) = 119734 MD5 (sbcl-0.9.8-i386-freebsd-binary.tar.bz2) = 8012db9ebc4d06b93e934ca94fb9f1fe SHA256 (sbcl-0.9.8-i386-freebsd-binary.tar.bz2) = 87332cf3e51910eabe195cf70b32669083d1b49b419b191e0b901354401d1f45 SIZE (sbcl-0.9.8-i386-freebsd-binary.tar.bz2) = 7250813 Index: files/patch-backtrace =================================================================== RCS file: /home/ncvs/ports/lang/sbcl/files/patch-backtrace,v retrieving revision 1.1 diff -u -r1.1 patch-backtrace --- files/patch-backtrace 8 Oct 2005 18:21:19 -0000 1.1 +++ files/patch-backtrace 26 Jan 2006 02:28:47 -0000 @@ -1,17 +1,117 @@ Index: src/code/debug-int.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/debug-int.lisp,v -retrieving revision 1.97 -diff -u -r1.97 debug-int.lisp ---- src/code/debug-int.lisp 14 Jul 2005 16:30:31 -0000 1.97 -+++ src/code/debug-int.lisp 27 Aug 2005 01:36:06 -0000 -@@ -572,6 +572,9 @@ - ;; FIXME: Where is this documented? Is it really true of every CPU - ;; architecture? Is it even necessarily true in current SBCL? - (>= (sap-int ra) 4096) -+ ;; On FreeBSD, kernel area is not valid as return address. -+ ;; FIXME: How to obtain the address instead of magic number? -+ #!+freebsd (< (sap-int ra) #xC0000000) +retrieving revision 1.101 +diff -u -r1.101 debug-int.lisp +--- src/code/debug-int.lisp 28 Sep 2005 13:42:24 -0000 1.101 ++++ src/code/debug-int.lisp 26 Jan 2006 01:59:07 -0000 +@@ -559,6 +559,9 @@ + + (defconstant sb!vm::nargs-offset #.sb!vm::ecx-offset) + ++(sb!alien:define-alien-variable "user_space_start" sb!alien:unsigned-long) ++(sb!alien:define-alien-variable "user_space_end" sb!alien:unsigned-long) ++ + ;;; Check for a valid return address - it could be any valid C/Lisp + ;;; address. + ;;; +@@ -567,11 +570,7 @@ + (defun ra-pointer-valid-p (ra) + (declare (type system-area-pointer ra)) + (and +- ;; not the first page (which is unmapped) +- ;; +- ;; FIXME: Where is this documented? Is it really true of every CPU +- ;; architecture? Is it even necessarily true in current SBCL? +- (>= (sap-int ra) 4096) ++ (>= user-space-end (sap-int ra) user-space-start) ;; not a Lisp stack pointer (not (control-stack-pointer-valid-p ra)))) +Index: src/runtime/bsd-os.c +=================================================================== +RCS file: /cvsroot/sbcl/sbcl/src/runtime/bsd-os.c,v +retrieving revision 1.31 +diff -u -r1.31 bsd-os.c +--- src/runtime/bsd-os.c 22 Jan 2006 18:55:07 -0000 1.31 ++++ src/runtime/bsd-os.c 26 Jan 2006 01:59:07 -0000 +@@ -53,6 +53,8 @@ + + #ifdef __FreeBSD__ + #include ++#include ++#include + + static void freebsd_init(); + #endif /* __FreeBSD__ */ +@@ -311,6 +313,25 @@ + fast_bzero_pointer = fast_bzero_base; + } + #endif /* LISP_FEATURE_X86 */ ++ /* extract lowermost address from linkmap */ ++ { ++ Link_map *map; ++ ++ if (dlinfo(RTLD_SELF, RTLD_DI_LINKMAP, &map) == 0 ++ && map != NULL && map->l_addr != NULL) ++ user_space_start = (unsigned long)map->l_addr; ++ } ++ ++ /* extract uppermost address from "kern.usrstack" mib */ ++ { ++ size_t len; ++ unsigned long tmp; ++ ++ len = sizeof(tmp); ++ if (sysctlbyname("kern.usrstack", &tmp, &len, NULL, 0) == 0 ++ && tmp > user_space_start) ++ user_space_end = tmp; ++ } + } + #endif /* __FreeBSD__ */ + +Index: src/runtime/globals.c +=================================================================== +RCS file: /cvsroot/sbcl/sbcl/src/runtime/globals.c,v +retrieving revision 1.18 +diff -u -r1.18 globals.c +--- src/runtime/globals.c 14 Jul 2005 15:41:11 -0000 1.18 ++++ src/runtime/globals.c 26 Jan 2006 01:59:07 -0000 +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + + #include "sbcl.h" + #include "runtime.h" +@@ -54,6 +55,14 @@ + pthread_key_t specials=0; + #endif + ++/* Valid user address space. */ ++ ++/* not the first page (which is unmapped) ++ * good default for most architectures. */ ++unsigned long user_space_start = 4096; ++ ++unsigned long user_space_end = ULONG_MAX; ++ + void globals_init(void) + { + /* Space, stack, and free pointer vars are initialized by +Index: src/runtime/globals.h +=================================================================== +RCS file: /cvsroot/sbcl/sbcl/src/runtime/globals.h,v +retrieving revision 1.25 +diff -u -r1.25 globals.h +--- src/runtime/globals.h 14 Jul 2005 15:41:11 -0000 1.25 ++++ src/runtime/globals.h 26 Jan 2006 01:59:07 -0000 +@@ -99,4 +99,7 @@ + + #endif /* LANGUAGE_ASSEMBLY */ + ++extern unsigned long user_space_start; ++extern unsigned long user_space_end; ++ + #endif /* _INCLUDED_GLOBALS_H_ */ Index: files/patch-floating-point =================================================================== RCS file: /home/ncvs/ports/lang/sbcl/files/patch-floating-point,v retrieving revision 1.1 diff -u -r1.1 patch-floating-point --- files/patch-floating-point 8 Oct 2005 18:21:19 -0000 1.1 +++ files/patch-floating-point 26 Jan 2006 20:43:34 -0000 @@ -1,10 +1,10 @@ Index: src/code/float-trap.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/float-trap.lisp,v -retrieving revision 1.18 -diff -u -r1.18 float-trap.lisp ---- src/code/float-trap.lisp 14 Jul 2005 16:30:34 -0000 1.18 -+++ src/code/float-trap.lisp 27 Sep 2005 22:36:42 -0000 +retrieving revision 1.19 +diff -u -r1.19 float-trap.lisp +--- src/code/float-trap.lisp 6 Oct 2005 19:43:00 -0000 1.19 ++++ src/code/float-trap.lisp 26 Jan 2006 20:43:33 -0000 @@ -153,10 +153,28 @@ `(not (zerop (logand ,(dpb (float-trap-mask traps) float-traps-byte 0) (floating-point-modes))))) @@ -38,12 +38,12 @@ Index: src/code/target-signal.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/target-signal.lisp,v -retrieving revision 1.28 -diff -u -r1.28 target-signal.lisp ---- src/code/target-signal.lisp 4 Sep 2005 20:14:49 -0000 1.28 -+++ src/code/target-signal.lisp 27 Sep 2005 22:36:42 -0000 -@@ -149,6 +149,10 @@ - +retrieving revision 1.33 +diff -u -r1.33 target-signal.lisp +--- src/code/target-signal.lisp 17 Oct 2005 09:18:47 -0000 1.33 ++++ src/code/target-signal.lisp 26 Jan 2006 20:43:33 -0000 +@@ -164,6 +164,10 @@ + ;;;; etc. +;;; extract si_code from siginfo_t @@ -56,20 +56,20 @@ Index: src/runtime/interrupt.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/interrupt.c,v -retrieving revision 1.94 -diff -u -r1.94 interrupt.c ---- src/runtime/interrupt.c 13 Sep 2005 12:28:41 -0000 1.94 -+++ src/runtime/interrupt.c 27 Sep 2005 22:36:42 -0000 -@@ -426,7 +426,7 @@ - if (sigismember(&deferrable_sigset,signal)) +retrieving revision 1.109 +diff -u -r1.109 interrupt.c +--- src/runtime/interrupt.c 5 Jan 2006 14:13:14 -0000 1.109 ++++ src/runtime/interrupt.c 26 Jan 2006 20:43:33 -0000 +@@ -454,7 +454,7 @@ check_interrupts_enabled_or_lose(context); + #endif -#ifdef LISP_FEATURE_LINUX +#if defined(LISP_FEATURE_LINUX) || defined(__FreeBSD__) /* Under Linux on some architectures, we appear to have to restore the FPU control word from the context, as after the signal is delivered we appear to have a null FPU control word. */ -@@ -606,7 +606,7 @@ +@@ -644,7 +644,7 @@ os_context_t *context = arch_os_get_context(&void_context); struct thread *thread=arch_os_get_current_thread(); struct interrupt_data *data=thread->interrupt_data; @@ -78,7 +78,7 @@ os_restore_fp_control(context); #endif if(maybe_defer_handler(interrupt_handle_now,data,signal,info,context)) -@@ -623,7 +623,7 @@ +@@ -661,7 +661,7 @@ { os_context_t *context = (os_context_t*)void_context; @@ -87,7 +87,7 @@ os_restore_fp_control(context); #endif check_blockables_blocked_or_lose(); -@@ -641,7 +641,7 @@ +@@ -679,7 +679,7 @@ os_context_t *context = arch_os_get_context(&void_context); struct thread *thread=arch_os_get_current_thread(); struct interrupt_data *data=thread->interrupt_data; @@ -96,9 +96,9 @@ os_restore_fp_control(context); #endif if(maybe_defer_handler(low_level_interrupt_handle_now,data, -@@ -1139,3 +1139,9 @@ - +@@ -1276,3 +1276,9 @@ SHOW("returning from interrupt_init()"); + #endif } + +int @@ -109,11 +109,11 @@ Index: src/runtime/x86-arch.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/x86-arch.c,v -retrieving revision 1.32 -diff -u -r1.32 x86-arch.c ---- src/runtime/x86-arch.c 27 Sep 2005 15:52:50 -0000 1.32 -+++ src/runtime/x86-arch.c 27 Sep 2005 22:36:42 -0000 -@@ -229,7 +229,7 @@ +retrieving revision 1.36 +diff -u -r1.36 x86-arch.c +--- src/runtime/x86-arch.c 3 Jan 2006 09:52:38 -0000 1.36 ++++ src/runtime/x86-arch.c 26 Jan 2006 20:43:33 -0000 +@@ -248,7 +248,7 @@ single-stepping (as far as I can tell) this is somewhat moot, but it might be worth either moving this code up or deleting the single-stepping code entirely. -- CSR, 2002-07-15 */ @@ -128,7 +128,7 @@ retrieving revision 1.7 diff -u -r1.7 x86-bsd-os.c --- src/runtime/x86-bsd-os.c 14 Jul 2005 15:41:21 -0000 1.7 -+++ src/runtime/x86-bsd-os.c 27 Sep 2005 22:36:42 -0000 ++++ src/runtime/x86-bsd-os.c 26 Jan 2006 20:43:33 -0000 @@ -85,6 +85,52 @@ #endif /* __NetBSD__ */ @@ -185,11 +185,11 @@ Index: tools-for-build/grovel-headers.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/tools-for-build/grovel-headers.c,v -retrieving revision 1.10 -diff -u -r1.10 grovel-headers.c ---- tools-for-build/grovel-headers.c 14 Jul 2005 20:24:19 -0000 1.10 -+++ tools-for-build/grovel-headers.c 27 Sep 2005 22:36:42 -0000 -@@ -223,5 +223,15 @@ +retrieving revision 1.12 +diff -u -r1.12 grovel-headers.c +--- tools-for-build/grovel-headers.c 16 Jan 2006 15:39:58 -0000 1.12 ++++ tools-for-build/grovel-headers.c 26 Jan 2006 20:43:33 -0000 +@@ -234,6 +234,16 @@ defsignal("sigxcpu", SIGXCPU); defsignal("sigxfsz", SIGXFSZ); #endif @@ -203,5 +203,6 @@ + defconstant("fpe-fltinv", FPE_FLTINV); + defconstant("fpe-fltsub", FPE_FLTSUB); +#endif + #endif // _WIN32 return 0; } Index: files/patch-sigsegv =================================================================== RCS file: files/patch-sigsegv diff -N files/patch-sigsegv --- files/patch-sigsegv 28 Dec 2005 13:35:28 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,61 +0,0 @@ -Index: src/runtime/bsd-os.c -=================================================================== -RCS file: /cvsroot/sbcl/sbcl/src/runtime/bsd-os.c,v -retrieving revision 1.29 -diff -u -r1.29 bsd-os.c ---- src/runtime/bsd-os.c 4 Dec 2005 22:25:07 -0000 1.29 -+++ src/runtime/bsd-os.c 28 Dec 2005 01:24:17 -0000 -@@ -204,6 +204,10 @@ - SHOW("os_install_interrupt_handlers()/bsd-os/defined(GENCGC)"); - undoably_install_low_level_interrupt_handler(SIG_MEMORY_FAULT, - memory_fault_handler); -+#ifdef SIG_MEMORY_FAULT2 -+ undoably_install_low_level_interrupt_handler(SIG_MEMORY_FAULT2, -+ memory_fault_handler); -+#endif - SHOW("leaving os_install_interrupt_handlers()"); - } - -@@ -230,6 +234,10 @@ - SHOW("os_install_interrupt_handlers()/bsd-os/!defined(GENCGC)"); - undoably_install_low_level_interrupt_handler(SIG_MEMORY_FAULT, - sigsegv_handler); -+#ifdef SIG_MEMORY_FAULT2 -+ undoably_install_low_level_interrupt_handler(SIG_MEMORY_FAULT2, -+ sigsegv_handler); -+#endif - } - - #endif /* defined GENCGC */ -Index: src/runtime/bsd-os.h -=================================================================== -RCS file: /cvsroot/sbcl/sbcl/src/runtime/bsd-os.h,v -retrieving revision 1.14 -diff -u -r1.14 bsd-os.h ---- src/runtime/bsd-os.h 17 Apr 2005 19:41:28 -0000 1.14 -+++ src/runtime/bsd-os.h 28 Dec 2005 01:24:17 -0000 -@@ -55,6 +55,7 @@ - * so we need to implement single stepping in a more roundabout way. */ - #define CANNOT_GET_TO_SINGLE_STEP_FLAG - #define SIG_MEMORY_FAULT SIGBUS -+#define SIG_MEMORY_FAULT2 SIGSEGV - - #elif defined __OpenBSD__ - -Index: src/runtime/interrupt.c -=================================================================== -RCS file: /cvsroot/sbcl/sbcl/src/runtime/interrupt.c,v -retrieving revision 1.106 -diff -u -r1.106 interrupt.c ---- src/runtime/interrupt.c 4 Dec 2005 22:25:07 -0000 1.106 -+++ src/runtime/interrupt.c 28 Dec 2005 01:24:17 -0000 -@@ -1140,6 +1140,9 @@ - (sigaction_nodefer_works ? SA_NODEFER : 0); - #ifdef LISP_FEATURE_C_STACK_IS_CONTROL_STACK - if((signal==SIG_MEMORY_FAULT) -+#ifdef SIG_MEMORY_FAULT2 -+ || (signal==SIG_MEMORY_FAULT2) -+#endif - #ifdef SIG_INTERRUPT_THREAD - || (signal==SIG_INTERRUPT_THREAD) - #endif --- sbcl.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: