src/Pure/IsaMakefile
author wenzelm
Sun, 31 May 2009 14:15:07 +0200
changeset 31308 3fd52453ae81
parent 31156 90fed3d4430f
child 31312 1c00e4ff3c99
permissions -rw-r--r--
discontinued support for Poly/ML 4.x versions;
     1 #
     2 # IsaMakefile for Pure
     3 #
     4 
     5 ## targets
     6 
     7 default: Pure
     8 images: Pure
     9 test: RAW Pure-ProofGeneral
    10 all: images test
    11 
    12 
    13 ## global settings
    14 
    15 SRC = $(ISABELLE_HOME)/src
    16 OUT = $(ISABELLE_OUTPUT)
    17 LOG = $(OUT)/log
    18 
    19 
    20 ## Pure
    21 
    22 BOOTSTRAP_FILES = ML-Systems/exn.ML ML-Systems/ml_name_space.ML		\
    23   ML-Systems/ml_pretty.ML ML-Systems/mosml.ML				\
    24   ML-Systems/multithreading.ML ML-Systems/multithreading_polyml.ML	\
    25   ML-Systems/overloading_smlnj.ML ML-Systems/polyml-5.0.ML		\
    26   ML-Systems/polyml-5.1.ML ML-Systems/polyml-experimental.ML		\
    27   ML-Systems/polyml.ML ML-Systems/polyml_common.ML			\
    28   ML-Systems/polyml_old_compiler5.ML ML-Systems/polyml_pp.ML		\
    29   ML-Systems/proper_int.ML ML-Systems/smlnj.ML				\
    30   ML-Systems/system_shell.ML ML-Systems/thread_dummy.ML			\
    31   ML-Systems/time_limit.ML ML-Systems/universal.ML
    32 
    33 RAW: $(OUT)/RAW
    34 
    35 $(OUT)/RAW: $(BOOTSTRAP_FILES)
    36 	@./mk -r
    37 
    38 
    39 Pure: $(OUT)/Pure
    40 
    41 $(OUT)/Pure: $(BOOTSTRAP_FILES) Concurrent/ROOT.ML			\
    42   Concurrent/future.ML Concurrent/mailbox.ML Concurrent/par_list.ML	\
    43   Concurrent/par_list_dummy.ML Concurrent/simple_thread.ML		\
    44   Concurrent/synchronized.ML Concurrent/task_queue.ML General/ROOT.ML	\
    45   General/alist.ML General/antiquote.ML General/balanced_tree.ML	\
    46   General/basics.ML General/binding.ML General/buffer.ML		\
    47   General/file.ML General/graph.ML General/heap.ML General/integer.ML	\
    48   General/lazy.ML General/long_name.ML General/markup.ML		\
    49   General/name_space.ML General/ord_list.ML General/output.ML		\
    50   General/path.ML General/position.ML General/pretty.ML			\
    51   General/print_mode.ML General/properties.ML General/queue.ML		\
    52   General/scan.ML General/secure.ML General/seq.ML General/source.ML	\
    53   General/stack.ML General/symbol.ML General/symbol_pos.ML		\
    54   General/table.ML General/url.ML General/xml.ML General/yxml.ML	\
    55   Isar/ROOT.ML Isar/args.ML Isar/attrib.ML Isar/auto_bind.ML		\
    56   Isar/calculation.ML Isar/class.ML Isar/class_target.ML Isar/code.ML	\
    57   Isar/constdefs.ML Isar/context_rules.ML		\
    58   Isar/element.ML Isar/expression.ML Isar/isar_cmd.ML			\
    59   Isar/isar_document.ML Isar/isar_syn.ML Isar/local_defs.ML		\
    60   Isar/local_syntax.ML Isar/local_theory.ML Isar/locale.ML		\
    61   Isar/method.ML Isar/object_logic.ML Isar/obtain.ML			\
    62   Isar/outer_keyword.ML Isar/outer_lex.ML Isar/outer_parse.ML		\
    63   Isar/outer_syntax.ML Isar/overloading.ML Isar/proof.ML		\
    64   Isar/proof_context.ML Isar/proof_display.ML Isar/proof_node.ML	\
    65   Isar/rule_cases.ML Isar/rule_insts.ML Isar/skip_proof.ML		\
    66   Isar/spec_parse.ML Isar/specification.ML Isar/theory_target.ML	\
    67   Isar/toplevel.ML Isar/value_parse.ML ML/ml_antiquote.ML		\
    68   ML/ml_context.ML ML/ml_lex.ML ML/ml_parse.ML ML/ml_syntax.ML		\
    69   ML/ml_test.ML ML/ml_thms.ML ML-Systems/install_pp_polyml.ML		\
    70   ML-Systems/install_pp_polyml-experimental.ML				\
    71   ML-Systems/use_context.ML Proof/extraction.ML				\
    72   Proof/proof_rewrite_rules.ML Proof/proof_syntax.ML			\
    73   Proof/proofchecker.ML Proof/reconstruct.ML ProofGeneral/ROOT.ML	\
    74   ProofGeneral/pgip.ML ProofGeneral/pgip_input.ML			\
    75   ProofGeneral/pgip_isabelle.ML ProofGeneral/pgip_markup.ML		\
    76   ProofGeneral/pgip_output.ML ProofGeneral/pgip_parser.ML		\
    77   ProofGeneral/pgip_tests.ML ProofGeneral/pgip_types.ML			\
    78   ProofGeneral/preferences.ML ProofGeneral/proof_general_emacs.ML	\
    79   ProofGeneral/proof_general_pgip.ML Pure.thy ROOT.ML Syntax/ast.ML	\
    80   Syntax/lexicon.ML Syntax/mixfix.ML Syntax/parser.ML			\
    81   Syntax/printer.ML Syntax/simple_syntax.ML Syntax/syn_ext.ML		\
    82   Syntax/syn_trans.ML Syntax/syntax.ML Syntax/type_ext.ML		\
    83   System/isabelle_process.ML System/isar.ML System/session.ML		\
    84   Thy/html.ML Thy/latex.ML Thy/present.ML Thy/term_style.ML		\
    85   Thy/thm_deps.ML Thy/thy_header.ML Thy/thy_info.ML Thy/thy_load.ML	\
    86   Thy/thy_output.ML Thy/thy_syntax.ML Tools/ROOT.ML			\
    87   Tools/find_consts.ML Tools/find_theorems.ML Tools/named_thms.ML	\
    88   Tools/xml_syntax.ML assumption.ML axclass.ML codegen.ML config.ML	\
    89   conjunction.ML consts.ML context.ML context_position.ML conv.ML	\
    90   defs.ML display.ML drule.ML envir.ML facts.ML goal.ML			\
    91   interpretation.ML item_net.ML library.ML logic.ML meta_simplifier.ML	\
    92   more_thm.ML morphism.ML name.ML net.ML old_goals.ML old_term.ML	\
    93   pattern.ML primitive_defs.ML proofterm.ML pure_setup.ML pure_thy.ML	\
    94   search.ML sign.ML simplifier.ML sorts.ML subgoal.ML tactic.ML		\
    95   tctical.ML term.ML term_ord.ML term_subst.ML theory.ML thm.ML		\
    96   type.ML type_infer.ML unify.ML variable.ML
    97 	@./mk
    98 
    99 
   100 ## Proof General keywords
   101 
   102 Pure-ProofGeneral: Pure $(LOG)/Pure-ProofGeneral.gz
   103 
   104 $(LOG)/Pure-ProofGeneral.gz: $(OUT)/Pure ProofGeneral/proof_general_keywords.ML
   105 	@$(ISABELLE_TOOL) usedir -f proof_general_keywords.ML $(OUT)/Pure ProofGeneral
   106 
   107 
   108 ## clean
   109 
   110 clean:
   111 	@rm -f $(OUT)/Pure $(LOG)/Pure.gz $(OUT)/RAW $(LOG)/RAW.gz \
   112           $(LOG)/Pure-ProofGeneral.gz
   113 
   114 
   115 ## Scala material
   116 
   117 SCALA_FILES = General/event_bus.scala General/markup.scala		\
   118   General/position.scala General/swing.scala General/symbol.scala	\
   119   General/xml.scala General/yxml.scala Isar/isar.scala			\
   120   Isar/isar_document.scala Isar/outer_keyword.scala			\
   121   System/isabelle_process.scala System/isabelle_system.scala		\
   122   Thy/thy_header.scala Tools/isabelle_syntax.scala
   123 
   124 
   125 SCALA_TARGET = $(ISABELLE_HOME)/lib/classes/Pure.jar
   126 
   127 jar: $(SCALA_TARGET)
   128 
   129 $(SCALA_TARGET): $(SCALA_FILES)
   130 	@rm -rf classes && mkdir classes
   131 	scalac -deprecation -d classes -target jvm-1.5 $(SCALA_FILES)
   132 	scaladoc -d classes $(SCALA_FILES)
   133 	@cp $(SCALA_FILES) classes/isabelle
   134 	@mkdir -p `dirname $@`
   135 	@cd classes; jar cf $@ isabelle
   136 	@rm -rf classes
   137 
   138 clean-jar:
   139 	@rm -f $(SCALA_TARGET)