--- devel/dparser/Makefile Mon Jun 28 22:57:47 2004 +++ devel/dparser/Makefile Wed Aug 11 09:13:45 2004 @@ -7,7 +7,7 @@ # PORTNAME= dparser -PORTVERSION= 1.10 +PORTVERSION= 1.11 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ${PORTNAME} @@ -24,7 +24,16 @@ MAN1= make_dparser.1 PORTDOCS= faq.html index.html manual.html PLIST_FILES= bin/make_dparser include/dparse.h include/dparse_tables.h \ - include/dsymtab.h lib/libdparse.a + include/dsymtab.h lib/${LIBDPARSE} + +.if defined(WITH_GC) +LIB_DEPENDS+= gc:${PORTSDIR}/devel/boehm-gc +MAKE_ARGS+= D_USE_GC=1 \ + GC_CFLAGS="-I${LOCALBASE}/include -L${LOCALBASE}/lib" +LIBDPARSE= libdparse_gc.a +.else +LIBDPARSE= libdparse.a +.endif .include @@ -35,10 +44,10 @@ do-install: ${INSTALL_PROGRAM} ${WRKSRC}/make_dparser ${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/make_dparser.1 ${MANPREFIX}/man/man1 - ${INSTALL_DATA} ${WRKSRC}/libdparse.a ${PREFIX}/lib ${INSTALL_DATA} ${WRKSRC}/dparse.h ${PREFIX}/include ${INSTALL_DATA} ${WRKSRC}/dparse_tables.h ${PREFIX}/include ${INSTALL_DATA} ${WRKSRC}/dsymtab.h ${PREFIX}/include + ${INSTALL_DATA} ${WRKSRC}/${LIBDPARSE} ${PREFIX}/lib .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/*.html ${DOCSDIR} --- devel/dparser/distinfo Mon Jun 28 22:57:47 2004 +++ devel/dparser/distinfo Wed Aug 11 08:56:53 2004 @@ -1,2 +1,2 @@ -MD5 (d-1.10-src.tar.gz) = eb7fd35268d0080ba80d791c5172d629 -SIZE (d-1.10-src.tar.gz) = 196141 +MD5 (d-1.11-src.tar.gz) = 4443debf8c778e66203130617a251831 +SIZE (d-1.11-src.tar.gz) = 198263 --- devel/dparser/files/patch-write_tables.c Thu Jan 1 09:00:00 1970 +++ devel/dparser/files/patch-write_tables.c Wed Aug 11 09:15:55 2004 @@ -0,0 +1,26 @@ +--- write_tables.c.orig Mon Aug 2 08:24:03 2004 ++++ write_tables.c Wed Aug 11 09:15:44 2004 +@@ -87,6 +87,7 @@ + save_binary_tables(File *file) { + int i; + BinaryTablesHead tables; ++ unsigned int len; + + tables.n_relocs = file->relocations.n; + tables.n_strings = file->str_relocations.n; +@@ -94,13 +95,13 @@ + tables.tables_size = file->tables.cur - file->tables.start; + tables.strings_size = file->strings.cur - file->strings.start; + +- unsigned int len = sizeof(BinaryTablesHead) + ++ len = sizeof(BinaryTablesHead) + + tables.tables_size + tables.strings_size + + (file->relocations.n * sizeof(void*)) + + (file->str_relocations.n * sizeof(void*)); + + if (file->str) { +- file->cur_str = *file->str = (unsigned char*)malloc(len); ++ file->cur_str = *file->str = (unsigned char*)MALLOC(len); + *file->str_len = len; + } +