src/Pure/IsaMakefile
author wenzelm
Fri, 15 Aug 2008 21:56:07 +0200
changeset 27902 4a419fd52f44
parent 27762 4936264477f2
child 27917 a374f889ac5a
permissions -rw-r--r--
basic setup for Scala material; added General/symbol.scala;

#
# $Id$
#
# IsaMakefile for Pure
#

## targets

default: Pure
images: Pure
test: RAW Pure-ProofGeneral
all: images test


## global settings

SRC = $(ISABELLE_HOME)/src
OUT = $(ISABELLE_OUTPUT)
LOG = $(OUT)/log


## Pure

Pure: $(OUT)/Pure

$(OUT)/Pure: General/ROOT.ML General/alist.ML General/balanced_tree.ML	\
  General/basics.ML General/buffer.ML General/file.ML General/graph.ML	\
  General/heap.ML General/integer.ML General/markup.ML			\
  General/name_space.ML General/ord_list.ML General/output.ML		\
  General/path.ML General/position.ML General/pretty.ML			\
  General/print_mode.ML General/scan.ML General/secure.ML		\
  General/seq.ML General/source.ML General/stack.ML General/susp.ML	\
  General/symbol.ML General/symbol_pos.ML General/table.ML		\
  General/url.ML General/xml.ML General/yxml.ML Isar/ROOT.ML		\
  Isar/antiquote.ML Isar/args.ML Isar/attrib.ML Isar/auto_bind.ML	\
  Isar/calculation.ML Isar/class.ML Isar/code.ML Isar/code_unit.ML	\
  Isar/constdefs.ML Isar/context_rules.ML Isar/element.ML		\
  Isar/find_theorems.ML Isar/instance.ML Isar/isar.ML Isar/isar_cmd.ML	\
  Isar/isar_syn.ML Isar/local_defs.ML Isar/local_syntax.ML		\
  Isar/local_theory.ML Isar/locale.ML Isar/method.ML Isar/net_rules.ML	\
  Isar/object_logic.ML Isar/obtain.ML Isar/outer_keyword.ML		\
  Isar/outer_lex.ML Isar/outer_parse.ML Isar/outer_syntax.ML		\
  Isar/overloading.ML Isar/proof.ML Isar/proof_context.ML		\
  Isar/proof_display.ML Isar/proof_node.ML Isar/rule_cases.ML		\
  Isar/rule_insts.ML Isar/session.ML Isar/skip_proof.ML			\
  Isar/spec_parse.ML Isar/specification.ML Isar/subclass.ML		\
  Isar/theory_target.ML Isar/toplevel.ML ML-Systems/alice.ML		\
  ML-Systems/exn.ML ML-Systems/multithreading.ML ML-Systems/mosml.ML	\
  ML-Systems/multithreading_polyml.ML ML-Systems/overloading_smlnj.ML	\
  ML-Systems/polyml-4.1.3.ML ML-Systems/polyml-4.1.4.ML			\
  ML-Systems/polyml-4.2.0.ML ML-Systems/polyml-5.0.ML			\
  ML-Systems/polyml-5.1.ML ML-Systems/polyml_common.ML			\
  ML-Systems/polyml.ML ML-Systems/polyml_old_compiler4.ML		\
  ML-Systems/polyml_old_compiler5.ML ML-Systems/proper_int.ML		\
  ML-Systems/smlnj.ML ML-Systems/system_shell.ML			\
  ML-Systems/time_limit.ML ML-Systems/universal.ML ML/ml_context.ML	\
  ML/ml_antiquote.ML ML/ml_lex.ML ML/ml_parse.ML ML/ml_syntax.ML	\
  ML/ml_thms.ML Proof/extraction.ML Proof/proof_rewrite_rules.ML	\
  Proof/proof_syntax.ML Proof/proofchecker.ML Proof/reconstruct.ML	\
  ProofGeneral/ROOT.ML ProofGeneral/pgip.ML ProofGeneral/pgip_input.ML	\
  ProofGeneral/pgip_isabelle.ML ProofGeneral/pgip_markup.ML		\
  ProofGeneral/pgip_output.ML ProofGeneral/pgip_parser.ML		\
  ProofGeneral/pgip_tests.ML ProofGeneral/pgip_types.ML			\
  ProofGeneral/pgml_isabelle.ML ProofGeneral/preferences.ML		\
  ProofGeneral/proof_general_emacs.ML					\
  ProofGeneral/proof_general_pgip.ML Pure.thy ROOT.ML Syntax/ast.ML	\
  Syntax/lexicon.ML Syntax/mixfix.ML Syntax/parser.ML			\
  Syntax/printer.ML Syntax/simple_syntax.ML Syntax/syn_ext.ML		\
  Syntax/syn_trans.ML Syntax/syntax.ML Syntax/type_ext.ML Thy/html.ML	\
  Thy/latex.ML Thy/present.ML Thy/term_style.ML Thy/thm_deps.ML		\
  Thy/thy_edit.ML Thy/thy_header.ML Thy/thy_info.ML Thy/thy_load.ML	\
  Thy/thy_output.ML Tools/ROOT.ML Tools/invoke.ML			\
  Tools/isabelle_process.ML Tools/named_thms.ML Tools/xml_syntax.ML	\
  assumption.ML axclass.ML codegen.ML config.ML conjunction.ML		\
  consts.ML context.ML conv.ML defs.ML display.ML drule.ML envir.ML	\
  facts.ML goal.ML interpretation.ML library.ML logic.ML		\
  meta_simplifier.ML more_thm.ML morphism.ML name.ML net.ML		\
  old_goals.ML pattern.ML primitive_defs.ML proofterm.ML pure_setup.ML	\
  pure_thy.ML search.ML sign.ML simplifier.ML sorts.ML subgoal.ML	\
  tactic.ML tctical.ML term.ML term_subst.ML theory.ML thm.ML type.ML	\
  type_infer.ML unify.ML variable.ML
	@./mk


