source: trunk/dports/lang/squeak/Portfile @ 36647

Last change on this file since 36647 was 36647, checked in by ryandesign@…, 12 years ago

squeak: whitespace changes only (trailing spaces)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.1 KB
Line 
1# $Id: Portfile 36647 2008-05-09 09:09:13Z ryandesign@macports.org $
2
3PortSystem              1.0
4
5name                    squeak
6version                 3.9
7categories              lang squeak
8maintainers             nomaintainer
9description             Full, portable, Smalltalk-80 system
10long_description        \
11        Squeak is a full-featured implementation of the Smalltalk programming \
12        language and environment based on (and largely compatible with) the \
13        original Smalltalk-80 system.  Squeak has very powerful 2- and 3-D \
14        graphics, sound, video, MIDI, animation and other multimedia \
15        capabilities -- and one of the most impressive development \
16        environments ever created.  It also includes a customisable framework \
17        for creating dynamic HTTP servers and interactively extensible Web \
18        sites.  The entire Squeak system is open source software, distributed \
19        freely with a liberal license.
20platforms               darwin
21homepage                ftp://ftp.squeak.org
22
23set squeak_vm_version   3.9-8
24set squeak_img_version  3.9
25set squeak_short_vrsn   39
26set squeak_patch_no     7067
27set squeak_vm_src       Squeak-${squeak_vm_version}.src.tar
28set squeak_img_name     Squeak${squeak_img_version}-final-${squeak_patch_no}
29set squeak_img          ${squeak_img_name}.image
30set squeak_img_changes  ${squeak_img_name}.changes
31set squeak_img_src      ${squeak_img_name}.zip
32
33master_sites            http://www.squeakvm.org/unix/release/ \
34                        ftp://ftp.squeak.org/3.8/unix-linux \
35                        ftp://ftp.squeak.org/${squeak_img_version}/
36
37distname                Squeak-${squeak_img_version}
38distfiles               ${squeak_vm_src}.gz ${squeak_img_src}
39
40checksums               ${squeak_vm_src}.gz md5 645ef7e321c61601c9c70d94fa9417e4 \
41                        ${squeak_img_src} md5 30d991c418be1cd9c5d05fb87dea2f19
42
43default_variants        +quartz
44
45extract.only            ${squeak_vm_src}.gz
46post-extract {
47        system          "cd ${workpath} && mv Squeak-${squeak_vm_version} Squeak-${squeak_img_version}"
48        file mkdir      ${worksrcpath}/build
49        # should do that but requires to rerun autoconf, I prefer to just patch inisqueak instead
50        # reinplace     "s|imgdir=`eval echo \${libdir}/squeak`|imgdir=`eval echo \${datadir}`|" ${worksrcpath}/platforms/unix/config/configure.ac
51        # reinplace     "s|plgdir=`eval echo \${imgdir}/\${VM_VERSION}`|plgdir=`eval echo \${libdir}/squeak/\${VM_VERSION}|" ${worksrcpath}/platforms/unix/config/configure.ac
52}
53
54configure.cmd           ../platforms/unix/config/configure
55configure.dir           ${worksrcpath}/build
56configure.args          --libdir=${prefix}/lib \
57                        --mandir=${prefix}/share/man \
58                        --without-quartz --without-x
59
60build.dir               ${worksrcpath}/build
61build.type              gnu
62
63destroot.destdir         ROOT=${destroot}
64
65post-destroot {
66        set unzip       "[binaryInPath "unzip"] -o"
67        set gzip        "[binaryInPath "gzip"] -f"
68       
69        set datadir     ${prefix}/share/squeak
70       
71        # Have inisqueak look at the right place
72        reinplace       "s|MAJOR=3|MAJOR=${squeak_short_vrsn}|" ${worksrcpath}/build/inisqueak
73        reinplace       "s|imgdir=${prefix}/lib/squeak|imgdir=${datadir}|" ${worksrcpath}/build/inisqueak
74
75        # Install inisqueak
76        xinstall        -m 755 ${worksrcpath}/build/inisqueak \
77                                ${destroot}${prefix}/bin/
78       
79        # fix bad doc install path (should use --docdir or --datarootdir during configure)
80        xinstall        -d ${destroot}${datadir}
81        move            ${destroot}${prefix}/doc ${destroot}${prefix}/share
82       
83        # Recompress and install the default image
84        system          "cd ${worksrcpath} && ${unzip} ${distpath}/${squeak_img_src}"
85        system          "cd ${worksrcpath} && ${gzip} ${squeak_img_name}/${squeak_img}"
86        system          "cd ${worksrcpath} && ${gzip} ${squeak_img_name}/${squeak_img_changes}"
87        xinstall        -d ${destroot}${datadir}
88        xinstall        -m 644 ${worksrcpath}/${squeak_img_name}/${squeak_img}.gz \
89                                ${destroot}${datadir}
90        xinstall        -m 644 ${worksrcpath}/${squeak_img_name}/${squeak_img_changes}.gz \
91                                ${destroot}${datadir}
92        xinstall        -m 644 ${worksrcpath}/${squeak_img_name}/WelcomeSqueak${squeak_short_vrsn} \
93                                ${destroot}${datadir}
94        xinstall        -m 644 ${worksrcpath}/${squeak_img_name}/SqueakV${squeak_short_vrsn}.sources \
95                                ${destroot}${datadir}
96
97        # Link compressed image and changes
98        system          "cd ${destroot}${datadir} && ln -s ${squeak_img}.gz squeak.image.gz"
99        system          "cd ${destroot}${datadir} && ln -s ${squeak_img_changes}.gz squeak.changes.gz"
100}
101
102variant quartz  {
103        configure.args-delete   --without-quartz
104        configure.args-append   --with-quartz
105}
106
107variant x11     {
108        depends_lib-append      lib:libX11:XFree86
109        configure.args-delete   --without-x
110        configure.args-append   --with-x
111}
112
Note: See TracBrowser for help on using the repository browser.