# set(CMAKE_EXE_LINKER_FLAGS -pg)
# set(CMAKE_SHARED_LINKER_FLAGS -pg)
+find_package(MPI REQUIRED)
+#set(CMAKE_CXX_COMPILE_FLAGS ${CMAKE_CXX_COMPILE_FLAGS} ${MPI_COMPILE_FLAGS})
+#set(CMAKE_CXX_LINK_FLAGS ${CMAKE_CXX_LINK_FLAGS} ${MPI_LINK_FLAGS})
+include_directories(${MPI_INCLUDE_PATH})
+
SET(CMAKE_BUILD_TYPE Release)
add_subdirectory(latlib)
-add_executable(heatbath heatbath.cpp)
-#set_target_properties(phi4iso-local PROPERTIES COMPILE_DEFINITIONS "LOCAL_UPDATE_ALGORITHM")
-target_link_libraries(heatbath o815 gsl gslcblas lat_neigh)
+add_executable(heatbath-metro heatbath.cpp)
+set_target_properties(heatbath-metro PROPERTIES COMPILE_DEFINITIONS "ALGORITHM_METRO")
+target_link_libraries(heatbath-metro o815 gsl gslcblas lat_neigh)
+
+add_executable(heatbath-AhbMhb heatbath.cpp)
+set_target_properties(heatbath-AhbMhb PROPERTIES COMPILE_DEFINITIONS "ALGORITHM_AHBMHB")
+target_link_libraries(heatbath-AhbMhb o815 gsl gslcblas lat_neigh)
+
+add_executable(heatbath-AhbMor heatbath.cpp)
+set_target_properties(heatbath-AhbMor PROPERTIES COMPILE_DEFINITIONS "ALGORITHM_AHBMOR")
+target_link_libraries(heatbath-AhbMor o815 gsl gslcblas lat_neigh)
+
+add_executable(heatbath-AorMhb heatbath.cpp)
+set_target_properties(heatbath-AorMhb PROPERTIES COMPILE_DEFINITIONS "ALGORITHM_AORMHB")
+target_link_libraries(heatbath-AorMhb o815 gsl gslcblas lat_neigh)
+
+add_executable(heatbath-AorMor heatbath.cpp)
+set_target_properties(heatbath-AorMor PROPERTIES COMPILE_DEFINITIONS "ALGORITHM_AORMOR")
+target_link_libraries(heatbath-AorMor o815 gsl gslcblas lat_neigh)