src/Pure/IsaMakefile
author wenzelm
Fri Sep 19 21:00:46 2008 +0200 (2008-09-19 ago)
changeset 28299 14ab7a17e92b
parent 28295 3fb78d2068b0
child 28318 6b8d001ce1de
permissions -rw-r--r--
added Isar/isar.scala;
wenzelm@2431
     1
#
wenzelm@4518
     2
# $Id$
wenzelm@2431
     3
#
wenzelm@4518
     4
# IsaMakefile for Pure
wenzelm@2431
     5
#
wenzelm@2431
     6
wenzelm@4518
     7
## targets
wenzelm@4518
     8
wenzelm@4518
     9
default: Pure
wenzelm@4518
    10
images: Pure
wenzelm@24880
    11
test: RAW Pure-ProofGeneral
wenzelm@4518
    12
all: images test
wenzelm@4518
    13
wenzelm@4518
    14
wenzelm@4518
    15
## global settings
wenzelm@4518
    16
wenzelm@4518
    17
SRC = $(ISABELLE_HOME)/src
wenzelm@3118
    18
OUT = $(ISABELLE_OUTPUT)
wenzelm@4518
    19
LOG = $(OUT)/log
wenzelm@4518
    20
wenzelm@2431
    21
wenzelm@4518
    22
## Pure
wenzelm@4518
    23
wenzelm@27204
    24
Pure: $(OUT)/Pure
wenzelm@2431
    25
wenzelm@28155
    26
$(OUT)/Pure: Concurrent/future.ML Concurrent/mailbox.ML			\
wenzelm@28198
    27
  Concurrent/par_list.ML Concurrent/schedule.ML				\
wenzelm@28240
    28
  Concurrent/simple_thread.ML Concurrent/task_queue.ML General/ROOT.ML	\
wenzelm@28240
    29
  General/alist.ML General/balanced_tree.ML General/basics.ML		\
wenzelm@28240
    30
  General/buffer.ML General/file.ML General/graph.ML General/heap.ML	\
wenzelm@28240
    31
  General/integer.ML General/markup.ML General/name_space.ML		\
wenzelm@28240
    32
  General/ord_list.ML General/output.ML General/path.ML			\
wenzelm@28240
    33
  General/position.ML General/pretty.ML General/print_mode.ML		\
wenzelm@28240
    34
  General/properties.ML General/queue.ML General/scan.ML		\
wenzelm@28240
    35
  General/secure.ML General/seq.ML General/source.ML General/stack.ML	\
wenzelm@28240
    36
  General/susp.ML General/symbol.ML General/symbol_pos.ML		\
wenzelm@28240
    37
  General/table.ML General/url.ML General/xml.ML General/yxml.ML	\
wenzelm@28240
    38
  Isar/ROOT.ML Isar/antiquote.ML Isar/args.ML Isar/attrib.ML		\
wenzelm@28240
    39
  Isar/auto_bind.ML Isar/calculation.ML Isar/class.ML Isar/code.ML	\
wenzelm@28240
    40
  Isar/code_unit.ML Isar/constdefs.ML Isar/context_rules.ML		\
wenzelm@28240
    41
  Isar/element.ML Isar/find_theorems.ML Isar/instance.ML Isar/isar.ML	\
wenzelm@28240
    42
  Isar/isar_cmd.ML Isar/isar_syn.ML Isar/local_defs.ML			\
wenzelm@28240
    43
  Isar/local_syntax.ML Isar/local_theory.ML Isar/locale.ML		\
wenzelm@28240
    44
  Isar/method.ML Isar/net_rules.ML Isar/object_logic.ML Isar/obtain.ML	\
wenzelm@28240
    45
  Isar/outer_keyword.ML Isar/outer_lex.ML Isar/outer_parse.ML		\
wenzelm@28240
    46
  Isar/outer_syntax.ML Isar/overloading.ML Isar/proof.ML		\
wenzelm@28240
    47
  Isar/proof_context.ML Isar/proof_display.ML Isar/proof_node.ML	\
wenzelm@28240
    48
  Isar/rule_cases.ML Isar/rule_insts.ML Isar/session.ML			\
wenzelm@28240
    49
  Isar/skip_proof.ML Isar/spec_parse.ML Isar/specification.ML		\
wenzelm@28240
    50
  Isar/subclass.ML Isar/theory_target.ML Isar/toplevel.ML		\
