Commit Graph

18 Commits

Author SHA1 Message Date
Matthew Brecknell 3abbdd74a3 aspec: reintroduce spec document version information
Including version information in the spec document is tricky, because
Isabelle will rebuild the session whenever it sees that session inputs
(including document sources) have changed. Since ASpec is close to the
root of our session hierarchy, frequently changing version information
causes excessive rebuilds during development.

This commit avoids excessive rebuilding by building the document (with
version information) in a separate ASpecDoc session. The ASpecDoc
session is identical to the previous version of the ASpec session, but
is not the parent of any other sessions. The ASpec session is used as
the basis for other sessions, but has document-only inputs removed, and
also has document builds disabled.
2018-02-20 10:46:50 +11:00
Matthew Brecknell 0b2cb85b8d aspec: remove ARCH and git-id from specification document
This partially reverts a recent change which adds these.

Unfortunately, including the ARCH and git-id files in the ROOT file
causes frequent rebuilds during development. For example, adding a
commit that changes only CRefine would cause a change in the git-id
file, which would in turn trigger a rebuild of ASpec and everything that
depends on it. Because the git-id file also noted uncommitted changes,
these would also trigger an ASpec rebuild. Similarly, switching to a
different L4V_ARCH would cause the ARCH file to change, also triggering
an ASpec rebuild.

Since Isabelle makes it difficult to include this information in the
document without adding these files to the ROOT file, this commit is
removing this information until we find a better way.
2018-02-17 10:44:36 +11:00
Gerwin Klein 07f4c60171 abstract pdf: indicate additional/dirty files in hash 2018-01-26 14:30:52 +11:00
Gerwin Klein e6c65356a0 abstract pdf: generate VERSION, ARCH, git-id information for PDF 2018-01-26 14:30:38 +11:00
Matthew Brecknell a5a9f10048 dspec: add dependency on haskell-translator 2017-11-23 12:48:18 +11:00
Adrian Danis 8273ca818d cspec: Remove redundancy in build rules and theory files for c-kernel builds
Removes files that were duplicated in cspec/$L4V_ARCH directories to exist directly in
the cspec directory and contain $L4V_ARCH switches where needed. This allows for a single
Makefile for building the C kernel and the KernelInc_C theory, which is different between
architectures, to still exist per L4V_ARCH.

As the build location of the C kernel, and the resulting kernel_all.c_pp artifact, is
moved this change needs to be reflected in all the theory files that refer to it.
2017-09-21 13:23:04 +10:00
Adrian Danis ba94117969 cspec: Use CMake for building the C kernel
The seL4 kernel now supports a CMake based build in addition to the original Make based
one. This changes the Makefile that previously included the kernel Makefile to instead
have rules for instantiating a sub CMake build

As the location of built files have changed the KernelInc_C theory also needs to be updated
to point to the new locations for the generated artifacts.
2017-09-21 13:23:04 +10:00
Joel Beeren 82863978bd Merge branch 'master' into x64 2017-08-09 17:10:06 +10:00
Gerwin Klein 81e87e5e0c Makefile: CSpec and CKernel depend on theories from design spec 2017-08-09 17:02:50 +10:00
Alejandro Gomez-Londono dba1b08caa c-parser: Removes automatically generated lexer and parser files 2017-07-27 11:19:19 +10:00
Alejandro Gomez-Londono 0a31fa7fe4 Remove spec-check test and scripts 2017-05-12 12:50:55 +10:00
Alejandro Gomez-Londono 41f200d5b3 design: Update Makefiles + tests.xml to auto-generate the design spec
* It runs the haskell-translator as a dependency, eliminating the
      need for "run haskell translator" commits.
2017-05-12 12:50:49 +10:00
Rafal Kolanski 7e13fb9e91 cspec: move to ARM subdirectory
Configure to build with L4V_ARCH=ARM
2017-03-30 18:20:24 +11:00
Matthew Brecknell c1574f1f32 cspec: build: avoid re-entering isabelle via dash-0.5.8 2016-02-17 11:04:20 +11:00
Daniel Matichuk fad2c6aae9 paramatrised abstract and haskell specs over L4V_ARCH
Haskell translator was modified to support multiple translations
of the haskell, with different build parameters.
2016-01-13 12:01:40 +11:00
Japheth Lim d92666bc30 regression: remove forceful build options from CSpec makefiles. They don't seem to be needed. 2016-01-07 18:39:50 +11:00
Gerwin Klein f1d808c96a integrate separation kernel config proofs
Hooked up into build system and regression test; added READMEs
2014-08-13 22:08:46 +10:00
Gerwin Klein 2a03e81df4 Import release snapshot. 2014-07-14 21:32:44 +02:00