Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Jun 2011 23:19:36 +0200 (CEST)
From:      Niclas Zeising <niclas.zeising@gmail.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/157931: [PATCH] New Port: devel/bsdlibdwarf
Message-ID:  <201106162119.p5GLJaqr070695@vincent.daemonic.se>
Resent-Message-ID: <201106162120.p5GLKA4J057823@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         157931
>Category:       ports
>Synopsis:       [PATCH] New Port: devel/bsdlibdwarf
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 16 21:20:10 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Niclas Zeising
>Release:        FreeBSD 8.2-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD vincent.daemonic.se 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Wed Apr 20 17:22:47 CEST 2011 root@vincent.daemonic.se:/usr/obj/usr/src/sys/VINCENT amd64


	
>Description:
	bsdlibdwarf is a BSD implementation of libdwarf, as part of the elftoolchain project, located here: http://sourceforge.net/apps/trac/elftoolchain/. It is a library for parsing DWARF debug information, licensed with a BSD licence.
>How-To-Repeat:
	
>Fix:

	Attached patch adds bsdlibdwarf to the FreeBSD ports tree, updates devel/Makefile and adds conflict to libdwarf, since they install libraries and headers with the same name.

--- devel.bsdlibdwarf.diff begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/devel/Makefile,v
retrieving revision 1.4371
diff -u -d -r1.4371 Makefile
--- Makefile	13 Jun 2011 18:39:00 -0000	1.4371
+++ Makefile	16 Jun 2011 20:25:06 -0000
@@ -119,6 +119,7 @@
     SUBDIR += bpython
     SUBDIR += bsdbuild
     SUBDIR += bsdcflow
+    SUBDIR += bsdlibdwarf
     SUBDIR += bufferpool
     SUBDIR += bug-buddy
     SUBDIR += bugzilla
