Added test MPI preprocessor compile definitions
[unres.git] / CMakeLists.txt
1 #
2 # CMake project file for UNRES 
3 #
4 cmake_minimum_required(VERSION 2.8)
5    
6 project(unrespack Fortran C)
7 set(UNRES_MAJOR 3)
8 set(UNRES_MINOR 1)
9 set(UNRES_PATCH 0)
10 set(UNRES_VERSION ${SIMPLE_MAJOR}.${SIMPLE_MINOR}.${SIMPLE_PATCH})
11   
12 # Set makefile verbose on
13 set( CMAKE_VERBOSE_MAKEFILE 1 )
14
15 # MPI stuff
16 if(MPIF_LOCAL_DIR)
17   find_library(MPIF_LIBRARY NAMES mpif77  NO_DEFAULT_PATH  PATHS  ${MPIF_LOCAL_DIR}/lib)
18   find_path( MPIF_INCLUDE_DIRECTORIES  NAMES mpif.h  NO_DEFAULT_PATH  PATHS  ${MPIF_LOCAL_DIR}/include  )
19 else(MPIF_LOCAL_DIR)
20   find_library(MPIF_LIBRARY NAMES mpif77 PATHS 
21         /users/local/mpi64/mpich-1.2.7p1/lib 
22         /usr/lib
23         /usr/local/lib
24         /usr/local/mpi/lib
25   )
26   find_path( MPIF_INCLUDE_DIRECTORIES NAMES  mpif.h PATHS
27         /users/local/mpi64/mpich-1.2.7p1/include
28         /usr/include
29         /usr/local/include   
30         /usr/include/mpi
31         /usr/local/mpi/include
32   )
33 endif(MPIF_LOCAL_DIR)
34
35 set( MPIF_LIBRARIES  ${MPIF_LIBRARY})
36
37 if ( MPIF_INCLUDE_DIRECTORIES AND MPIF_LIBRARIES )
38   set( MPIF_FOUND TRUE )
39   message("MPIF found")
40 else ( MPIF_INCLUDE_DIRECTORIES AND MPIF_LIBRARIES )
41   set( MPIF_FOUND FALSE )
42   message("MPIF_ID: ${MPIF_INCLUDE_DIRECTORIES} MPIF_LIB: ${MPIF_LIBRARIES}")
43   message("MPIF not found")
44 endif ( MPIF_INCLUDE_DIRECTORIES AND MPIF_LIBRARIES )
45 # End OF MPI stuff
46
47
48 if (MPIF_FOUND)
49   messege("MPI library "${MPIF_INCLUDE_DIRECTORIES} )
50 endif(MPIF_FOUND) 
51
52 SET(CMAKE_Fortran_COMPILE_OBJECT "<CMAKE_Fortran_COMPILER>  ${CMAKE_START_TEMP_FILE} <FLAGS> <DEFINES> -c <SOURCE> -o <OBJECT> ${CMAKE_END_TEMP_FILE}")
53
54 set(CPPFLAGS "-DPROCOR -DLINUX -DPGI -DUNRES -DISNAN -DMP -DMPI -DSPLITELE -DLANGO -DCRYST_BOND -DCRYST_THETA -DCRYST_SC" )
55 # Apply them to *.F sources
56 add_definitions( ${CPPFLAGS} ) 
57
58
59 enable_language (Fortran)
60    
61 # make sure that the default is a RELEASE
62 if (NOT CMAKE_BUILD_TYPE)
63   set (CMAKE_BUILD_TYPE RELEASE CACHE STRING
64        "Choose the type of build, options are: None Debug Release."
65       FORCE)
66 endif (NOT CMAKE_BUILD_TYPE)
67    
68   
69 # Set the force field
70 if (NOT UNRES_FF)
71   set(UNRES_FF "GAB" "E0LL2Y" CACHE STRING "Choose the force field, options are: GAB E0LL2Y" )
72   #message ( "Please set the Force field (UNRES_FF) to : GAB, 0ELE" )
73 endif (NOT UNRES_FF)
74    
75 add_subdirectory(source)