src/HOLCF/IsaMakefile
author huffman
Sun Feb 28 15:30:44 2010 -0800 (2010-02-28)
changeset 35475 979019ab92eb
parent 35473 c4d3d65856dd
child 35530 3bf57d8cb58d
permissions -rw-r--r--
move common functions into new file holcf_library.ML
wenzelm@2494
     1
#
wenzelm@2494
     2
# IsaMakefile for HOLCF
wenzelm@2494
     3
#
wenzelm@2494
     4
wenzelm@4518
     5
## targets
wenzelm@2494
     6
wenzelm@4518
     7
default: HOLCF
wenzelm@4518
     8
images: HOLCF IOA
oheimb@11350
     9
test: HOLCF-IMP HOLCF-ex HOLCF-FOCUS \
oheimb@11350
    10
      IOA-ABP IOA-NTP IOA-Modelcheck IOA-Storage IOA-ex
wenzelm@4518
    11
all: images test
wenzelm@4518
    12
wenzelm@4518
    13
wenzelm@4518
    14
## global settings
wenzelm@4518
    15
wenzelm@4518
    16
SRC = $(ISABELLE_HOME)/src
wenzelm@3118
    17
OUT = $(ISABELLE_OUTPUT)
wenzelm@4447
    18
LOG = $(OUT)/log
wenzelm@2494
    19
wenzelm@4518
    20
wenzelm@4518
    21
## HOLCF
wenzelm@4518
    22
wenzelm@4518
    23
HOLCF: HOL $(OUT)/HOLCF
wenzelm@4518
    24
wenzelm@4518
    25
HOL:
wenzelm@28500
    26
	@cd $(SRC)/HOL; $(ISABELLE_TOOL) make HOL
wenzelm@2494
    27
huffman@27420
    28
$(OUT)/HOLCF: $(OUT)/HOL \
huffman@27420
    29
  ROOT.ML \
huffman@27420
    30
  Adm.thy \
huffman@27420
    31
  Algebraic.thy \
huffman@27420
    32
  Bifinite.thy \
huffman@27420
    33
  Cfun.thy \
huffman@27420
    34
  CompactBasis.thy \
huffman@27420
    35
  Completion.thy \
huffman@27420
    36
  Cont.thy \
huffman@27420
    37
  ConvexPD.thy \
huffman@27420
    38
  Cprod.thy \
huffman@27420
    39
  Discrete.thy \
huffman@27420
    40
  Deflation.thy \
huffman@27420
    41
  Domain.thy \
huffman@27420
    42
  Eventual.thy \
huffman@27420
    43
  Ffun.thy \
huffman@27420
    44
  Fixrec.thy \
huffman@27420
    45
  Fix.thy \
huffman@27420
    46
  HOLCF.thy \
huffman@27420
    47
  Lift.thy \
huffman@27420
    48
  LowerPD.thy \
huffman@27420
    49
  NatIso.thy \
huffman@27420
    50
  One.thy \
huffman@27420
    51
  Pcpodef.thy \
huffman@27420
    52
  Pcpo.thy \
huffman@27420
    53
  Porder.thy \
huffman@35473
    54
  Powerdomains.thy \
huffman@29530
    55
  Product_Cpo.thy \
huffman@33783
    56
  Representable.thy \
huffman@27420
    57
  Sprod.thy \
huffman@27420
    58
  Ssum.thy \
huffman@29534
    59
  Sum_Cpo.thy \
huffman@27420
    60
  Tr.thy \
huffman@27420
    61
  Universal.thy \
huffman@27420
    62
  UpperPD.thy \
huffman@27420
    63
  Up.thy \
huffman@27420
    64
  Tools/adm_tac.ML \
huffman@27420
    65
  Tools/cont_consts.ML \
huffman@27420
    66
  Tools/cont_proc.ML \
huffman@35475
    67
  Tools/holcf_library.ML \
haftmann@32126
    68
  Tools/Domain/domain_extender.ML \
haftmann@32126
    69
  Tools/Domain/domain_axioms.ML \
huffman@35473
    70
  Tools/Domain/domain_constructors.ML \
huffman@33795
    71
  Tools/Domain/domain_isomorphism.ML \
haftmann@32126
    72
  Tools/Domain/domain_library.ML \
haftmann@32126
    73
  Tools/Domain/domain_syntax.ML \
haftmann@32126
    74
  Tools/Domain/domain_theorems.ML \
haftmann@31738
    75
  Tools/fixrec.ML \
haftmann@31738
    76
  Tools/pcpodef.ML \
huffman@33783
    77
  Tools/repdef.ML \
huffman@27420
    78
  holcf_logic.ML \
huffman@27420
    79
  document/root.tex
wenzelm@28500
    80
	@$(ISABELLE_TOOL) usedir -b -g true -r $(OUT)/HOL HOLCF
wenzelm@2494
    81
