Skip to content
Snippets Groups Projects
Commit 7f881403 authored by Rene Halver's avatar Rene Halver
Browse files

Merge branch 'cmake_install' into 'master'

cmake: use GNUINstallDirs

Closes #62

See merge request !23
parents 313888fd 395c79de
No related branches found
No related tags found
1 merge request!23cmake: use GNUINstallDirs
Pipeline #223205 passed
......@@ -53,6 +53,8 @@ project(ALL
DESCRIPTION "A Loadbalacing Library"
HOMEPAGE_URL "http://slms.pages.jsc.fz-juelich.de/websites/all-website/")
include(GNUInstallDirs)
# add custom find-scripts to module path
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
......@@ -149,13 +151,13 @@ endif(CM_ALL_AUTO_DOC)
install(EXPORT ALLTargets
NAMESPACE ALL::
FILE ALLTargets.cmake
DESTINATION lib/cmake/ALL
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ALL
)
include(CMakePackageConfigHelpers)
configure_package_config_file(${CMAKE_CURRENT_BINARY_DIR}/Config.cmake.in
"${CMAKE_CURRENT_BINARY_DIR}/ALLConfig.cmake"
INSTALL_DESTINATION lib/cmake/ALL
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ALL
)
write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/ALLConfigVersion.cmake"
......@@ -164,7 +166,7 @@ write_basic_package_version_file(
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/ALLConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/ALLConfigVersion.cmake"
DESTINATION lib/cmake/ALL)
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ALL)
# Create Makefile.libALL.in for inclusion in external Makefile projects
# todo(s.schulz): The include directories and libraries should be auto
......@@ -175,15 +177,15 @@ get_target_property(_liball_defines ALL INTERFACE_COMPILE_DEFINITIONS)
list(TRANSFORM _liball_defines PREPEND " -D")
list(JOIN _liball_defines " " _liball_defines_string)
file(WRITE ${ALL_MAKEFILE_INC} "LIBALL_DEFINES := ${_liball_defines_string}\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_INCLUDE := -I\$(ALL_DIR)/include\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_INCLUDE := -I\$(ALL_DIR)/${CMAKE_INSTALL_INCLUDEDIR}\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_LIB :=\n")
if(CM_ALL_FORTRAN)
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_LIB += \$(ALL_DIR)/lib/libALL_fortran.a \$(ALL_DIR)/lib/libALL.a -lstdc++\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_INCLUDE += -I\$(ALL_DIR)/lib\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_LIB += \$(ALL_DIR)/${CMAKE_INSTALL_LIBDIR}/libALL_fortran.a \$(ALL_DIR)/${CMAKE_INSTALL_LIBDIR}/libALL.a -lstdc++\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_INCLUDE += -I\$(ALL_DIR)/${CMAKE_INSTALL_LIBDIR}\n")
endif()
if(CM_ALL_VORONOI)
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_LIB += \$(ALL_DIR)/lib/libvoro.a\n")
file(APPEND ${ALL_MAKEFILE_INC} "LIBALL_LIB += \$(ALL_DIR)/${CMAKE_INSTALL_LIBDIR}/libvoro.a\n")
endif()
install(FILES ${ALL_MAKEFILE_INC} DESTINATION lib/make)
install(FILES ${ALL_MAKEFILE_INC} DESTINATION ${CMAKE_INSTALL_LIBDIR}/make)
# vim: sw=4 ts=4 et
project(voro)
cmake_minimum_required(VERSION 2.8)
include(GNUInstallDirs)
include_directories (include)
add_subdirectory (src)
install (DIRECTORY include/ DESTINATION include FILES_MATCHING PATTERN "*.hh")
\ No newline at end of file
install (DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} FILES_MATCHING PATTERN "*.hh")
......@@ -10,9 +10,9 @@ add_library (${MODULE_NAME} ${${MODULE_NAME}_SRCS})
target_include_directories(${MODULE_NAME}
INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>"
"$<INSTALL_INTERFACE:include>")
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>")
install (TARGETS ${MODULE_NAME}
EXPORT ALLTargets
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib)
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
......@@ -12,9 +12,9 @@ endif(CM_ALL_VTK_OUTPUT)
target_link_libraries (ALL_test LINK_PUBLIC ALL)
install(TARGETS ALL_test
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
# helper program to convert ascii input to mpi binary input
add_executable(ASCII2MPIBIN ascii2mpibin.cpp)
......@@ -22,25 +22,25 @@ add_executable(ASCII2MPIBIN ascii2mpibin.cpp)
target_link_libraries(ASCII2MPIBIN LINK_PUBLIC ALL)
install(TARGETS ASCII2MPIBIN
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(create_logo create_logo.cpp)
install(TARGETS create_logo
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(read_binary_output read_output.cpp)
target_link_libraries(read_binary_output LINK_PUBLIC ALL)
install(TARGETS read_binary_output
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(ALL_Staggered ALL_Staggered.cpp)
if(CM_ALL_VTK_OUTPUT)
......@@ -50,9 +50,9 @@ if(CM_ALL_VTK_OUTPUT)
endif(CM_ALL_VTK_OUTPUT)
target_link_libraries (ALL_Staggered LINK_PUBLIC ALL)
install(TARGETS ALL_Staggered
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(ALL_Tensor ALL_Tensor.cpp)
if(CM_ALL_VTK_OUTPUT)
......@@ -62,9 +62,9 @@ if(CM_ALL_VTK_OUTPUT)
endif(CM_ALL_VTK_OUTPUT)
target_link_libraries (ALL_Tensor LINK_PUBLIC ALL)
install(TARGETS ALL_Tensor
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
if(CM_ALL_VORONOI)
add_executable(ALL_Voronoi ALL_Voronoi.cpp)
......@@ -74,9 +74,9 @@ if(CM_ALL_VORONOI)
endif(CM_ALL_VTK_OUTPUT)
target_link_libraries (ALL_Voronoi LINK_PUBLIC ALL)
install(TARGETS ALL_Voronoi
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
endif()
if(CM_ALL_FORTRAN)
......@@ -97,9 +97,9 @@ if(CM_ALL_FORTRAN)
set_property(TARGET ALL_test_f PROPERTY LINKER_LANGUAGE Fortran)
install(TARGETS ALL_test_f
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(ALL_test_f_obj ALL_test_f_obj.F90)
if(CM_ALL_VTK_OUTPUT)
......@@ -118,9 +118,9 @@ if(CM_ALL_FORTRAN)
set_property(TARGET ALL_test_f_obj PROPERTY LINKER_LANGUAGE Fortran)
install(TARGETS ALL_test_f_obj
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(ALL_Staggered_f ALL_Staggered_f.F90)
if(CM_ALL_VTK_OUTPUT)
......@@ -134,9 +134,9 @@ if(CM_ALL_FORTRAN)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}/modules)
set_property(TARGET ALL_Staggered_f PROPERTY LINKER_LANGUAGE Fortran)
install(TARGETS ALL_Staggered_f
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
add_executable(ALL_Tensor_f ALL_Tensor_f.F90)
if(CM_ALL_VTK_OUTPUT)
......@@ -150,7 +150,7 @@ if(CM_ALL_FORTRAN)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}/modules)
set_property(TARGET ALL_Tensor_f PROPERTY LINKER_LANGUAGE Fortran)
install(TARGETS ALL_Tensor_f
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
endif(CM_ALL_FORTRAN)
......@@ -29,7 +29,7 @@ target_link_libraries(ALL PUBLIC ${MPI_CXX_LINK_FLAGS} ${MPI_CXX_LIBRARIES})
target_include_directories (ALL
PUBLIC
"$<BUILD_INTERFACE:${ALL_INCLUDE_DIR}>"
"$<INSTALL_INTERFACE:include>")
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>")
# For inclusion in Fortran code, explicit linking against the C++ standard
# library is necessary.
......@@ -37,13 +37,13 @@ target_link_libraries(ALL INTERFACE stdc++)
install(TARGETS ALL
EXPORT ALLTargets
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
install(FILES ${ALL_HEADER_FILES}
DESTINATION include)
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
if (CM_ALL_FORTRAN)
set(CMAKE_Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../modules)
......@@ -54,18 +54,18 @@ if (CM_ALL_FORTRAN)
target_include_directories(ALL_fortran
INTERFACE
"$<BUILD_INTERFACE:${CMAKE_Fortran_MODULE_DIRECTORY}>"
"$<INSTALL_INTERFACE:lib>")
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_LIBDIR}>")
target_link_libraries(ALL_fortran PUBLIC ${MPI_Fortran_LINK_FLAGS} ${MPI_Fortran_LIBRARIES})
target_link_libraries(ALL_fortran PUBLIC ALL)
install(TARGETS ALL_fortran
EXPORT ALLTargets
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
INCLUDES DESTINATION include)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
install(DIRECTORY ${CMAKE_BINARY_DIR}/modules/ DESTINATION lib)
install(DIRECTORY ${CMAKE_BINARY_DIR}/modules/ DESTINATION ${CMAKE_INSTALL_LIBDIR})
endif(CM_ALL_FORTRAN)
add_executable(Amalgamate Amalgamate.c)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment