source: trunk/dports/science/bali-phy/Portfile

Last change on this file was 129494, checked in by jmr@…, 3 years ago

bali-phy: fix clearing deps

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.8 KB
Line 
1# $Id: Portfile 129494 2014-12-14 11:28:44Z ryandesign@macports.org $
2
3PortSystem 1.0
4
5name                bali-phy
6version             2.1.1
7revision            2
8description         Bayesian Alignment and Phylogeny estimation
9long_description    BAli-Phy can estimate phylogenetic trees from sequence data when the alignment \
10                    is uncertain. Instead of conditioning on a single alignment estimate, BAli-Phy \
11                    accounts for alignment uncertainty by integrating over all alignments. \
12                    BAli-Phy does not rely on a guide tree because the alignment and the tree are \
13                    co-estimated. Therefore it can construct phylogeny estimates of widely \
14                    divergent sequences without bias toward a guide tree.
15categories          science
16platforms           darwin
17maintainers         nomaintainer
18homepage            http://www.biomath.ucla.edu/msuchard/bali-phy/
19
20master_sites        ${homepage}
21checksums           sha1 e72073a1c5b05c797668e476bfd8517594f074e6
22
23patchfiles          configure.patch scripts.patch src-tools-draw-tree.patch
24
25depends_lib         port:gsl port:boost path:lib/pkgconfig/cairo.pc:cairo
26depends_build       port:pkgconfig
27
28configure.args      --with-system-boost --enable-cairo
29configure.env-append BOOST_SUFFIX=-mt
30
31variant no_cairo description {disable drawing routines} {
32    depends_lib-delete      path:lib/pkgconfig/cairo.pc:cairo
33    configure.args-delete   --enable-cairo
34    patchfiles-delete       src-tools-draw-tree.patch
35}
36
37variant openmpi description {enable OpenMPI parallelization} {
38    depends_lib-append      port:openmpi
39    configure.args-append   --with-mpi
40}
41
42set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9}
43set default_fortran_variant +gcc48
44
45foreach ver ${gcc_versions} {
46    set ver_no_dot [join [split ${ver} "."] ""]
47
48    set variant_line {variant gcc${ver_no_dot} description "build with gfortran from gcc${ver_no_dot}"}
49
50    foreach over ${gcc_versions} {
51        if {${ver} == ${over}} {
52            continue
53        }
54
55        set over_no_dot [join [split ${over} "."] ""]
56        append variant_line " conflicts gcc${over_no_dot}"
57    }
58    append variant_line { {}}
59
60    eval $variant_line
61
62    if {[variant_isset gcc${ver_no_dot}]} {
63        if {${default_fortran_variant} != "+gcc${ver_no_dot}"} {
64            set default_fortran_variant ""
65        }
66    }
67}
68
69if {${default_fortran_variant} != ""} {
70    default_variants-append "${default_fortran_variant}"
71}
72
73foreach ver ${gcc_versions} {
74    set ver_no_dot [join [split ${ver} "."] ""]
75
76    if {[variant_isset gcc${ver_no_dot}]} {
77        depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
78        depends_build-append port:gcc${ver_no_dot}
79
80        configure.fc  ${prefix}/bin/gfortran-mp-${ver}
81        configure.f77 ${prefix}/bin/gfortran-mp-${ver}
82        configure.f90 ${prefix}/bin/gfortran-mp-${ver}
83    }
84}
85
86# The project doesn't even configure with clang.  Based on how long it's
87# been broken, I doubt this project is even used much, so it may not be
88# worh the effort to fix
89#
90# conftest.cpp:60:11: error: no type named 'default_name_check' in 'boost::filesystem::path'
91# fs::path::default_name_check(fs::portable_posix_name);
92# ~~~~~~~~~~^
93# conftest.cpp:60:34: error: definition or redeclaration of 'portable_posix_name' not allowed inside a function
94# fs::path::default_name_check(fs::portable_posix_name);
95#                              ~~~~^
96# 2 errors generated.
97compiler.blacklist *clang*
98
99platform darwin {
100    if {${os.major} >= 13} {
101        # TODO: Test Mavericks once the clang build failures are addressed
102
103        depends_build
104        depends_lib
105        pre-fetch {
106            ui_error "$name does not build on Mavericks or later."
107            error "unsupported platform"
108        }
109    }
110}
111
112livecheck.type  regex
113livecheck.url   ${master_sites}
114livecheck.regex {BAli-Phy (\d+\.\d+\.\d+) released}
Note: See TracBrowser for help on using the repository browser.