blob: 3cc9fd9be92d785bb2f743a493c08ccea50e95ba (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-util/pccts/pccts-1.33.33-r1.ebuild,v 1.2 2010/09/19 23:43:33 jer Exp $
EAPI="2"
inherit eutils
DESCRIPTION="Purdue Compiler Construction Tool Set is an embedded C/C++ parser generator"
HOMEPAGE="http://www.polhode.com/"
SRC_URI="http://www.polhode.com/pccts133mr33.zip"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
IUSE=""
DEPEND="app-arch/unzip"
RDEPEND=""
S=${WORKDIR}/${PN}
src_prepare() {
epatch "${FILESDIR}"/${P}-gentoo.diff
sed -i support/genmk/makefile \
-e 's| -o genmk| $(COPT) &|g' \
|| die "sed support/genmk/makefile"
}
src_compile() {
emake \
CC="$(tc-getCC)" \
COPT="${CFLAGS} ${LDFLAGS}" \
|| die "compilation failed"
}
src_install() {
# main binaries
dobin bin/{antlr,dlg,genmk,sor} || die
# .c and .cpp files go into /usr/include/pccts also,
# because genmk looks for them for being included in output-files
# (which are c/c++) generated from grammar-files
# right now i include _everything_ just to make sure
# it doesn't break pccts-based projects
#
# if i dive further into the details of genmk.c
# it should be possible to put that stuff into /usr/share/pccts
#
# the M$ and MAC specific stuff gets _not_ included
#
# main includes
insinto /usr/include/pccts
doins h/*.{h,c,cpp} || die
# sorcerer includes
insinto /usr/include/pccts/sorcerer
doins sorcerer/h/*.h || die
# sorcerer libraries
insinto /usr/include/pccts/sorcerer/lib
doins sorcerer/lib/*.{h,c,cpp} || die
# documentation
# leaving out the M$ and MAC stuff
dodoc CHANGES* KNOWN_PROBLEMS* README RIGHTS history.txt history.ps
dodoc sorcerer/README sorcerer/UPDATES
# manual pages
doman dlg/dlg.1 antlr/antlr.1
}
|