wenzelm@28266
    51
  ML-Systems/alice.ML ML-Systems/exn.ML ML-Systems/ml_name_space.ML	\
wenzelm@28266
    52
  ML-Systems/multithreading.ML ML-Systems/mosml.ML			\
wenzelm@28266
    53
  ML-Systems/multithreading_polyml.ML ML-Systems/overloading_smlnj.ML	\
wenzelm@28266
    54
  ML-Systems/polyml-4.1.3.ML ML-Systems/polyml-4.1.4.ML			\
wenzelm@28266
    55
  ML-Systems/polyml-4.2.0.ML ML-Systems/polyml-5.0.ML			\
wenzelm@28266
    56
  ML-Systems/polyml-5.1.ML ML-Systems/polyml_common.ML			\
wenzelm@28266
    57
  ML-Systems/polyml.ML ML-Systems/polyml_old_compiler4.ML		\
wenzelm@27204
    58
  ML-Systems/polyml_old_compiler5.ML ML-Systems/proper_int.ML		\
wenzelm@27204
    59
  ML-Systems/smlnj.ML ML-Systems/system_shell.ML			\
wenzelm@28146
    60
  ML-Systems/time_limit.ML ML-Systems/thread_dummy.ML			\
wenzelm@28146
    61
  ML-Systems/universal.ML ML/ml_context.ML ML/ml_antiquote.ML		\
wenzelm@28146
    62
  ML/ml_lex.ML ML/ml_parse.ML ML/ml_syntax.ML ML/ml_thms.ML		\
wenzelm@28146
    63
  Proof/extraction.ML Proof/proof_rewrite_rules.ML			\
wenzelm@27339
    64
  Proof/proof_syntax.ML Proof/proofchecker.ML Proof/reconstruct.ML	\
wenzelm@27339
    65
  ProofGeneral/ROOT.ML ProofGeneral/pgip.ML ProofGeneral/pgip_input.ML	\
wenzelm@26097
    66
  ProofGeneral/pgip_isabelle.ML ProofGeneral/pgip_markup.ML		\
wenzelm@26097
    67
  ProofGeneral/pgip_output.ML ProofGeneral/pgip_parser.ML		\
wenzelm@26097
    68
  ProofGeneral/pgip_tests.ML ProofGeneral/pgip_types.ML			\
wenzelm@28030
    69
  ProofGeneral/preferences.ML ProofGeneral/proof_general_emacs.ML	\
wenzelm@26097
    70
  ProofGeneral/proof_general_pgip.ML Pure.thy ROOT.ML Syntax/ast.ML	\
wenzelm@26097
    71
  Syntax/lexicon.ML Syntax/mixfix.ML Syntax/parser.ML			\
wenzelm@26097
    72
  Syntax/printer.ML Syntax/simple_syntax.ML Syntax/syn_ext.ML		\
wenzelm@26097
    73
  Syntax/syn_trans.ML Syntax/syntax.ML Syntax/type_ext.ML Thy/html.ML	\
wenzelm@26419
    74
  Thy/latex.ML Thy/present.ML Thy/term_style.ML Thy/thm_deps.ML		\
wenzelm@26419
    75
  Thy/thy_edit.ML Thy/thy_header.ML Thy/thy_info.ML Thy/thy_load.ML	\
wenzelm@28266
    76
  Thy/thy_output.ML Tools/ROOT.ML Tools/invoke.ML Tools/quickcheck.ML	\
wenzelm@28266
    77
  Tools/value.ML Tools/isabelle_process.ML Tools/named_thms.ML		\
wenzelm@28266
    78
  Tools/xml_syntax.ML assumption.ML axclass.ML codegen.ML config.ML	\
wenzelm@28288
    79
  conjunction.ML consts.ML context.ML conv.ML defs.ML deriv.ML		\
wenzelm@28288
    80
  display.ML drule.ML envir.ML facts.ML goal.ML interpretation.ML	\
wenzelm@28288
    81
  library.ML logic.ML meta_simplifier.ML more_thm.ML morphism.ML	\
wenzelm@28288
    82
  name.ML net.ML old_goals.ML pattern.ML primitive_defs.ML		\
wenzelm@28288
    83
  proofterm.ML pure_setup.ML pure_thy.ML search.ML sign.ML		\
wenzelm@28288
    84
  simplifier.ML sorts.ML subgoal.ML tactic.ML tctical.ML term.ML	\
