major folder reorganisation, R pkg is now epclust/ at first level. Experimental usage...
[epclust.git] / old_C_code / stage1 / src / CMakeLists.txt
diff --git a/old_C_code/stage1/src/CMakeLists.txt b/old_C_code/stage1/src/CMakeLists.txt
new file mode 100644 (file)
index 0000000..b69602f
--- /dev/null
@@ -0,0 +1,48 @@
+cmake_minimum_required(VERSION 2.8.5)
+project(ppam_mpi)
+
+set(CMAKE_C_FLAGS "-std=gnu99")
+set(CMAKE_C_FLAGS_DEBUG "-g3")
+set(CMAKE_C_FLAGS_RELEASE "-O3")
+
+#already by default... ?!
+include_directories("${CMAKE_SOURCE_DIR}")
+
+#ppam executable (serialize, cluster, classif)
+
+#cds
+set(CGDS_INCLUDE_PATH "/usr/local/include/cgds")
+#set(CGDS_LIBRARY "/usr/local/lib/libcgds.so")
+#find_path(CDS_INCLUDE_PATH "cgds/cgds.h")
+#find_library(CGDS_LIBRARY cgds)
+include_directories(${CGDS_INCLUDE_PATH})
+
+#GSL: standard location
+find_path(GSL_INCLUDE_PATH "gsl/gsl_linalg.h")
+include_directories(${GSL_INCLUDE_PATH})
+find_library(GSL_LIBRARY gsl)
+find_library(GSLCBLAS_LIBRARY gslcblas)
+set(GSL_LIBRARIES ${GSL_LIBRARY} ${GSLCBLAS_LIBRARY})
+
+#MPI: standard location
+find_package(MPI REQUIRED)
+include_directories(${MPI_INCLUDE_PATH})
+
+#LibXml2: standard location
+find_package(LibXml2 REQUIRED)
+include_directories(${LIBXML2_INCLUDE_DIR})
+
+file(GLOB_RECURSE ppam_src "${CMAKE_SOURCE_DIR}/*.c")
+add_executable(ppam.exe ${ppam_src})
+add_library(ppam SHARED ${ppam_src})
+target_link_libraries(ppam.exe m cgds ${MPI_LIBRARIES} ${LIBXML2_LIBRARIES} ${GSL_LIBRARIES})# ${CGDS_LIBRARY})
+target_link_libraries(ppam m cgds ${MPI_LIBRARIES} ${LIBXML2_LIBRARIES} ${GSL_LIBRARIES})# ${CGDS_LIBRARY})
+
+if (MPI_COMPILE_FLAGS)
+       set_target_properties(ppam.exe PROPERTIES
+               COMPILE_FLAGS "${MPI_COMPILE_FLAGS}")
+endif()
+if (MPI_LINK_FLAGS)
+       set_target_properties(ppam.exe PROPERTIES
+               LINK_FLAGS "${MPI_LINK_FLAGS}")
+endif()