libffi copies files into rts build tree
The rts
should explicitly depend on ffi.h
and ffitarget.h
, then use this path to copy in these two header files itself rather than relying on the libffi build rule to copy them into the rts/build
directory.
You can see this happening in Rules.Libffi.libffiRules
This often results in a failure where the rts
rule will fail to produce these files after deleting build products in _build
.
shakeArgsWith 0.000s 0%
Function shake 0.006s 0%
Database read 1.051s 0%
Database compression 0.146s 0%
With database 0.031s 0%
Running rules 121.010s 98% =========================
Total 122.244s 100%
Error when running Shake build system:
at src/Main.hs:58:30-42:
* Depends on: stage1:lib:text
at src/Rules/SimpleTargets.hs:31:5-15:
* Depends on: integersimple/stage1/lib/package.conf.d/text-1.2.3.1.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "text", pkgPath = "libraries/text"}, way = v}))
* Depends on: integersimple/stage1/libraries/text/setup-config
* Depends on: integersimple/stage1/lib/package.conf.d/base-4.12.0.0.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "base", pkgPath = "libraries/base"}, way = v}))
* Depends on: integersimple/stage1/libraries/base/setup-config
* Depends on: integersimple/stage1/lib/package.conf.d/rts-1.0.conf
* Depends on: integersimple/stage1/rts/build/libHSrts-1.0_thr_l.a
* Depends on: integersimple/stage1/rts/build/c/Interpreter.thr_l_o
* Depends on: integersimple/stage1/rts/build/ffi.h
* Depends on: integersimple/stage1/rts/build/ffi.h integersimple/stage1/rts/build/ffitarget.h
* Raised the exception:
Error, &%> rule failed to produce 2 files (out of 2)
integersimple/stage1/rts/build/ffi.h - MISSING
integersimple/stage1/rts/build/ffitarget.h - MISSING
CallStack (from HasCallStack):
error, called at src/Development/Shake/Internal/Rules/Files.hs:245:13 in shake-0.17.2-586622e6ae1d899ec790b1028cae3413c00a616f124bac634769a9607581e631:Development.Shake.Internal.Rules.Files
Trac metadata
Trac field | Value |
---|---|
Version | 8.6.3 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Build System (Hadrian) |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |