@@ -44,6 +44,7 @@ subroutine build_model(model, settings, package, error)
4444 integer :: i, j
4545 type (package_config_t) :: dependency
4646 character (len= :), allocatable :: manifest, lib_dir, flags, cflags, ldflags
47+ character (len= :), allocatable :: version
4748
4849 logical :: duplicates_found = .false.
4950 type (string_t) :: include_dir
@@ -78,7 +79,7 @@ subroutine build_model(model, settings, package, error)
7879 end select
7980 end if
8081
81- call set_preprocessor_flags(model% compiler% id, flags)
82+ call set_preprocessor_flags(model% compiler% id, flags, package )
8283
8384 cflags = trim (settings% cflag)
8485 ldflags = trim (settings% ldflag)
@@ -166,6 +167,17 @@ subroutine build_model(model, settings, package, error)
166167 if (allocated (error)) exit
167168
168169 model% packages(i)% name = dependency% name
170+ call package% version% to_string(version)
171+ model% packages(i)% version = version
172+
173+ if (allocated (dependency% preprocess)) then
174+ do j = 1 , size (dependency% preprocess)
175+ if (package% preprocess(j)% name == " cpp" ) then
176+ model% packages(i)% macros = dependency% preprocess(j)% macros
177+ end if
178+ end do
179+ end if
180+
169181 if (.not. allocated (model% packages(i)% sources)) allocate (model% packages(i)% sources(0 ))
170182
171183 if (allocated (dependency% library)) then
0 commit comments