source: trunk/dports/devel/pficommon/Portfile

Last change on this file was 127177, checked in by hum@…, 3 years ago

pficommon: update to 20141020.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.5 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 127177 2014-10-22 10:34:11Z ryandesign@macports.org $
3
4PortSystem          1.0
5PortGroup           github 1.0
6PortGroup           waf 1.0 
7
8github.setup        pfi pficommon 83ea9e102fbe9dfd788f49b69f18585355f64692
9version             20141020
10
11categories          devel
12maintainers         hum openmaintainer
13
14description         Common Library of C++
15long_description    ${name} is a general purpose C++ library.
16
17platforms           darwin
18license             BSD
19
20checksums           rmd160  d6db87aeecf629d5591998ce75daad63800580bd \
21                    sha256  1249c1fc0d7b125690a318d84bbe7eee60fad463d6c136adad6072edf8ea1540
22
23patchfiles          patch-wscript.diff
24
25platform darwin {
26    if {${os.major} <= 10} {
27        pre-fetch {
28            ui_error "$name does not build on Snow Leopard or earlier."
29            error "unsupported platform"
30        }
31    } elseif {${os.major} >= 13} {
32        pre-fetch {
33            ui_error "$name does not build on Mavericks or later."
34            error "unsupported platform"
35        }
36    }
37}
38
39# optional database: my = MySQL, pg = PostgreSQL.
40set my_pkg          mysql56
41set pg_version      94
42
43post-patch {
44    set mysql_config    ${prefix}/lib/${my_pkg}/bin/mysql_config
45    set pg_config       ${prefix}/lib/postgresql${pg_version}/bin/pg_config
46    reinplace "s|@mysql_config@|${mysql_config}|g" ${worksrcpath}/src/database/wscript
47    reinplace "s|@pg_config@|${pg_config}|g"       ${worksrcpath}/src/database/wscript
48}
49
50# msgpack for jubatus.
51default_variants    +mprpc
52
53configure.args-append     --disable-mysql \
54                          --disable-postgresql \
55                          --disable-mprpc \
56                          --disable-fcgi \
57                          --disable-magickpp 
58
59variant mysql56 conflicts mysql55 mysql51 mariadb percona description {Enable MySQL 5.6} {
60    depends_lib-append    port:mysql56
61    set my_pkg            mysql56
62    configure.args-delete --disable-mysql
63}
64
65variant mysql55 conflicts mysql56 mysql51 mariadb percona description {Enable MySQL 5.5} {
66    depends_lib-append    port:mysql55
67    set my_pkg            mysql55
68    configure.args-delete --disable-mysql
69}
70
71variant mysql51 conflicts mysql56 mysql55 mariadb percona description {Enable MySQL 5.1} {
72    depends_lib-append    port:mysql51
73    set my_pkg            mysql51
74    configure.args-delete --disable-mysql
75}
76
77variant mariadb conflicts mysql56 mysql55 mysql51 percona description {Enable MariaDB} {
78    depends_lib-append    port:mariadb
79    set my_pkg            mariadb
80    configure.args-delete --disable-mysql
81}
82
83variant percona conflicts mysql56 mysql55 mysql51 mysql5 mariadb description {Enable Percona} {
84    depends_lib-append    port:percona
85    set my_pkg            percona
86    configure.args-delete --disable-mysql
87}
88
89variant postgresql94 conflicts postgresql93 postgresql92 postgresql91 postgresql90 postgresql84 description {Enable PostgreSQL 9.4} {
90    depends_lib-append    port:postgresql94
91    set pg_version        94
92    configure.args-delete --disable-postgresql
93}
94
95variant postgresql93 conflicts postgresql94 postgresql92 postgresql91 postgresql90 postgresql84 description {Enable PostgreSQL 9.3} {
96    depends_lib-append    port:postgresql93
97    set pg_version        93
98    configure.args-delete --disable-postgresql
99}
100
101variant postgresql92 conflicts postgresql94 postgresql93 postgresql91 postgresql90 postgresql84 description {Enable PostgreSQL 9.2} {
102    depends_lib-append    port:postgresql92
103    set pg_version        92
104    configure.args-delete --disable-postgresql
105}
106
107variant postgresql91 conflicts postgresql94 postgresql93 postgresql92 postgresql90 postgresql84 description {Enable PostgreSQL 9.1} {
108    depends_lib-append    port:postgresql91
109    set pg_version        91
110    configure.args-delete --disable-postgresql
111}
112
113variant postgresql90 conflicts postgresql94 postgresql93 postgresql92 postgresql91 postgresql84 description {Enable PostgreSQL 9.0} {
114    depends_lib-append    port:postgresql90
115    set pg_version        90
116    configure.args-delete --disable-postgresql
117}
118
119variant postgresql84 conflicts postgresql94 postgresql93 postgresql92 postgresql91 postgresql90 description {Enable PostgreSQL 8.4} {
120    depends_lib-append    port:postgresql84
121    set pg_version        84
122    configure.args-delete --disable-postgresql
123}
124
125variant fcgi description {Enable FastCGI module} {
126    depends_lib-append    port:fcgi
127    configure.args-replace s|--disable-fcgi|--with-fcgi=${prefix}|
128}
129
130variant mprpc description {Enable MessagePack RPC module} {
131    depends_lib-append    port:msgpack
132    configure.args-delete --disable-mprpc
133}
134
135variant magickpp description {Enable Magick++ of ImageMagick module} {
136    depends_lib-append    port:ImageMagick
137    configure.args-delete --disable-magickpp
138}
139
140post-destroot {
141    set libdir   ${destroot}${prefix}/lib
142    foreach libname [glob -tails -directory ${libdir} *.dylib] {
143        system "install_name_tool -id ${prefix}/lib/${libname} ${libdir}/${libname}"
144    }
145    set bindir   ${destroot}${prefix}/bin
146    set builddir ${worksrcpath}/build/src
147    foreach path [concat [glob ${libdir}/*.dylib] ${bindir}/genrpc] {
148        set libpathes [regexp -all -inline {\S+\/libpficommon\S+dylib \(} [exec otool -L ${path}]]
149        foreach libpath ${libpathes} {
150            regexp {\S+\/(libpficommon\S+dylib)} ${libpath} srcpath libname
151            system "install_name_tool -change ${srcpath} ${prefix}/lib/${libname} ${path}"
152        }
153    }
154}
Note: See TracBrowser for help on using the repository browser.