ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/CMakeLists.txt
Revision: 2056
Committed: Fri Feb 20 15:12:07 2015 UTC (10 years, 5 months ago) by gezelter
Content type: text/plain
File size: 29534 byte(s)
Log Message:
Fixes to HullFinder (and by extension to RNEMD) for getSurfaceArea() call.
Adding Multipass Correlation Function (unused right now).

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