Skip to content
Newer
Older
100644 208 lines (195 sloc) 7.79 KB
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
1 # This is the Jamroot file used by the Boost.Build v2 system
2 # for building the Python extensions that constitute Phycas
3
4 # Grab the path to the Boost project from the BOOST_ROOT environmental variable
5 import os ;
6 local BOOST_ROOT = [ os.environ BOOST_ROOT ] ;
7 use-project boost : $(BOOST_ROOT) ;
8
9 # Grab the path to the NLC project from the NCL_INSTALL_DIR environmental variable
10 local NCL_INSTALL_DIR = [ os.environ NCL_INSTALL_DIR ] ;
11 local OSTYPE = [ os.environ OSTYPE ] ;
12 local OS = [ os.environ OS ] ;
13 echo $(OSTYPE) ;
14 use-project ncl : $(NCL_INSTALL_DIR) ;
15
16 # Tool-specific settings
17 echo "---------------------------------------------------------" ;
18 echo "Trying to identify the correct toolset." ;
19 echo "If the incorrect toolset is chosen, you will need to edit" ;
20 echo "the Tool-specific settings section of the Jamroot file..." ;
21 if $(OSTYPE) = "linux" {
22 echo " Looks like this is Linux, so using toolset gcc" ;
23 alias tool_specific_requirements : : : : <toolset>gcc <cxxflags>"-include phycas/src/std_force_include.hpp" ;
24 }
25 else {
26 if $(OSTYPE) = "darwin" {
27 echo " Looks like this is a Mac, so using toolset darwin" ;
28 using darwin ;
29 alias tool_specific_requirements : : : : <toolset>darwin <cxxflags>"-include phycas/src/std_force_include.hpp" ;
30 }
31 else {
32 if $(OS) = "Windows_NT" {
33 echo " Looks like this is Windows, so using toolset msvc" ;
34 alias tool_specific_requirements : : : : <toolset>msvc <cxxflags>"-FI std_force_include.hpp" ;
35 }
36 else {
37 echo " Could not identify platform. Expecting an environmental variable:" ;
38 echo " for Linux: OSTYPE=linux" ;
39 echo " for Mac: OSTYPE=darwin" ;
40 echo " for Windows: OS=Windows_NT" ;
41 echo " Going with toolset gcc just in case that works" ;
42 alias tool_specific_requirements : : : : <toolset>gcc <cxxflags>"-include phycas/src/std_force_include.hpp" ;
43 }
44 }
45 }
46 echo "---------------------------------------------------------" ;
47
48 # Project-wide requirements
49 project phycas
50 : requirements
51 <library>/boost/python//boost_python
52 <library>/ncl//ncl
53 <threading>multi
54 <include>.
55 <include>./phycas/src
56 <link>shared ;
57
58 # The rule python-extension is defined in <top-of-boost-build-system>/tools/python.jam
59 # The boost-build.jam file in this directory points bjam to <top-of-boost-build-system>
60 import python ;
61
62 # Build and install the Conversions extension
63 alias conversions_sources
64 : phycas/src/conversions_pymod.cpp
65 phycas/src/boost_assertion_failed.cpp
66 phycas/src/basic_tree.cpp
67 phycas/src/basic_tree_node.cpp
68 phycas/src/split.cpp
69 phycas/src/phycas_string.cpp
70 tool_specific_requirements ;
71 python-extension _Conversions : conversions_sources ;
72 install Conversions
73 : _Conversions
74 : <location>phycas/Conversions
75 <install-dependencies>on
76 <install-type>LIB ; # note: tried using <dll-path> but it seemed to have no effect
77
78 # Build and install the PDFGen extension
79 # Note: commented out because currently no C++ code is used in generating PDF files from phycas
80 # It is anticipated, however, that in the future we will want to have such capability
81 # on both the C++ and Python side. The basic framework is now in place for this.
82 #alias pdfgen_sources
83 # : phycas/src/pdfgen_pymod.cpp
84 # phycas/src/boost_assertion_failed.cpp
85 # phycas/src/pdfgen.cpp
86 # tool_specific_requirements ;
87 #python-extension _PDFGen : pdfgen_sources ;
88 #install PDFGen : _PDFGen : <location>phycas/PDFGen ;
89
90 # Build and install the ProbDist extension
91 alias probdist_sources
92 : phycas/src/probdist_pymod.cpp
93 phycas/src/boost_assertion_failed.cpp
94 phycas/src/phycas_string.cpp
8a43adb git-svn-id: https://phycas.svn.sourceforge.net/svnroot/phycas/trunk@826
plewis authored
95 phycas/src/basic_cdf.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
96 phycas/src/basic_lot.cpp
97 phycas/src/stop_watch.cpp
98 phycas/src/thirdparty/dcdflib/src/dcdflib.c
99 phycas/src/thirdparty/dcdflib/src/ipmpar.c
100 phycas/src/probability_distribution.cpp
101 phycas/src/slice_sampler.cpp
102 tool_specific_requirements ;
103 python-extension _ProbDist : probdist_sources ;
104 install ProbDist : _ProbDist : <location>phycas/ProbDist ;
105
106 # Build and install the DataMatrix extension
107 alias datamatrix_sources
108 : phycas/src/data_matrix_pymod.cpp
109 phycas/src/boost_assertion_failed.cpp
110 phycas/src/cipres/CipresDataMatrixHelper.cpp
111 tool_specific_requirements ;
112 python-extension _DataMatrixBase : datamatrix_sources ;
113 install DataMatrix : _DataMatrixBase : <location>phycas/DataMatrix ;
114
115 # Build and install the Likelihood extension
116 alias likelihood_sources
8a43adb git-svn-id: https://phycas.svn.sourceforge.net/svnroot/phycas/trunk@826
plewis authored
117 : phycas/src/basic_cdf.cpp
118 phycas/src/basic_lot.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
119 phycas/src/basic_tree.cpp
120 phycas/src/basic_tree_node.cpp
121 phycas/src/boost_assertion_failed.cpp
122 phycas/src/bush_move.cpp
123 phycas/src/cipres/CipresDataMatrixHelper.cpp
124 phycas/src/codon_model.cpp
125 phycas/src/cond_likelihood_storage.cpp
126 phycas/src/discrete_gamma_shape_param.cpp
127 phycas/src/thirdparty/dcdflib/src/dcdflib.c
128 phycas/src/edgelen_master_param.cpp
129 phycas/src/edge_move.cpp
130 phycas/src/flex_prob_param.cpp
131 phycas/src/flex_rate_param.cpp
6f2e5f3 Continued fixing bugs in explorePrior, and reinstated ability to spec…
plewis authored
132 phycas/src/gtr_model.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
133 phycas/src/gtr_rate_param.cpp
6f2e5f3 Continued fixing bugs in explorePrior, and reinstated ability to spec…
plewis authored
134 phycas/src/hky_model.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
135 phycas/src/hyperprior_param.cpp
6f2e5f3 Continued fixing bugs in explorePrior, and reinstated ability to spec…
plewis authored
136 phycas/src/jc_model.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
137 phycas/src/kappa_param.cpp
138 phycas/src/internal_data.cpp
139 phycas/src/thirdparty/dcdflib/src/ipmpar.c
140 phycas/src/larget_simon_move.cpp
141 phycas/src/likelihood_loops.cpp
142 phycas/src/likelihood_models.cpp
143 phycas/src/likelihood_pymod.cpp
144 phycas/src/linalg.c
145 phycas/src/model_pymod.cpp
146 phycas/src/mcmc_chain_manager.cpp
147 phycas/src/mcmc_param.cpp
148 phycas/src/mcmc_flexcat_param.cpp
149 phycas/src/mcmc_updater.cpp
150 phycas/src/ncat_move.cpp
151 phycas/src/mapping_move.cpp
152 phycas/src/omega_param.cpp
153 phycas/src/phycas_string.cpp
154 phycas/src/pinvar_param.cpp
155 phycas/src/probability_distribution.cpp
156 phycas/src/q_matrix.cpp
157 phycas/src/samc_move.cpp
158 phycas/src/sim_data.cpp
159 phycas/src/slice_sampler.cpp
160 phycas/src/split.cpp
161 phycas/src/square_matrix.cpp
162 phycas/src/state_freq_param.cpp
163 phycas/src/tip_data.cpp
164 phycas/src/topo_prior_calculator.cpp
165 phycas/src/tree_likelihood.cpp
166 phycas/src/tree_scaler_move.cpp
167 phycas/src/underflow_policy.cpp
168 phycas/src/unimap_nni_move.cpp
169 phycas/src/univent_prob_mgr.cpp
170 phycas/src/univents.cpp
171 phycas/src/updater_pymod.cpp
172 [ obj likelihood_tree_manip_obj : phycas/src/tree_manip.cpp tool_specific_requirements ]
173 tool_specific_requirements ;
174 python-extension _LikelihoodBase : likelihood_sources ;
175 install Likelihood : _LikelihoodBase : <location>phycas/Likelihood ;
176
177 # Build and install the Phylogeny extension
178 alias phylogeny_sources
179 : phycas/src/phylogeny_pymod.cpp
180 phycas/src/boost_assertion_failed.cpp
181 phycas/src/basic_tree.cpp
182 phycas/src/basic_tree_node.cpp
183 [ obj phylogeny_tree_manip_obj : phycas/src/tree_manip.cpp tool_specific_requirements ]
184 phycas/src/basic_cdf.cpp
185 phycas/src/basic_lot.cpp
186 phycas/src/split.cpp
187 phycas/src/thirdparty/dcdflib/src/dcdflib.c
188 phycas/src/thirdparty/dcdflib/src/ipmpar.c
189 phycas/src/phycas_string.cpp
190 tool_specific_requirements ;
191 python-extension _Phylogeny : phylogeny_sources ;
192 install Phylogeny : _Phylogeny : <location>phycas/Phylogeny ;
193
194 # Build and install the ReadNexus extension
195 alias readnexus_sources
8a43adb git-svn-id: https://phycas.svn.sourceforge.net/svnroot/phycas/trunk@826
plewis authored
196 : phycas/src/basic_cdf.cpp
197 phycas/src/read_nexus_pymod.cpp
011672a Adding version of Jamroot that builds NCL using bjam rather than assu…
plewis authored
198 phycas/src/boost_assertion_failed.cpp
199 phycas/src/cipres/CipresDataMatrixHelper.cpp
200 phycas/src/cipres/cipres_nexus_reader.cpp #POL 18-Mar-2006 may need to comment out for Mac
201 phycas/src/probability_distribution.cpp
202 phycas/src/basic_lot.cpp
203 phycas/src/thirdparty/dcdflib/src/dcdflib.c
204 phycas/src/thirdparty/dcdflib/src/ipmpar.c
205 tool_specific_requirements ;
206 python-extension _ReadNexus : readnexus_sources ;
207 install ReadNexus : _ReadNexus : <location>phycas/ReadNexus ;
Something went wrong with that request. Please try again.