Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Hide options on apple or windows if they are not worked yet.
[simgrid.git] / buildtools / Cmake / Option.cmake
1 ### ARGs use -D[var]=[ON/OFF] or [1/0] or [true/false](see after)
2 ### ex: cmake -Denable_java=ON -Denable_gtnets=ON ./
3
4
5
6 set(BIBTEX2HTML ${BIBTEX2HTML} CACHE PATH "Path to bibtex2html")
7 set(gtnets_path ${gtnets_path} CACHE PATH "Path to gtnets lib")
8
9 set(custom_flags ${custom_flags} CACHE FORCE "Customers flags add to cmake_c_flag")
10
11 if(NOT prefix)
12         set(prefix "/usr/local/simgrid/" CACHE PATH "Path where to install project")
13 else(NOT prefix)
14         set(prefix ${prefix} CACHE PATH "Path where to install project")
15 endif(NOT prefix)
16
17 set(with_context ${with_context} CACHE TYPE INTERNAL FORCE)
18
19 if(NOT with_context)
20         set(with_context "auto" CACHE TYPE INTERNAL FORCE)
21 endif(NOT with_context)
22
23 set(pipol_user ${pipol_user} CACHE TYPE INTERNAL FORCE)
24
25 if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
26         option(enable_smpi "This variable set smpi lib." off) #for the moment it doesn't compil with MacOS
27 else(CMAKE_SYSTEM_NAME MATCHES "Darwin")
28         option(enable_smpi "This variable set smpi lib." on)
29 endif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
30 option(enable_gtnets "Whether gtnets model is activated." on)
31 option(enable_java "Whether the Java bindings are activated." on)
32 option(enable_lua "Whether the lua bindings are activated." on)
33 option(enable_ruby "Whether the Ruby bindings are activated." on)
34 option(enable_doc "Whether we should rebuild the documentation" off)
35 option(enable_compile_optimizations "" off)
36 option(enable_compile_warnings "Whether compilation warnings should be turned into errors." off)
37 option(enable_maintainer_mode "Whether flex and flexml files should be rebuilt." off)
38 option(enable_supernovae "Whether Supernovae mode (helping compiler optimization) is activated." off)
39 option(enable_tracing "Tracing MSG (for now) simulations for visualization." off)
40 option(enable_latency_bound_tracking "" off)
41 option(enable_coverage "Enable coverage." off)
42 option(enable_memcheck "Enable memcheck." off)
43 option(enable_print_message "Enable print message during config." off)
44 option(enable_model-checking "" off)
45 option(enable_lib_static "" off)
46 option(enable_graphviz "" off)
47
48 if(WIN32 OR APPLE) #actually not enable with windows and Apple
49         message("-- Mode supernovae and maintainer are disabled.")
50     message("-- Model checking is disabled.")
51         message("-- Smpi, Ruby, Lua and GTnets are disabled.")
52         set(enable_supernovae false CACHE TYPE INTERNAL FORCE)
53         set(enable_maintainer_mode false CACHE TYPE INTERNAL FORCE)
54         set(enable_lua false CACHE TYPE INTERNAL FORCE)
55         set(enable_ruby false CACHE TYPE INTERNAL FORCE)
56         set(enable_smpi false CACHE TYPE INTERNAL FORCE)
57         set(enable_gtnets false CACHE TYPE INTERNAL FORCE) 
58         set(enable_model-checking false CACHE TYPE INTERNAL FORCE)
59         mark_as_advanced(enable_supernovae)
60     mark_as_advanced(enable_maintainer_mode)
61     mark_as_advanced(enable_lua)
62     mark_as_advanced(enable_ruby)
63     mark_as_advanced(enable_smpi)
64     mark_as_advanced(enable_gtnets)
65     mark_as_advanced(gtnets_path)
66     mark_as_advanced(enable_model-checking)
67 endif(WIN32 OR APPLE)
68
69 if(enable_supernovae AND enable_model-checking)
70         set(enable_model-checking false CACHE TYPE INTERNAL FORCE)
71         message("\n\nWith supernovae mode the model checking must be disable.!!!\n\n")
72 endif(enable_supernovae AND enable_model-checking)
73
74 mark_as_advanced(PATH_PCRE_LIB)
75 mark_as_advanced(HAVE_SSH)
76 mark_as_advanced(HAVE_RSYNC)
77 #mark_as_advanced(enable_coverage)
78 #mark_as_advanced(enable_memcheck)
79 #mark_as_advanced(enable_print_message)
80 mark_as_advanced(BIBTEX2HTML_PATH)
81 mark_as_advanced(LUA_LIB_PATH_1)                                                                                                                      
82 mark_as_advanced(LUA_LIB_PATH_2)
83 mark_as_advanced(LUA_LIB_PATH_3)
84 mark_as_advanced(HAVE_LUA5_1_LAUXLIB_H)                        
85 mark_as_advanced(HAVE_LUA5_1_LUALIB_H)
86 mark_as_advanced(RUBY_LIB_PATH_1)                                                                                                                      
87 mark_as_advanced(RUBY_LIB_PATH_2)
88 mark_as_advanced(CLEAR gtnets_path)
89 mark_as_advanced(BUILDNAME)
90 mark_as_advanced(ADDR2LINE)
91 mark_as_advanced(BIBTOOL_PATH)
92 mark_as_advanced(BUILD_TESTING)
93 mark_as_advanced(CMAKE_BUILD_TYPE)
94 mark_as_advanced(CMAKE_INSTALL_PREFIX)
95 mark_as_advanced(DART_ROOT)
96 mark_as_advanced(DOXYGEN_PATH)
97 mark_as_advanced(FIG2DEV_PATH)
98 mark_as_advanced(FLEXML_EXE)
99 mark_as_advanced(FLEX_EXE)
100 mark_as_advanced(PERL_EXECUTABLE)
101 mark_as_advanced(GCOV_PATH)
102 mark_as_advanced(ICONV_PATH)
103 mark_as_advanced(MAKE_PATH)
104 mark_as_advanced(SED_EXE)
105 mark_as_advanced(SVN)
106 mark_as_advanced(GIT)
107 mark_as_advanced(VALGRIND_PATH)
108 mark_as_advanced(PATH_PCRE_H)
109 mark_as_advanced(CMAKE_OSX_ARCHITECTURES)                                                                                                                  
110 mark_as_advanced(CMAKE_OSX_DEPLOYMENT_TARGET)                                                                                                              
111 mark_as_advanced(CMAKE_OSX_SYSROOT)                                                                         
112 mark_as_advanced(HAVE_AGRAPH_H)
113 mark_as_advanced(HAVE_CGRAPH_H)                                                                                
114 mark_as_advanced(HAVE_GRAPH_H)                                                                                  
115 mark_as_advanced(HAVE_GRAPH_LIB)
116 mark_as_advanced(HAVE_CGRAPH_LIB)
117 mark_as_advanced(HAVE_AGRAPH_LIB)
118 mark_as_advanced(HAVE_CDT_LIB)