wenzelm@4518
    82
wenzelm@4518
    83
## HOLCF-IMP
wenzelm@2494
    84
wenzelm@4518
    85
HOLCF-IMP: HOLCF $(LOG)/HOLCF-IMP.gz
wenzelm@4518
    86
kleing@12433
    87
$(LOG)/HOLCF-IMP.gz: $(OUT)/HOLCF IMP/HoareEx.thy \
wenzelm@12599
    88
  IMP/Denotational.thy IMP/ROOT.ML IMP/document/root.tex
wenzelm@28500
    89
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF IMP
wenzelm@2494
    90
wenzelm@2494
    91
wenzelm@4518
    92
## HOLCF-ex
wenzelm@4518
    93
wenzelm@4518
    94
HOLCF-ex: HOLCF $(LOG)/HOLCF-ex.gz
wenzelm@2494
    95
huffman@30920
    96
$(LOG)/HOLCF-ex.gz: $(OUT)/HOLCF \
huffman@30920
    97
  ../HOL/Library/Nat_Infinity.thy \
huffman@30920
    98
  ex/Dagstuhl.thy \
huffman@30920
    99
  ex/Dnat.thy \
huffman@30920
   100
  ex/Domain_ex.thy \
huffman@35167
   101
  ex/Domain_Proofs.thy \
huffman@30920
   102
  ex/Fix2.thy \
huffman@30920
   103
  ex/Fixrec_ex.thy \
huffman@30920
   104
  ex/Focus_ex.thy \
huffman@30920
   105
  ex/Hoare.thy \
huffman@30920
   106
  ex/Loop.thy \
huffman@33813
   107
  ex/New_Domain.thy \
huffman@29992
   108
  ex/Powerdomain_ex.thy \
huffman@30920
   109
  ex/Stream.thy \
huffman@35167
   110
  ex/Strict_Fun.thy \
huffman@30920
   111
  ex/ROOT.ML
wenzelm@28500
   112
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF ex
mueller@3081
   113
mueller@3081
   114
oheimb@11350
   115
## HOLCF-FOCUS
oheimb@11350
   116
oheimb@11350
   117
HOLCF-FOCUS: HOLCF $(LOG)/HOLCF-FOCUS.gz
oheimb@11350
   118
huffman@35214
   119
$(LOG)/HOLCF-FOCUS.gz: $(OUT)/HOLCF \
huffman@35214
   120
  ex/Stream.thy \
huffman@35214
   121
  FOCUS/Fstreams.thy \
huffman@19759
   122
  FOCUS/Fstream.thy FOCUS/FOCUS.thy \
huffman@19759
   123
  FOCUS/Stream_adm.thy ../HOL/Library/Continuity.thy \
huffman@19759
   124
  FOCUS/Buffer.thy FOCUS/Buffer_adm.thy
wenzelm@28500
   125
	@$(ISABELLE_TOOL) usedir $(OUT)/HOLCF FOCUS
oheimb@11350
   126
wenzelm@4518
   127
## IOA
wenzelm@4518
   128
wenzelm@4518
   129
IOA: HOLCF $(OUT)/IOA
wenzelm@4518
   130
wenzelm@19741
   131
$(OUT)/IOA: $(OUT)/HOLCF IOA/ROOT.ML IOA/meta_theory/Traces.thy        \
wenzelm@19741
   132
  IOA/meta_theory/Asig.thy IOA/meta_theory/CompoScheds.thy	       \
wenzelm@19741
   133
  IOA/meta_theory/CompoTraces.thy IOA/meta_theory/Seq.thy	       \
wenzelm@19741
   134
  IOA/meta_theory/RefCorrectness.thy IOA/meta_theory/Automata.thy      \
wenzelm@19741
   135
  IOA/meta_theory/ShortExecutions.thy IOA/meta_theory/IOA.thy	       \
wenzelm@19741
   136
  IOA/meta_theory/Sequence.thy IOA/meta_theory/CompoExecs.thy	       \
wenzelm@19741
   137
  IOA/meta_theory/RefMappings.thy IOA/meta_theory/Compositionality.thy \
wenzelm@19741
   138
  IOA/meta_theory/TL.thy IOA/meta_theory/TLS.thy		       \
wenzelm@19741
   139
  IOA/meta_theory/LiveIOA.thy IOA/meta_theory/Pred.thy		       \
wenzelm@19741
   140
  IOA/meta_theory/Abstraction.thy IOA/meta_theory/Simulations.thy      \
haftmann@31773
   141
  IOA/meta_theory/SimCorrectness.thy IOA/meta_theory/automaton.ML
wenzelm@28500
   142
	@cd IOA; $(ISABELLE_TOOL) usedir -b $(OUT)/HOLCF IOA
mueller@3081
   143
mueller@3081
   144
wenzelm@4518
   145
## IOA-ABP
wenzelm@4518
   146
