Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(build_target_ptr), | intent(in) | :: | targets(:) | |||
type(string_t), | intent(out), | allocatable | :: | list(:) |
subroutine filter_modules(targets, list) type(build_target_ptr), intent(in) :: targets(:) type(string_t), allocatable, intent(out) :: list(:) integer :: i, j, n n = 0 call resize(list) do i = 1, size(targets) associate(target => targets(i)%ptr) if (.not.allocated(target%source)) cycle if (target%source%unit_type == FPM_UNIT_SUBMODULE) cycle if (n + size(target%source%modules_provided) >= size(list)) call resize(list) do j = 1, size(target%source%modules_provided) n = n + 1 list(n)%s = join_path(target%output_dir, & target%source%modules_provided(j)%s) end do end associate end do call resize(list, n) end subroutine filter_modules