Refine for AArch64 is now completed and doesn't need quick_and_dirty
any more. CRefine is now in development mode.
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
- switch off quick_and_dirty for AInvs session
- switch on quick_and_dirty for Refine session for development
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
This target was used in the regression test setup before this repo
switched to `run_tests` and has been unused for some time.
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
Both AInvs and the refinement chain need the generated files necessary
for ASpec and ExecSpec. We could depend on ASpec directly, but that
would mess with Isabelle being able to schedule sessions as it wants
them.
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
Make these a separate target so that other sessions that depend on
ASpec can kick off generation of these files (necessary because some
are mentioned in spec/ROOT, and the session structure will fail if they
don't exist).
This is only relevant in a fresh check-out when you've never built
ASpec, but in test environments this can happen if only specific
sessions are tested.
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
The reason `CKernel` depends on `design-spec` is quite obscure, so we
add a comment to relevant `Makefile`s to help us avoid wasting time
trying to remove the dependency.
Signed-off-by: Matthew Brecknell <Matthew.Brecknell@data61.csiro.au>
Previously, the build system conditionally included Orphanage, but only
when built from run_tests. This meant that a plain ‘isabelle jedit’ or
‘make Refine’ would see a different session definition, resulting in a
slow rebuild.
NB: editing Orphanage now requires -l Refine instead of -l BaseRefine.
Add the design-spec dependency to the SimplExport* targets, since the
haskell conversion needs to be done to create the MachineTypes theory
before the CKernel image can be created.
Theory files used in the CKernel build refer to files that are generated by the
haskell translater by the design-spec target. This commit changes the dependencies
in the Makefile to reflect that
SimplExportOnly builds both a (useless) Isabelle image and a (useful) output
file. We need to adjust the build command to ensure the file actually gets
built if the image already existed.