doc-src/Tutorial/IsaMakefile
changeset 15340 cd18d7b73a64
parent 15339 a7b603bbc1e6
child 15341 254f6f00b60e
equal deleted inserted replaced
15339:a7b603bbc1e6 15340:cd18d7b73a64
     1 #
       
     2 # IsaMakefile for Tutorial
       
     3 #
       
     4 
       
     5 ## targets
       
     6 
       
     7 default: HOL-ToyList HOL-Ifexpr HOL-CodeGen HOL-Datatype HOL-Recdef HOL-Misc
       
     8 images:
       
     9 test:
       
    10 all: default
       
    11 
       
    12 
       
    13 ## global settings
       
    14 
       
    15 SRC = $(ISABELLE_HOME)/src
       
    16 OUT = $(ISABELLE_OUTPUT)
       
    17 LOG = $(OUT)/log
       
    18 
       
    19 
       
    20 ## HOL
       
    21 
       
    22 HOL:
       
    23 	@cd $(SRC)/HOL; $(ISATOOL) make HOL
       
    24 
       
    25 
       
    26 ## HOL-Ifexpr
       
    27 
       
    28 HOL-Ifexpr: HOL $(LOG)/HOL-Ifexpr.gz
       
    29 
       
    30 Ifexpr/Ifexpr.thy: Ifexpr/prolog Ifexpr/boolex Ifexpr/value Ifexpr/ifex \
       
    31   Ifexpr/valif Ifexpr/bool2if Ifexpr/normif Ifexpr/norm Ifexpr/normal \
       
    32   Ifexpr/end
       
    33 	@cd Ifexpr; \
       
    34 	cat prolog boolex value ifex valif bool2if normif norm normal \
       
    35 	  end > Ifexpr.thy
       
    36 
       
    37 $(LOG)/HOL-Ifexpr.gz: $(OUT)/HOL Ifexpr/Ifexpr.thy Ifexpr/ROOT.ML
       
    38 	@$(ISATOOL) usedir $(OUT)/HOL Ifexpr
       
    39 
       
    40 
       
    41 ## HOL-ToyList
       
    42 
       
    43 HOL-ToyList: HOL $(LOG)/HOL-ToyList.gz
       
    44 
       
    45 ToyList/ToyList.ML: ToyList/autotac ToyList/addsimps2 ToyList/inductxs \
       
    46   ToyList/lemma1 ToyList/lemma2 ToyList/lemma3 \
       
    47   ToyList/qed1 ToyList/qed2 ToyList/qed3 ToyList/thm ToyList/qed
       
    48 	cd ToyList; \
       
    49 	cat lemma2 inductxs autotac qed2 addsimps2 lemma3 qed3 \
       
    50 	    lemma1 inductxs autotac qed1 thm inductxs autotac qed > ToyList.ML
       
    51 
       
    52 $(LOG)/HOL-ToyList.gz: $(OUT)/HOL ToyList/ToyList.thy ToyList/ToyList.ML \
       
    53   ToyList/ROOT.ML
       
    54 	@$(ISATOOL) usedir $(OUT)/HOL ToyList
       
    55 
       
    56 ## HOL-CodeGen
       
    57 
       
    58 HOL-CodeGen: HOL $(LOG)/HOL-CodeGen.gz
       
    59 
       
    60 CodeGen/CodeGen.thy: CodeGen/prolog CodeGen/expr CodeGen/value \
       
    61   CodeGen/instr CodeGen/exec CodeGen/comp CodeGen/end
       
    62 	cd CodeGen; cat prolog expr value instr exec comp end > CodeGen.thy
       
    63 
       
    64 $(LOG)/HOL-CodeGen.gz: $(OUT)/HOL CodeGen/CodeGen.thy CodeGen/goal1.ML \
       
    65   CodeGen/goal2.ML CodeGen/simpsplit.ML CodeGen/ROOT.ML
       
    66 	@$(ISATOOL) usedir $(OUT)/HOL CodeGen
       
    67 
       
    68 ## HOL-Datatype
       
    69 
       
    70 HOL-Datatype: HOL $(LOG)/HOL-Datatype.gz
       
    71 
       
    72 Datatype/appmap.ML: Datatype/appmap
       
    73 	cat Datatype/goal Datatype/appmap Datatype/semi > Datatype/appmap.ML
       
    74 
       
    75 Datatype/ABexp.thy: Datatype/abprolog Datatype/abdata Datatype/abconstseval \
       
    76   Datatype/abevala Datatype/abevalb Datatype/abconstssubst Datatype/absubsta\
       
    77   Datatype/absubstb
       
    78 	cd Datatype; cat abprolog abdata abconstseval abevala abevalb abconstssubst absubsta absubstb end > ABexp.thy
       
    79 
       
    80 Datatype/Term.thy: Datatype/tprolog Datatype/mutnested Datatype/tdata \
       
    81   Datatype/tconstssubst Datatype/tsubst Datatype/tsubsts
       
    82 	cd Datatype; cat tprolog mutnested tdata tconstssubst tsubst tsubsts end > Term.thy
       
    83 
       
    84 Datatype/Trie.thy: Datatype/trieprolog Datatype/assoc Datatype/trie \
       
    85   Datatype/triesels Datatype/lookup Datatype/update
       
    86 	cd Datatype; cat trieprolog assoc trie triesels lookup update end > Trie.thy
       
    87 
       
    88 $(LOG)/HOL-Datatype.gz: $(OUT)/HOL \
       
    89   Datatype/ABexp.thy Datatype/Term.thy Datatype/Trie.thy \
       
    90   Datatype/ROOT.ML Datatype/abgoalind.ML Datatype/autotac.ML \
       
    91   Datatype/tidproof.ML Datatype/appmap.ML Datatype/lookupempty.ML \
       
    92   Datatype/trieAdds.ML Datatype/triemain.ML Datatype/trieinduct.ML Datatype/trieexhaust.ML
       
    93 	@$(ISATOOL) usedir $(OUT)/HOL Datatype
       
    94 
       
    95 ## HOL-Recdef
       
    96 
       
    97 HOL-Recdef: HOL $(LOG)/HOL-Recdef.gz
       
    98 
       
    99 Recdef/Examples.thy: Recdef/exprolog Recdef/fib Recdef/sep Recdef/last \
       
   100   Recdef/constsgcd Recdef/gcd Recdef/ack
       
   101 	cd Recdef; cat exprolog fib sep last constsgcd gcd ack end > Examples.thy
       
   102 
       
   103 Recdef/Sep1.thy: Recdef/sep1prolog Recdef/sep1
       
   104 	cd Recdef; cat sep1prolog sep1 end > Sep1.thy
       
   105 
       
   106 Recdef/Sep2.thy: Recdef/sep2prolog Recdef/sep2
       
   107 	cd Recdef; cat sep2prolog sep2 end > Sep2.thy
       
   108 
       
   109 $(LOG)/HOL-Recdef.gz: $(OUT)/HOL Recdef/ROOT.ML \
       
   110   Recdef/Examples.thy Recdef/Sep1.thy Recdef/Sep2.thy
       
   111 	@$(ISATOOL) usedir $(OUT)/HOL Recdef
       
   112 
       
   113 ## HOL-Misc
       
   114 
       
   115 HOL-Misc: HOL $(LOG)/HOL-Misc.gz
       
   116 
       
   117 Misc/Tree.thy: Misc/treeprolog Misc/tree Misc/end
       
   118 	cd Misc; cat treeprolog tree end > Tree.thy
       
   119 
       
   120 Misc/NatSum.thy: Misc/natsumprolog Misc/natsum Misc/end
       
   121 	cd Misc; cat natsumprolog natsum end > NatSum.thy
       
   122 
       
   123 Misc/Types.thy: Misc/typesprolog Misc/types Misc/end
       
   124 	cd Misc; cat typesprolog types end > Types.thy
       
   125 
       
   126 Misc/Defs.thy: Misc/defsprolog Misc/consts Misc/defs Misc/end
       
   127 	cd Misc; cat defsprolog consts defs end > Defs.thy
       
   128 
       
   129 Misc/ConstDefs.thy: Misc/constdefsprolog Misc/constdefs Misc/end
       
   130 	cd Misc; cat constdefsprolog constdefs end > ConstDefs.thy
       
   131 
       
   132 $(LOG)/HOL-Misc.gz: $(OUT)/HOL Misc/ROOT.ML Misc/exhaust.ML Misc/autotac.ML \
       
   133   Misc/Tree.thy Misc/NatSum.thy Misc/NatSum.ML Misc/Types.thy \
       
   134   Misc/Defs.thy Misc/ConstDefs.thy \
       
   135   Misc/Exor.thy Misc/exorgoal.ML Misc/exorproof.ML \
       
   136   Misc/splitif.ML Misc/splitlist.ML Misc/induct_auto.ML \
       
   137   Misc/Itrev.thy Misc/itrev1.ML Misc/itrev2.ML Misc/itrev3.ML
       
   138 	@$(ISATOOL) usedir $(OUT)/HOL Misc
       
   139 
       
   140 
       
   141 ## clean
       
   142 
       
   143 clean:
       
   144 	@rm -f $(LOG)/HOL-Ifexpr.gz $(LOG)/HOL-Misc.gz