From 8f1a5984cb8347f61d05fbe6edc6b5036d102104 Mon Sep 17 00:00:00 2001 From: Andreas Naumann <andreas.naumann@tu-dresden.de> Date: Fri, 1 Oct 2010 03:44:56 +0000 Subject: [PATCH] extended cmake install process --- AMDiS/AMDiSConfig.cmake.in | 22 +++++++++++++++++++--- AMDiS/CMakeLists.txt | 20 ++++++++++++++++++++ 2 files changed, 39 insertions(+), 3 deletions(-) diff --git a/AMDiS/AMDiSConfig.cmake.in b/AMDiS/AMDiSConfig.cmake.in index f24f72d2..1344f66f 100644 --- a/AMDiS/AMDiSConfig.cmake.in +++ b/AMDiS/AMDiSConfig.cmake.in @@ -1,22 +1,38 @@ -set(AMDiS_INCLUDE_DIR ${AMDiS_DIR}/include ${AMDiS_DIR}/mtl4) +set(MTL_DIR ${AMDiS_DIR}/mtl4 CACHE PATH "the mtl directory") +set(AMDiS_INCLUDE_DIR ${AMDiS_DIR}/include ${MTL_DIR}) set(AMDiS_LIBRARIES amdis compositeFEM) set(AMDiS_LIBRARY_DIRS ${AMDiS_DIR}/lib) + find_package(Boost 1.42 REQUIRED) if(Boost_FOUND) set(AMDiS_LIBRARIES ${AMDiS_LIBRARIES} boost_system boost_iostreams) set(AMDiS_LIBRARY_DIRS ${AMDiS_LIBRARY_DIRS} ${Boost_INCLUDE_DIR}) endif(Boost_FOUND) + set(AMDiS_NEED_PARMETIS @ENABLE_PARMETIS@) set(AMDiS_HAS_PARALLEL_DOMAIN @ENABLE_PARALLEL_DOMAIN@) set(AMDiS_NEED_UMFPACK @ENABLE_UMFPACK@) set(AMDiS_NEED_MKL @ENABLE_MKL@) set(AMDiS_NEED_DUNE @ENABLE_DUNE@) set(AMDiS_USE_FILE ${AMDiS_DIR}/AMDiSUse.cmake) +set(AMDiS_COMPILEFLAGS "@COMPILEFLAGS@") message("find-components: ${AMDiS_FIND_COMPONENTS}") +if(AMDiS_NEED_UMFPACK) + set(BLAS_LIBRARY_DIR "" CACHE STRING "the blas library directory") + set(BLAS_LIBRARY "blas" CACHE STRING "the blas library") + set(AMDiS_LIBRARIES ${AMDiS_LIBRARIES} umfpack amd ${BLAS_LIBRARY}) + set(AMDiS_LIBRARY_DIRS ${AMDiS_LIBRARY_DIRS} ${AMDiS_DIR}/umfpack ${AMDiS_DIR}/amd ${BLAS_LIBRARY_DIR}) + set(AMDiS_INCLUDE_DIR ${AMDiS_INCLUDE_DIR} + ${AMDiS_DIR}/umfpack/include/ + ${AMDiS_DIR}/amd/include + ${AMDiS_DIR}/ufconfig + ${AMDiS_DIR}/ufconfig/xerbla + ) +endif(AMDiS_NEED_UMFPACK) if(${AMDiS_FIND_COMPONENTS} MATCHES umfpack ) - if( ${AMDiS_NEED_UMFPACK} ) - set(AMDiS_LIBRARIES ${AMDiS_LIBRARIES} umfpack) + if( AMDiS_NEED_UMFPACK ) + set(AMDiS_LIBRARIES ${AMDiS_LIBRARIES} umfpack blas) else() set( AMDiS_umfpack_FOUND FALSE) message(SEND_ERROR "the selected amdis was not compiled with umfpack") diff --git a/AMDiS/CMakeLists.txt b/AMDiS/CMakeLists.txt index d334a2ab..c35d7063 100644 --- a/AMDiS/CMakeLists.txt +++ b/AMDiS/CMakeLists.txt @@ -152,6 +152,11 @@ if(ENABLE_PARMETIS) ${SOURCE_DIR}/ParallelProblem.cc ${SOURCE_DIR}/ParMetisPartitioner.cc ${SOURCE_DIR}/PollutionError.cc) SET(COMPILEFLAGS "${COMPILEFLAGS} -DHAVE_PARALLEL_AMDIS=1") + INSTALL(FILES ${LIB_DIR}/ParMetis-3.1/parmetis.h + ${LIB_DIR}/ParMetis-3.1/libparmetis.a + ${LIB_DIR}/ParMetis-3.1/libmetis.a + DESTINATION amdis/parmetis + ) endif(ENABLE_PARMETIS) if(ENABLE_PARALLEL_DOMAIN) @@ -181,6 +186,21 @@ endif(ENABLE_OPENMP) if(ENABLE_UMFPACK) include_directories(${LIB_DIR}/UFconfig ${LIB_DIR}/AMD/Include ${LIB_DIR}/UMFPACK/Include) SET(COMPILEFLAGS "${COMPILEFLAGS} -DHAVE_UMFPACK=1 -DMTL_HAS_UMFPACK") + FILE(GLOB UMFPACK_HEADERS "${LIB_DIR}/UMFPACK/Include/*.h") + INSTALL(FILES ${UMFPACK_HEADERS} DESTINATION amdis/umfpack/include) + + FILE(GLOB UMFPACK_HEADERS "${LIB_DIR}/AMD/Include/*.h") + INSTALL(FILES ${UMFPACK_HEADERS} DESTINATION amdis/amd/include) + + FILE(GLOB HEADERS "${LIB_DIR}/UFconfig/*.h") + INSTALL(FILES ${HEADERS} DESTINATION amdis/ufconfig/) + + FILE(GLOB HEADERS "${LIB_DIR}/UFconfig/xerbla/*.h") + INSTALL(FILES ${HEADERS} DESTINATION amdis/ufconfig/xerbla) + + INSTALL(FILES ${LIB_DIR}/UMFPACK/Lib/libumfpack.a DESTINATION amdis/umfpack/) + INSTALL(FILES ${LIB_DIR}/AMD/Lib/libamd.a DESTINATION amdis/amd/) + endif(ENABLE_UMFPACK) if(ENABLE_MKL) -- GitLab