aboutsummaryrefslogtreecommitdiffstats
path: root/textproc/sml-fxp/Makefile
blob: ffef37b04fdde03f98e83f0c3ffdd0b72ffd7eea (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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# Created by: Timothy Bourke <timbob@bigpond.com>
# $FreeBSD$

PORTNAME=   sml-fxp
PORTVERSION=    2.0
PORTREVISION=   1
CATEGORIES= textproc
MASTER_SITES=   http://www2.informatik.tu-muenchen.de/~berlea/Fxp/ \
        http://www.tbrk.org/distfiles/
DISTNAME=   fxp-${PORTVERSION}

MAINTAINER= ports@FreeBSD.org
COMMENT=    Validating XML parser with Standard ML interface

# DEVEL MLTON STABILIZATION  Result
#  Off   Off     Off         build apps with sml-nj (no stabilization)
#  On    Off     Off         build apps with sml-nj-devel (no stabilization)
#  Off   On      Off         build apps with mlton (no stabilization)
#  On    On      Off         as above
#  Off   Off     On          build apps and stabilize with sml-nj
#  On    Off     On          build apps and stabilize with sml-nj-devel
#  Off   On      On          apps with mlton, stabilize for sml-nj
#  On    On      On          apps with mlton, stabilize for sml-nj-devel
OPTIONS_DEFINE= X11 STABILIZATION DEVEL MLTON DOCS
OPTIONS_DEFAULT=    X11 STABILIZATION DEVEL
STABILIZATION_DESC= Stabilize the libraries for SML/NJ.
DEVEL_DESC= Prefer the devel version of SML/NJ.
MLTON_DESC= Build executables with mlton.

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MX11}
RUN_DEPENDS+=   xvcg:${PORTSDIR}/graphics/vcg
.endif

.if ${PORT_OPTIONS:MSTABILITATION} || empty(PORT_OPTIONS:MMLTON)
.if ${PORT_OPTIONS:MDEVEL}
BUILD_DEPENDS+= smlnj-devel>=110.65:${PORTSDIR}/lang/sml-nj-devel

MAKE_ENV+=  SMLNJ_DEVEL=yes
.else
BUILD_DEPENDS+= smlnj>=0:${PORTSDIR}/lang/sml-nj
RUN_DEPENDS+=   smlnj>=0:${PORTSDIR}/lang/sml-nj

MAKE_ENV+=  SMLNJ=yes
.endif
.endif

.if ${PORT_OPTIONS:MMLTON}
PLIST_SUB+= SML_EXEC="@comment " SML_EXEC_DEVEL="@comment "
.elif ${PORT_OPTIONS:MDEVEL}
PLIST_SUB+= SML_EXEC="@comment " SML_EXEC_DEVEL=""
.else
PLIST_SUB+= SML_EXEC="" SML_EXEC_DEVEL="@comment "
.endif

.if ${PORT_OPTIONS:MSTABILIZATION}
MAKE_ENV+=  STABILIZE=yes

.if ${PORT_OPTIONS:MDEVEL}
PLIST_SUB+= STABLE="@comment " STABLE_DEVEL=""
.else
PLIST_SUB+= STABLE="" STABLE_DEVEL="@comment "
.endif

.else
PLIST_SUB+= STABLE="@comment " STABLE_DEVEL="@comment "
.endif

.if ${PORT_OPTIONS:MSTABILITATION} || !empty(PORT_OPTIONS:MDEVEL)
RUN_DEPENDS+=   smlnj-devel>=110.65:${PORTSDIR}/lang/sml-nj-devel
.endif

.if ${PORT_OPTIONS:MMLTON}
BUILD_DEPENDS+= mlton:${PORTSDIR}/lang/mlton
MAKE_ENV+=  MLTON_BUILD=yes
.endif

.if empty(PORT_OPTIONS:MMLTON) &&  empty(PORT_OPTIONS:MDEVEL)
MAKE_ENV+=  NO_HEAP2EXEC=yes
PLIST_SUB+= SML_EXEC=""
.else
PLIST_SUB+= SML_EXEC="@comment "
.endif

.if ${PORT_OPTIONS:MDOCS}
INSTALL_TARGET=install install-doc
.endif

