aboutsummaryrefslogtreecommitdiff
path: root/src/fpm_model.f90
diff options
context:
space:
mode:
authorSebastian Ehlert <28669218+awvwgk@users.noreply.github.com>2021-07-30 18:25:46 +0200
committerSebastian Ehlert <28669218+awvwgk@users.noreply.github.com>2021-07-30 18:25:46 +0200
commit5d22f5aac698c4b8f135a226e944be9ded9475b0 (patch)
tree15f135fc25968cf4c8f3369c9fb3b77792e65630 /src/fpm_model.f90
parent8ffe495e6097358e98cf45464cdc45b58a31e0fb (diff)
downloadfpm-5d22f5aac698c4b8f135a226e944be9ded9475b0.tar.gz
fpm-5d22f5aac698c4b8f135a226e944be9ded9475b0.zip
Add objects for handling compiler and archiver
Diffstat (limited to 'src/fpm_model.f90')
-rw-r--r--src/fpm_model.f9018
1 files changed, 8 insertions, 10 deletions
diff --git a/src/fpm_model.f90 b/src/fpm_model.f90
index 49f598e..2dd9514 100644
--- a/src/fpm_model.f90
+++ b/src/fpm_model.f90
@@ -19,8 +19,9 @@
!>
module fpm_model
use iso_fortran_env, only: int64
-use fpm_strings, only: string_t, str
+use fpm_compiler, only: compiler_t, archiver_t, debug
use fpm_dependency, only: dependency_tree_t
+use fpm_strings, only: string_t, str
implicit none
private
@@ -114,14 +115,11 @@ type :: fpm_model_t
!> Array of packages (including the root package)
type(package_t), allocatable :: packages(:)
- !> Command line name to invoke fortran compiler
- character(:), allocatable :: fortran_compiler
-
- !> Command line to invoke for creating static library
- character(:), allocatable :: archiver
+ !> Compiler object
+ type(compiler_t) :: compiler
- !> Command line name to invoke c compiler
- character(:), allocatable :: c_compiler
+ !> Archiver object
+ type(archiver_t) :: archiver
!> Command line flags passed to fortran for compilation
character(:), allocatable :: fortran_compile_flags
@@ -271,8 +269,8 @@ function info_model(model) result(s)
if (i < size(model%packages)) s = s // ", "
end do
s = s // "]"
- ! character(:), allocatable :: fortran_compiler
- s = s // ', fortran_compiler="' // model%fortran_compiler // '"'
+ s = s // ', compiler=(' // debug(model%compiler) // ')'
+ s = s // ', archiver=(' // debug(model%archiver) // ')'
! character(:), allocatable :: fortran_compile_flags
s = s // ', fortran_compile_flags="' // model%fortran_compile_flags // '"'
! character(:), allocatable :: output_directory