2014-07-14 19:32:44 +00:00
|
|
|
(*
|
|
|
|
* Copyright 2014, General Dynamics C4 Systems
|
|
|
|
*
|
|
|
|
* This software may be distributed and modified according to the terms of
|
|
|
|
* the GNU General Public License version 2. Note that NO WARRANTY is provided.
|
|
|
|
* See "LICENSE_GPLv2.txt" for details.
|
|
|
|
*
|
|
|
|
* @TAG(GD_GPL)
|
|
|
|
*)
|
|
|
|
|
|
|
|
chapter "Specifications"
|
|
|
|
|
|
|
|
(*
|
|
|
|
* List of rules to make various images.
|
|
|
|
*
|
|
|
|
* Some rules have duplicate targets of the form:
|
|
|
|
*
|
|
|
|
* theories [condition = "MOO", quick_and_dirty]
|
|
|
|
* "foo"
|
|
|
|
* theories
|
|
|
|
* "foo"
|
|
|
|
*
|
|
|
|
* The idea is that if the environment variable "MOO" is defined we
|
|
|
|
* execute the first rule (doing the proof in quick-and-dirty mode), and
|
|
|
|
* then find we need not take any action for the second. Otherwise, we
|
|
|
|
* skip the first rule and only perform the second.
|
|
|
|
*)
|
|
|
|
|
|
|
|
(*
|
|
|
|
* Abstract Specification
|
|
|
|
*)
|
|
|
|
|
2016-04-18 11:24:23 +00:00
|
|
|
session ASpec in "abstract" = Word_Lib +
|
2016-02-29 03:52:37 +00:00
|
|
|
options [document=pdf]
|
2014-07-14 19:32:44 +00:00
|
|
|
theories [document = false]
|
|
|
|
"../../lib/Lib"
|
2016-04-17 20:40:00 +00:00
|
|
|
"../../lib/Defs"
|
2014-07-14 19:32:44 +00:00
|
|
|
"../../lib/List_Lib"
|
2016-05-20 02:31:10 +00:00
|
|
|
"../../lib/$L4V_ARCH/WordSetup"
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
|
|
|
"Intro_Doc"
|
2016-04-17 20:40:00 +00:00
|
|
|
"../../lib/Monad_WP/NonDetMonad"
|
2014-07-14 19:32:44 +00:00
|
|
|
theories [document = false]
|
2016-04-17 20:40:00 +00:00
|
|
|
"../../lib/Monad_WP/NonDetMonadLemmas"
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
|
|
|
"Syscall_A"
|
|
|
|
"Glossary_Doc"
|
2017-10-17 03:56:01 +00:00
|
|
|
(* "KernelInit_A" *)
|
2014-08-09 04:58:51 +00:00
|
|
|
document_files
|
2015-05-28 04:03:53 +00:00
|
|
|
"VERSION"
|
2014-08-09 04:58:51 +00:00
|
|
|
"root.tex"
|
|
|
|
"root.bib"
|
|
|
|
"defs.bib"
|
2015-05-28 04:03:53 +00:00
|
|
|
"imgs/CDT.pdf"
|
|
|
|
"imgs/seL4-background_01.pdf"
|
|
|
|
"imgs/seL4-background_03.pdf"
|
|
|
|
"imgs/seL4-background_04.pdf"
|
|
|
|
"imgs/sel4objects_01.pdf"
|
|
|
|
"imgs/sel4objects_05.pdf"
|
|
|
|
"imgs/sel4_internals_01.pdf"
|
2014-07-14 19:32:44 +00:00
|
|
|
|
|
|
|
(*
|
|
|
|
* Executable/Design Specification
|
|
|
|
*)
|
|
|
|
|
2016-04-18 11:24:23 +00:00
|
|
|
session ExecSpec = Word_Lib +
|
2016-02-29 03:52:37 +00:00
|
|
|
options [document = false]
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
|
|
|
"design/API_H"
|
2017-01-10 02:27:27 +00:00
|
|
|
"design/$L4V_ARCH/ArchIntermediate_H"
|
2014-07-14 19:32:44 +00:00
|
|
|
|
|
|
|
|
|
|
|
(*
|
|
|
|
* C Kernel
|
|
|
|
*)
|
|
|
|
|
|
|
|
session CSpec = CKernel +
|
|
|
|
theories [condition = "SORRY_BITFIELD_PROOFS", quick_and_dirty]
|
2017-09-20 04:56:54 +00:00
|
|
|
"cspec/KernelInc_C"
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
2017-09-20 04:56:54 +00:00
|
|
|
"cspec/KernelInc_C"
|
|
|
|
"cspec/KernelState_C"
|
2014-07-14 19:32:44 +00:00
|
|
|
|
|
|
|
session CKernel = CParser +
|
|
|
|
theories [condition = "SORRY_MODIFIES_PROOFS", quick_and_dirty]
|
2017-06-22 07:06:30 +00:00
|
|
|
"cspec/$L4V_ARCH/Kernel_C"
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
2017-06-22 07:06:30 +00:00
|
|
|
"cspec/$L4V_ARCH/Kernel_C"
|
2014-07-14 19:32:44 +00:00
|
|
|
files
|
2017-09-13 02:18:31 +00:00
|
|
|
"cspec/c/build/$L4V_ARCH/kernel_all.c_pp"
|
2014-07-14 19:32:44 +00:00
|
|
|
|
|
|
|
session SimplExport = CSpec +
|
|
|
|
theories "cspec/SimplExport"
|
|
|
|
|
|
|
|
|
|
|
|
(*
|
|
|
|
* CapDL
|
|
|
|
*)
|
|
|
|
|
2016-04-18 11:24:23 +00:00
|
|
|
session DSpec = Word_Lib +
|
2014-07-14 19:32:44 +00:00
|
|
|
theories
|
|
|
|
"capDL/Syscall_D"
|
|
|
|
|
|
|
|
|
|
|
|
(*
|
|
|
|
* Take-Grant.
|
|
|
|
*)
|
|
|
|
|
|
|
|
session TakeGrant in "take-grant" = "HOL-Word" +
|
|
|
|
theories
|
|
|
|
"System_S"
|
|
|
|
"Isolation_S"
|
|
|
|
"Example"
|
|
|
|
"Example2"
|
|
|
|
|
|
|
|
|
2014-08-13 12:08:46 +00:00
|
|
|
(*
|
|
|
|
* Separation Kernel Setup Specification
|
|
|
|
*)
|
|
|
|
|
|
|
|
session ASepSpec = ASpec +
|
2016-02-29 03:52:37 +00:00
|
|
|
options [document = false]
|
2014-08-13 12:08:46 +00:00
|
|
|
theories
|
|
|
|
"sep-abstract/Syscall_SA"
|
|
|
|
|