1 | # $Id: $ |
---|
2 | PortSystem 1.0 |
---|
3 | name polyml |
---|
4 | version 4.1.3 |
---|
5 | categories lang |
---|
6 | maintainers dem5302@cs.rit.edu |
---|
7 | description An implementation of Standard ML. |
---|
8 | long_description \ |
---|
9 | Poly/ML is an extremely fast and efficient implementation of \ |
---|
10 | Standard ML. Program state can be saved in a memory-mapped \ |
---|
11 | persistent store. There are numerous addon libraries available. |
---|
12 | |
---|
13 | homepage http://www.polyml.org |
---|
14 | master_sites http://www.polyml.org/source/ \ |
---|
15 | http://www.polyml.org/dbases/ |
---|
16 | |
---|
17 | distfiles ${name}-driver-${version}.tar.gz \ |
---|
18 | ${name}-basis-${version}.tar.gz \ |
---|
19 | ${name}-mlsource-${version}.tar.gz \ |
---|
20 | ${name}-${version}.ppc.tar.gz |
---|
21 | |
---|
22 | patchfiles patch-configure.diff patch-BuildAll.diff |
---|
23 | |
---|
24 | checksums ${name}-driver-${version}.tar.gz md5 814cea1cfb376d4bb3977f78bad3d5eb \ |
---|
25 | ${name}-basis-${version}.tar.gz md5 aaaebb967ddafcbf9ff27ea815be5414 \ |
---|
26 | ${name}-mlsource-${version}.tar.gz md5 c316411eb44e61bc85762e5742761936 \ |
---|
27 | ${name}-${version}.ppc.tar.gz md5 7f9f0911ce15a146cc002ac55efc34c2 |
---|
28 | |
---|
29 | # The compiler comes in four archives, so make a top level directory |
---|
30 | # to extract them in. |
---|
31 | pre-extract { |
---|
32 | exec mkdir ${workdir}/${name}-${version}; |
---|
33 | } |
---|
34 | |
---|
35 | extract.post_args "| tar -x -C $name-$version" |
---|
36 | |
---|
37 | |
---|
38 | # File layout is rather non-standard, so configuration will be manual. |
---|
39 | configure { |
---|
40 | cd driver; |
---|
41 | system "./configure"; |
---|
42 | cd ../mlsource/MLCompiler/CodeTree; |
---|
43 | system "ln -s CodeCons.power CodeCons"; |
---|
44 | cd ../../..; |
---|
45 | } |
---|
46 | |
---|
47 | # We need to build the base driver, and then bootstrap the ML database |
---|
48 | # with the precompiled ML_dbase. |
---|
49 | build { |
---|
50 | cd driver; |
---|
51 | system "make"; |
---|
52 | cd ..; |
---|
53 | system "./driver/poly ML_dbase < mlsource/BuildAll.sml"; |
---|
54 | } |
---|
55 | |
---|
56 | # The entire compiler is two files: the driver binary and the database. |
---|
57 | destroot { |
---|
58 | system "mkdir -p ../destroot/opt/local/bin"; |
---|
59 | system "mkdir -p ../destroot/opt/local/lib/poly"; |
---|
60 | cd driver; |
---|
61 | system "make install"; |
---|
62 | cd ..; |
---|
63 | system "cp DB413Release ../destroot/opt/local/lib/poly/ML_dbase"; |
---|
64 | } |
---|