@@ -125,6 +125,10 @@ set(LIBINT2_INSTALL_DATADIR "${CMAKE_INSTALL_DATADIR}/libint/${LIBINT_VERSION}"
125125set(LIBINT2_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/libint2"
126126 CACHE PATH "LIBINT2 CMAKE install directory")
127127
128+ if(NOT CMAKE_INSTALL_Fortran_MODULES)
129+ set(CMAKE_INSTALL_Fortran_MODULES "${LIBINT2_INSTALL_INCLUDEDIR}")
130+ endif()
131+
128132
129133# ==== Dependencies ===========================================================
130134
@@ -668,21 +672,13 @@ if (LIBINT2_ENABLE_FORTRAN)
668672 )
669673
670674 # build module
671- add_library(
672- libint_f
673- OBJECT
674- fortran/libint_f.F90
675- )
675+ add_library(libint_f OBJECT fortran/libint_f.F90)
676676 set_source_files_properties(
677677 fortran/libint_f.F90
678678 PROPERTIES
679679 OBJECT_DEPENDS "${PROJECT_BINARY_DIR}/fortran/libint2_types_f.h;${PROJECT_BINARY_DIR}/fortran/fortran_incldefs.h"
680680 )
681- target_compile_definitions(
682- libint_f
683- PRIVATE
684- __COMPILING_LIBINT2
685- )
681+ target_compile_definitions(libint_f PRIVATE __COMPILING_LIBINT2)
686682 set_target_properties(
687683 libint_f
688684 PROPERTIES
@@ -700,6 +696,20 @@ if (LIBINT2_ENABLE_FORTRAN)
700696 $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/${BUILDTREE_FMODDIR}/>
701697 )
702698
699+ add_library(int_f STATIC $<TARGET_OBJECTS:libint_f>)
700+ set_target_properties(int_f PROPERTIES OUTPUT_NAME "int2_f")
701+ if (L2_BUILD_SHARED_LIBS)
702+ target_link_libraries(int_f INTERFACE int-shared)
703+ else()
704+ target_link_libraries(int_f INTERFACE int-static)
705+ endif()
706+ target_include_directories(
707+ int_f
708+ INTERFACE
709+ $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/${BUILDTREE_FMODDIR}>
710+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_Fortran_MODULES}>
711+ )
712+
703713 # Fortran tests merged into rest of tests
704714
705715endif (LIBINT2_ENABLE_FORTRAN)
@@ -733,6 +743,9 @@ endif()
733743if (L2_BUILD_STATIC_LIBS)
734744 list(APPEND _libint2_install_targets int-static)
735745endif()
746+ if (LIBINT2_ENABLE_FORTRAN)
747+ list(APPEND _libint2_install_targets int_f)
748+ endif()
736749
737750install(
738751 TARGETS ${_libint2_install_targets}
@@ -839,7 +852,7 @@ endif()
839852if (LIBINT2_ENABLE_FORTRAN)
840853 install(
841854 DIRECTORY ${PROJECT_BINARY_DIR}/${BUILDTREE_FMODDIR}/
842- DESTINATION "${LIBINT2_INSTALL_INCLUDEDIR }"
855+ DESTINATION "${CMAKE_INSTALL_Fortran_MODULES }"
843856 )
844857endif()
845858
0 commit comments