wenzelm@4518
   147
IOA-ABP: IOA $(LOG)/IOA-ABP.gz
mueller@3081
   148
wenzelm@4518
   149
$(LOG)/IOA-ABP.gz: $(OUT)/IOA IOA/ABP/Abschannel.thy \
nipkow@8602
   150
  IOA/ABP/Abschannel_finite.thy IOA/ABP/Action.thy \
wenzelm@19738
   151
  IOA/ABP/Check.ML IOA/ABP/Correctness.thy \
wenzelm@4518
   152
  IOA/ABP/Env.thy IOA/ABP/Impl.thy IOA/ABP/Impl_finite.thy \
wenzelm@19738
   153
  IOA/ABP/Lemmas.thy IOA/ABP/Packet.thy \
wenzelm@4518
   154
  IOA/ABP/ROOT.ML IOA/ABP/Receiver.thy IOA/ABP/Sender.thy \
wenzelm@4518
   155
  IOA/ABP/Spec.thy
wenzelm@28500
   156
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA ABP
mueller@3081
   157
wenzelm@4518
   158
## IOA-NTP
wenzelm@4518
   159
wenzelm@4518
   160
IOA-NTP: IOA $(LOG)/IOA-NTP.gz
wenzelm@4518
   161
wenzelm@19739
   162
$(LOG)/IOA-NTP.gz: $(OUT)/IOA \
wenzelm@19739
   163
  IOA/NTP/Abschannel.thy IOA/NTP/Action.thy IOA/NTP/Correctness.thy \
wenzelm@19739
   164
  IOA/NTP/Impl.thy IOA/NTP/Lemmas.thy IOA/NTP/Multiset.thy \
wenzelm@19739
   165
  IOA/NTP/Packet.thy IOA/NTP/ROOT.ML IOA/NTP/Receiver.thy IOA/NTP/Sender.thy \
wenzelm@4518
   166
  IOA/NTP/Spec.thy
wenzelm@28500
   167
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA NTP
mueller@3081
   168
wenzelm@3951
   169
mueller@6475
   170
## IOA-Modelcheck
mueller@6475
   171
mueller@6475
   172
IOA-Modelcheck: IOA $(LOG)/IOA-Modelcheck.gz
mueller@6475
   173
wenzelm@19764
   174
$(LOG)/IOA-Modelcheck.gz: $(OUT)/IOA IOA/Modelcheck/ROOT.ML \
wenzelm@22819
   175
  IOA/Modelcheck/Cockpit.thy IOA/Modelcheck/MuIOA.thy \
wenzelm@22819
   176
  IOA/Modelcheck/MuIOAOracle.thy IOA/Modelcheck/Ring3.thy
wenzelm@28500
   177
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA Modelcheck
mueller@6475
   178
mueller@6475
   179
wenzelm@6010
   180
## IOA-Storage
wenzelm@6010
   181
wenzelm@6010
   182
IOA-Storage: IOA $(LOG)/IOA-Storage.gz
wenzelm@6010
   183
wenzelm@19740
   184
$(LOG)/IOA-Storage.gz: $(OUT)/IOA IOA/Storage/Action.thy \
wenzelm@17238
   185
  IOA/Storage/Correctness.thy IOA/Storage/Impl.thy \
wenzelm@6011
   186
  IOA/Storage/ROOT.ML IOA/Storage/Spec.thy
wenzelm@28500
   187
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA Storage
wenzelm@6010
   188
wenzelm@6010
   189
mueller@6475
   190
## IOA-ex
mueller@6475
   191
mueller@6475
   192
IOA-ex: IOA $(LOG)/IOA-ex.gz
mueller@6475
   193
wenzelm@19740
   194
$(LOG)/IOA-ex.gz: $(OUT)/IOA IOA/ex/ROOT.ML IOA/ex/TrivEx.thy IOA/ex/TrivEx2.thy
wenzelm@28500
   195
	@cd IOA; $(ISABELLE_TOOL) usedir $(OUT)/IOA ex
mueller@6475
   196
mueller@6475
   197
wenzelm@4518
   198
## clean
wenzelm@4447
   199
wenzelm@4447
   200
clean:
wenzelm@33450
   201
	@rm -f $(OUT)/HOLCF $(LOG)/HOLCF.gz $(LOG)/HOLCF-IMP.gz	\
wenzelm@33450
   202
	  $(LOG)/HOLCF-ex.gz $(LOG)/HOLCF-FOCUS.gz $(OUT)/IOA	\
wenzelm@33450
   203
	  $(LOG)/IOA.gz $(LOG)/IOA-ABP.gz $(LOG)/IOA-NTP.gz	\
wenzelm@33450
   204
	  $(LOG)/IOA-Modelcheck.gz $(LOG)/IOA-Storage.gz	\
wenzelm@33450
   205
	  $(LOG)/IOA-ex.gz