diff options
Diffstat (limited to 'lang')
-rw-r--r-- | lang/cparser/Makefile | 33 | ||||
-rw-r--r-- | lang/cparser/distinfo | 4 | ||||
-rw-r--r-- | lang/cparser/files/patch-firm_machine-c | 2 | ||||
-rw-r--r-- | lang/cparser/pkg-descr | 13 |
4 files changed, 31 insertions, 21 deletions
diff --git a/lang/cparser/Makefile b/lang/cparser/Makefile index 7fa482c95be3..04c2f95b06a8 100644 --- a/lang/cparser/Makefile +++ b/lang/cparser/Makefile @@ -1,33 +1,44 @@ -# New ports collection makefile for: libFIRM -# Date created: 22 Nov 2008 -# Whom: Christoph Mallon <christoph.mallon@gmx.de> -# +# Created by: Christoph Mallon <christoph.mallon@gmx.de> # $FreeBSD$ -# PORTNAME= cparser -PORTVERSION= 0.9.13 +PORTVERSION= 0.9.14 CATEGORIES= lang devel MASTER_SITES= SF -MAINTAINER= armin@frozen-zone.org +MAINTAINER= sperber@FreeBSD.org COMMENT= A C99 compiler using libFIRM as backend LICENSE= GPLv2 -LIB_DEPENDS= firm.1:${PORTSDIR}/devel/libfirm +LIB_DEPENDS= firm:${PORTSDIR}/devel/libfirm USE_BZIP2= yes USE_GMAKE= yes +USES= pkgconfig PLIST_FILES= bin/cparser +MAN1= cparser.1 + +BUILDDIR= optimize +INSTALL_CMD= ${INSTALL_PROGRAM} + +OPTIONS_DEFINE= DEBUG + .include <bsd.port.pre.mk> -MAN1= cparser.1 +.if ${PORT_OPTIONS:MDEBUG} +BUILDDIR= debug +INSTALL_CMD= ${INSTALL_PROGRAM:S,-s,,} +.else +post-patch: + @${REINPLACE_CMD} -e 's/^variant ?= debug/variant ?= optimize/' \ + ${WRKSRC}/Makefile +.endif do-install: - @${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/build/cparser ${PREFIX}/bin - @${INSTALL_MAN} ${INSTALL_WRKSRC}/cparser.1 ${MAN1PREFIX}/man/man1 + @${INSTALL_CMD} ${WRKSRC}/build/${BUILDDIR}/cparser ${PREFIX}/bin + @${INSTALL_MAN} ${WRKSRC}/cparser.1 ${MAN1PREFIX}/man/man1 .include <bsd.port.post.mk> diff --git a/lang/cparser/distinfo b/lang/cparser/distinfo index 5c10c7b64f96..3889f9c6eeed 100644 --- a/lang/cparser/distinfo +++ b/lang/cparser/distinfo @@ -1,2 +1,2 @@ -SHA256 (cparser-0.9.13.tar.bz2) = ccc44a3b230beb841404a40cc792650accee2fa45ac7ad14820f792364e02dbc -SIZE (cparser-0.9.13.tar.bz2) = 190912 +SHA256 (cparser-0.9.14.tar.bz2) = 017a83d72c14e723573520bc92d78c988485e4086a15ce42e532561951510792 +SIZE (cparser-0.9.14.tar.bz2) = 193745 diff --git a/lang/cparser/files/patch-firm_machine-c b/lang/cparser/files/patch-firm_machine-c index b78b83788e82..1bd40cae9f37 100644 --- a/lang/cparser/files/patch-firm_machine-c +++ b/lang/cparser/files/patch-firm_machine-c @@ -4,7 +4,7 @@ By rdivacky@, enables cparser to work out of the box on amd64 --- driver/firm_machine.c 2011-04-14 16:51:46.000000000 +0200 +++ driver/firm_machine.c 2011-08-12 22:04:40.000000000 +0200 -@@ -77,12 +77,18 @@ +@@ -108,12 +108,18 @@ machine_triple_t *firm_get_host_machine(void) { machine_triple_t *machine = XMALLOC(machine_triple_t); diff --git a/lang/cparser/pkg-descr b/lang/cparser/pkg-descr index 6f81c2800442..5373a5213e27 100644 --- a/lang/cparser/pkg-descr +++ b/lang/cparser/pkg-descr @@ -1,9 +1,8 @@ -cparser is a C compiler, which can parse C90 and C99 as well as many GCC and -some MSVC extensions. It also provides many useful analyses for warnings. It -uses libFIRM, which provides an SSA-based intermediate representation in form of -explicit dependency graphs, for optimization and code generation. Parsing is -done with a handwritten recursive descent parser. The AST representation is -straightforward, so it can be used for other purposes than code generation. +cparser is a recursive descent C99 parser written in C99. It contains lexer, +parser, constructs an AST and does semantic analysis. It is currently used as +a frontend to the libFirm intermediate representation, but can be used +independently. cparser is able to bootstrap itself. It currently uses an +external preprocessor. * fast recursive descent parser, parses C90 and C99 * handles most GCC extensions, e.g. __attribute__, inline assembler, @@ -21,4 +20,4 @@ straightforward, so it can be used for other purposes than code generation. * compiler driver compatible with GCC (-fxxx, -Wxxx, -M, ...) * uses libFIRM for optimization and code generation (devel/libfirm) -WWW: http://www.libfirm.org +WWW: http://sourceforge.net/projects/cparser/ |