Index: bsdlibdwarf/Makefile
===================================================================
RCS file: bsdlibdwarf/Makefile
diff -N bsdlibdwarf/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ bsdlibdwarf/Makefile	16 Jun 2011 20:25:10 -0000
@@ -0,0 +1,200 @@
+# New ports collection makefile for:	BSD licenced libdwarf
+# Date created:		16 June 2011
+# Whom:			Niclas Zeising
+#
+# $FreeBSD$
+#
+
+PORTNAME=	bsdlibdwarf
+PORTVERSION=	0.20110616
+CATEGORIES=	devel
+MASTER_SITES=	ftp://ftp.lysator.liu.se/%SUBDIR%/
+MASTER_SITE_SUBDIR=	pub/${PORTNAME}
+DISTNAME=	${PORTNAME}-${PORTVERSION}
+
+MAINTAINER=	niclas.zeising@gmail.com
+COMMENT=	BSD licensed implementation of libdwarf
+
+USE_BZIP2=	yes
+USE_LDCONFIG=	yes
+
+CONFLICTS_INSTALL=	libdwarf*
+
+WRKSRC=		${WRKDIR}/elftoolchain
+
+PLIST_FILES=	lib/libdwarf.so		\
+		lib/libdwarf.so.3	\
+		lib/libdwarf.a		\
+		include/dwarf.h		\
+		include/libdwarf.h
+
+MAN3=	dwarf_attr.3					\
+	dwarf_attrlist.3				\
+	dwarf_attrval_signed.3				\
+	dwarf_child.3					\
+	dwarf_dealloc.3					\
+	dwarf_die_abbrev_code.3				\
+	dwarf_diename.3					\
+	dwarf_dieoffset.3				\
+	dwarf_errmsg.3					\
+	dwarf_errno.3					\
+	dwarf_expand_frame_instructions.3		\
+	dwarf_find_macro_value_start.3			\
+	dwarf_finish.3					\
+	dwarf_formaddr.3				\
+	dwarf_formblock.3				\
+	dwarf_formexprloc.3				\
+	dwarf_formflag.3				\
+	dwarf_formref.3					\
+	dwarf_formsig8.3				\
+	dwarf_formstring.3				\
+	dwarf_formudata.3				\
+	dwarf_get_AT_name.3				\
+	dwarf_get_abbrev.3				\
+	dwarf_get_abbrev_children_flag.3		\
+	dwarf_get_abbrev_code.3				\
+	dwarf_get_abbrev_entry.3			\
+	dwarf_get_abbrev_tag.3				\
+	dwarf_get_address_size.3			\
+	dwarf_get_arange.3				\
+	dwarf_get_aranges.3				\
+	dwarf_get_arange_info.3				\
+	dwarf_get_cie_index.3				\
+	dwarf_get_cie_info.3				\
+	dwarf_get_cie_of_fde.3				\
+	dwarf_get_cu_die_offset.3			\
+	dwarf_get_elf.3					\
+	dwarf_get_fde_at_pc.3				\
+	dwarf_get_fde_info_for_all_regs.3		\
+	dwarf_get_fde_info_for_all_regs3.3		\
+	dwarf_get_fde_info_for_cfa_reg3.3		\
+	dwarf_get_fde_info_for_reg.3			\
+	dwarf_get_fde_info_for_reg3.3			\
+	dwarf_get_fde_instr_bytes.3			\
+	dwarf_get_fde_list.3				\
+	dwarf_get_fde_n.3				\
+	dwarf_get_fde_range.3				\
+	dwarf_get_funcs.3				\
+	dwarf_get_globals.3				\
+	dwarf_get_macro_details.3			\
+	dwarf_get_pubtypes.3				\
+	dwarf_get_ranges.3				\
+	dwarf_get_str.3					\
+	dwarf_get_types.3				\
+	dwarf_get_vars.3				\
+	dwarf_get_weaks.3				\
+	dwarf_hasattr.3					\
+	dwarf_hasform.3					\
+	dwarf_highpc.3					\
+	dwarf_init.3					\
+	dwarf_lineno.3					\
+	dwarf_next_cu_header.3				\
+	dwarf_seterrarg.3				\
+	dwarf_set_frame_cfa_value.3			\
+	dwarf_srcfiles.3				\
+	dwarf_srclines.3				\
+	dwarf_tag.3					\
+	dwarf_whatattr.3
+
+MLINKS+=	dwarf_attrval_signed.3	dwarf_attrval_flag.3	\
+		dwarf_attrval_signed.3	dwarf_attrval_string.3	\
+		dwarf_attrval_signed.3	dwarf_attrval_unsigned.3 \
+		dwarf_child.3	dwarf_offdie.3			\
+		dwarf_child.3	dwarf_siblingof.3		\
+		dwarf_dealloc.3	dwarf_fde_cie_list_dealloc.3	\
+		dwarf_dealloc.3	dwarf_funcs_dealloc.3		\
+		dwarf_dealloc.3	dwarf_globals_dealloc.3		\
+		dwarf_dealloc.3	dwarf_pubtypes_dealloc.3	\
+		dwarf_dealloc.3	dwarf_types_dealloc.3		\
+		dwarf_dealloc.3	dwarf_vars_dealloc.3		\
+		dwarf_dealloc.3	dwarf_weaks_dealloc.3		\
+		dwarf_dealloc.3	dwarf_ranges_dealloc.3		\
+		dwarf_dealloc.3	dwarf_srclines_dealloc.3	\
+		dwarf_init.3	dwarf_elf_init.3		\
+		dwarf_dieoffset.3	dwarf_die_CU_offset.3	\
+		dwarf_dieoffset.3	dwarf_die_CU_offset_range.3 \
+		dwarf_dieoffset.3	dwarf_get_cu_die_offset_given_cu_header_offset.3 \
+		dwarf_formref.3	dwarf_global_formref.3		\
+		dwarf_formudata.3	dwarf_formsdata.3	\
+		dwarf_get_AT_name.3	dwarf_get_ACCESS_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_ATE_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_CC_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_CFA_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_CHILDREN_name.3 \
+		dwarf_get_AT_name.3	dwarf_get_DS_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_DSC_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_EH_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_END_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_FORM_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_ID_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_INL_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_LANG_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_LNE_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_LNS_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_MACINFO_name.3 \
+		dwarf_get_AT_name.3	dwarf_get_OP_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_ORD_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_TAG_name.3	\
+		dwarf_get_AT_name.3	dwarf_get_VIRTUALITY_name.3 \
+		dwarf_get_AT_name.3	dwarf_get_VIS_name.3	\
+		dwarf_get_cu_die_offset.3 dwarf_get_arange_cu_header_offset.3 \
+		dwarf_get_fde_list.3	dwarf_get_fde_list_eh.3	\
+		dwarf_get_funcs.3	dwarf_func_die_offset.3	\
+		dwarf_get_funcs.3	dwarf_func_cu_offset.3	\
+		dwarf_get_funcs.3	dwarf_func_name_offsets.3 \
+		dwarf_get_funcs.3	dwarf_funcname.3	\
+		dwarf_get_globals.3	dwarf_global_die_offset.3 \
+		dwarf_get_globals.3	dwarf_global_cu_offset.3 \
+		dwarf_get_globals.3	dwarf_global_name_offsets.3 \
+		dwarf_get_globals.3	dwarf_globname.3	\
+		dwarf_get_pubtypes.3	dwarf_pubtype_die_offset.3 \
+		dwarf_get_pubtypes.3	dwarf_pubtype_cu_offset.3 \
+		dwarf_get_pubtypes.3	dwarf_pubtype_name_offsets.3 \
+		dwarf_get_pubtypes.3	dwarf_pubtypename.3	\
+		dwarf_get_ranges.3	dwarf_get_ranges_a.3	\
+		dwarf_get_types.3	dwarf_type_die_offset.3	\
+		dwarf_get_types.3	dwarf_type_cu_offset.3	\
+		dwarf_get_types.3	dwarf_type_name_offsets.3 \
+		dwarf_get_types.3	dwarf_typename.3	\
+		dwarf_get_vars.3	dwarf_var_die_offset.3	\
+		dwarf_get_vars.3	dwarf_var_cu_offset.3	\
+		dwarf_get_vars.3	dwarf_var_name_offsets.3 \
+		dwarf_get_vars.3	dwarf_varname.3		\
+		dwarf_get_weaks.3	dwarf_weak_die_offset.3	\
+		dwarf_get_weaks.3	dwarf_weak_cu_offset.3	\
+		dwarf_get_weaks.3	dwarf_weak_name_offsets.3 \
+		dwarf_get_weaks.3	dwarf_weakname.3	\
+		dwarf_hasform.3	dwarf_whatform.3		\
+		dwarf_hasform.3	dwarf_whatform_direct.3		\
+		dwarf_highpc.3	dwarf_arrayorder.3		\
+		dwarf_highpc.3	dwarf_bitoffset.3		\
+		dwarf_highpc.3	dwarf_bitsize.3			\
+		dwarf_highpc.3	dwarf_bytesize.3		\
+		dwarf_highpc.3	dwarf_lowpc.3			\
+		dwarf_highpc.3	dwarf_srclang.3			\
+		dwarf_lineno.3	dwarf_lineaddr.3		\
+		dwarf_lineno.3	dwarf_linebeginstatement.3	\
+		dwarf_lineno.3	dwarf_lineblock.3		\
+		dwarf_lineno.3	dwarf_lineendsequence.3		\
+		dwarf_lineno.3	dwarf_lineoff.3			\
+		dwarf_lineno.3	dwarf_linesrc.3			\
+		dwarf_lineno.3	dwarf_line_srcfileno.3		\
+		dwarf_seterrarg.3	dwarf_seterrhand.3	\
+		dwarf_set_frame_cfa_value.3 dwarf_set_frame_rule_initial_value.3 \
+		dwarf_set_frame_cfa_value.3 dwarf_set_frame_rule_table_size.3 \
+		dwarf_set_frame_cfa_value.3 dwarf_set_frame_same_value.3 \
+		dwarf_set_frame_cfa_value.3 dwarf_set_frame_undefined_value.3
+
+do-install:
+	${INSTALL_LIB} ${WRKSRC}/libdwarf/libdwarf.so.3 ${PREFIX}/lib/
+	${INSTALL_LIB} ${WRKSRC}/libdwarf/libdwarf.a ${PREFIX}/lib/
+	(cd ${PREFIX}/lib && ${LN} -s libdwarf.so.3 libdwarf.so)
+
+	${INSTALL_DATA} ${WRKSRC}/libdwarf/dwarf.h ${PREFIX}/include/
+	${INSTALL_DATA} ${WRKSRC}/libdwarf/libdwarf.h ${PREFIX}/include/
+
+	for f in ${MAN3}; do \
+		${INSTALL_MAN} ${WRKSRC}/libdwarf/$$f ${MANPREFIX}/man/man3/ ; \
+	done
+
+.include <bsd.port.mk>
Index: bsdlibdwarf/distinfo
===================================================================
RCS file: bsdlibdwarf/distinfo
diff -N bsdlibdwarf/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ bsdlibdwarf/distinfo	16 Jun 2011 20:25:10 -0000
@@ -0,0 +1,2 @@
+SHA256 (bsdlibdwarf-0.20110616.tar.bz2) = d6c861d3e04a719caaf9b8e6b612ef14365e84843cea19c7fbb3281f10c51d97
+SIZE (bsdlibdwarf-0.20110616.tar.bz2) = 99646
Index: bsdlibdwarf/pkg-descr
===================================================================
RCS file: bsdlibdwarf/pkg-descr
diff -N bsdlibdwarf/pkg-descr
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ bsdlibdwarf/pkg-descr	16 Jun 2011 20:25:10 -0000
@@ -0,0 +1,4 @@
+BSD libdwarf is a BSD licenced implementation of libdwarf.  It is part of the
+elftoolchain project.
+
+https://elftoolchain.svn.sourceforge.net
Index: libdwarf/Makefile
===================================================================
RCS file: /home/ncvs/ports/devel/libdwarf/Makefile,v
retrieving revision 1.6
diff -u -d -r1.6 Makefile
--- libdwarf/Makefile	11 Feb 2010 13:08:59 -0000	1.6
+++ libdwarf/Makefile	16 Jun 2011 20:25:29 -0000
@@ -13,6 +13,8 @@
 MAINTAINER=	joerg@FreeBSD.org
 COMMENT=	A library to analyze DWARF debugging information in ELF files
 
+INSTALL_CONFLICT=	bsdlibdwarf*
+
 .include <bsd.port.pre.mk>
 
 .if ${OSVERSION} < 700000
--- devel.bsdlibdwarf.diff ends here ---


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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106162119.p5GLJaqr070695>