1 |
chuckv |
1466 |
# Top level cmake script for OpenMD. |
2 |
gezelter |
1694 |
project(OpenMD CXX) |
3 |
|
|
cmake_minimum_required(VERSION 2.8.5) |
4 |
chuckv |
1466 |
|
5 |
gezelter |
1668 |
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules") |
6 |
|
|
|
7 |
|
|
if (NOT CMAKE_BUILD_TYPE) |
8 |
|
|
set(CMAKE_BUILD_TYPE "Release") |
9 |
|
|
endif() |
10 |
|
|
|
11 |
gezelter |
1694 |
find_package(MPI) |
12 |
|
|
if (NOT MPI_CXX_FOUND) |
13 |
|
|
message(STATUS "========== OpenMD Parallel Information ==========") |
14 |
|
|
message(STATUS ) |
15 |
|
|
message(STATUS "No MPI compiler found. Perhaps you want to set one explicitly?") |
16 |
|
|
message(STATUS "To override the default compiler, set the environment variable") |
17 |
|
|
message(STATUS " export CXX=/full/path/to/mpic++") |
18 |
|
|
message(STATUS "in bash or ksh or sh. In csh or tcsh, use:") |
19 |
|
|
message(STATUS " setenv CXX /full/path/to/mpic++") |
20 |
|
|
message(STATUS "before running the cmake command.") |
21 |
|
|
message(STATUS ) |
22 |
|
|
message(STATUS "=================================================") |
23 |
|
|
endif() |
24 |
|
|
IF ( MPI_CXX_FOUND ) |
25 |
|
|
INCLUDE_DIRECTORIES(${MPI_CXX_INCLUDE_PATH}) |
26 |
|
|
ENDIF() |
27 |
|
|
|
28 |
gezelter |
1668 |
include(CheckCXXCompilerFlag) |
29 |
gezelter |
1694 |
include(CheckIncludeFileCXX) |
30 |
|
|
include(CheckCXXSymbolExists) |
31 |
gezelter |
1668 |
|
32 |
chuckv |
1466 |
# OpenMD version number. |
33 |
chuckv |
1496 |
set (VERSION_MAJOR "2") |
34 |
|
|
set (VERSION_MINOR "0") |
35 |
|
|
set (VERSION_TINY "0") |
36 |
gezelter |
1668 |
option(SINGLE_PRECISION "Build Single precision (float) version" OFF) |
37 |
|
|
|
38 |
gezelter |
1647 |
IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) |
39 |
|
|
SET(CMAKE_INSTALL_PREFIX |
40 |
|
|
"/usr/local/openmd" CACHE PATH "OpenMD install prefix" FORCE |
41 |
|
|
) |
42 |
|
|
ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) |
43 |
chuckv |
1466 |
|
44 |
gezelter |
1647 |
# ---------- Setup output Directories ------------------------- |
45 |
|
|
SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY |
46 |
|
|
${PROJECT_BINARY_DIR}/lib |
47 |
|
|
CACHE PATH |
48 |
|
|
"Single directory for all shared libraries" |
49 |
|
|
) |
50 |
|
|
# --------- Setup the Executable output Directory ------------- |
51 |
|
|
SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY |
52 |
|
|
${PROJECT_BINARY_DIR}/bin |
53 |
|
|
CACHE PATH |
54 |
|
|
"Single directory for all Executables." |
55 |
|
|
) |
56 |
|
|
# --------- Setup the static library directory ------------- |
57 |
|
|
SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY |
58 |
|
|
${PROJECT_BINARY_DIR}/lib |
59 |
|
|
CACHE PATH |
60 |
|
|
"Single directory for all static libraries." |
61 |
|
|
) |
62 |
|
|
|
63 |
gezelter |
1636 |
FIND_PACKAGE(Subversion) |
64 |
|
|
IF ( Subversion_FOUND AND EXISTS ${PROJECT_SOURCE_DIR}/.svn ) |
65 |
|
|
Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project) |
66 |
gezelter |
1694 |
MESSAGE(STATUS "Current revision is ${Project_WC_REVISION}") |
67 |
gezelter |
1636 |
Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project) |
68 |
|
|
SET(SVN_REV ${Project_WC_REVISION}) |
69 |
|
|
ADD_DEFINITIONS( -DSVN_REV=${Project_WC_REVISION} ) |
70 |
gezelter |
1652 |
SET(GENERATELOGS "${PROJECT_SOURCE_DIR}/doc/svn2cl") |
71 |
|
|
ADD_CUSTOM_TARGET(ChangeLog |
72 |
|
|
COMMAND ${GENERATELOGS} "--group-by-day" "--include-rev" |
73 |
|
|
"--linelen=78" "--output=${PROJECT_BINARY_DIR}/ChangeLog" "${PROJECT_SOURCE_DIR}" |
74 |
|
|
) |
75 |
gezelter |
1636 |
ENDIF() |
76 |
|
|
|
77 |
gezelter |
1694 |
check_include_file_cxx(conio.h HAVE_CONIO_H) |
78 |
|
|
check_cxx_symbol_exists(strncasecmp "string.h" HAVE_STRNCASECMP) |
79 |
gezelter |
1668 |
|
80 |
chuckv |
1466 |
# Optional libraries: If we can find these, we will build with them |
81 |
|
|
# Look for OpenBabel libraries |
82 |
chuckv |
1496 |
find_package(OpenBabel2) |
83 |
|
|
IF(OPENBABEL2_FOUND) |
84 |
|
|
SET(USE_OPENBABEL) |
85 |
|
|
include_directories(${OPENBABEL2_INCLUDE_DIR}) |
86 |
gezelter |
1694 |
# link libraries are added only for targets that need them. |
87 |
gezelter |
1695 |
ELSE(OPENBABEL2_FOUND) |
88 |
gezelter |
1705 |
MESSAGE(STATUS "No OpenBabel found - will not build atom2md") |
89 |
chuckv |
1496 |
ENDIF(OPENBABEL2_FOUND) |
90 |
|
|
|
91 |
chuckv |
1466 |
#Look for QHULL Libraries |
92 |
gezelter |
1707 |
set(QHULL_USE_STATIC 1) |
93 |
gezelter |
1694 |
find_package(Qhull) |
94 |
chuckv |
1496 |
IF(QHULL_FOUND) |
95 |
|
|
SET(HAVE_QHULL 1) |
96 |
chuckv |
1500 |
include_directories(${QHULL_INCLUDE_DIR}) |
97 |
chuckv |
1496 |
LINK_LIBRARIES(${QHULL_LIBRARIES}) |
98 |
gezelter |
1695 |
ELSE(QHULL_FOUND) |
99 |
gezelter |
1705 |
MESSAGE(STATUS "No Qhull found - will be missing some features") |
100 |
chuckv |
1496 |
ENDIF(QHULL_FOUND) |
101 |
chuckv |
1466 |
|
102 |
chuckv |
1496 |
# zlib stuff |
103 |
|
|
find_package(ZLIB) |
104 |
|
|
if(ZLIB_FOUND) |
105 |
|
|
SET(HAVE_LIBZ 1) |
106 |
|
|
add_definitions(-DHAVE_LIBZ) |
107 |
|
|
include_directories(${ZLIB_INCLUDE_DIR}) |
108 |
|
|
LINK_LIBRARIES(${ZLIB_LIBRARIES}) |
109 |
gezelter |
1695 |
ELSE(ZLIB_FOUND) |
110 |
gezelter |
1705 |
MESSAGE(STATUS "No zlib found - will be missing compressed dump files") |
111 |
chuckv |
1496 |
endif(ZLIB_FOUND) |
112 |
|
|
|
113 |
gezelter |
1695 |
#FFTW3 |
114 |
gezelter |
1694 |
IF(SINGLE_PRECISION) |
115 |
|
|
find_package(FFTW3 COMPONENTS single) |
116 |
|
|
else() |
117 |
|
|
find_package(FFTW3 COMPONENTS double) |
118 |
|
|
endif(SINGLE_PRECISION) |
119 |
|
|
if (FFTW3_FOUND) |
120 |
|
|
include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${FFTW3_INCLUDE_DIR}) |
121 |
chuckv |
1496 |
SET(HAVE_LIBFFTW 1) |
122 |
gezelter |
1668 |
SET(HAVE_FFTW3_H 1) |
123 |
gezelter |
1694 |
INCLUDE_DIRECTORIES(${FFTW3_INCLUDE_DIR}) |
124 |
|
|
LINK_LIBRARIES(${FFTW3_LIBRARIES}) |
125 |
gezelter |
1695 |
ELSE(FFTW3_FOUND) |
126 |
gezelter |
1705 |
MESSAGE(STATUS "No fftw3 found - will be missing some analysis modules") |
127 |
gezelter |
1694 |
endif (FFTW3_FOUND) |
128 |
chuckv |
1496 |
|
129 |
gezelter |
1694 |
|
130 |
gezelter |
1651 |
# add a target to generate API documentation with Doxygen |
131 |
|
|
find_package(Doxygen) |
132 |
|
|
if(DOXYGEN_FOUND) |
133 |
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in" "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile" @ONLY) |
134 |
|
|
add_custom_target(doc |
135 |
|
|
${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile" |
136 |
|
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/doc" |
137 |
|
|
COMMENT "Generating API documentation with Doxygen" VERBATIM |
138 |
|
|
) |
139 |
|
|
endif(DOXYGEN_FOUND) |
140 |
chuckv |
1496 |
|
141 |
gezelter |
1639 |
FIND_PACKAGE(Perl) |
142 |
|
|
IF(PERL_FOUND) |
143 |
|
|
SET(PERL ${PERL_EXECUTABLE}) |
144 |
|
|
ELSE(PERL_FOUND) |
145 |
gezelter |
1695 |
MESSAGE(STATUS "Failed to find perl - some scripts will not be made") |
146 |
gezelter |
1639 |
ENDIF(PERL_FOUND) |
147 |
|
|
|
148 |
gezelter |
1695 |
SET(PERL_INSTALLDIRS "site" CACHE STRING "Perl installation |
149 |
|
|
locations") |
150 |
|
|
|
151 |
gezelter |
1639 |
FIND_PACKAGE(PythonInterp) |
152 |
|
|
IF(PYTHON_EXECUTABLE) |
153 |
|
|
SET(PYTHON ${PYTHON_EXECUTABLE}) |
154 |
|
|
ELSE(PYTHON_EXECUTABLE) |
155 |
gezelter |
1695 |
MESSAGE(STATUS "Failed to find python - some scripts will not be made") |
156 |
gezelter |
1639 |
ENDIF(PYTHON_EXECUTABLE) |
157 |
|
|
|
158 |
chuckv |
1496 |
configure_file ( |
159 |
|
|
"${PROJECT_SOURCE_DIR}/src/config.h.cmake" |
160 |
gezelter |
1655 |
"${PROJECT_BINARY_DIR}/config.h" |
161 |
|
|
) |
162 |
|
|
include_directories("${PROJECT_BINARY_DIR}" "${PROJECT_SOURCE_DIR}/src") |
163 |
chuckv |
1496 |
|
164 |
chuckv |
1466 |
#Add executables for build |
165 |
gezelter |
1639 |
set (PROGRAMS |
166 |
|
|
openmd |
167 |
|
|
openmd_MPI |
168 |
|
|
Dump2XYZ |
169 |
|
|
simpleBuilder |
170 |
|
|
StaticProps |
171 |
|
|
DynamicProps |
172 |
|
|
randomBuilder |
173 |
|
|
nanoparticleBuilder |
174 |
|
|
thermalizer |
175 |
|
|
atom2md |
176 |
|
|
Hydro) |
177 |
chuckv |
1466 |
|
178 |
gezelter |
1639 |
set(SOURCE |
179 |
|
|
src/antlr/ANTLRUtil.cpp |
180 |
|
|
src/antlr/ASTFactory.cpp |
181 |
|
|
src/antlr/ASTNULLType.cpp |
182 |
|
|
src/antlr/ASTRefCount.cpp |
183 |
|
|
src/antlr/BaseAST.cpp |
184 |
|
|
src/antlr/BitSet.cpp |
185 |
|
|
src/antlr/CharBuffer.cpp |
186 |
|
|
src/antlr/CharScanner.cpp |
187 |
|
|
src/antlr/CommonAST.cpp |
188 |
|
|
src/antlr/CommonASTWithHiddenTokens.cpp |
189 |
|
|
src/antlr/CommonHiddenStreamToken.cpp |
190 |
|
|
src/antlr/CommonToken.cpp |
191 |
|
|
src/antlr/InputBuffer.cpp |
192 |
|
|
src/antlr/LLkParser.cpp |
193 |
|
|
src/antlr/MismatchedCharException.cpp |
194 |
|
|
src/antlr/MismatchedTokenException.cpp |
195 |
|
|
src/antlr/NoViableAltException.cpp |
196 |
|
|
src/antlr/NoViableAltForCharException.cpp |
197 |
|
|
src/antlr/Parser.cpp |
198 |
|
|
src/antlr/RecognitionException.cpp |
199 |
|
|
src/antlr/String.cpp |
200 |
|
|
src/antlr/Token.cpp |
201 |
|
|
src/antlr/TokenBuffer.cpp |
202 |
|
|
src/antlr/TokenRefCount.cpp |
203 |
|
|
src/antlr/TokenStreamBasicFilter.cpp |
204 |
|
|
src/antlr/TokenStreamHiddenTokenFilter.cpp |
205 |
|
|
src/antlr/TokenStreamRewriteEngine.cpp |
206 |
|
|
src/antlr/TokenStreamSelector.cpp |
207 |
|
|
src/antlr/TreeParser.cpp |
208 |
|
|
src/brains/BlockSnapshotManager.cpp |
209 |
|
|
src/brains/DataStorage.cpp |
210 |
gezelter |
1725 |
src/brains/ForceField.cpp |
211 |
gezelter |
1639 |
src/brains/MoleculeCreator.cpp |
212 |
|
|
src/brains/PairList.cpp |
213 |
|
|
src/brains/Register.cpp |
214 |
|
|
src/brains/SimSnapshotManager.cpp |
215 |
|
|
src/brains/Snapshot.cpp |
216 |
|
|
src/brains/Stats.cpp |
217 |
|
|
src/constraints/Rattle.cpp |
218 |
|
|
src/hydrodynamics/Ellipsoid.cpp |
219 |
|
|
src/hydrodynamics/HydroProp.cpp |
220 |
|
|
src/hydrodynamics/Sphere.cpp |
221 |
|
|
src/integrators/DLM.cpp |
222 |
gezelter |
1717 |
src/integrators/FluctuatingChargeNVT.cpp |
223 |
gezelter |
1718 |
src/integrators/FluctuatingChargePropagator.cpp |
224 |
gezelter |
1639 |
src/integrators/Integrator.cpp |
225 |
|
|
src/integrators/IntegratorFactory.cpp |
226 |
|
|
src/integrators/LangevinDynamics.cpp |
227 |
|
|
src/integrators/LDForceManager.cpp |
228 |
|
|
src/integrators/NgammaT.cpp |
229 |
|
|
src/integrators/NPAT.cpp |
230 |
|
|
src/integrators/NPrT.cpp |
231 |
|
|
src/integrators/NPT.cpp |
232 |
|
|
src/integrators/NPTf.cpp |
233 |
|
|
src/integrators/NPTi.cpp |
234 |
|
|
src/integrators/NPTsz.cpp |
235 |
|
|
src/integrators/NPTxyz.cpp |
236 |
|
|
src/integrators/NVE.cpp |
237 |
|
|
src/integrators/NVT.cpp |
238 |
|
|
src/integrators/VelocityVerletIntegrator.cpp |
239 |
|
|
src/io/AtomTypesSectionParser.cpp |
240 |
|
|
src/io/BaseAtomTypesSectionParser.cpp |
241 |
|
|
src/io/BendTypesSectionParser.cpp |
242 |
|
|
src/io/BondTypesSectionParser.cpp |
243 |
|
|
src/io/ChargeAtomTypesSectionParser.cpp |
244 |
|
|
src/io/DirectionalAtomTypesSectionParser.cpp |
245 |
|
|
src/io/EAMAtomTypesSectionParser.cpp |
246 |
gezelter |
1710 |
src/io/FluctuatingChargeAtomTypesSectionParser.cpp |
247 |
gezelter |
1639 |
src/io/ForceFieldOptions.cpp |
248 |
|
|
src/io/GayBerneAtomTypesSectionParser.cpp |
249 |
|
|
src/io/Globals.cpp |
250 |
|
|
src/io/gzstream.cpp |
251 |
|
|
src/io/InversionTypesSectionParser.cpp |
252 |
|
|
src/io/LennardJonesAtomTypesSectionParser.cpp |
253 |
|
|
src/io/MultipoleAtomTypesSectionParser.cpp |
254 |
|
|
src/io/NonBondedInteractionsSectionParser.cpp |
255 |
|
|
src/io/OptionSectionParser.cpp |
256 |
|
|
src/io/ParamConstraint.cpp |
257 |
gezelter |
1710 |
src/io/PolarizableAtomTypesSectionParser.cpp |
258 |
gezelter |
1639 |
src/io/SCAtomTypesSectionParser.cpp |
259 |
|
|
src/io/SectionParser.cpp |
260 |
|
|
src/io/SectionParserManager.cpp |
261 |
|
|
src/io/ShapeAtomTypesSectionParser.cpp |
262 |
|
|
src/io/StickyAtomTypesSectionParser.cpp |
263 |
|
|
src/io/StickyPowerAtomTypesSectionParser.cpp |
264 |
|
|
src/io/TorsionTypesSectionParser.cpp |
265 |
|
|
src/io/ZConsReader.cpp |
266 |
|
|
src/lattice/CubicLattice.cpp |
267 |
|
|
src/lattice/FCCLattice.cpp |
268 |
|
|
src/lattice/Lattice.cpp |
269 |
|
|
src/lattice/LatticeFactory.cpp |
270 |
|
|
src/lattice/shapedLattice.cpp |
271 |
|
|
src/math/ChebyshevT.cpp |
272 |
|
|
src/math/ChebyshevU.cpp |
273 |
|
|
src/math/CubicSpline.cpp |
274 |
|
|
src/math/LegendrePolynomial.cpp |
275 |
|
|
src/math/RealSphericalHarmonic.cpp |
276 |
|
|
src/math/RMSD.cpp |
277 |
|
|
src/math/SeqRandNumGen.cpp |
278 |
|
|
src/math/SphericalHarmonic.cpp |
279 |
|
|
src/math/Wigner3jm.cpp |
280 |
|
|
src/mdParser/FilenameObserver.cpp |
281 |
|
|
src/mdParser/MDLexer.cpp |
282 |
|
|
src/mdParser/MDParser.cpp |
283 |
|
|
src/mdParser/MDTreeParser.cpp |
284 |
|
|
src/minimizers/MinimizerFactory.cpp |
285 |
|
|
src/minimizers/MinimizerParameterSet.cpp |
286 |
|
|
src/nonbonded/EAM.cpp |
287 |
|
|
src/nonbonded/Electrostatic.cpp |
288 |
|
|
src/nonbonded/GB.cpp |
289 |
|
|
src/nonbonded/InteractionManager.cpp |
290 |
|
|
src/nonbonded/LJ.cpp |
291 |
|
|
src/nonbonded/MAW.cpp |
292 |
|
|
src/nonbonded/Morse.cpp |
293 |
|
|
src/nonbonded/RepulsivePower.cpp |
294 |
|
|
src/nonbonded/SC.cpp |
295 |
|
|
src/nonbonded/Sticky.cpp |
296 |
|
|
src/nonbonded/SwitchingFunction.cpp |
297 |
|
|
src/primitives/Atom.cpp |
298 |
|
|
src/primitives/Bend.cpp |
299 |
|
|
src/primitives/DirectionalAtom.cpp |
300 |
|
|
src/primitives/GhostBend.cpp |
301 |
|
|
src/primitives/GhostTorsion.cpp |
302 |
|
|
src/primitives/Inversion.cpp |
303 |
|
|
src/primitives/Molecule.cpp |
304 |
|
|
src/primitives/RigidBody.cpp |
305 |
|
|
src/primitives/StuntDouble.cpp |
306 |
|
|
src/primitives/Torsion.cpp |
307 |
|
|
src/primitives/UreyBradleyBend.cpp |
308 |
|
|
src/restraints/MolecularRestraint.cpp |
309 |
|
|
src/restraints/ObjectRestraint.cpp |
310 |
|
|
src/selection/DistanceFinder.cpp |
311 |
|
|
src/selection/HullFinder.cpp |
312 |
|
|
src/selection/IndexFinder.cpp |
313 |
|
|
src/selection/NameFinder.cpp |
314 |
|
|
src/selection/SelectionCompiler.cpp |
315 |
|
|
src/selection/SelectionEvaluator.cpp |
316 |
|
|
src/selection/SelectionManager.cpp |
317 |
|
|
src/selection/SelectionToken.cpp |
318 |
|
|
src/selection/TokenMap.cpp |
319 |
|
|
src/types/AtomStamp.cpp |
320 |
|
|
src/types/AtomType.cpp |
321 |
|
|
src/types/BendStamp.cpp |
322 |
|
|
src/types/BondStamp.cpp |
323 |
|
|
src/types/CharmmTorsionType.cpp |
324 |
|
|
src/types/Component.cpp |
325 |
|
|
src/types/CutoffGroupStamp.cpp |
326 |
gezelter |
1710 |
src/types/DirectionalAdapter.cpp |
327 |
|
|
src/types/EAMAdapter.cpp |
328 |
|
|
src/types/FixedChargeAdapter.cpp |
329 |
|
|
src/types/FluctuatingChargeAdapter.cpp |
330 |
gezelter |
1639 |
src/types/FragmentStamp.cpp |
331 |
gezelter |
1710 |
src/types/GayBerneAdapter.cpp |
332 |
gezelter |
1639 |
src/types/ImproperCosineInversionType.cpp |
333 |
|
|
src/types/InversionStamp.cpp |
334 |
gezelter |
1710 |
src/types/LennardJonesAdapter.cpp |
335 |
gezelter |
1639 |
src/types/MoleculeStamp.cpp |
336 |
gezelter |
1710 |
src/types/MultipoleAdapter.cpp |
337 |
gezelter |
1639 |
src/types/NonBondedInteractionType.cpp |
338 |
gezelter |
1710 |
src/types/PolarizableAdapter.cpp |
339 |
gezelter |
1639 |
src/types/RestraintStamp.cpp |
340 |
|
|
src/types/RigidBodyStamp.cpp |
341 |
|
|
src/types/ShapeAtomType.cpp |
342 |
gezelter |
1710 |
src/types/StickyAdapter.cpp |
343 |
|
|
src/types/SuttonChenAdapter.cpp |
344 |
gezelter |
1639 |
src/types/TorsionStamp.cpp |
345 |
|
|
src/types/ZconsStamp.cpp |
346 |
|
|
src/utils/ElementsTable.cpp |
347 |
|
|
src/utils/MoLocator.cpp |
348 |
|
|
src/utils/OpenMDBitSet.cpp |
349 |
|
|
src/utils/PropertyMap.cpp |
350 |
|
|
src/utils/StringTokenizer.cpp |
351 |
|
|
src/utils/StringUtils.cpp |
352 |
|
|
src/utils/Trim.cpp |
353 |
|
|
src/utils/Utility.cpp |
354 |
|
|
src/utils/wildcards.cpp |
355 |
|
|
src/visitors/AtomNameVisitor.cpp |
356 |
|
|
src/visitors/AtomVisitor.cpp |
357 |
|
|
src/visitors/CompositeVisitor.cpp |
358 |
|
|
src/visitors/LipidTransVisitor.cpp |
359 |
|
|
src/visitors/OtherVisitor.cpp |
360 |
|
|
src/visitors/ReplacementVisitor.cpp |
361 |
|
|
src/visitors/RigidBodyVisitor.cpp |
362 |
|
|
src/visitors/ZconsVisitor.cpp |
363 |
|
|
) |
364 |
chuckv |
1466 |
|
365 |
gezelter |
1639 |
set( PARALLEL_SOURCE |
366 |
|
|
src/brains/ForceManager.cpp |
367 |
|
|
src/brains/SimCreator.cpp |
368 |
|
|
src/brains/SimInfo.cpp |
369 |
|
|
src/brains/Thermo.cpp |
370 |
|
|
src/constraints/ZconstraintForceManager.cpp |
371 |
|
|
src/integrators/RNEMD.cpp |
372 |
|
|
src/integrators/Velocitizer.cpp |
373 |
|
|
src/io/DumpReader.cpp |
374 |
|
|
src/io/DumpWriter.cpp |
375 |
|
|
src/io/RestReader.cpp |
376 |
|
|
src/io/RestWriter.cpp |
377 |
|
|
src/io/StatWriter.cpp |
378 |
|
|
src/io/ZConsWriter.cpp |
379 |
|
|
src/io/ifstrstream.cpp |
380 |
|
|
src/math/ParallelRandNumGen.cpp |
381 |
|
|
src/minimizers/CGFamilyMinimizer.cpp |
382 |
|
|
src/minimizers/Minimizer.cpp |
383 |
|
|
src/minimizers/PRCG.cpp |
384 |
|
|
src/minimizers/SDMinimizer.cpp |
385 |
|
|
src/parallel/ForceDecomposition.cpp |
386 |
|
|
src/parallel/ForceMatrixDecomposition.cpp |
387 |
|
|
src/restraints/RestraintForceManager.cpp |
388 |
|
|
src/restraints/ThermoIntegrationForceManager.cpp |
389 |
|
|
src/utils/ProgressBar.cpp |
390 |
gezelter |
1668 |
src/utils/simError.cpp |
391 |
gezelter |
1639 |
) |
392 |
|
|
|
393 |
|
|
IF(QHULL_FOUND) |
394 |
|
|
set(QHULL_SOURCE |
395 |
|
|
src/integrators/LangevinHullDynamics.cpp |
396 |
|
|
src/math/Triangle.cpp |
397 |
|
|
) |
398 |
|
|
set(QHULL_PARALLEL_SOURCE |
399 |
|
|
src/integrators/LangevinHullForceManager.cpp |
400 |
|
|
src/math/ConvexHull.cpp |
401 |
|
|
src/math/AlphaHull.cpp |
402 |
|
|
) |
403 |
|
|
ENDIF(QHULL_FOUND) |
404 |
|
|
|
405 |
|
|
add_library(openmd_core STATIC ${SOURCE} ${QHULL_SOURCE} ) |
406 |
|
|
add_library(openmd_single STATIC ${PARALLEL_SOURCE} ${QHULL_PARALLEL_SOURCE} ) |
407 |
|
|
|
408 |
|
|
IF(MPI_FOUND) |
409 |
|
|
add_library(openmd_parallel STATIC ${PARALLEL_SOURCE} ${QHULL_PARALLEL_SOURCE} ) |
410 |
|
|
set_target_properties(openmd_parallel PROPERTIES |
411 |
|
|
COMPILE_DEFINITIONS IS_MPI |
412 |
|
|
) |
413 |
|
|
ENDIF(MPI_FOUND) |
414 |
|
|
|
415 |
|
|
add_executable(openmd src/applications/openmd/openmd.cpp) |
416 |
|
|
target_link_libraries(openmd openmd_single openmd_core openmd_single openmd_core) |
417 |
|
|
|
418 |
|
|
if (MPI_FOUND) |
419 |
|
|
add_executable(openmd_MPI src/applications/openmd/openmd.cpp) |
420 |
|
|
set_target_properties(openmd_MPI PROPERTIES |
421 |
|
|
COMPILE_DEFINITIONS IS_MPI |
422 |
|
|
) |
423 |
|
|
target_link_libraries(openmd_MPI openmd_parallel openmd_core openmd_parallel openmd_core) |
424 |
gezelter |
1647 |
INSTALL(TARGETS |
425 |
|
|
openmd_parallel openmd_MPI |
426 |
|
|
RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE |
427 |
|
|
LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ |
428 |
|
|
ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ |
429 |
|
|
) |
430 |
gezelter |
1639 |
ENDIF (MPI_FOUND) |
431 |
|
|
|
432 |
|
|
set (DUMP2XYZSOURCE |
433 |
|
|
src/applications/dump2Xyz/Dump2XYZ.cpp |
434 |
gezelter |
1655 |
src/applications/dump2Xyz/Dump2XYZCmd.cpp |
435 |
gezelter |
1639 |
) |
436 |
|
|
|
437 |
|
|
set (DYNAMICPROPSSOURCE |
438 |
|
|
src/applications/dynamicProps/ActionCorrFunc.cpp |
439 |
|
|
src/applications/dynamicProps/CrossTimeCorrFunc.cpp |
440 |
|
|
src/applications/dynamicProps/DipoleCorrFunc.cpp |
441 |
|
|
src/applications/dynamicProps/DirectionalRCorrFunc.cpp |
442 |
|
|
src/applications/dynamicProps/DynamicProps.cpp |
443 |
|
|
src/applications/dynamicProps/EnergyCorrFunc.cpp |
444 |
|
|
src/applications/dynamicProps/FrameTimeCorrFunc.cpp |
445 |
|
|
src/applications/dynamicProps/LegendreCorrFunc.cpp |
446 |
|
|
src/applications/dynamicProps/MomentumCorrFunc.cpp |
447 |
|
|
src/applications/dynamicProps/ParticleTimeCorrFunc.cpp |
448 |
|
|
src/applications/dynamicProps/RadialRCorrFunc.cpp |
449 |
|
|
src/applications/dynamicProps/RCorrFunc.cpp |
450 |
|
|
src/applications/dynamicProps/StressCorrFunc.cpp |
451 |
|
|
src/applications/dynamicProps/SystemDipoleCorrFunc.cpp |
452 |
|
|
src/applications/dynamicProps/ThetaCorrFunc.cpp |
453 |
|
|
src/applications/dynamicProps/TimeCorrFunc.cpp |
454 |
|
|
src/applications/dynamicProps/VCorrFunc.cpp |
455 |
gezelter |
1655 |
src/applications/dynamicProps/DynamicPropsCmd.cpp |
456 |
gezelter |
1639 |
) |
457 |
|
|
|
458 |
|
|
set (HYDROSOURCE |
459 |
|
|
src/applications/hydrodynamics/AnalyticalModel.cpp |
460 |
|
|
src/applications/hydrodynamics/ApproximationModel.cpp |
461 |
|
|
src/applications/hydrodynamics/BeadModel.cpp |
462 |
|
|
src/applications/hydrodynamics/CompositeShape.cpp |
463 |
|
|
src/applications/hydrodynamics/Hydro.cpp |
464 |
|
|
src/applications/hydrodynamics/HydrodynamicsModel.cpp |
465 |
|
|
src/applications/hydrodynamics/HydrodynamicsModelFactory.cpp |
466 |
|
|
src/applications/hydrodynamics/RoughShell.cpp |
467 |
|
|
src/applications/hydrodynamics/ShapeBuilder.cpp |
468 |
gezelter |
1655 |
src/applications/hydrodynamics/HydroCmd.cpp |
469 |
gezelter |
1639 |
) |
470 |
|
|
|
471 |
|
|
set (STATICPROPSSOURCE |
472 |
|
|
src/applications/staticProps/AngleR.cpp |
473 |
|
|
src/applications/staticProps/BondAngleDistribution.cpp |
474 |
|
|
src/applications/staticProps/BondOrderParameter.cpp |
475 |
|
|
src/applications/staticProps/BOPofR.cpp |
476 |
|
|
src/applications/staticProps/DensityPlot.cpp |
477 |
|
|
src/applications/staticProps/GofAngle2.cpp |
478 |
|
|
src/applications/staticProps/GofR.cpp |
479 |
|
|
src/applications/staticProps/GofRAngle.cpp |
480 |
|
|
src/applications/staticProps/GofRZ.cpp |
481 |
|
|
src/applications/staticProps/GofXyz.cpp |
482 |
|
|
src/applications/staticProps/GofZ.cpp |
483 |
|
|
src/applications/staticProps/Hxy.cpp |
484 |
|
|
src/applications/staticProps/NanoLength.cpp |
485 |
|
|
src/applications/staticProps/NanoVolume.cpp |
486 |
|
|
src/applications/staticProps/ObjectCount.cpp |
487 |
|
|
src/applications/staticProps/P2OrderParameter.cpp |
488 |
|
|
src/applications/staticProps/pAngle.cpp |
489 |
|
|
src/applications/staticProps/RadialDistrFunc.cpp |
490 |
|
|
src/applications/staticProps/RhoR.cpp |
491 |
|
|
src/applications/staticProps/RhoZ.cpp |
492 |
|
|
src/applications/staticProps/RippleOP.cpp |
493 |
|
|
src/applications/staticProps/SCDOrderParameter.cpp |
494 |
|
|
src/applications/staticProps/StaticProps.cpp |
495 |
|
|
src/applications/staticProps/TetrahedralityParam.cpp |
496 |
|
|
src/applications/staticProps/TwoDGofR.cpp |
497 |
gezelter |
1655 |
src/applications/staticProps/StaticPropsCmd.cpp |
498 |
gezelter |
1639 |
) |
499 |
|
|
|
500 |
|
|
set (NANOPARTICLEBUILDERSOURCE |
501 |
|
|
src/applications/nanoparticleBuilder/nanoparticleBuilder.cpp |
502 |
|
|
src/applications/nanoparticleBuilder/shapedLatticeSpherical.cpp |
503 |
gezelter |
1655 |
src/applications/nanoparticleBuilder/nanoparticleBuilderCmd.cpp |
504 |
gezelter |
1639 |
) |
505 |
|
|
|
506 |
kstocke1 |
1701 |
set (NANORODBUILDERSOURCE |
507 |
|
|
src/applications/nanoparticleBuilder/nanorodBuilder.cpp |
508 |
|
|
src/applications/nanoparticleBuilder/shapedLatticeRod.cpp |
509 |
|
|
src/applications/nanoparticleBuilder/nanorodBuilderCmd.cpp |
510 |
|
|
) |
511 |
|
|
|
512 |
|
|
set (NANOROD_PENTBUILDERSOURCE |
513 |
|
|
src/applications/nanoparticleBuilder/nanorod_pentBuilder.cpp |
514 |
|
|
src/applications/nanoparticleBuilder/nanorod_pentBuilderCmd.cpp |
515 |
|
|
src/applications/nanoparticleBuilder/shapedLatticePentRod.cpp |
516 |
|
|
) |
517 |
|
|
|
518 |
gezelter |
1639 |
set (RANDOMBUILDERSOURCE |
519 |
|
|
src/applications/randomBuilder/randomBuilder.cpp |
520 |
gezelter |
1655 |
src/applications/randomBuilder/randomBuilderCmd.cpp |
521 |
gezelter |
1639 |
) |
522 |
|
|
|
523 |
|
|
set(SIMPLEBUILDERSOURCE |
524 |
|
|
src/applications/simpleBuilder/simpleBuilder.cpp |
525 |
gezelter |
1655 |
src/applications/simpleBuilder/simpleBuilderCmd.cpp |
526 |
gezelter |
1639 |
) |
527 |
|
|
|
528 |
|
|
set(THERMALIZERSOURCE |
529 |
|
|
src/applications/thermalizer/thermalizer.cpp |
530 |
gezelter |
1655 |
src/applications/thermalizer/thermalizerCmd.cpp |
531 |
gezelter |
1639 |
) |
532 |
|
|
|
533 |
|
|
add_executable(Dump2XYZ ${DUMP2XYZSOURCE}) |
534 |
|
|
target_link_libraries(Dump2XYZ openmd_single openmd_core openmd_single openmd_core) |
535 |
|
|
add_executable(DynamicProps ${DYNAMICPROPSSOURCE}) |
536 |
|
|
target_link_libraries(DynamicProps openmd_single openmd_core openmd_single openmd_core) |
537 |
|
|
add_executable(Hydro ${HYDROSOURCE}) |
538 |
|
|
target_link_libraries(Hydro openmd_single openmd_core openmd_single openmd_core) |
539 |
|
|
add_executable(StaticProps ${STATICPROPSSOURCE}) |
540 |
|
|
target_link_libraries(StaticProps openmd_single openmd_core openmd_single openmd_core) |
541 |
|
|
add_executable(nanoparticleBuilder ${NANOPARTICLEBUILDERSOURCE}) |
542 |
|
|
target_link_libraries(nanoparticleBuilder openmd_single openmd_core openmd_single openmd_core) |
543 |
kstocke1 |
1701 |
add_executable(nanorodBuilder ${NANORODBUILDERSOURCE}) |
544 |
|
|
target_link_libraries(nanorodBuilder openmd_single openmd_core openmd_single openmd_core) |
545 |
|
|
add_executable(nanorod_pentBuilder ${NANOROD_PENTBUILDERSOURCE}) |
546 |
|
|
target_link_libraries(nanorod_pentBuilder openmd_single openmd_core openmd_single openmd_core) |
547 |
gezelter |
1639 |
add_executable(randomBuilder ${RANDOMBUILDERSOURCE}) |
548 |
|
|
target_link_libraries(randomBuilder openmd_single openmd_core openmd_single openmd_core) |
549 |
|
|
add_executable(simpleBuilder ${SIMPLEBUILDERSOURCE}) |
550 |
|
|
target_link_libraries(simpleBuilder openmd_single openmd_core openmd_single openmd_core) |
551 |
|
|
add_executable(thermalizer ${THERMALIZERSOURCE}) |
552 |
|
|
target_link_libraries(thermalizer openmd_single openmd_core openmd_single openmd_core) |
553 |
|
|
|
554 |
|
|
if (OPENBABEL2_FOUND) |
555 |
|
|
set (ATOM2MDSOURCE |
556 |
|
|
src/applications/atom2md/atom2md.cpp |
557 |
|
|
src/applications/atom2md/openmdformat.cpp |
558 |
|
|
) |
559 |
|
|
add_executable(atom2md ${ATOM2MDSOURCE}) |
560 |
gezelter |
1699 |
target_link_libraries(atom2md openmd_single openmd_core openmd_single openmd_core ${OPENBABEL2_LIBRARIES}) |
561 |
gezelter |
1647 |
INSTALL(TARGETS atom2md RUNTIME DESTINATION bin |
562 |
|
|
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) |
563 |
gezelter |
1639 |
ENDIF (OPENBABEL2_FOUND) |
564 |
|
|
|
565 |
|
|
|
566 |
|
|
set(PY_FILES |
567 |
|
|
src/applications/hydrodynamics/diffExplainer |
568 |
|
|
src/applications/utilities/affineScale |
569 |
|
|
src/applications/utilities/dumpConverter |
570 |
|
|
src/applications/utilities/md-solvator |
571 |
|
|
src/applications/utilities/md2md |
572 |
|
|
src/applications/utilities/mdSplit |
573 |
|
|
src/applications/utilities/principalAxisCalculator |
574 |
|
|
src/applications/utilities/stat2visco |
575 |
|
|
src/applications/utilities/waterRotator |
576 |
gezelter |
1668 |
src/applications/utilities/waterReplacer |
577 |
gezelter |
1639 |
) |
578 |
|
|
|
579 |
|
|
IF(PYTHON_EXECUTABLE) |
580 |
|
|
foreach(PY_FILE ${PY_FILES}) |
581 |
gezelter |
1647 |
GET_FILENAME_COMPONENT(filename "${PY_FILE}" NAME) |
582 |
|
|
CONFIGURE_FILE(${PY_FILE} |
583 |
|
|
"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" @ONLY) |
584 |
|
|
INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" |
585 |
|
|
DESTINATION bin |
586 |
|
|
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) |
587 |
gezelter |
1639 |
endforeach(PY_FILE) |
588 |
|
|
ENDIF(PYTHON_EXECUTABLE) |
589 |
|
|
|
590 |
|
|
set(PERL_FILES |
591 |
|
|
src/applications/utilities/solvator |
592 |
|
|
src/applications/utilities/waterBoxer |
593 |
|
|
) |
594 |
|
|
|
595 |
|
|
IF(PERL_FOUND) |
596 |
|
|
foreach(PERL_FILE ${PERL_FILES}) |
597 |
gezelter |
1647 |
GET_FILENAME_COMPONENT(filename "${PERL_FILE}" NAME) |
598 |
|
|
configure_file(${PERL_FILE} "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" @ONLY) |
599 |
|
|
INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" |
600 |
|
|
DESTINATION bin |
601 |
|
|
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) |
602 |
|
|
|
603 |
gezelter |
1639 |
endforeach(PERL_FILE) |
604 |
|
|
ENDIF(PERL_FOUND) |
605 |
gezelter |
1647 |
|
606 |
gezelter |
1652 |
INSTALL(FILES AUTHORS LICENSE README INSTALL DESTINATION . |
607 |
gezelter |
1647 |
PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) |
608 |
|
|
INSTALL(TARGETS |
609 |
|
|
openmd_core |
610 |
|
|
openmd_single |
611 |
|
|
openmd |
612 |
|
|
Dump2XYZ |
613 |
|
|
simpleBuilder |
614 |
|
|
StaticProps |
615 |
|
|
DynamicProps |
616 |
|
|
randomBuilder |
617 |
|
|
nanoparticleBuilder |
618 |
|
|
thermalizer |
619 |
|
|
Hydro |
620 |
|
|
RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE |
621 |
|
|
LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ |
622 |
|
|
ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ |
623 |
|
|
) |
624 |
|
|
|
625 |
|
|
install(DIRECTORY forceFields/ |
626 |
|
|
DESTINATION forceFields |
627 |
gezelter |
1650 |
DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE |
628 |
|
|
PATTERN ".svn" EXCLUDE |
629 |
gezelter |
1647 |
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) |
630 |
|
|
install(DIRECTORY samples/ |
631 |
|
|
DESTINATION samples |
632 |
gezelter |
1650 |
DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE |
633 |
|
|
PATTERN ".svn" EXCLUDE |
634 |
gezelter |
1651 |
PATTERN "*.dump" EXCLUDE |
635 |
|
|
PATTERN "*.stat" EXCLUDE |
636 |
gezelter |
1647 |
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) |
637 |
gezelter |
1651 |
INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/doc/OpenMDmanual.pdf" |
638 |
|
|
DESTINATION doc |
639 |
|
|
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) |
640 |
gezelter |
1694 |
|
641 |
|
|
message( STATUS) |
642 |
|
|
message( STATUS "========== OpenMD Build Information ==========") |
643 |
|
|
message( STATUS "Current revision ........... = ${SVN_REV}") |
644 |
|
|
message( STATUS "CMAKE_SYSTEM ............... = ${CMAKE_SYSTEM}") |
645 |
|
|
message( STATUS "==============================================") |
646 |
|
|
message( STATUS "CMAKE_BUILD_TYPE ........... = ${CMAKE_BUILD_TYPE}") |
647 |
|
|
message( STATUS "CMAKE_INSTALL_PREFIX ....... = ${CMAKE_INSTALL_PREFIX}") |
648 |
gezelter |
1695 |
message( STATUS "Build as SINGLE_PRECISION .. = ${SINGLE_PRECISION}") |
649 |
gezelter |
1694 |
message( STATUS "CMAKE_CXX_COMPILER ......... = ${CMAKE_CXX_COMPILER}") |
650 |
|
|
message( STATUS "MPI_CXX_COMPILER ........... = ${MPI_CXX_COMPILER}") |
651 |
|
|
message( STATUS "MPI_CXX_INCLUDE_PATH ....... = ${MPI_CXX_INCLUDE_PATH}") |
652 |
|
|
message( STATUS "MPI_CXX_LIBRARIES .......... = ${MPI_CXX_LIBRARIES}") |
653 |
gezelter |
1699 |
message( STATUS "OPENBABEL2_ROOT ............ = ${OPENBABEL2_ROOT}") |
654 |
gezelter |
1694 |
message( STATUS "OPENBABEL2_INCLUDE_DIR ..... = ${OPENBABEL2_INCLUDE_DIR}") |
655 |
|
|
message( STATUS "OPENBABEL2_LIBRARIES ....... = ${OPENBABEL2_LIBRARIES}") |
656 |
gezelter |
1695 |
message( STATUS "QHULL_ROOT ................. = ${QHULL_ROOT}") |
657 |
gezelter |
1694 |
message( STATUS "QHULL_INCLUDE_DIR .......... = ${QHULL_INCLUDE_DIR}") |
658 |
|
|
message( STATUS "QHULL_LIBRARIES ............ = ${QHULL_LIBRARIES}") |
659 |
gezelter |
1695 |
message( STATUS "ZLIB_ROOT .................. = ${ZLIB_ROOT}") |
660 |
gezelter |
1694 |
message( STATUS "ZLIB_INCLUDE_DIR ........... = ${ZLIB_INCLUDE_DIR}") |
661 |
|
|
message( STATUS "ZLIB_LIBRARIES ............. = ${ZLIB_LIBRARIES}") |
662 |
gezelter |
1699 |
message( STATUS "FFTW3_ROOT ................. = ${FFTW3_ROOT}") |
663 |
gezelter |
1694 |
message( STATUS "FFTW3_INCLUDE_DIR .......... = ${FFTW3_INCLUDE_DIR}") |
664 |
|
|
message( STATUS "FFTW3_LIBRARIES ............ = ${FFTW3_LIBRARIES}") |
665 |
gezelter |
1695 |
message( STATUS "PERL_EXECUTABLE ............ = ${PERL_EXECUTABLE}") |
666 |
|
|
message( STATUS "PYTHON_EXECUTABLE .......... = ${PYTHON_EXECUTABLE}") |
667 |
gezelter |
1694 |
message( STATUS "DOXYGEN_EXECUTABLE ......... = ${DOXYGEN_EXECUTABLE}") |
668 |
gezelter |
1695 |
message( STATUS ) |
669 |
gezelter |
1696 |
message( STATUS "To override these options, add -D{OPTION_NAME}=... to the cmake command" ) |
670 |
|
|
message( STATUS "Particularly useful defines are for:") |
671 |
|
|
message( STATUS ) |
672 |
gezelter |
1699 |
message( STATUS " -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} (where OpenMD will be installed)") |
673 |
|
|
message( STATUS " -DOPENBABEL2_ROOT=/path/to/openbabel") |
674 |
|
|
message( STATUS " -DQHULL_ROOT=/path/to/qhull") |
675 |
|
|
message( STATUS " -DFFTW3_ROOT=/path/to/fftw3") |
676 |
gezelter |
1696 |
message( STATUS ) |
677 |
|
|
message( STATUS "To build and install OpenMD, enter \"make\" and \"make install\"") |
678 |
|
|
message( STATUS ) |