#
# Installation rationale and compromises
#
# * fxp applications are installed
#   sml-nj: script + heap file, sml-nj-devel/mlton: binary
#
# * fxp source code is installed
#   Making this optional would further complicate the port.
#   The porter currently believes that fxp is of primary interest to sml
#   developers. He is willing to consider otherwise.
#
# * source code for Apps is not installed
#   The Apps do not belong to the library proper (but they are useful as
#   examples).
#
# * a single cm library file is installed (if stabilization occurs)
#   for efficient operation of library consumers written in SML/NJ.
#   The other .cm file and directories would make recompilation faster,
#   but are otherwise unnecessary.
#
# Note: reinstallation of SML/NJ seems to require restabilisation of
#       libraries.
#

post-extract:
    @for f in $$(${LS} ${FILESDIR}/src-*); do           \
        e=$$(${ECHO} $$f|${SED} 's|^${FILESDIR}/\(.*\)|\1|; \
                     s|-|/|g');         \
        ${CP} $$f ${WRKSRC}/$$e;                \
    done

post-patch:
    @for f in $$(${LS} ${FILESDIR}/patch-*.sml); do               \
        e=$$(${ECHO} $$f|${SED} 's|^${FILESDIR}/patch-\(.*\).sml|\1|; \
                     s|-|/|g');               \
        ${MV} ${WRKSRC}/$$e.sml.orig ${WRKSRC}/$$e.orig.sml;          \
    done

.include <bsd.port.mk>
slaves ports for Aspell's new dictionaries.thierry2004-08-293-0/+22 * Fix build with gcc 3.4arved2004-08-172-0/+22 * Factor out all but one of the build switches of the KDE main module portslofi2004-08-112-3/+3 * - Add the X_WINDOW_SYSTEM={xorg,xfree86-4,xfree86-3} variable to bsd.port.mk,anholt2004-07-241-1/+1 * Set an expiry date of 2004-08-20 for these BROKEN/IGNORE/FORBIDDENkris2004-06-221-0/+2 * - Update to 0.100pav2004-06-173-60/+64 * Unbreak.thierry2004-06-113-8/+26 * Update to version 3.2.3lofi2004-06-104-4/+24 * Oops. Forgot the language categories.lofi2004-05-072-3/+3 * Update to KDE 3.2.2lofi2004-04-204-36/+4 * Trim whitespace.trevor2004-04-111-52/+52 * Remove category pkg/COMMENT files in favour of a COMMENT variable in thekris2004-04-022-1/+2 * SIZEify (maintainer timeout)trevor2004-03-313-0/+3 * SIZEify.trevor2004-03-181-0/+1 * Update to KDE 3.2.1 / QT 3.3.1lofi2004-03-105-4/+7 * Pine versions before 4.58 contain remotely exploitable vulnerabilities.nectar2004-02-131-0/+2 * Update to version 0.93.linimon2004-02-112-5/+6 * Reset bouncing maintainer addresskris2004-02-081-1/+1 * Update to KDE 3.2.0lofi2004-02-059-22/+81 * Bump PORTREVISION on all ports that depend on gettext to aid with upgrading.marcus2004-02-042-0/+2 * Add USE_GETTEXT and bump PORTREVISION.marcus2004-02-043-6/+6 * Now gettext 0.12.1 is gettext-old.trevor2004-01-243-3/+3 * Mark as broken on recent versions of 5.x due to the gcc3.3 import.linimon2003-12-221-1/+7 * Translation update: fix checksum.will2003-09-222-2/+2 * Upgrade to Qt 3.2.1 / KDE 3.1.4. See x11/kde3/Makefile rev 1.64 for details.will2003-09-182-2/+2 * Update hebrew/culmusedwin2003-09-045-34/+40 * Moved to a C frontend, instead of perl.leeym2003-08-074-34/+13 * Update KDE to the latest official release, KDE 3.1.3lofi2003-07-294-2/+6 * Update to KDE 3.1.2lioux2003-05-206-8/+12 * New port: localized messages and documentation for kofficelioux2003-05-205-0/+71 * upgrade to 0.5ijliao2003-05-095-16/+40 * Repo-move KDE I18N hebrew, hungarian, & vietnamese messages to theirwill2003-04-147-4/+13 * new port: Hebrew Type1 fontsedwin2003-04-146-0/+109 * typo USE_PERL -> USE_PERL5edwin2003-04-051-1/+1 * new port: Hebrew spellchecker and morphology engineedwin2003-04-027-0/+83 * Clear moonlight beckons.ade2003-03-074-2/+2 * De-pkg-comment.knu2003-02-216-3/+3 * Upgrade kde-i18n to 3.1. Note that the following modules did not get awill2003-01-294-36/+256