ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/CMakeLists.txt
Revision: 2065
Committed: Thu Mar 5 15:11:00 2015 UTC (10 years, 6 months ago) by gezelter
Content type: text/plain
File size: 30007 byte(s)
Log Message:
Fixes for warning messages, added flags to help debugging.

File Contents

# User Rev Content
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 1767 IF(WIN32)
12     ADD_DEFINITIONS(/D _CRT_SECURE_NO_WARNINGS)
13     ENDIF(WIN32)
14    
15 gezelter 2065 if (NOT NO_PARALLEL)
16     find_package(MPI)
17     if (NOT MPI_CXX_FOUND)
18     message(STATUS "========== OpenMD Parallel Information ==========")
19     message(STATUS )
20     message(STATUS "No MPI compiler found. Perhaps you want to set one explicitly?")
21     message(STATUS "To override the default compiler, set the environment variable")
22     message(STATUS " export CXX=/full/path/to/mpic++")
23     message(STATUS "in bash or ksh or sh. In csh or tcsh, use:")
24     message(STATUS " setenv CXX /full/path/to/mpic++")
25     message(STATUS "before running the cmake command.")
26     message(STATUS )
27     message(STATUS "=================================================")
28     endif()
29     IF ( MPI_CXX_FOUND )
30     INCLUDE_DIRECTORIES(${MPI_CXX_INCLUDE_PATH})
31     ENDIF()
32 gezelter 1694 endif()
33    
34 gezelter 1668 include(CheckCXXCompilerFlag)
35 gezelter 1694 include(CheckIncludeFileCXX)
36     include(CheckCXXSymbolExists)
37 gezelter 1668
38 gezelter 2065 message(STATUS "Compiler flag = ${CMAKE_COMPILER_IS_GNUCXX}")
39     if ( CMAKE_COMPILER_IS_GNUCXX )
40 gezelter 2057 # set_property( TARGET main APPEND_STRING PROPERTY COMPILE_FLAGS -Wall )
41     add_definitions("-Wall")
42 gezelter 2065 endif ( CMAKE_COMPILER_IS_GNUCXX )
43 gezelter 2057 if ( MSVC )
44     # set_property( TARGET main APPEND_STRING PROPERTY COMPILE_FLAGS /W3 )
45     add_definitions("/W3")
46     endif ( MSVC )
47    
48 chuckv 1466 # OpenMD version number.
49 chuckv 1496 set (VERSION_MAJOR "2")
50 gezelter 2045 set (VERSION_MINOR "3")
51 chuckv 1496 set (VERSION_TINY "0")
52 gezelter 1668 option(SINGLE_PRECISION "Build Single precision (float) version" OFF)
53    
54 gezelter 1647 IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
55 gezelter 1790 IF(WIN32)
56     SET(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/openmd"
57     CACHE PATH "OpenMD install prefix" FORCE)
58     ELSE(WIN32)
59     SET(CMAKE_INSTALL_PREFIX "/usr/local/openmd"
60     CACHE PATH "OpenMD install prefix" FORCE)
61     ENDIF(WIN32)
62 gezelter 1647 ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
63 gezelter 1790 ADD_DEFINITIONS( -DFRC_PATH=${CMAKE_INSTALL_PREFIX}/forceFields )
64 chuckv 1466
65 gezelter 1647 # ---------- Setup output Directories -------------------------
66     SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY
67     ${PROJECT_BINARY_DIR}/lib
68     CACHE PATH
69     "Single directory for all shared libraries"
70     )
71     # --------- Setup the Executable output Directory -------------
72     SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY
73     ${PROJECT_BINARY_DIR}/bin
74     CACHE PATH
75     "Single directory for all Executables."
76     )
77     # --------- Setup the static library directory -------------
78     SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY
79     ${PROJECT_BINARY_DIR}/lib
80     CACHE PATH
81     "Single directory for all static libraries."
82     )
83    
84 gezelter 1636 FIND_PACKAGE(Subversion)
85     IF ( Subversion_FOUND AND EXISTS ${PROJECT_SOURCE_DIR}/.svn )
86     Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project)
87 gezelter 1694 MESSAGE(STATUS "Current revision is ${Project_WC_REVISION}")
88 gezelter 1636 Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project)
89     SET(SVN_REV ${Project_WC_REVISION})
90 gezelter 1652 SET(GENERATELOGS "${PROJECT_SOURCE_DIR}/doc/svn2cl")
91     ADD_CUSTOM_TARGET(ChangeLog
92     COMMAND ${GENERATELOGS} "--group-by-day" "--include-rev"
93     "--linelen=78" "--output=${PROJECT_BINARY_DIR}/ChangeLog" "${PROJECT_SOURCE_DIR}"
94     )
95 gezelter 1836 ELSE()
96     SET(SVN_REV Release)
97 gezelter 1636 ENDIF()
98    
99 gezelter 1694 check_include_file_cxx(conio.h HAVE_CONIO_H)
100     check_cxx_symbol_exists(strncasecmp "string.h" HAVE_STRNCASECMP)
101 gezelter 1668
102 chuckv 1466 # Optional libraries: If we can find these, we will build with them
103     # Look for OpenBabel libraries
104 chuckv 1496 find_package(OpenBabel2)
105     IF(OPENBABEL2_FOUND)
106     SET(USE_OPENBABEL)
107     include_directories(${OPENBABEL2_INCLUDE_DIR})
108 gezelter 1694 # link libraries are added only for targets that need them.
109 gezelter 1695 ELSE(OPENBABEL2_FOUND)
110 gezelter 1705 MESSAGE(STATUS "No OpenBabel found - will not build atom2md")
111 chuckv 1496 ENDIF(OPENBABEL2_FOUND)
112    
113 chuckv 1466 #Look for QHULL Libraries
114 gezelter 1694 find_package(Qhull)
115 chuckv 1496 IF(QHULL_FOUND)
116     SET(HAVE_QHULL 1)
117 chuckv 1500 include_directories(${QHULL_INCLUDE_DIR})
118 chuckv 1496 LINK_LIBRARIES(${QHULL_LIBRARIES})
119 gezelter 1695 ELSE(QHULL_FOUND)
120 gezelter 1705 MESSAGE(STATUS "No Qhull found - will be missing some features")
121 chuckv 1496 ENDIF(QHULL_FOUND)
122 chuckv 1466
123 chuckv 1496 # zlib stuff
124     find_package(ZLIB)
125     if(ZLIB_FOUND)
126     SET(HAVE_LIBZ 1)
127     add_definitions(-DHAVE_LIBZ)
128     include_directories(${ZLIB_INCLUDE_DIR})
129     LINK_LIBRARIES(${ZLIB_LIBRARIES})
130 gezelter 1695 ELSE(ZLIB_FOUND)
131 gezelter 1705 MESSAGE(STATUS "No zlib found - will be missing compressed dump files")
132 chuckv 1496 endif(ZLIB_FOUND)
133    
134 gezelter 1695 #FFTW3
135 gezelter 1694 IF(SINGLE_PRECISION)
136     find_package(FFTW3 COMPONENTS single)
137     else()
138     find_package(FFTW3 COMPONENTS double)
139     endif(SINGLE_PRECISION)
140     if (FFTW3_FOUND)
141     include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${FFTW3_INCLUDE_DIR})
142 chuckv 1496 SET(HAVE_LIBFFTW 1)
143 gezelter 1668 SET(HAVE_FFTW3_H 1)
144 gezelter 1694 INCLUDE_DIRECTORIES(${FFTW3_INCLUDE_DIR})
145     LINK_LIBRARIES(${FFTW3_LIBRARIES})
146 gezelter 1695 ELSE(FFTW3_FOUND)
147 gezelter 1705 MESSAGE(STATUS "No fftw3 found - will be missing some analysis modules")
148 gezelter 1694 endif (FFTW3_FOUND)
149 chuckv 1496
150 gezelter 1694
151 gezelter 1651 # add a target to generate API documentation with Doxygen
152     find_package(Doxygen)
153     if(DOXYGEN_FOUND)
154     configure_file("${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in" "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile" @ONLY)
155     add_custom_target(doc
156     ${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile"
157     WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/doc"
158     COMMENT "Generating API documentation with Doxygen" VERBATIM
159     )
160     endif(DOXYGEN_FOUND)
161 chuckv 1496
162 gezelter 1639 FIND_PACKAGE(Perl)
163     IF(PERL_FOUND)
164     SET(PERL ${PERL_EXECUTABLE})
165     ELSE(PERL_FOUND)
166 gezelter 1695 MESSAGE(STATUS "Failed to find perl - some scripts will not be made")
167 gezelter 1639 ENDIF(PERL_FOUND)
168    
169 gezelter 1695 SET(PERL_INSTALLDIRS "site" CACHE STRING "Perl installation
170     locations")
171    
172 gezelter 1639 FIND_PACKAGE(PythonInterp)
173     IF(PYTHON_EXECUTABLE)
174     SET(PYTHON ${PYTHON_EXECUTABLE})
175     ELSE(PYTHON_EXECUTABLE)
176 gezelter 1695 MESSAGE(STATUS "Failed to find python - some scripts will not be made")
177 gezelter 1639 ENDIF(PYTHON_EXECUTABLE)
178    
179 gezelter 2042 FIND_PACKAGE(NumPy)
180     IF(NOT NUMPY_FOUND)
181     MESSAGE(STATUS "Failed to find NumPy - some scripts will not be made")
182     ENDIF(NOT NUMPY_FOUND)
183    
184    
185 chuckv 1496 configure_file (
186     "${PROJECT_SOURCE_DIR}/src/config.h.cmake"
187 gezelter 1655 "${PROJECT_BINARY_DIR}/config.h"
188     )
189 gezelter 1976 configure_file(
190     "${PROJECT_SOURCE_DIR}/src/utils/Revision.cpp.in"
191     "${PROJECT_BINARY_DIR}/Revision.cpp"
192     )
193    
194 gezelter 1655 include_directories("${PROJECT_BINARY_DIR}" "${PROJECT_SOURCE_DIR}/src")
195 chuckv 1496
196 chuckv 1466 #Add executables for build
197 gezelter 1639 set (PROGRAMS
198     openmd
199     openmd_MPI
200     Dump2XYZ
201     simpleBuilder
202     StaticProps
203     DynamicProps
204 gezelter 2024 SequentialProps
205 gezelter 1639 randomBuilder
206     nanoparticleBuilder
207     thermalizer
208 gezelter 1879 recenter
209 gezelter 1639 atom2md
210     Hydro)
211 chuckv 1466
212 gezelter 1639 set(SOURCE
213 gezelter 1976 "${PROJECT_BINARY_DIR}/Revision.cpp"
214 gezelter 1639 src/antlr/ANTLRUtil.cpp
215     src/antlr/ASTFactory.cpp
216     src/antlr/ASTNULLType.cpp
217     src/antlr/ASTRefCount.cpp
218     src/antlr/BaseAST.cpp
219     src/antlr/BitSet.cpp
220     src/antlr/CommonAST.cpp
221     src/antlr/CommonASTWithHiddenTokens.cpp
222     src/antlr/CommonHiddenStreamToken.cpp
223     src/antlr/CommonToken.cpp
224     src/antlr/LLkParser.cpp
225     src/antlr/MismatchedCharException.cpp
226     src/antlr/MismatchedTokenException.cpp
227     src/antlr/NoViableAltException.cpp
228     src/antlr/NoViableAltForCharException.cpp
229     src/antlr/Parser.cpp
230     src/antlr/RecognitionException.cpp
231     src/antlr/String.cpp
232     src/antlr/Token.cpp
233     src/antlr/TokenRefCount.cpp
234     src/antlr/TokenStreamBasicFilter.cpp
235     src/antlr/TokenStreamHiddenTokenFilter.cpp
236     src/antlr/TokenStreamRewriteEngine.cpp
237     src/antlr/TokenStreamSelector.cpp
238     src/antlr/TreeParser.cpp
239     src/brains/BlockSnapshotManager.cpp
240     src/brains/DataStorage.cpp
241 gezelter 1725 src/brains/ForceField.cpp
242 gezelter 1639 src/brains/MoleculeCreator.cpp
243     src/brains/PairList.cpp
244     src/brains/Register.cpp
245     src/brains/SimSnapshotManager.cpp
246     src/brains/Snapshot.cpp
247     src/brains/Stats.cpp
248 gezelter 1748 src/constraints/Shake.cpp
249 gezelter 1639 src/constraints/Rattle.cpp
250     src/hydrodynamics/Ellipsoid.cpp
251     src/hydrodynamics/HydroProp.cpp
252     src/hydrodynamics/Sphere.cpp
253     src/integrators/DLM.cpp
254 gezelter 1766 src/flucq/FluctuatingChargeLangevin.cpp
255 gezelter 1743 src/flucq/FluctuatingChargeParameters.cpp
256 gezelter 1731 src/flucq/FluctuatingChargeNVT.cpp
257 gezelter 1743 src/flucq/FluctuatingChargePropagator.cpp
258 gezelter 1639 src/integrators/Integrator.cpp
259     src/integrators/IntegratorFactory.cpp
260     src/integrators/LangevinDynamics.cpp
261     src/integrators/LDForceManager.cpp
262     src/integrators/NgammaT.cpp
263 gezelter 2011 src/integrators/NPA.cpp
264 gezelter 1639 src/integrators/NPAT.cpp
265     src/integrators/NPrT.cpp
266     src/integrators/NPT.cpp
267     src/integrators/NPTf.cpp
268     src/integrators/NPTi.cpp
269     src/integrators/NPTsz.cpp
270     src/integrators/NPTxyz.cpp
271     src/integrators/NVE.cpp
272     src/integrators/NVT.cpp
273     src/integrators/VelocityVerletIntegrator.cpp
274     src/io/AtomTypesSectionParser.cpp
275     src/io/BaseAtomTypesSectionParser.cpp
276     src/io/BendTypesSectionParser.cpp
277     src/io/BondTypesSectionParser.cpp
278     src/io/ChargeAtomTypesSectionParser.cpp
279     src/io/DirectionalAtomTypesSectionParser.cpp
280     src/io/EAMAtomTypesSectionParser.cpp
281 gezelter 1710 src/io/FluctuatingChargeAtomTypesSectionParser.cpp
282 gezelter 1639 src/io/ForceFieldOptions.cpp
283     src/io/GayBerneAtomTypesSectionParser.cpp
284     src/io/Globals.cpp
285     src/io/InversionTypesSectionParser.cpp
286     src/io/LennardJonesAtomTypesSectionParser.cpp
287     src/io/MultipoleAtomTypesSectionParser.cpp
288     src/io/NonBondedInteractionsSectionParser.cpp
289     src/io/OptionSectionParser.cpp
290     src/io/ParamConstraint.cpp
291 gezelter 1710 src/io/PolarizableAtomTypesSectionParser.cpp
292 gezelter 1639 src/io/SCAtomTypesSectionParser.cpp
293     src/io/SectionParser.cpp
294     src/io/SectionParserManager.cpp
295     src/io/ShapeAtomTypesSectionParser.cpp
296     src/io/StickyAtomTypesSectionParser.cpp
297     src/io/StickyPowerAtomTypesSectionParser.cpp
298     src/io/TorsionTypesSectionParser.cpp
299     src/io/ZConsReader.cpp
300     src/lattice/CubicLattice.cpp
301     src/lattice/FCCLattice.cpp
302     src/lattice/Lattice.cpp
303     src/lattice/LatticeFactory.cpp
304     src/lattice/shapedLattice.cpp
305     src/math/ChebyshevT.cpp
306     src/math/ChebyshevU.cpp
307     src/math/CubicSpline.cpp
308     src/math/LegendrePolynomial.cpp
309     src/math/RealSphericalHarmonic.cpp
310     src/math/RMSD.cpp
311     src/math/SeqRandNumGen.cpp
312     src/math/SphericalHarmonic.cpp
313     src/math/Wigner3jm.cpp
314     src/mdParser/FilenameObserver.cpp
315 gezelter 1743 src/optimization/OptimizationFactory.cpp
316     src/optimization/Armijo.cpp
317     src/optimization/BFGS.cpp
318     src/optimization/ConjugateGradient.cpp
319     src/optimization/Constraint.cpp
320     src/optimization/EndCriteria.cpp
321     src/optimization/LineSearch.cpp
322     src/optimization/LineSearchBasedMethod.cpp
323     src/optimization/SteepestDescent.cpp
324     src/optimization/PotentialEnergyObjectiveFunction.cpp
325 gezelter 1746 src/optimization/MinimizerParameters.cpp
326 gezelter 1639 src/nonbonded/EAM.cpp
327     src/nonbonded/GB.cpp
328     src/nonbonded/InteractionManager.cpp
329     src/nonbonded/LJ.cpp
330     src/nonbonded/MAW.cpp
331     src/nonbonded/Morse.cpp
332     src/nonbonded/RepulsivePower.cpp
333     src/nonbonded/SC.cpp
334     src/nonbonded/Sticky.cpp
335     src/nonbonded/SwitchingFunction.cpp
336     src/primitives/Atom.cpp
337     src/primitives/Bend.cpp
338     src/primitives/DirectionalAtom.cpp
339     src/primitives/GhostBend.cpp
340     src/primitives/GhostTorsion.cpp
341     src/primitives/Inversion.cpp
342     src/primitives/Molecule.cpp
343     src/primitives/RigidBody.cpp
344     src/primitives/StuntDouble.cpp
345 gezelter 1954 src/primitives/ShortRangeInteraction.cpp
346 gezelter 1639 src/primitives/Torsion.cpp
347     src/primitives/UreyBradleyBend.cpp
348 gezelter 2020 src/perturbations/UniformField.cpp
349 gezelter 2026 src/perturbations/UniformGradient.cpp
350 gezelter 1639 src/restraints/MolecularRestraint.cpp
351     src/restraints/ObjectRestraint.cpp
352     src/selection/HullFinder.cpp
353     src/selection/IndexFinder.cpp
354     src/selection/NameFinder.cpp
355     src/selection/SelectionCompiler.cpp
356     src/selection/SelectionEvaluator.cpp
357     src/selection/SelectionManager.cpp
358     src/selection/SelectionToken.cpp
359     src/selection/TokenMap.cpp
360 gezelter 1954 src/selection/SelectionSet.cpp
361 gezelter 1639 src/types/AtomStamp.cpp
362     src/types/AtomType.cpp
363     src/types/BendStamp.cpp
364 gezelter 2045 src/types/BendTypeParser.cpp
365 gezelter 1639 src/types/BondStamp.cpp
366 gezelter 2045 src/types/BondTypeParser.cpp
367 gezelter 1639 src/types/CharmmTorsionType.cpp
368     src/types/Component.cpp
369 gezelter 1979 src/types/ConstraintStamp.cpp
370 gezelter 1639 src/types/CutoffGroupStamp.cpp
371 gezelter 1710 src/types/DirectionalAdapter.cpp
372     src/types/EAMAdapter.cpp
373     src/types/FixedChargeAdapter.cpp
374     src/types/FluctuatingChargeAdapter.cpp
375 gezelter 1639 src/types/FragmentStamp.cpp
376 gezelter 1710 src/types/GayBerneAdapter.cpp
377 gezelter 1639 src/types/ImproperCosineInversionType.cpp
378     src/types/InversionStamp.cpp
379 gezelter 2045 src/types/InversionTypeParser.cpp
380 gezelter 1710 src/types/LennardJonesAdapter.cpp
381 gezelter 1639 src/types/MoleculeStamp.cpp
382 gezelter 1710 src/types/MultipoleAdapter.cpp
383 gezelter 1639 src/types/NonBondedInteractionType.cpp
384 gezelter 1710 src/types/PolarizableAdapter.cpp
385 gezelter 1639 src/types/RestraintStamp.cpp
386     src/types/RigidBodyStamp.cpp
387     src/types/ShapeAtomType.cpp
388 gezelter 1710 src/types/StickyAdapter.cpp
389     src/types/SuttonChenAdapter.cpp
390 gezelter 1639 src/types/TorsionStamp.cpp
391 gezelter 2045 src/types/TorsionTypeParser.cpp
392 gezelter 1639 src/types/ZconsStamp.cpp
393     src/utils/ElementsTable.cpp
394     src/utils/MoLocator.cpp
395     src/utils/PropertyMap.cpp
396     src/utils/StringTokenizer.cpp
397     src/utils/StringUtils.cpp
398     src/utils/Trim.cpp
399     src/utils/Utility.cpp
400     src/utils/wildcards.cpp
401     src/visitors/AtomNameVisitor.cpp
402     src/visitors/AtomVisitor.cpp
403     src/visitors/CompositeVisitor.cpp
404     src/visitors/LipidTransVisitor.cpp
405     src/visitors/OtherVisitor.cpp
406     src/visitors/ReplacementVisitor.cpp
407     src/visitors/RigidBodyVisitor.cpp
408     src/visitors/ZconsVisitor.cpp
409 gezelter 1731 src/rnemd/RNEMDParameters.cpp
410 gezelter 1879 src/clusters/Icosahedron.cpp
411     src/clusters/Decahedron.cpp
412 gezelter 1639 )
413 chuckv 1466
414 gezelter 1639 set( PARALLEL_SOURCE
415 gezelter 1969 src/antlr/CharBuffer.cpp
416     src/antlr/CharScanner.cpp
417     src/antlr/InputBuffer.cpp
418     src/antlr/TokenBuffer.cpp
419     src/mdParser/MDLexer.cpp
420     src/mdParser/MDParser.cpp
421     src/mdParser/MDTreeParser.cpp
422 gezelter 1639 src/brains/ForceManager.cpp
423     src/brains/SimCreator.cpp
424     src/brains/SimInfo.cpp
425     src/brains/Thermo.cpp
426     src/constraints/ZconstraintForceManager.cpp
427 gezelter 1743 src/flucq/FluctuatingChargeConstraints.cpp
428     src/flucq/FluctuatingChargeObjectiveFunction.cpp
429 gezelter 1972 src/flucq/FluctuatingChargeForces.cpp
430 gezelter 1730 src/integrators/LangevinHullForceManager.cpp
431 gezelter 1731 src/rnemd/RNEMD.cpp
432 gezelter 1639 src/integrators/Velocitizer.cpp
433 gezelter 1981 src/io/ConstraintWriter.cpp
434 gezelter 1639 src/io/DumpReader.cpp
435     src/io/DumpWriter.cpp
436     src/io/RestReader.cpp
437     src/io/RestWriter.cpp
438     src/io/StatWriter.cpp
439     src/io/ZConsWriter.cpp
440     src/io/ifstrstream.cpp
441     src/math/ParallelRandNumGen.cpp
442 gezelter 1926 src/nonbonded/Electrostatic.cpp
443 gezelter 1639 src/parallel/ForceDecomposition.cpp
444     src/parallel/ForceMatrixDecomposition.cpp
445     src/restraints/RestraintForceManager.cpp
446     src/restraints/ThermoIntegrationForceManager.cpp
447 gezelter 1802 src/selection/DistanceFinder.cpp
448 gezelter 1639 src/utils/ProgressBar.cpp
449 gezelter 1668 src/utils/simError.cpp
450 gezelter 1802 src/utils/OpenMDBitSet.cpp
451 gezelter 1743 src/optimization/Problem.cpp
452 gezelter 1639 )
453    
454 gezelter 1767 IF(ZLIB_FOUND)
455     set(ZLIB_SOURCE
456     src/io/gzstream.cpp
457     )
458     ENDIF(ZLIB_FOUND)
459    
460 gezelter 1639 IF(QHULL_FOUND)
461     set(QHULL_SOURCE
462     src/integrators/LangevinHullDynamics.cpp
463     src/math/Triangle.cpp
464     )
465     set(QHULL_PARALLEL_SOURCE
466     src/integrators/LangevinHullForceManager.cpp
467     src/math/ConvexHull.cpp
468     src/math/AlphaHull.cpp
469     )
470     ENDIF(QHULL_FOUND)
471    
472 gezelter 1767 IF(WIN32)
473     set(GETOPT_SOURCE
474 gezelter 1795 src/utils/wingetopt.cpp
475 gezelter 1767 )
476     ENDIF(WIN32)
477    
478     add_library(openmd_core STATIC ${SOURCE} ${QHULL_SOURCE} ${ZLIB_SOURCE} )
479 gezelter 1639 add_library(openmd_single STATIC ${PARALLEL_SOURCE} ${QHULL_PARALLEL_SOURCE} )
480    
481     IF(MPI_FOUND)
482     add_library(openmd_parallel STATIC ${PARALLEL_SOURCE} ${QHULL_PARALLEL_SOURCE} )
483     set_target_properties(openmd_parallel PROPERTIES
484     COMPILE_DEFINITIONS IS_MPI
485     )
486     ENDIF(MPI_FOUND)
487    
488     add_executable(openmd src/applications/openmd/openmd.cpp)
489     target_link_libraries(openmd openmd_single openmd_core openmd_single openmd_core)
490    
491     if (MPI_FOUND)
492     add_executable(openmd_MPI src/applications/openmd/openmd.cpp)
493     set_target_properties(openmd_MPI PROPERTIES
494     COMPILE_DEFINITIONS IS_MPI
495     )
496     target_link_libraries(openmd_MPI openmd_parallel openmd_core openmd_parallel openmd_core)
497 gezelter 1647 INSTALL(TARGETS
498     openmd_parallel openmd_MPI
499     RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
500     LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
501     ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
502     )
503 gezelter 1639 ENDIF (MPI_FOUND)
504    
505     set (DUMP2XYZSOURCE
506     src/applications/dump2Xyz/Dump2XYZ.cpp
507 gezelter 1655 src/applications/dump2Xyz/Dump2XYZCmd.cpp
508 gezelter 1639 )
509    
510     set (DYNAMICPROPSSOURCE
511     src/applications/dynamicProps/ActionCorrFunc.cpp
512     src/applications/dynamicProps/CrossTimeCorrFunc.cpp
513     src/applications/dynamicProps/DipoleCorrFunc.cpp
514     src/applications/dynamicProps/DirectionalRCorrFunc.cpp
515     src/applications/dynamicProps/DynamicProps.cpp
516     src/applications/dynamicProps/EnergyCorrFunc.cpp
517     src/applications/dynamicProps/FrameTimeCorrFunc.cpp
518 gezelter 2003 src/applications/dynamicProps/FreqFlucCorrFunc.cpp
519 gezelter 1639 src/applications/dynamicProps/LegendreCorrFunc.cpp
520 gezelter 1915 src/applications/dynamicProps/LegendreCorrFuncZ.cpp
521 gezelter 1934 src/applications/dynamicProps/cOHz.cpp
522 gezelter 1639 src/applications/dynamicProps/MomentumCorrFunc.cpp
523 gezelter 2056 src/applications/dynamicProps/MultipassCorrFunc.cpp
524 gezelter 1639 src/applications/dynamicProps/ParticleTimeCorrFunc.cpp
525 gezelter 1954 src/applications/dynamicProps/InteractionTimeCorrFunc.cpp
526 gezelter 1639 src/applications/dynamicProps/RadialRCorrFunc.cpp
527     src/applications/dynamicProps/RCorrFunc.cpp
528 gezelter 1811 src/applications/dynamicProps/SelectionCorrFunc.cpp
529 gezelter 1639 src/applications/dynamicProps/StressCorrFunc.cpp
530     src/applications/dynamicProps/SystemDipoleCorrFunc.cpp
531     src/applications/dynamicProps/ThetaCorrFunc.cpp
532     src/applications/dynamicProps/TimeCorrFunc.cpp
533     src/applications/dynamicProps/VCorrFunc.cpp
534 gezelter 1954 src/applications/dynamicProps/BondCorrFunc.cpp
535 gezelter 1655 src/applications/dynamicProps/DynamicPropsCmd.cpp
536 gezelter 1639 )
537    
538     set (HYDROSOURCE
539     src/applications/hydrodynamics/AnalyticalModel.cpp
540     src/applications/hydrodynamics/ApproximationModel.cpp
541     src/applications/hydrodynamics/BeadModel.cpp
542     src/applications/hydrodynamics/CompositeShape.cpp
543     src/applications/hydrodynamics/Hydro.cpp
544     src/applications/hydrodynamics/HydrodynamicsModel.cpp
545     src/applications/hydrodynamics/HydrodynamicsModelFactory.cpp
546     src/applications/hydrodynamics/RoughShell.cpp
547     src/applications/hydrodynamics/ShapeBuilder.cpp
548 gezelter 1655 src/applications/hydrodynamics/HydroCmd.cpp
549 gezelter 1639 )
550    
551 gezelter 2024 set (SEQUENTIALPROPSSOURCE
552 gezelter 2029 src/applications/sequentialProps/CenterOfMass.cpp
553     src/applications/sequentialProps/ContactAngle1.cpp
554 gezelter 2035 src/applications/sequentialProps/ContactAngle2.cpp
555 gezelter 2024 src/applications/sequentialProps/SequentialAnalyzer.cpp
556     src/applications/sequentialProps/SequentialProps.cpp
557     src/applications/sequentialProps/SequentialPropsCmd.cpp
558     )
559    
560 gezelter 1639 set (STATICPROPSSOURCE
561     src/applications/staticProps/AngleR.cpp
562     src/applications/staticProps/BondAngleDistribution.cpp
563     src/applications/staticProps/BondOrderParameter.cpp
564     src/applications/staticProps/BOPofR.cpp
565     src/applications/staticProps/DensityPlot.cpp
566     src/applications/staticProps/GofAngle2.cpp
567     src/applications/staticProps/GofR.cpp
568     src/applications/staticProps/GofRAngle.cpp
569     src/applications/staticProps/GofRZ.cpp
570     src/applications/staticProps/GofXyz.cpp
571     src/applications/staticProps/GofZ.cpp
572     src/applications/staticProps/Hxy.cpp
573 gezelter 2049 src/applications/staticProps/HBondGeometric.cpp
574 gezelter 1998 src/applications/staticProps/MultipoleSum.cpp
575 gezelter 1639 src/applications/staticProps/NanoLength.cpp
576     src/applications/staticProps/NanoVolume.cpp
577 gezelter 1994 src/applications/staticProps/NitrileFrequencyMap.cpp
578 gezelter 1639 src/applications/staticProps/ObjectCount.cpp
579     src/applications/staticProps/P2OrderParameter.cpp
580     src/applications/staticProps/pAngle.cpp
581     src/applications/staticProps/RadialDistrFunc.cpp
582     src/applications/staticProps/RhoR.cpp
583     src/applications/staticProps/RhoZ.cpp
584     src/applications/staticProps/RippleOP.cpp
585 gezelter 1879 src/applications/staticProps/RNEMDStats.cpp
586 gezelter 1639 src/applications/staticProps/SCDOrderParameter.cpp
587 gezelter 1879 src/applications/staticProps/SpatialStatistics.cpp
588 gezelter 1639 src/applications/staticProps/StaticProps.cpp
589 jmichalk 2031 src/applications/staticProps/SurfaceDiffusion.cpp
590 gezelter 1639 src/applications/staticProps/TetrahedralityParam.cpp
591 gezelter 1763 src/applications/staticProps/TetrahedralityParamZ.cpp
592 gezelter 2015 src/applications/staticProps/TetrahedralityParamXYZ.cpp
593 gezelter 1639 src/applications/staticProps/TwoDGofR.cpp
594 gezelter 1655 src/applications/staticProps/StaticPropsCmd.cpp
595 gezelter 1639 )
596    
597     set (NANOPARTICLEBUILDERSOURCE
598     src/applications/nanoparticleBuilder/nanoparticleBuilder.cpp
599     src/applications/nanoparticleBuilder/shapedLatticeSpherical.cpp
600 gezelter 1655 src/applications/nanoparticleBuilder/nanoparticleBuilderCmd.cpp
601 gezelter 1639 )
602    
603 kstocke1 1701 set (NANORODBUILDERSOURCE
604     src/applications/nanoparticleBuilder/nanorodBuilder.cpp
605     src/applications/nanoparticleBuilder/shapedLatticeRod.cpp
606 gezelter 1879 src/applications/nanoparticleBuilder/shapedLatticeEllipsoid.cpp
607 kstocke1 1701 src/applications/nanoparticleBuilder/nanorodBuilderCmd.cpp
608     )
609    
610     set (NANOROD_PENTBUILDERSOURCE
611     src/applications/nanoparticleBuilder/nanorod_pentBuilder.cpp
612     src/applications/nanoparticleBuilder/nanorod_pentBuilderCmd.cpp
613     src/applications/nanoparticleBuilder/shapedLatticePentRod.cpp
614     )
615    
616 gezelter 1879 set (ICOSAHEDRALBUILDERSOURCE
617     src/applications/nanoparticleBuilder/icosahedralBuilder.cpp
618     src/applications/nanoparticleBuilder/icosahedralBuilderCmd.cpp
619     )
620    
621 gezelter 1639 set (RANDOMBUILDERSOURCE
622     src/applications/randomBuilder/randomBuilder.cpp
623 gezelter 1655 src/applications/randomBuilder/randomBuilderCmd.cpp
624 gezelter 1639 )
625    
626     set(SIMPLEBUILDERSOURCE
627     src/applications/simpleBuilder/simpleBuilder.cpp
628 gezelter 1655 src/applications/simpleBuilder/simpleBuilderCmd.cpp
629 gezelter 1639 )
630    
631     set(THERMALIZERSOURCE
632     src/applications/thermalizer/thermalizer.cpp
633 gezelter 1655 src/applications/thermalizer/thermalizerCmd.cpp
634 gezelter 1639 )
635    
636 gezelter 1879 set(RECENTERSOURCE
637     src/applications/recenter/recenter.cpp
638     src/applications/recenter/recenterCmd.cpp
639     )
640    
641 gezelter 1767 add_executable(Dump2XYZ ${DUMP2XYZSOURCE} ${GETOPT_SOURCE})
642 gezelter 1639 target_link_libraries(Dump2XYZ openmd_single openmd_core openmd_single openmd_core)
643 gezelter 1767 add_executable(DynamicProps ${DYNAMICPROPSSOURCE} ${GETOPT_SOURCE})
644 gezelter 1639 target_link_libraries(DynamicProps openmd_single openmd_core openmd_single openmd_core)
645 gezelter 1767 add_executable(Hydro ${HYDROSOURCE} ${GETOPT_SOURCE})
646 gezelter 1639 target_link_libraries(Hydro openmd_single openmd_core openmd_single openmd_core)
647 gezelter 1767 add_executable(StaticProps ${STATICPROPSSOURCE} ${GETOPT_SOURCE})
648 gezelter 1639 target_link_libraries(StaticProps openmd_single openmd_core openmd_single openmd_core)
649 gezelter 2024 add_executable(SequentialProps ${SEQUENTIALPROPSSOURCE} ${GETOPT_SOURCE})
650     target_link_libraries(SequentialProps openmd_single openmd_core openmd_single openmd_core)
651 gezelter 1767 add_executable(nanoparticleBuilder ${NANOPARTICLEBUILDERSOURCE} ${GETOPT_SOURCE})
652 gezelter 1807 target_link_libraries(nanoparticleBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
653 gezelter 1767 add_executable(nanorodBuilder ${NANORODBUILDERSOURCE} ${GETOPT_SOURCE})
654 gezelter 1807 target_link_libraries(nanorodBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
655 gezelter 1767 add_executable(nanorod_pentBuilder ${NANOROD_PENTBUILDERSOURCE} ${GETOPT_SOURCE})
656 gezelter 1807 target_link_libraries(nanorod_pentBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
657 gezelter 1879 add_executable(icosahedralBuilder ${ICOSAHEDRALBUILDERSOURCE} ${GETOPT_SOURCE})
658     target_link_libraries(icosahedralBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
659 gezelter 1767 add_executable(randomBuilder ${RANDOMBUILDERSOURCE} ${GETOPT_SOURCE})
660 gezelter 1807 target_link_libraries(randomBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
661 gezelter 1767 add_executable(simpleBuilder ${SIMPLEBUILDERSOURCE} ${GETOPT_SOURCE})
662 gezelter 1807 target_link_libraries(simpleBuilder openmd_single openmd_core openmd_single openmd_core openmd_single)
663 gezelter 1767 add_executable(thermalizer ${THERMALIZERSOURCE} ${GETOPT_SOURCE})
664 gezelter 1807 target_link_libraries(thermalizer openmd_single openmd_core openmd_single openmd_core openmd_single)
665 gezelter 1879 add_executable(recenter ${RECENTERSOURCE} ${GETOPT_SOURCE})
666     target_link_libraries(recenter openmd_single openmd_core openmd_single openmd_core openmd_single)
667 gezelter 1639
668     if (OPENBABEL2_FOUND)
669     set (ATOM2MDSOURCE
670     src/applications/atom2md/atom2md.cpp
671     src/applications/atom2md/openmdformat.cpp
672     )
673 gezelter 1767 add_executable(atom2md ${ATOM2MDSOURCE} ${GETOPT_SOURCE})
674 gezelter 1699 target_link_libraries(atom2md openmd_single openmd_core openmd_single openmd_core ${OPENBABEL2_LIBRARIES})
675 gezelter 1647 INSTALL(TARGETS atom2md RUNTIME DESTINATION bin
676     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
677 gezelter 1639 ENDIF (OPENBABEL2_FOUND)
678    
679    
680 gezelter 2042 set(PYNONUMPY_FILES
681 gezelter 1639 src/applications/hydrodynamics/diffExplainer
682     src/applications/utilities/affineScale
683     src/applications/utilities/dumpConverter
684     src/applications/utilities/md-solvator
685     src/applications/utilities/md2md
686     src/applications/utilities/mdSplit
687 gezelter 2012 src/applications/utilities/mdShrink
688 gezelter 1795 src/applications/utilities/stat2thcond
689 gezelter 1639 src/applications/utilities/stat2visco
690 gezelter 2006 src/applications/utilities/stat2dielectric
691 gezelter 1639 src/applications/utilities/waterRotator
692 gezelter 2042 )
693    
694     set(PYNUMPY_FILES
695     src/applications/utilities/pack2md
696     src/applications/utilities/principalAxisCalculator
697     src/applications/utilities/vcorr2spectrum
698 gezelter 1668 src/applications/utilities/waterReplacer
699 gezelter 1639 )
700    
701 gezelter 2042 IF(NUMPY_FOUND)
702     set(PY_FILES ${PYNONUMPY_FILES} ${PYNUMPY_FILES})
703     ELSE(NUMPY_FOUND)
704     set(PY_FILES ${PYNONUMPY_FILES})
705     ENDIF(NUMPY_FOUND)
706    
707 gezelter 1639 IF(PYTHON_EXECUTABLE)
708 gezelter 1795 IF(WIN32)
709     SET(PYEXT ".py")
710     ELSE(WIN32)
711     SET(PYEXT "")
712     ENDIF(WIN32)
713    
714     foreach(PY_FILE ${PY_FILES})
715     GET_FILENAME_COMPONENT(filename "${PY_FILE}" NAME)
716     CONFIGURE_FILE(${PY_FILE}
717     "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}${PYEXT}" @ONLY)
718     INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}${PYEXT}"
719     DESTINATION bin
720     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
721     endforeach(PY_FILE)
722 gezelter 1639 ENDIF(PYTHON_EXECUTABLE)
723    
724     set(PERL_FILES
725     src/applications/utilities/solvator
726     src/applications/utilities/waterBoxer
727     )
728    
729     IF(PERL_FOUND)
730 gezelter 1795 IF(WIN32)
731     SET(PLEXT ".PL")
732     ELSE(WIN32)
733     SET(PLEXT "")
734     ENDIF(WIN32)
735 gezelter 1647
736 gezelter 1795 foreach(PERL_FILE ${PERL_FILES})
737     GET_FILENAME_COMPONENT(filename "${PERL_FILE}" NAME)
738     configure_file(${PERL_FILE} "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}${PLEXT}" @ONLY)
739     INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}${PLEXT}"
740     DESTINATION bin
741     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
742    
743     endforeach(PERL_FILE)
744 gezelter 1639 ENDIF(PERL_FOUND)
745 gezelter 1647
746 gezelter 1806
747 gezelter 1652 INSTALL(FILES AUTHORS LICENSE README INSTALL DESTINATION .
748 gezelter 1647 PERMISSIONS OWNER_READ GROUP_READ WORLD_READ)
749     INSTALL(TARGETS
750     openmd_core
751     openmd_single
752     openmd
753     Dump2XYZ
754     simpleBuilder
755     StaticProps
756     DynamicProps
757 gezelter 2024 SequentialProps
758 gezelter 1647 randomBuilder
759     nanoparticleBuilder
760 gezelter 1806 nanorodBuilder
761     nanorod_pentBuilder
762 gezelter 1950 icosahedralBuilder
763 gezelter 1647 thermalizer
764 gezelter 1879 recenter
765 gezelter 1647 Hydro
766     RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
767     LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
768     ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
769     )
770    
771     install(DIRECTORY forceFields/
772     DESTINATION forceFields
773 gezelter 1650 DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
774     PATTERN ".svn" EXCLUDE
775 gezelter 1647 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
776     install(DIRECTORY samples/
777     DESTINATION samples
778 gezelter 1650 DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
779     PATTERN ".svn" EXCLUDE
780 gezelter 1651 PATTERN "*.dump" EXCLUDE
781     PATTERN "*.stat" EXCLUDE
782 gezelter 1795 PATTERN "*.eor" EXCLUDE
783     PATTERN "*.rnemd" EXCLUDE
784 gezelter 1806 PATTERN "*.fz" EXCLUDE
785 gezelter 1647 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
786 gezelter 1806
787     configure_file( samples/builders/runMe.in
788     "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/runMe" @ONLY)
789     INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/runMe"
790     DESTINATION samples/builders
791     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
792    
793    
794 gezelter 1651 INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/doc/OpenMDmanual.pdf"
795     DESTINATION doc
796     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
797 gezelter 1694
798     message( STATUS)
799     message( STATUS "========== OpenMD Build Information ==========")
800     message( STATUS "Current revision ........... = ${SVN_REV}")
801     message( STATUS "CMAKE_SYSTEM ............... = ${CMAKE_SYSTEM}")
802     message( STATUS "==============================================")
803     message( STATUS "CMAKE_BUILD_TYPE ........... = ${CMAKE_BUILD_TYPE}")
804     message( STATUS "CMAKE_INSTALL_PREFIX ....... = ${CMAKE_INSTALL_PREFIX}")
805 gezelter 1695 message( STATUS "Build as SINGLE_PRECISION .. = ${SINGLE_PRECISION}")
806 gezelter 1694 message( STATUS "CMAKE_CXX_COMPILER ......... = ${CMAKE_CXX_COMPILER}")
807     message( STATUS "MPI_CXX_COMPILER ........... = ${MPI_CXX_COMPILER}")
808     message( STATUS "MPI_CXX_INCLUDE_PATH ....... = ${MPI_CXX_INCLUDE_PATH}")
809     message( STATUS "MPI_CXX_LIBRARIES .......... = ${MPI_CXX_LIBRARIES}")
810 gezelter 1699 message( STATUS "OPENBABEL2_ROOT ............ = ${OPENBABEL2_ROOT}")
811 gezelter 1694 message( STATUS "OPENBABEL2_INCLUDE_DIR ..... = ${OPENBABEL2_INCLUDE_DIR}")
812     message( STATUS "OPENBABEL2_LIBRARIES ....... = ${OPENBABEL2_LIBRARIES}")
813 gezelter 1695 message( STATUS "QHULL_ROOT ................. = ${QHULL_ROOT}")
814 gezelter 1694 message( STATUS "QHULL_INCLUDE_DIR .......... = ${QHULL_INCLUDE_DIR}")
815     message( STATUS "QHULL_LIBRARIES ............ = ${QHULL_LIBRARIES}")
816 gezelter 1695 message( STATUS "ZLIB_ROOT .................. = ${ZLIB_ROOT}")
817 gezelter 1694 message( STATUS "ZLIB_INCLUDE_DIR ........... = ${ZLIB_INCLUDE_DIR}")
818     message( STATUS "ZLIB_LIBRARIES ............. = ${ZLIB_LIBRARIES}")
819 gezelter 1699 message( STATUS "FFTW3_ROOT ................. = ${FFTW3_ROOT}")
820 gezelter 1694 message( STATUS "FFTW3_INCLUDE_DIR .......... = ${FFTW3_INCLUDE_DIR}")
821     message( STATUS "FFTW3_LIBRARIES ............ = ${FFTW3_LIBRARIES}")
822 gezelter 1695 message( STATUS "PERL_EXECUTABLE ............ = ${PERL_EXECUTABLE}")
823     message( STATUS "PYTHON_EXECUTABLE .......... = ${PYTHON_EXECUTABLE}")
824 gezelter 1694 message( STATUS "DOXYGEN_EXECUTABLE ......... = ${DOXYGEN_EXECUTABLE}")
825 gezelter 1695 message( STATUS )
826 gezelter 1696 message( STATUS "To override these options, add -D{OPTION_NAME}=... to the cmake command" )
827     message( STATUS "Particularly useful defines are for:")
828     message( STATUS )
829 gezelter 1699 message( STATUS " -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} (where OpenMD will be installed)")
830     message( STATUS " -DOPENBABEL2_ROOT=/path/to/openbabel")
831     message( STATUS " -DQHULL_ROOT=/path/to/qhull")
832     message( STATUS " -DFFTW3_ROOT=/path/to/fftw3")
833 gezelter 1696 message( STATUS )
834 gezelter 1790 IF(WIN32)
835     message( STATUS "To build and install OpenMD, enter: ")
836     message( STATUS " msbuild /m ALL_BUILD.vcxproj /p:Configuration=${CMAKE_BUILD_TYPE}")
837     message( STATUS "followed by:")
838     message( STATUS " msbuild /m INSTALL.vcxproj /p:Configuration=${CMAKE_BUILD_TYPE}")
839     ELSE(WIN32)
840     message( STATUS "To build and install OpenMD, enter \"make\" and \"make install\"")
841     ENDIF(WIN32)
842 gezelter 1696 message( STATUS )
843 gezelter 1795
844     # build a CPack driven installer package
845     IF(NOT DEFINED CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS)
846     SET(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON)
847     ENDIF()
848     include (InstallRequiredSystemLibraries)
849     set (CPACK_RESOURCE_FILE_LICENSE
850     "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
851     set (CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}")
852     set (CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}")
853     include (CPack)