summaryrefslogtreecommitdiff
path: root/devel/gobo-eiffel/Makefile
blob: d7dca843114125b072d031dbc31e91579dfa8fc9 (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
# $NetBSD: Makefile,v 1.19 2008/05/26 02:13:17 joerg Exp $
#

DISTNAME=	gobo15
PKGNAME=	gobo-eiffel-1.5
PKGREVISION=	3
CATEGORIES=	devel
MASTER_SITES=	ftp://ftp.eiffel.com/pub/shelf/bezault/
EXTRACT_SUFX=	.zip

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	http://www.gobosoft.com/
COMMENT=	Portable Eiffel structure libraries and tools

PKG_DESTDIR_SUPPORT=	user-destdir

BUILD_DEPENDS+=	SmartEiffel-[0-9]*:../../lang/SmartEiffel
USE_TOOLS+=	pax

EXTRACT_OPTS_ZIP=	-uLa

WRKSRC=		${WRKDIR}
GOBO=		${PREFIX}/share/gobo-eiffel

INSTALLATION_DIRS+=	bin share/gogo-eiffel share/doc/gogo-eiffel
INSTALLATION_DIRS+=	share/examples/gobo-eiffel

post-extract:
	${RM} -rf ${WRKSRC}/bin
	for dir in doc example library; do 				\
	${FIND} ${WRKSRC}/$$dir ! -type d | ${XARGS} ${CHMOD} 644;	\
	${FIND} ${WRKSRC}/$$dir -type d | ${XARGS} ${CHMOD} 755;	\
	done

pre-build:
	for file in `${FIND} ${WRKSRC} -name "se.sh" -print`; do \
		${SED} -e "s,compile,smalleiffel compile -verbose -O2," \
			$${file} > $${file}.tmp; \
		${RM} -f $${file}; \
		${MV} -f $${file}.tmp $${file}; \
	done

do-build:
	cd ${WRKSRC}/src/gelex; GOBO=${WRKSRC} ${SH} se.sh
	cd ${WRKSRC}/src/gepp; GOBO=${WRKSRC} ${SH} se.sh
	cd ${WRKSRC}/src/geyacc; GOBO=${WRKSRC} ${SH} se.sh

pre-install:
	for file in `${FIND} ${WRKSRC} -name "loadpath.se" -print`; do \
		${SED} -e "s,\$${GOBO},${GOBO}," $${file} > $${file}.tmp; \
		${RM} -f $${file}; \
		${MV} -f $${file}.tmp $${file}; \
	done

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/src/gelex/a.out ${DESTDIR}${PREFIX}/bin/gelex
	${INSTALL_PROGRAM} ${WRKSRC}/src/gepp/a.out ${DESTDIR}${PREFIX}/bin/gepp
	${INSTALL_PROGRAM} ${WRKSRC}/src/geyacc/a.out ${DESTDIR}${PREFIX}/bin/geyacc
	cd ${WRKSRC}; pax -rw library ${DESTDIR}${GOBO}
	${CHOWN} ${SHAREOWN}:${SHAREGRP} ${DESTDIR}${GOBO}
	cd ${WRKSRC}/doc; pax -rw * ${DESTDIR}${PREFIX}/share/doc/gobo-eiffel
	${CHOWN} ${SHAREOWN}:${SHAREGRP} ${DESTDIR}${PREFIX}/share/doc/gobo-eiffel
	cd ${WRKSRC}/example; pax -rw * ${DESTDIR}${PREFIX}/share/examples/gobo-eiffel
	${CHOWN} ${SHAREOWN}:${SHAREGRP} ${DESTDIR}${PREFIX}/share/examples/gobo-eiffel

.include "../../mk/bsd.pkg.mk"