source: trunk/dports/security/shibboleth/Portfile @ 90791

Last change on this file since 90791 was 90791, checked in by snc@…, 8 years ago

shibboleth: use system -W

  • 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 90791 2012-03-14 18:58:43Z snc@macports.org $
3
4PortSystem          1.0
5
6name                shibboleth
7version             2.4.3
8revision        1
9categories          security www shibboleth
10license             Apache
11maintainers         snc scantor
12description         Shibboleth Native Service Provider
13long_description    The Shibboleth System is a standards based, open source \
14                    software package for web single sign-on across or within \
15                    organizational boundaries. It allows sites to make \
16                    informed authorization decisions for individual access of \
17                    protected online resources in a privacy-preserving manner.
18
19homepage            http://shibboleth.internet2.edu/
20
21platforms           darwin
22depends_lib         port:opensaml \
23                    port:xmltooling \
24                    port:xercesc3 \
25                    port:xml-security-c \
26                    port:log4shib
27
28pre-fetch {
29    set status 0
30    if {[catch {exec ${prefix}/bin/curl --version | grep SSL} results]} {
31        if {[lindex $::errorCode 0] eq "CHILDSTATUS"} {
32            set status [lindex $::errorCode 2]
33        } else {
34            set status [lindex $::errorCode 3]
35        }
36    }
37    if {${status} != 0} {
38        return -code error "\n
39    ${name} requires curl to be installed with SSL support.
40    Please deactivate your current curl installation and
41    install the proper version of curl:
42        sudo port deactivate curl
43        sudo port install curl +ssl\n"
44    }
45}
46master_sites        http://www.shibboleth.net/downloads/service-provider/${version}/
47distname            ${name}-sp-${version}
48worksrcdir          ${name}-${version}
49checksums           rmd160  e2a909f5ea49d6c295056cc3530708fc5534eb63 \
50                    sha256  9e0b219707046b55d0ca38627fb213b799ac98cf11541845b7e6b036a89dcdcf
51
52configure.args      --with-xmltooling=${prefix} \
53                    --with-opensaml=${prefix} \
54                    --with-xerces=${prefix} \
55                    --with-xmlsec=${prefix}
56
57variant odbc description {enable odbc support} {
58        depends_lib-append port:unixODBC
59        configure.args-append --enable-odbc
60}
61
62destroot.keepdirs ${destroot}${prefix}/var/log/${name} ${destroot}${prefix}/var/log/httpd ${destroot}${prefix}/var/run/${name}
63
64destroot.args   NOKEYGEN=1
65
66post-destroot {
67        eval file delete [glob ${destroot}${prefix}/etc/${name}/*.logger]
68        eval file delete [glob ${destroot}${prefix}/etc/${name}/*.html]
69        eval file delete [glob ${destroot}${prefix}/etc/${name}/*.xml]
70        eval file delete [glob ${destroot}${prefix}/etc/${name}/shibd-*]
71        eval file delete [glob ${destroot}${prefix}/lib/${name}/*.la]
72}
73
74post-activate {
75    # Make sure initial conf files are present and set up correctly
76    set confDir ${prefix}/etc/${name}
77    foreach f [glob -tails -directory ${confDir} *.dist] {
78        regexp {(.+)\.dist} $f ign destname
79        if {![file exists ${confDir}/${destname}]} {
80            file copy ${confDir}/${f} ${confDir}/${destname}
81        }
82    }
83    system -W ${prefix}/etc/${name} "./keygen.sh -b"
84}
85
86startupitem.create      yes
87startupitem.name        shibd
88startupitem.executable  ${prefix}/sbin/shibd -F -f -p ${prefix}/var/run/${name}/shibd.pid
89
90livecheck.type          regex
91livecheck.url           http://www.shibboleth.net/downloads/service-provider/latest/
92livecheck.regex         ${name}-sp-(\\d+\\.\\d+(\\.\\d+)?)
Note: See TracBrowser for help on using the repository browser.