## special targets

Pure-ProofGeneral: Pure $(LOG)/Pure-ProofGeneral.gz

$(LOG)/Pure-ProofGeneral.gz: $(OUT)/Pure ProofGeneral/proof_general_keywords.ML
	@$(ISATOOL) usedir -f proof_general_keywords.ML $(OUT)/Pure ProofGeneral


RAW: $(OUT)/RAW

$(OUT)/RAW: ML-Systems/alice.ML ML-Systems/exn.ML			\
  ML-Systems/multithreading.ML ML-Systems/mosml.ML			\
  ML-Systems/multithreading_polyml.ML ML-Systems/overloading_smlnj.ML	\
  ML-Systems/polyml-4.1.3.ML ML-Systems/polyml-4.1.4.ML			\
  ML-Systems/polyml-4.2.0.ML ML-Systems/polyml-5.0.ML			\
  ML-Systems/polyml-5.1.ML ML-Systems/polyml_common.ML			\
  ML-Systems/polyml.ML ML-Systems/polyml_old_compiler4.ML		\
  ML-Systems/polyml_old_compiler5.ML ML-Systems/proper_int.ML		\
  ML-Systems/smlnj.ML ML-Systems/system_shell.ML			\
  ML-Systems/time_limit.ML ML-Systems/universal.ML
	@./mk -r


## clean

clean:
	@rm -f $(OUT)/Pure $(LOG)/Pure.gz $(LOG)/Pure-ProofGeneral.gz \
          $(OUT)/RAW $(LOG)/RAW.gz


## Scala material

SCALA_TARGET = $(ISABELLE_HOME)/lib/classes/Pure.jar
SCALA_FILES = General/symbol.scala

jar: $(SCALA_TARGET)

$(SCALA_TARGET): $(SCALA_FILES)
	@rm -rf classes && mkdir classes
	scalac -d classes -target jvm-1.5 -optimise $(SCALA_FILES)
	@mkdir -p `dirname $@`
	cd classes; jar cf $@ isabelle

clean-jar:
	@rm -f $(SCALA_TARGET)