Skip to content
Snippets Groups Projects
Commit 1831bd07 authored by Stephan Schulz's avatar Stephan Schulz
Browse files

export library targets

parent fb92d4ac
Branches
Tags
1 merge request!15CMake projectconfig
...@@ -117,4 +117,14 @@ if(CM_ALL_AUTO_DOC) ...@@ -117,4 +117,14 @@ if(CM_ALL_AUTO_DOC)
add_subdirectory("docs") add_subdirectory("docs")
endif(CM_ALL_AUTO_DOC) endif(CM_ALL_AUTO_DOC)
# ProjectConfig
install(EXPORT ALLTargets
NAMESPACE ALL::
FILE ALLTargets.cmake
DESTINATION lib/cmake/ALL
)
#export(PACKAGE ALL)
# vim: sw=4 ts=4 et # vim: sw=4 ts=4 et
set(ALL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include) set(ALL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include)
set(ALL_HEADER_FILES ${ALL_INCLUDE_DIR}/ALL.hpp set(ALL_HEADER_FILES
${ALL_INCLUDE_DIR}/ALL.hpp
${ALL_INCLUDE_DIR}/ALL_LB.hpp ${ALL_INCLUDE_DIR}/ALL_LB.hpp
${ALL_INCLUDE_DIR}/ALL_Functions.hpp ${ALL_INCLUDE_DIR}/ALL_Functions.hpp
${ALL_INCLUDE_DIR}/ALL_Histogram.hpp ${ALL_INCLUDE_DIR}/ALL_Histogram.hpp
...@@ -10,6 +11,8 @@ set(ALL_HEADER_FILES ${ALL_INCLUDE_DIR}/ALL.hpp ...@@ -10,6 +11,8 @@ set(ALL_HEADER_FILES ${ALL_INCLUDE_DIR}/ALL.hpp
${ALL_INCLUDE_DIR}/ALL_Point.hpp ${ALL_INCLUDE_DIR}/ALL_Point.hpp
${ALL_INCLUDE_DIR}/ALL_CustomExceptions.hpp) ${ALL_INCLUDE_DIR}/ALL_CustomExceptions.hpp)
# todo(s.schulz): Should these be installed explicitly?
# install(FILES ${ALL_HEADER_FILES} DESTINATION include)
add_library (ALL ALL.cpp ALL_fortran.cpp ${ALL_HEADER_FILES}) add_library (ALL ALL.cpp ALL_fortran.cpp ${ALL_HEADER_FILES})
...@@ -23,10 +26,14 @@ if(CM_ALL_VORONOI) ...@@ -23,10 +26,14 @@ if(CM_ALL_VORONOI)
endif(CM_ALL_VORONOI) endif(CM_ALL_VORONOI)
target_include_directories(ALL PUBLIC ${MPI_CXX_INCLUDE_PATH}) target_include_directories(ALL PUBLIC ${MPI_CXX_INCLUDE_PATH})
target_include_directories (ALL PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${ALL_INCLUDE_DIR}) target_include_directories (ALL
PUBLIC
"$<BUILD_INTERFACE:${ALL_INCLUDE_DIR}>"
"$<INSTALL_INTERFACE:include>")
target_link_libraries(ALL PUBLIC ${MPI_CXX_LINK_FLAGS} ${MPI_CXX_LIBRARIES}) target_link_libraries(ALL PUBLIC ${MPI_CXX_LINK_FLAGS} ${MPI_CXX_LIBRARIES})
install(TARGETS ALL install(TARGETS ALL
EXPORT ALLTargets
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION lib LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib ARCHIVE DESTINATION lib
...@@ -41,8 +48,8 @@ if (CM_ALL_FORTRAN) ...@@ -41,8 +48,8 @@ if (CM_ALL_FORTRAN)
set_property(TARGET ALL_fortran PROPERTY LINKER_LANGUAGE Fortran) set_property(TARGET ALL_fortran PROPERTY LINKER_LANGUAGE Fortran)
if(CM_ALL_VTK_OUTPUT) if(CM_ALL_VTK_OUTPUT)
target_include_directories(ALL_fortran PUBLIC ${VTK_INCLUDE_DIRS}) target_include_directories(ALL_fortran PRIVATE ${VTK_INCLUDE_DIRS})
target_link_libraries(ALL_fortran PUBLIC ${VTK_LIBRARIES}) target_link_libraries(ALL_fortran PRIVATE ${VTK_LIBRARIES})
endif(CM_ALL_VTK_OUTPUT) endif(CM_ALL_VTK_OUTPUT)
#if(CM_ALL_VORONOI) #if(CM_ALL_VORONOI)
# target_include_directories(ALL_fortran PUBLIC ${CM_ALL_VORO_INC}) # target_include_directories(ALL_fortran PUBLIC ${CM_ALL_VORO_INC})
...@@ -50,10 +57,15 @@ if (CM_ALL_FORTRAN) ...@@ -50,10 +57,15 @@ if (CM_ALL_FORTRAN)
#endif(CM_ALL_VORONOI) #endif(CM_ALL_VORONOI)
target_include_directories(ALL_fortran PUBLIC ${MPI_Fortran_INCLUDE_PATH}) target_include_directories(ALL_fortran PUBLIC ${MPI_Fortran_INCLUDE_PATH})
target_include_directories(ALL_fortran PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${ALL_INCLUDE_DIR}) target_include_directories(ALL_fortran
PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>"
"$<INSTALL_INTERFACE:src>")
target_include_directories(ALL_fortran PRIVATE ${ALL_INCLUDE_DIR})
target_link_libraries(ALL_fortran PUBLIC ${MPI_Fortran_LINK_FLAGS} ${MPI_Fortran_LIBRARIES} ALL) target_link_libraries(ALL_fortran PUBLIC ${MPI_Fortran_LINK_FLAGS} ${MPI_Fortran_LIBRARIES} ALL)
install(TARGETS ALL_fortran install(TARGETS ALL_fortran
EXPORT ALLTargets
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION lib LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib ARCHIVE DESTINATION lib
...@@ -74,3 +86,4 @@ install( ...@@ -74,3 +86,4 @@ install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/${AMALGAMATED_FILENAME} FILES ${CMAKE_CURRENT_BINARY_DIR}/${AMALGAMATED_FILENAME}
TYPE INCLUDE TYPE INCLUDE
) )
# vim: sw=4 ts=4 et
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment