Ticket #36130: Portfile.2

File Portfile.2, 5.3 KB (added by ci42, 12 years ago)
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$
3
4PortSystem          1.0
5PortGroup           cmake 1.0
6
7PortGroup           github 1.0
8github.setup        idiap bob 1.0.6 v
9
10name                bob
11version             1.0.6
12set soversion       1.0
13revision            1
14categories          science math devel
15platforms           darwin
16maintainers         idiap.ch:andre.anjos \
17                    idiap.ch:laurent.el-shafey \
18                    idiap.ch:sebastien.marcel \
19                    idiap.ch:manuel.guenther \
20                    idiap.ch:ivana.chingovska \
21                    idiap.ch:elie.khoury
22
23description         Bob is a signal-processing and machine learning toolbox
24
25long_description    Bob is a signal-processing and machine learning toolbox \
26                    developed at the Idiap Research Institute, in Martigny, \
27                    Switzerland. The toolbox is written in a mix of Python \
28                    and C++ and is designed to be both efficient and to \
29                    reduce development time.
30
31license             GPL-3
32
33checksums           rmd160  61e00367cfa0c1997ce9a23c99ae8b7a0bcf5c1a \
34                    sha256  6b54cfb2de0f60ff5f0f98ff72a84d79a8a4d66ad1d5e2ec64ad7c0311ed57bf
35
36use_parallel_build  no
37
38depends_lib         port:blitz \
39                    port:ffmpeg \
40                    port:matio \
41                    port:imagemagick \
42                    port:hdf5-18 \
43                    port:boost \
44                    port:fftw-3 \
45                    port:vlfeat \
46                    port:libsvm
47
48configure.args      -DCMAKE_BUILD_TYPE=Release -DBOB_VERSION=${version} -DBOB_SOVERSION=${soversion}
49
50compiler.blacklist clang
51
52
53universal_variant    no
54default_variants     +qt4 +opencv
55
56if {![variant_isset python25] && ![variant_isset python26]} {
57    default_variants-append +python27
58}
59
60
61variant python25 conflicts python26 python27 description "Builds for python 2.5." {
62  depends_lib-append    port:py25-numpy \
63                        port:py25-matplotlib \
64                        port:py25-sqlalchemy \
65                        port:py25-argparse \
66                        port:py25-scipy
67}
68
69variant python26 conflicts python25 python27 description "Builds for python 2.6." {
70  depends_lib-append    port:py26-numpy \
71                        port:py26-matplotlib \
72                        port:py26-sqlalchemy \
73                        port:py26-argparse \
74                        port:py26-scipy
75}
76
77variant python27 conflicts python25 python26 description "Builds for python 2.7." {
78  depends_lib-append    port:py27-numpy \
79                        port:py27-matplotlib \
80                        port:py27-sqlalchemy \
81                        port:py27-scipy
82}
83
84variant qt4 description "Compile Qt4 extensions." {
85  depends_lib-append      port:qt4-mac
86}
87
88variant opencv description "Compile OpenCV extensions." {
89  depends_lib-append      port:opencv
90}
91
92variant doc description "Builds documentation." {
93  depends_build-append    port:dvipng \
94                          port:doxygen \
95                          port:texlive-latex-extra \
96                          port:texlive-fonts-recommended
97  destroot.target-append  sphinx-latex install-sphinx install-doxygen
98
99  if {[variant_isset python25]} {
100    depends_build-append  port:py25-sphinx
101  }
102  if {[variant_isset python26]} {
103    depends_build-append  port:py26-sphinx
104  }
105  if {[variant_isset python27]} {
106    depends_build-append  port:py27-sphinx
107  }
108  test.target-append sphinx-doctest
109}
110
111pre-configure {
112  if {[variant_isset python25]} {
113    configure.args-append -DWITH_PYTHON=${prefix}/bin/python2.5
114  } elseif {[variant_isset python26]} {
115      configure.args-append -DWITH_PYTHON=${prefix}/bin/python2.6
116  } elseif {[variant_isset python27]} {
117    configure.args-append -DWITH_PYTHON=${prefix}/bin/python2.7
118  } else {
119    ui_error "You must choose a python variant. Tip: use the same variant used for building the boost port (use `port installed boost` to find it out)"
120  }
121}
122
123post-destroot {
124  if {[variant_isset python25]} {
125    set pycompile ${destroot}/${prefix}/lib/python2.5/site-packages
126    system "${prefix}/bin/python2.5 -m compileall ${pycompile}"
127  } elseif {[variant_isset python26]} {
128    set pypath ${prefix}/lib/python2.6/site-packages
129    set pycompile ${prefix}/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
130    xinstall -d ${destroot}/${pycompile}
131    system "${prefix}/bin/python2.6 -m compileall ${destroot}/${pypath}/bob"
132    move ${destroot}/${pypath}/bob ${destroot}/${pycompile}/bob
133    move ${destroot}/${pypath}/bob-${version}-py2.6.egg-info ${destroot}/${pycompile}/
134  } elseif {[variant_isset python27]} {
135    set pypath ${prefix}/lib/python2.7/site-packages
136    set pycompile ${prefix}/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
137    xinstall -d ${destroot}/${pycompile}
138    system "${prefix}/bin/python2.7 -m compileall ${destroot}/${pypath}/bob"
139    move ${destroot}/${pypath}/bob ${destroot}/${pycompile}/bob
140    move ${destroot}/${pypath}/bob-${version}-py2.7.egg-info ${destroot}/${pycompile}/
141  } else {
142    ui_error "You must choose a python variant. Tip: use the same variant used for building the boost port (use `port installed boost` to find it out)"
143  }
144}