From owner-svn-ports-head@FreeBSD.ORG Tue Feb 18 18:35:17 2014 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 386D3891; Tue, 18 Feb 2014 18:35:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 23B7B157C; Tue, 18 Feb 2014 18:35:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s1IIZHa8086642; Tue, 18 Feb 2014 18:35:17 GMT (envelope-from marino@svn.freebsd.org) Received: (from marino@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s1IIZG86086639; Tue, 18 Feb 2014 18:35:16 GMT (envelope-from marino@svn.freebsd.org) Message-Id: <201402181835.s1IIZG86086639@svn.freebsd.org> From: John Marino Date: Tue, 18 Feb 2014 18:35:16 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r344938 - in head/devel/ahven: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Feb 2014 18:35:17 -0000 Author: marino Date: Tue Feb 18 18:35:16 2014 New Revision: 344938 URL: http://svnweb.freebsd.org/changeset/ports/344938 QAT: https://qat.redports.org/buildarchive/r344938/ Log: devel/ahven: Modify to add symbolic tracing. The author, Tero Koskine, intends for ahven to be compiler agnostic, and therefore can't use GNAT-specific functionality like GNAT.Traceback.Symbolic. However, there is only one brand of Ada compiler in ports, GNAT, so we can take advantage of it. This change adds a default option to alter the exception handling to trace through the symbols to display files and line numbers of each frame on the stack. Declining the option builds Ahven without the modification and allows Ahven to be used on non-GNAT compilers (assuming you can find one on FreeBSD.) Added: head/devel/ahven/files/extra-src_ahven-framework.adb (contents, props changed) Modified: head/devel/ahven/Makefile Modified: head/devel/ahven/Makefile ============================================================================== --- head/devel/ahven/Makefile Tue Feb 18 18:30:44 2014 (r344937) +++ head/devel/ahven/Makefile Tue Feb 18 18:35:16 2014 (r344938) @@ -3,7 +3,7 @@ PORTNAME= ahven PORTVERSION= 2.4 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel MASTER_SITES= SF MASTER_SITE_SUBDIR=${PORTNAME}/${PORTNAME}/Ahven%20${PORTVERSION} @@ -19,7 +19,11 @@ USES= ada ALL_TARGET= build_all MAKE_ENV+= OS_VERSION=unix -OPTIONS_DEFINE= DOCS +OPTIONS_DEFINE= TRACE DOCS +OPTIONS_DEFAULT=TRACE +NO_OPTIONS_SORT=yes + +TRACE_DESC= Build with GNAT-specific symbolic tracing functionality .include @@ -30,6 +34,10 @@ BUILD_DEPENDS+= sphinx-build:${PORTSDIR} ALL_TARGET+= docs .endif +.if ${PORT_OPTIONS:MTRACE} +EXTRA_PATCHES= ${FILESDIR}/extra-src_ahven-framework.adb +.endif + post-install: @${RM} -rf ${STAGEDIR}${PREFIX}/share/doc/ahven/html/_sources @${RM} ${STAGEDIR}${PREFIX}/share/doc/ahven/html/.buildinfo Added: head/devel/ahven/files/extra-src_ahven-framework.adb ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/ahven/files/extra-src_ahven-framework.adb Tue Feb 18 18:35:16 2014 (r344938) @@ -0,0 +1,34 @@ +--- src/ahven-framework.adb.orig 2014-02-08 21:21:51.000000000 +0000 ++++ src/ahven-framework.adb +@@ -14,6 +14,8 @@ + -- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + -- + ++with GNAT.Traceback.Symbolic; ++use GNAT.Traceback.Symbolic; + with Ada.Strings; + with Ada.Unchecked_Deallocation; + with Ada.Exceptions; +@@ -346,19 +348,19 @@ package body Ahven.Framework is + Set_Status + (S => TEST_FAIL, + Message => Ada.Exceptions.Exception_Message (E), +- Long_Message => Ada.Exceptions.Exception_Information (E), ++ Long_Message => Symbolic_Traceback (E), + R => Result); + when E : Test_Skipped_Error => + Set_Status + (S => TEST_SKIP, + Message => Ada.Exceptions.Exception_Message (E), +- Long_Message => Ada.Exceptions.Exception_Information (E), ++ Long_Message => Symbolic_Traceback (E), + R => Result); + when E : others => + Set_Status + (S => TEST_ERROR, + Message => Ada.Exceptions.Exception_Message (E), +- Long_Message => Ada.Exceptions.Exception_Information (E), ++ Long_Message => Symbolic_Traceback (E), + R => Result); + end; + end Run_A_Command;