Ticket #20039: Portfile

File Portfile, 2.5 KB (added by macports@…, 15 years ago)
Line 
1# $Id$
2
3PortSystem              1.0
4
5name                    ocaml
6version                 3.11.1
7set major_vers  [join [lrange [split ${version} .] 0 1] .]
8platforms               darwin
9maintainers             kallisys.net:pguyot openmaintainer
10categories              lang ml
11description             Objective Caml is an implementation of the ML language
12homepage                http://www.ocaml.org/
13master_sites    http://caml.inria.fr/pub/distrib/ocaml-${major_vers}/
14checksums       ocaml-${version}.tar.bz2 \
15                                        md5 fe011781f37f6b41fe08e0706969a89e \
16                                        sha1 570feab47b34b29f866ecadcc16153d5a4a4f6a1 \
17                                        rmd160 991147354a85b975a86ce2dffafce669c9338db5 \
18                                ocaml-3.11-refman.html.tar.gz \
19                                        md5 bfb4ed960974159f4224014a979baf6d \
20                                        sha1 97159cf3d4ea64d0ca03f04997fdfc00982d22b0 \
21                                        rmd160 8d77630ee0c3dcdae1ef142a59eb876271f1c335
22
23long_description \
24                        Objective Caml is an implementation of the ML language, based on \
25                        the Caml Light dialect extended with a complete class-based object \
26                        system  and a powerful module system in the style of Standard ML.
27
28use_bzip2                       yes
29use_parallel_build      no
30universal_variant   no
31
32set doc_distname        ${name}-${major_vers}-refman
33set docdir                      ${prefix}/share/doc/${name}-${version}
34
35# Configure.
36configure.pre_args      -prefix ${prefix}
37configure.args          -no-tk -cc ${configure.cc} -aspp \"${configure.cc} -c\"
38
39# Building.
40build.target            world.opt
41build.cmd           "unset LD_PREBIND LD_PREBIND_ALLOW_OVERLAP && ${build.cmd}"
42
43# Install.
44destroot.target         install
45destroot.destdir        BINDIR=${destroot}${prefix}/bin \
46                                        LIBDIR=${destroot}${prefix}/lib/ocaml \
47                                        MANDIR=${destroot}${prefix}/share/man
48
49post-destroot {
50        # Change "ld.conf" to remove ${destroot} in paths.
51        reinplace "s:${destroot}::g" ${destroot}${prefix}/lib/ocaml/ld.conf
52}
53
54# Variants.
55variant labltk {
56        depends_lib             lib:tcl8.4:tcl lib:tk8.4:tk
57        configure.args-delete   -no-tk
58}
59
60variant doc description {Install extra documentation} {
61        extract.only        ${distfiles}
62        distfiles-append    ${doc_distname}.html.tar.gz
63
64        post-extract {
65                system "tar xzvf ${distpath}/${doc_distname}.html.tar.gz -C ${workpath}"
66        }
67
68        post-destroot {
69                xinstall -d ${destroot}${docdir}
70                xinstall -m 0644 -W ${worksrcpath} Changes LICENSE README ${destroot}${docdir}
71                xinstall -d ${destroot}${docdir}/html/libref
72                eval xinstall -m 0644 [glob ${workpath}/htmlman/libref/*] \
73                        ${destroot}${docdir}/html/libref
74                eval xinstall -m 0644 [glob ${workpath}/htmlman/*.*] \
75                        ${destroot}${docdir}/html
76        }
77}
78
79livecheck.check regex
80livecheck.url   http://caml.inria.fr/news.en.rss
81livecheck.regex "<title>Objective Caml (.*) released"