@@ -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,21 @@ 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}/fortran>
710+ $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/${BUILDTREE_FMODDIR}>
711+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_Fortran_MODULES}>
712+ )
713+
703714 # Fortran tests merged into rest of tests
704715
705716endif (LIBINT2_ENABLE_FORTRAN)
@@ -733,6 +744,9 @@ endif()
733744if (L2_BUILD_STATIC_LIBS)
734745 list(APPEND _libint2_install_targets int-static)
735746endif()
747+ if (LIBINT2_ENABLE_FORTRAN)
748+ list(APPEND _libint2_install_targets int_f)
749+ endif()
736750
737751install(
738752 TARGETS ${_libint2_install_targets}
@@ -839,7 +853,7 @@ endif()
839853if (LIBINT2_ENABLE_FORTRAN)
840854 install(
841855 DIRECTORY ${PROJECT_BINARY_DIR}/${BUILDTREE_FMODDIR}/
842- DESTINATION "${LIBINT2_INSTALL_INCLUDEDIR }"
856+ DESTINATION "${CMAKE_INSTALL_Fortran_MODULES }"
843857 )
844858endif()
845859
0 commit comments