source: trunk/dports/devel/jam/Portfile

Last change on this file was 125076, checked in by ryandesign@…, 3 years ago

jam: remove nonworking master_sites

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.4 KB
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 125076 2014-09-04 18:13:05Z ryandesign@macports.org $
3
4PortSystem          1.0
5name                jam
6version             2.5
7# The version didn't change, but the binary did because it was upgraded
8# from rc3 to 2.5.
9revision            2
10categories          devel
11license             Permissive
12maintainers         nomaintainer
13
14# Attempts to install the same executable.
15conflicts           ftjam
16
17description         a software build tool like make
18long_description    Jam is a software build tool (like make) from \
19                    Perforce. It is very powerful tool and it is \
20                    used for various projects. It is particularly \
21                    adapted for C/C++ development, multiplatform \
22                    projects or builds spread on several processors. \
23                    Mac OS X developer tools actually include a \
24                    customized version of it.
25homepage            http://www.perforce.com/jam/jam.html
26master_sites        ftp://ftp.perforce.com/jam/
27
28distfiles           ${name}-${version}.tar
29dist_subdir         ${name}/${version}
30
31checksums           md5 c7eb7719d8523c0f819116479492d367 \
32                    sha1 421c1b308c3c3dc4c95c0640078416af2195d841 \
33                    rmd160 34497c89ca4bbd1db049627e2dfcc1287138af24
34platforms           darwin
35
36universal_variant   yes
37
38# This is a .tar file.
39extract.cmd         tar -xf
40extract.pre_args
41extract.post_args
42
43# Enables post-patch options & Matt Armstrong memory leak patch.
44patchfiles          patch-Makefile.diff \
45                    patch-variable.c.diff
46
47post-patch {
48    # fix up reminder of Makefile, depending on variants
49    set EXTRA ""
50    set CFLAGS "-O3"
51    if {[variant_isset debug]} {
52        set CFLAGS "-O0"
53        set EXTRA "-sDEBUG=1"
54    } elseif {[variant_isset mw]} {
55        set CFLAGS "-opt all"
56        set EXTRA "-sCC=mwccppc"
57    }
58    reinplace "s|@CFLAGS@|${CFLAGS}|g" ${worksrcpath}/Makefile
59    reinplace "s|@EXTRA@|${EXTRA}|g" ${worksrcpath}/Makefile
60
61    # fix up Jamfile to always install to the same directory, no
62    # matter if debug or regular build
63    reinplace "s@/g@@g" ${worksrcpath}/Jamfile
64}
65
66# Jam doesn't have a configure script
67use_configure       no
68
69pre-build {
70    build.cmd-append    CC="${configure.cc}" \
71                        CFLAGS=\"[get_canonical_archflags]\"
72}
73
74# Installation.
75destroot {
76    # retrieve directory name where files are installed
77    # (there is only 1 with the name "bin*")
78    set bindir [exec find ${worksrcpath} -name "bin*"]
79
80    # install binaries
81    xinstall -d -m 755 ${destroot}${prefix}/bin
82    xinstall -m 755 ${bindir}/jam ${destroot}${prefix}/bin
83    xinstall -m 755 ${bindir}/mkjambase ${destroot}${prefix}/bin
84
85    # install library
86    xinstall -d -m 755 ${destroot}${prefix}/lib
87    xinstall -m 644 ${bindir}/libjam.a ${destroot}${prefix}/lib
88
89    # install documents
90    xinstall -d -m 755 ${destroot}${prefix}/share/doc/${name}
91    xinstall -m 644 -W ${worksrcpath} \
92        Jam.html Jambase.html Jamfile.html README RELNOTES \
93        ${destroot}${prefix}/share/doc/${name}
94}
95
96variant mw conflicts debug description {Use Metrowerks compiler} {}
97
98variant debug conflicts mw description {Build with debug options but no optimization} {}
99
100livecheck.type      md5
101livecheck.url       ftp://ftp.perforce.com/jam/
102livecheck.md5       37e6a5b6516a680c7178b72021d3b706
Note: See TracBrowser for help on using the repository browser.