#1790 closed defect (fixed)
md5 egg refers to nonexisting header file in source-dependencies list causing it to fail on rebuild
Reported by: | sjamaan | Owned by: | Kon Lovett |
---|---|---|---|
Priority: | major | Milestone: | someday |
Component: | extensions | Version: | 5.2.0 |
Keywords: | Cc: | Kon Lovett | |
Estimated difficulty: | medium |
Description
If you try to install md5
twice in a row, it fails with an error:
$ ~/chickens/5.3.0rc4/bin/chicken-install -test md5 building md5 /home/sjamaan/.cache/chicken-install/md5/md5.h: No such file or directory Error: shell command terminated with nonzero exit code 256 "sh /home/sjamaan/.cache/chicken-install/md5/md5.build.sh"
This also happens with 5.2.0, and also if you just build but not install (i.e., chicken-install -n md5
).
Any idea why this happens? Is this a bug in chicken-install or in the egg?
Change History (5)
comment:1 Changed 3 years ago by
Summary: | md5 egg removes a header file during build → md5 egg refers to nonexisting header file in source-dependencies list causing it to fail on rebuild |
---|
comment:2 Changed 3 years ago by
Milestone: | 5.3 → someday |
---|
comment:3 Changed 3 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
egg version 4.4.1 removes the, non-existent, dependency
comment:4 Changed 3 years ago by
The reason is likely to be a (mis)feature of chicken-do
: if the target does not exist, then the dependencies are not even checked. On a second run, the target exists but is outdated and now the dependencies are checked.
comment:5 Changed 3 years ago by
I suggest to change chicken-do
to just issue a warning if a dependency does not exist but otherwise ignore it.
Ahh, it doesn't actually remove the file: it's not there to begin with! So because it's in
source-dependencies
,chicken-do
will try tostat(2)
it and that's when it fails.