IBM / ibmi-bob

A build system for creating IBM i-native objects using GNU Make.
https://ibm.github.io/ibmi-bob
Apache License 2.0
48 stars 21 forks source link

Detected dependencies should be qualified to the project directory #23

Open edmundreinhardt opened 3 years ago

edmundreinhardt commented 3 years ago

We now support multiple directory builds. So the included files and other modules and service programs will likely be in a different directory. For example when building ART300.MODULE in https://github.com/edmundreinhardt/bob-recursive-example the .evfevent that is generated is

TIMESTAMP 0 20210920172044 PROCESSOR 0 000 1 FILEID 0 001 000000 076 /home/REINHARD/bob-recursive-example/QRPGLESRC/ART300-Function_Article.RPGLE 20210918015716 0 FILEID 0 002 000005 063 /home/REINHARD/bob-recursive-example/qprotosrc/article.rpgleinc 20210918015716 0

But the current algorithm doesn't take the relative path up to the project root which should be:

instead it generates ART300.MODULE: ARTICLE.RPGLEINC ART300.MODULE: ART300-FUNCTION_ARTICLE.RPGLE ART300.MODULE: ARTICLE1.FILE

At make time, there is no target for these dependencies and so it fails.

edmundreinhardt commented 2 years ago

image

we now qualify the INCDIR paths in the VPATH and it seems to work for CLLE but not yet for RPGLE as seen above TO reproduce touch vat.rpgleinc and build

edmundreinhardt commented 2 years ago

Works for CLLE thanks to pull 142 image