fortran-lang / fpm

Fortran Package Manager (fpm)
https://fpm.fortran-lang.org
MIT License
876 stars 99 forks source link

Dependency level macro definitions continuously trigger dependency state changes #1018

Open zoziha opened 5 months ago

zoziha commented 5 months ago

Description

When running the following command persistently, this behavior triggers a dependency state change due to the use of macro definitions for dependencies in the top-level item, without the dependency actually changing.

$ fpm run -C . /example_packages/preprocess_per_dependency
fpm: Entering directory 'C:\Users\zoziha\Code\opensource\fpm\example_packages\preprocess_per_dependency'
# Dependency change detected: utils
Project is up to date
 Dependency macro IS defined
STOP 0
fpm: Leaving directory 'C:\Users\zoziha\Code\opensource\fpm\example_packages\preprocess_per_dependency'

How should we handle this behavior?

Expected Behaviour

$ fpm run -C . /example_packages/preprocess_per_dependency
fpm: Entering directory 'C:\Users\zoziha\Code\opensource\fpm\example_packages\preprocess_per_dependency'
Project is up to date
 Dependency macro IS defined
STOP 0
fpm: Leaving directory 'C:\Users\zoziha\Code\opensource\fpm\example_packages\preprocess_per_dependency'

No # Dependency change detected: utils.

Version of fpm

latest commit

Platform and Architecture

All platform

Additional Information

  1. example_packages/preprocess_per_dependency/fpm.toml;
  2. src/fpm/dependency.f90;
  3. 952.