aboutsummaryrefslogtreecommitdiffstats
path: root/math/why3/Makefile.common
blob: 368ed18e666d05cd40d2b5d13ef2b01d9e92a29d (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
# Created by: John Marino <marino@FreeBSD.org>
# $FreeBSD$

BUILD_DEPENDS=  ocaml-zarith>1.2:${PORTSDIR}/math/ocaml-zarith \
        lablgtk2:${PORTSDIR}/x11-toolkits/ocaml-lablgtk2 \
        ocaml-sqlite3>2:${PORTSDIR}/databases/ocaml-sqlite3 \
        ocaml-ocamlgraph>1.8:${PORTSDIR}/math/ocaml-ocamlgraph \
        camlp5o:${PORTSDIR}/devel/ocaml-camlp5

GNU_CONFIGURE=  yes
INSTALL_TARGET= install-all

USES=           gmake
USE_OCAML=      yes
MAKE_JOBS_UNSAFE=   yes

# The FRAMA_C plugin is experimental, it actually doesn't even build
# with ocaml 4.01.  Leave the option commented out for future use.
# There is something wrong with coq, it rebuilds itself in /usr/local.
# Leave it for now with a TO-DO to fix coq

CONFIGURE_ARGS= --enable-relocation \
        --disable-doc \
        --disable-pvs-libs \
        --disable-profiling \
        --disable-coq-tactic \
        --disable-coq-libs \
        --disable-isabelle-libs

.if defined(HAS_MANUAL)
OPTIONS_DEFINE= DOCS #COQ FRAMA_C
.endif

COQ_CONFIGURE_ENABLE=       coq-tactic coq-libs
COQ_DESC=           Build coq realizations and tactics
COQ_BUILD_DEPENDS=      coqc:${PORTSDIR}/math/coq
COQ_RUN_DEPENDS=        coqc:${PORTSDIR}/math/coq
FRAMA_C_CONFIGURE_ENABLE=   frama_c
FRAMA_C_DESC=           Build Frama-C plugin
FRAMA_C_BUILD_DEPENDS=      frama-c:${PORTSDIR}/devel/frama-c
FRAMA_C_RUN_DEPENDS=        frama-c:${PORTSDIR}/devel/frama-c

# The pdf is pre-built, but the makefile wants to build it again in order
# to generate manual.bbl which is used to build the html documention.
# Regenerating pdf fails, and the dependencies are heavy.  Disable this
# all for now and just manually install the pdf.  The "doc" target was
# also removed from ALL_TARGET
#
#DOCS_CONFIGURE_ENABLE=     doc
#DOCS_BUILD_DEPENDS=        rubber:${PORTSDIR}/textproc/rubber \
#               hevea:${PORTSDIR}/textproc/hevea

.include <bsd.port.options.mk>

post-patch:
    @${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|g' \
        ${WRKSRC}/src/util/sysutil.ml \
        ${WRKSRC}/src/jessie/Makefile.in

post-install:
.if ${PORT_OPTIONS:MDOCS}
.  if defined(HAS_MANUAL)
    ${MKDIR} ${STAGEDIR}${DOCSDIR}
    ${INSTALL_DATA} ${WRKSRC}/doc/manual.pdf ${STAGEDIR}${DOCSDIR}
.  endif
.endif