Ticket #39092: Portfile

File Portfile, 5.9 KB (added by cooljeanius (Eric Gallager), 12 years ago)

portfile for libfreenect

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
6PortGroup           github 1.0
7
8github.setup        OpenKinect libfreenect 0.1.2 v
9categories          devel graphics games
10platforms           darwin
11maintainers         gwmail.gwu.edu:egall openmaintainer
12license             {apache GPL-2+}
13
14description         ${name}, aka OpenKinect, is the core library for accessing the \
15                    Microsoft Kinect USB camera
16
17long_description    ${description}. It is the main part of the OpenKinect project.
18
19homepage            http://www.openkinect.org/
20
21checksums           rmd160  2687003673e95ca8cc7d27d9d1f155d389424ffe \
22                    sha256  88cadbea8fb28838bd56a1ec86808325a8f531e93f2bba171e368137d6b1f6e9
23
24depends_build-append \
25                    port:pkgconfig
26depends_lib-append  port:libtool \
27                    port:libusb
28
29configure.args-append \
30                    -DBUILD_EXAMPLES=OFF \
31                    -DBUILD_AS3_SERVER=OFF \
32                    -DBUILD_CV=OFF \
33                    -DBUILD_PYTHON=OFF
34
35# The python variants are all commented out because they currently fail to compile
36#variant python25 conflicts python26 python27 description {Enable python25 bindings} {
37#    depends_build-append \
38#                    port:py25-distribute
39#    depends_lib-append \
40#                    path:lib/python2.5/site-packages/pyusb-0.4.3-py2.5.egg-info:py25-pyusb \
41#                    port:py25-cython \
42#                    port:py25-numpy
43#    configure.args-delete \
44#                    -DBUILD_PYTHON=OFF
45#    configure.args-append \
46#                    -DBUILD_PYTHON=ON \
47#                    -DPYTHON_EXECUTABLE=${prefix}/bin/python2.5 \
48#                    -DPYTHON_LIBRARY=${prefix}/lib/libpython2.5.dylib \
49#                    -DPYTHON_INCLUDE_DIR=${prefix}/include/python2.5
50#}
51
52#variant python26 conflicts python25 python27 description {Enable python26 bindings} {
53#    depends_build-append \
54#                    port:py26-distribute
55#    depends_lib-append \
56#                    path:share/doc/py26-pyusb/README:py26-pyusb \
57#                    port:py26-cython \
58#                    port:py26-numpy \
59#                    port:py26-matplotlib
60#    configure.args-delete \
61#                    -DBUILD_PYTHON=OFF
62#    configure.args-append \
63#                    -DBUILD_PYTHON=ON \
64#                    -DPYTHON_EXECUTABLE=${prefix}/bin/python2.6 \
65#                    -DPYTHON_LIBRARY=${prefix}/lib/libpython2.6.dylib \
66#                    -DPYTHON_INCLUDE_DIR=${frameworks_dir}/Python.framework/Versions/2.6/Headers
67#}
68
69#variant python27 conflicts python25 python26 description {Enable python27 bindings} {
70#    depends_build-append \
71#                    port:py27-distribute
72#    depends_lib-append \
73#                    path:share/doc/py27-pyusb/README:py27-pyusb \
74#                    port:py27-numpy \
75#                    port:py27-cython \
76#                    port:py27-matplotlib
77#    configure.args-delete \
78#                    -DBUILD_PYTHON=OFF
79#    configure.args-append \
80#                    -DBUILD_PYTHON=ON \
81#                    -DPYTHON_EXECUTABLE=${prefix}/bin/python2.7 \
82#                    -DPYTHON_LIBRARY=${prefix}/lib/libpython2.7.dylib \
83#                    -DPYTHON_INCLUDE_DIR=${frameworks_dir}/Python.framework/Versions/2.7/Headers
84#}
85
86# Not sure how exactly I'm going to get this variant to work, so right now it doesn't really do anything...
87variant java conflicts universal description {Enable java bindings} {
88    PortGroup       java 1.0
89    depends_build-append \
90                    bin:mvn:maven2
91}
92
93# This variant needs a port for rb-jeweler before it can actually work and do anything
94variant ruby description {Enable ruby bindings} {
95    depends_build-append \
96                    bin:rake:rb-rake
97    depends_lib-append \
98                    port:libffi
99}
100
101# This variant is commented out because I'm not sure how exactly to build it from the CLI yet...
102# I can do it through the GUI in MonoDevelop though...
103#variant csharp {
104#}
105
106variant opencv description {Enable opencv bindings} {
107    depends_lib-append \
108                    port:opencv
109    configure.args-delete \
110                    -DBUILD_CV=OFF
111    configure.args-append \
112                    -DBUILD_CV=ON \
113                    -DCMAKE_MODULE_PATH=${prefix}/lib/cmake \
114                    -DCMAKE_PREFIX_PATH=${prefix} \
115                    -DOpenCV_DIR=${prefix}/lib/cmake
116    configure.env-append \
117                    CMAKE_MODULE_PATH=${prefix}/lib/cmake \
118                    CMAKE_PREFIX_PATH=${prefix} \
119                    OpenCV_DIR=${prefix}/lib/cmake
120}
121
122variant actionscript description {Enable actionscript bindings} {
123    depends_lib-append \
124                    port:jpeg
125    configure.args-delete \
126                    -DBUILD_AS3_SERVER=OFF
127    configure.args-append \
128                    -DBUILD_AS3_SERVER=ON
129}
130
131variant docs description {Build documentation} {
132    depends_build-append \
133                    port:doxygen \
134                    path:bin/astyle:astyle
135    post-build {
136        system -W ${worksrcpath}/doc "doxygen"
137        system -W ${worksrcpath}/doc "astyle"
138    }
139    post-destroot {
140        xinstall -d ${destroot}${prefix}/share/doc/${name}
141        file copy ${worksrcpath}/doc/html ${destroot}${prefix}/share/doc/${name}
142    }
143}
144
145variant examples description {Build examples} {
146    configure.args-delete \
147                    -DBUILD_EXAMPLES=OFF
148    configure.args-append \
149                    -DBUILD_EXAMPLES=ON
150}
151
152# The default debug variant that the cmake portgroup provides doesn't build properly:
153# Undefined symbols for architecture x86_64:
154#   "_unpack_8_pixels", referenced from:
155#      _freenect_apply_registration in registration.c.o
156#      _freenect_apply_depth_to_mm in registration.c.o
157variant debug description {Dummy variant} {
158    use_parallel_build no
159}
160
161default_variants    +examples