Ticket #42860: Portfile

File Portfile, 3.7 KB (added by mtiberti (Matteo Tiberti), 10 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
3PortSystem          1.0
4PortGroup           python 1.0
5PortGroup           active_variants 1.1
6
7name                pymol
8version             1.7.1.0
9categories          science chemistry
10license             GPL
11maintainers         bromo.med.uc.edu:howarth
12description         Molecular graphics system
13long_description    PyMOL is a molecular graphics system with an embedded Python interpreter \
14                    designed for real-time visualization and rapid generation of high-quality \
15                    molecular graphics images and animations.
16
17platforms           darwin
18
19homepage            http://www.pymol.org/
20
21master_sites        sourceforge
22fetch.type          svn
23svn.url             https://svn.code.sf.net/p/pymol/code/trunk/pymol
24svn.revision        4073
25worksrcdir          pymol
26
27python.default_version 27
28
29depends_lib-append  port:freeglut \
30                    port:freetype \
31                    port:glew \
32                    port:libpng \
33                    port:mesa \
34                    port:py${python.version}-numpy \
35                    port:py${python.version}-pmw \
36                    port:py${python.version}-scipy \
37                    port:py${python.version}-tkinter
38depends_run         port:xdpyinfo
39
40# py-scipy is not universal
41universal_variant   no
42
43patchfiles          setup_py.diff \
44                    pymol_shell.diff \
45                    pmg_tk_platform.patch \
46                    apbs-psize.patch \
47                    apbs_tkinter.patch \
48                    pymol-clang.diff 
49
50require_active_variants tcl "" corefoundation
51require_active_variants tk "" quartz
52
53post-patch {
54    reinplace  "s|@PREFIX@|${prefix}|g" ${worksrcpath}/setup.py
55    reinplace  "s|@@PYTHON_PKGDIR@@|${python.pkgd}|g" ${worksrcpath}/setup/pymol_macports
56    reinplace  "s|@@PYTHON_BINARY@@|${python.bin}|g" ${worksrcpath}/setup/pymol_macports
57}
58
59use_parallel_build yes
60
61variant gcc43 description conflicts gcc44 gcc45 gcc46 gcc47 gcc48 gcc49 description {build using macports-gcc-4.3} {
62    python.add_archflags    no
63    configure.compiler      macports-gcc-4.3
64}
65
66variant gcc44 description conflicts gcc43 gcc45 gcc46 gcc47 gcc48 gcc49 description {build using macports-gcc-4.4} {
67    python.add_archflags    no
68    configure.compiler      macports-gcc-4.4
69}
70
71variant gcc45 description conflicts gcc43 gcc44 gcc46 gcc47 gcc48 gcc49 description {build using macports-gcc-4.5} {
72    python.add_archflags    no
73    configure.compiler      macports-gcc-4.5
74}
75
76variant gcc46 description conflicts gcc43 gcc44 gcc45 gcc47 gcc48 gcc49 description {build using macports-gcc-4.6} {
77    python.add_archflags    no
78    configure.compiler      macports-gcc-4.6
79}
80
81variant gcc47 description conflicts gcc43 gcc44 gcc45 gcc46 gcc48 gcc49 description {build using macports-gcc-4.7} {
82    python.add_archflags    no
83    configure.compiler      macports-gcc-4.7
84}
85
86variant gcc48 description conflicts gcc43 gcc44 gcc45 gcc46 gcc47 gcc49 description {build using macports-gcc-4.8} {
87    python.add_archflags    no
88    configure.compiler      macports-gcc-4.8
89}
90
91variant gcc49 description conflicts gcc43 gcc44 gcc45 gcc46 gcc47 gcc48 description {build using macports-gcc-4.9} {
92    python.add_archflags    no
93    configure.compiler      macports-gcc-4.9
94}
95
96build {}
97
98pre-destroot {
99    destroot.env CC="${configure.cc}" CXX="${configure.cxx}"
100}
101
102post-destroot {
103     file copy ${worksrcpath}/setup/pymol_macports ${destroot}${prefix}/bin/pymol
104     file attributes ${destroot}${prefix}/bin/pymol -permissions a+x
105     foreach d {data modules examples test scripts} {
106        copy ${worksrcpath}/${d} ${destroot}${python.pkgd}/pymol
107    }
108}