ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/CMakeLists.txt
(Generate patch)

Comparing branches/development/CMakeLists.txt (file contents):
Revision 1639 by gezelter, Sat Sep 24 20:18:07 2011 UTC vs.
Revision 1652 by gezelter, Tue Sep 27 18:18:28 2011 UTC

# Line 3 | Line 3 | project(OpenMD)
3   cmake_minimum_required (VERSION 2.6)
4   project(OpenMD)
5  
6
6   # OpenMD version number.
7   set (VERSION_MAJOR "2")
8   set (VERSION_MINOR "0")
# Line 11 | Line 10 | SET(CMAKE_MODULE_PATH ${OpenMD_SOURCE_DIR}/cmake/modul
10  
11   # cmake modules that are needed to build oopse
12   SET(CMAKE_MODULE_PATH ${OpenMD_SOURCE_DIR}/cmake/modules)
13 < SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
14 < SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
13 > IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
14 >  SET(CMAKE_INSTALL_PREFIX
15 >    "/usr/local/openmd" CACHE PATH "OpenMD install prefix" FORCE
16 >    )
17 > ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
18 >
19 > # ---------- Setup output Directories -------------------------
20 > SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY
21 >  ${PROJECT_BINARY_DIR}/lib
22 >  CACHE PATH
23 >  "Single directory for all shared libraries"
24 >  )
25 > # --------- Setup the Executable output Directory -------------
26 > SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY
27 >  ${PROJECT_BINARY_DIR}/bin
28 >  CACHE PATH
29 >  "Single directory for all Executables."
30 >  )
31 > # --------- Setup the static library directory -------------
32 > SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY
33 >  ${PROJECT_BINARY_DIR}/lib
34 >  CACHE PATH
35 >  "Single directory for all static libraries."
36 >  )
37 >
38  
39   enable_language(CXX  C)
40  
# Line 33 | Line 55 | IF ( Subversion_FOUND AND EXISTS ${PROJECT_SOURCE_DIR}
55    Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project)
56    SET(SVN_REV ${Project_WC_REVISION})
57    ADD_DEFINITIONS( -DSVN_REV=${Project_WC_REVISION} )
58 +  SET(GENERATELOGS "${PROJECT_SOURCE_DIR}/doc/svn2cl")
59 +  ADD_CUSTOM_TARGET(ChangeLog
60 +     COMMAND ${GENERATELOGS} "--group-by-day" "--include-rev"
61 +     "--linelen=78" "--output=${PROJECT_BINARY_DIR}/ChangeLog" "${PROJECT_SOURCE_DIR}"
62 +  )
63   ENDIF()
64  
65   # Optional libraries: If we can find these, we will build with them
# Line 53 | Line 80 | ENDIF(QHULL_FOUND)
80    LINK_LIBRARIES(${QHULL_LIBRARIES})
81   ENDIF(QHULL_FOUND)
82  
56
83   # zlib stuff
84   find_package(ZLIB)
85   if(ZLIB_FOUND)
# Line 72 | Line 98 | ENDIF(FFTW_FOUND)
98    LINK_LIBRARIES(${FFTW_LIBRARIES})
99   ENDIF(FFTW_FOUND)
100  
101 + # add a target to generate API documentation with Doxygen
102 + find_package(Doxygen)
103 + if(DOXYGEN_FOUND)
104 +  configure_file("${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in" "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile" @ONLY)
105 +  add_custom_target(doc
106 +    ${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile"
107 +    WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/doc"
108 +    COMMENT "Generating API documentation with Doxygen" VERBATIM
109 +  )
110 + endif(DOXYGEN_FOUND)
111  
112   #include checks
113   include(CheckIncludeFile)
# Line 121 | Line 157 | SET(PERL_INSTALLDIRS "site" CACHE STRING "Perl install
157   ENDIF(PYTHON_EXECUTABLE)
158  
159   SET(PERL_INSTALLDIRS "site" CACHE STRING "Perl installation locations")
124
160  
126 include(CMakePrintSystemInformation)
161  
162   configure_file (
163    "${PROJECT_SOURCE_DIR}/src/config.h.cmake"
# Line 390 | Line 424 | target_link_libraries(openmd_MPI openmd_parallel openm
424   COMPILE_DEFINITIONS IS_MPI
425   )
426   target_link_libraries(openmd_MPI openmd_parallel openmd_core openmd_parallel openmd_core)
427 +  INSTALL(TARGETS
428 +        openmd_parallel openmd_MPI
429 +  RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
430 +  LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
431 +  ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
432 + )
433   ENDIF (MPI_FOUND)
434  
435   set (DUMP2XYZSOURCE
# Line 505 | Line 545 | src/applications/atom2md/openmdformat.cpp
545   )
546    add_executable(atom2md ${ATOM2MDSOURCE})
547    target_link_libraries(atom2md openmd_single openmd_core openmd_single openmd_core ${OPENBABEL2_LIBRARIES})
548 +  INSTALL(TARGETS atom2md RUNTIME DESTINATION bin
549 +          PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
550   ENDIF (OPENBABEL2_FOUND)
551  
552  
# Line 522 | Line 564 | IF(PYTHON_EXECUTABLE)
564  
565   IF(PYTHON_EXECUTABLE)
566     foreach(PY_FILE ${PY_FILES})
567 <      configure_file(${PY_FILE} "${EXECUTABLE_OUTPUT_PATH}"/${PY_FILE} @ONLY)
567 >      GET_FILENAME_COMPONENT(filename "${PY_FILE}" NAME)
568 >      CONFIGURE_FILE(${PY_FILE}
569 >                     "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" @ONLY)
570 >      INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}"
571 >              DESTINATION bin
572 >              PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
573     endforeach(PY_FILE)
527 #INSTALL(FILES ${PY_FILES} DESTINATION ${EXECUTABLE_OUTPUT_PATH})
574   ENDIF(PYTHON_EXECUTABLE)
575  
576   set(PERL_FILES
# Line 534 | Line 580 | IF(PERL_FOUND)
580  
581   IF(PERL_FOUND)
582     foreach(PERL_FILE ${PERL_FILES})
583 <      configure_file(${PERL_FILE} "${EXECUTABLE_OUTPUT_PATH}"/${PERL_FILE} @ONLY)
583 >      GET_FILENAME_COMPONENT(filename "${PERL_FILE}" NAME)
584 >      configure_file(${PERL_FILE} "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}" @ONLY)
585 >      INSTALL(FILES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${filename}"
586 >              DESTINATION bin
587 >              PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
588 >
589     endforeach(PERL_FILE)
539 #INSTALL(FILES ${PERL_FILES} DESTINATION ${EXECUTABLE_OUTPUT_PATH})
590   ENDIF(PERL_FOUND)
591 +
592 + INSTALL(FILES AUTHORS LICENSE README INSTALL DESTINATION .
593 +        PERMISSIONS OWNER_READ GROUP_READ WORLD_READ)
594 + INSTALL(TARGETS
595 +        openmd_core
596 +        openmd_single
597 +        openmd
598 +        Dump2XYZ
599 +        simpleBuilder
600 +        StaticProps
601 +        DynamicProps
602 +        randomBuilder
603 +        nanoparticleBuilder
604 +        thermalizer
605 +        Hydro
606 +  RUNTIME DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
607 +  LIBRARY DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
608 +  ARCHIVE DESTINATION lib PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
609 + )
610 +
611 + install(DIRECTORY forceFields/  
612 +        DESTINATION forceFields
613 +        DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
614 +        PATTERN ".svn" EXCLUDE
615 +        PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
616 + install(DIRECTORY samples/      
617 +        DESTINATION samples
618 +        DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
619 +        PATTERN ".svn" EXCLUDE
620 +        PATTERN "*.dump" EXCLUDE
621 +        PATTERN "*.stat" EXCLUDE
622 +        PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
623 + INSTALL(FILES "${CMAKE_CURRENT_SOURCE_DIR}/doc/OpenMDmanual.pdf"
624 +        DESTINATION doc
625 +        PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines