aboutsummaryrefslogtreecommitdiffstats
path: root/devel/spin/Makefile
blob: 7abae840588110ecbbb008dfc4870877aa0ad080 (plain) (blame)
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
72
73
74
75
# Ports collection makefile for: spin
# Date created:     Oct 23, 1997
# Whom:         jhanna@home.com
#
# $FreeBSD$
#

PORTNAME=   spin
PORTVERSION=    5.2.2
CATEGORIES= devel
MASTER_SITES=   http://spinroot.com/spin/Src/
DISTNAME=   spin${PORTVERSION:S/.//g}

MAINTAINER= jhanna@shaw.ca
COMMENT=    An on-the-fly verification system for asynchronous concurrent systems

OPTIONS=    XSPIN "Install xspin and TCL/Tk dependency" on

.include <bsd.port.pre.mk>

.if !defined(WITHOUT_XSPIN)
RUN_DEPENDS+=   wish8.4:${PORTSDIR}/x11-toolkits/tk84
PLIST_SUB+= XSPIN=""
XSPIN_TCL=  ${WRKDIR}/Spin/Xspin5.2/xspin521.tcl
.else
PLIST_SUB+= XSPIN="@comment "
.endif

DIST_SUBDIR=    spin
WRKSRC=     ${WRKDIR}/Spin/Src${PORTVERSION}
MAKEFILE=   makefile
ALL_TARGET= spin
MAKE_ARGS=  CC="${CC}" CFLAGS="${CFLAGS} -DNXT"
MAKE_JOBS_UNSAFE=yes

post-extract:
    @${ECHO_MSG} "Unbundling promela example files..."
    @cd ${WRKDIR}/Spin/Test && ${SH} ${WRKDIR}/Spin/Test/examples

.if !defined(WITHOUT_XSPIN)
pre-patch:
    @${TR} -d '\r' < ${XSPIN_TCL} > ${XSPIN_TCL}.tmp
    @${MV} -f ${XSPIN_TCL}.tmp ${XSPIN_TCL}
.endif

.if !defined(WITHOUT_XSPIN)
post-patch:
    @${REINPLACE_CMD} \
        -e "s|%%LOCALBASE%%|${LOCALBASE}|g;" \
        -e "s|%%WISH%%|wish8.4|g" ${XSPIN_TCL}
.endif

do-install:
    ${INSTALL_PROGRAM} ${WRKSRC}/spin ${PREFIX}/bin
.if !defined(WITHOUT_XSPIN)
    ${INSTALL_SCRIPT} ${XSPIN_TCL} ${PREFIX}/bin/xspin
.endif
.if !defined(NOPORTDOCS)
    ${MKDIR} ${DOCSDIR}/Doc
    ${MKDIR} ${DOCSDIR}/Examples
    ${MKDIR} ${DOCSDIR}/Test
    ${INSTALL_DATA} ${WRKDIR}/Spin/Doc/* ${DOCSDIR}/Doc
    ${INSTALL_DATA} ${WRKDIR}/Spin/Test/ex.* ${DOCSDIR}/Examples
.for i in README.tests abp eratosthenes hello leader leader.ltl leader2 \
    leader_trace loops mobile1 mobile1.ltl mobile2 mobile2.ltl \
    pathfinder peterson petersonN pftp priorities snoopy sort wordcount
    ${INSTALL_DATA} ${WRKDIR}/Spin/Test/$i ${DOCSDIR}/Test
.endfor
    ${INSTALL_MAN} ${WRKDIR}/Spin/Man/spin.1 ${PREFIX}/man/man1

MANPAGE_WRKSRC= ${WRKDIR}/Spin/Man
MAN1=       spin.1
.endif

.include <bsd.port.post.mk>