wenzelm@28288
    85
  term_subst.ML theory.ML thm.ML type.ML type_infer.ML unify.ML		\
wenzelm@28288
    86
  variable.ML
wenzelm@2431
    87
	@./mk
wenzelm@2431
    88
wenzelm@4518
    89
wenzelm@10102
    90
## special targets
wenzelm@10102
    91
wenzelm@24880
    92
Pure-ProofGeneral: Pure $(LOG)/Pure-ProofGeneral.gz
wenzelm@24880
    93
wenzelm@27204
    94
$(LOG)/Pure-ProofGeneral.gz: $(OUT)/Pure ProofGeneral/proof_general_keywords.ML
wenzelm@24880
    95
	@$(ISATOOL) usedir -f proof_general_keywords.ML $(OUT)/Pure ProofGeneral
wenzelm@24880
    96
wenzelm@24880
    97
wenzelm@21995
    98
RAW: $(OUT)/RAW
wenzelm@4518
    99
wenzelm@28266
   100
$(OUT)/RAW: ML-Systems/alice.ML ML-Systems/exn.ML		\
wenzelm@28266
   101
  ML-Systems/ml_name_space.ML ML-Systems/multithreading.ML	\
wenzelm@28266
   102
  ML-Systems/mosml.ML ML-Systems/multithreading_polyml.ML	\
wenzelm@28266
   103
  ML-Systems/overloading_smlnj.ML ML-Systems/polyml-4.1.3.ML	\
wenzelm@28266
   104
  ML-Systems/polyml-4.1.4.ML ML-Systems/polyml-4.2.0.ML		\
wenzelm@28266
   105
  ML-Systems/polyml-5.0.ML ML-Systems/polyml-5.1.ML		\
wenzelm@28266
   106
  ML-Systems/polyml_common.ML ML-Systems/polyml.ML		\
wenzelm@28266
   107
  ML-Systems/polyml_old_compiler4.ML				\
wenzelm@28266
   108
  ML-Systems/polyml_old_compiler5.ML ML-Systems/proper_int.ML	\
wenzelm@28266
   109
  ML-Systems/smlnj.ML ML-Systems/system_shell.ML		\
wenzelm@28266
   110
  ML-Systems/time_limit.ML ML-Systems/thread_dummy.ML		\
wenzelm@28146
   111
  ML-Systems/universal.ML
wenzelm@3774
   112
	@./mk -r
wenzelm@3774
   113
wenzelm@4518
   114
wenzelm@4518
   115
## clean
wenzelm@4441
   116
wenzelm@4441
   117
clean:
wenzelm@27204
   118
	@rm -f $(OUT)/Pure $(LOG)/Pure.gz $(LOG)/Pure-ProofGeneral.gz \
wenzelm@24880
   119
          $(OUT)/RAW $(LOG)/RAW.gz
wenzelm@27902
   120
wenzelm@27902
   121
wenzelm@27902
   122
## Scala material
wenzelm@27902
   123
wenzelm@27967
   124
SCALA_FILES = General/markup.scala General/position.scala	\
wenzelm@27967
   125
  General/symbol.scala General/xml.scala General/yxml.scala	\
wenzelm@28299
   126
  Isar/isar.scala Tools/isabelle_process.scala			\
wenzelm@28299
   127
  Tools/isabelle_syntax.scala Tools/isabelle_system.scala
wenzelm@27950
   128
wenzelm@27950
   129
wenzelm@27902
   130
SCALA_TARGET = $(ISABELLE_HOME)/lib/classes/Pure.jar
wenzelm@27902
   131
wenzelm@27902
   132
jar: $(SCALA_TARGET)
wenzelm@27902
   133
wenzelm@27902
   134
$(SCALA_TARGET): $(SCALA_FILES)
wenzelm@27902
   135
	@rm -rf classes && mkdir classes
wenzelm@27950
   136
	scalac -deprecation -d classes -target jvm-1.5 $(SCALA_FILES)
wenzelm@27925
   137
	scaladoc -d classes $(SCALA_FILES)
wenzelm@28295
   138
	@cp $(SCALA_FILES) classes/isabelle
wenzelm@27902
   139
	@mkdir -p `dirname $@`
wenzelm@27922
   140
	@cd classes; jar cf $@ isabelle
wenzelm@28003
   141
	@rm -rf classes
wenzelm@27902
   142
wenzelm@27902
   143
clean-jar:
wenzelm@27902
   144
	@rm -f $(SCALA_TARGET)