Makefile revision 4561227a776bdf0ab679b19fb92f1eaaed8786f7
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2005
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# This Makefile will compile the new hets system and provides also
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# targets for test programs during implementation phases.
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering# !!! Note: This makefile is written for GNU make !!!
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# (gmake on solaris)
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering####################################################################
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering## Some varibles, which control the compilation
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering utils utils/DrIFT-src utils/GenerateRules utils/InlineAxioms Common \
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardón Common/Lib Common/ATerm Logic CASL CASL/CCC CASL/CompositionTable \
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardón Syntax Static GUI HasCASL Haskell Modal CoCASL COL ConstraintCASL \
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardón CspCASL ATC ToHaskell Proofs Comorphisms Isabelle Driver \
252ff40a3827b4e8e62e03a5e2f80da3fe02bee6Lennart Poettering Taxonomy CASL_DL SPASS OWL_DL OMDoc $(PFE_PATHS)
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardón# the 'replacing spaces' example was taken from the (GNU) Make info manual
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering## set ghc imports properly for your system
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart PoetteringGHC_IMPORTS = `$(HC) --print-libdir`/imports
a80db8bd5f7f15859e8891aab9fc3694ce4cd0bdJavier Jardón# import directories for ghc-5.04.2
a80db8bd5f7f15859e8891aab9fc3694ce4cd0bdJavier JardónGHC5 = $(GHC_IMPORTS)/base:$(GHC_IMPORTS)/haskell98
907dd1953b7517534d646f5b2777780020c896e2Kay Sievers DERIVEPATH=.:$(GHC_IMPORTS):$(GHC5):$(subst $(space),:,$(PFE_PATHS))
6aad7f2cd75c88f990c7857bb173b3e8d0faee0fUmut Tezduyar Lindskog# override on commandline for other architectures
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers /home/www/agbkb/forschung/formal_methods/CoFI/hets/`utils/sysname.sh`
d59d0a2b4b41a75eaf618b26b8f8bd1e17de7e2bceeGENERATERULES_deps = utils/GenerateRules/*hs $(DRIFT_deps) Common/Utils.hs
d59d0a2b4b41a75eaf618b26b8f8bd1e17de7e2bcee Common/Lib/Pretty.hs Common/Keywords.hs Common/Lib/Set.hs \
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering Common/Lib/Map.hs Common/Lib/Rel.hs Common/Lib/State.hs Common/Id.hs \
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers Common/AS_Annotation.hs CASL/AS_Basic_CASL.hs CASL/ShowMixfix.hs \
8666abb452db73d9a11ead61251eec42bc531cceKay Sievers CASL/Utils.hs Common/Lexer.hs Common/Token.hs Common/Anno_Parser.hs \
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering Common/GlobalAnnotations.hs Common/PrettyPrint.hs Common/Partial.hs \
5e63ce78b5018ba612e794a610a6f13c5eefade7Cristian Rodríguez Common/Print_AS_Annotation.hs Common/PPUtils.hs CASL/LiteralFuns.hs \
3d585edbb14b9705c80183aeb16dfd0a28df0ac9Lennart Poettering CASL/Print_AS_Basic.hs Common/AnnoState.hs CASL/Formula.hs \
5e63ce78b5018ba612e794a610a6f13c5eefade7Cristian Rodríguez CASL/OpItem.hs CASL/SortItem.hs CASL/Inject.hs Common/Result.hs \
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Nocera Common/ConvertLiteral.hs Common/Earley.hs CASL/MixfixParser.hs \
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe Brandenburger CASL/Parse_AS_Basic.hs CASL/Sign.hs CASL/Overload.hs \
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe Brandenburger CASL/StaticAna.hs Modal/AS_Modal.hs Modal/Parse_AS.hs \
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe Brandenburger Modal/ModalSign.hs Modal/Print_AS.hs Modal/StatAna.hs
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerGENRULECALL = $(GENRULES) -r Typeable -r ShATermConvertible \
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe Brandenburger -i Common.DynamicUtils -i Common.ATerm.Lib
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Nocera# remove -fno-warn-orphans for older ghcs and add -ifgl
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger $(HC_WARN) -fglasgow-exts -fno-monomorphism-restriction \
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger -fallow-overlapping-instances -fallow-undecidable-instances
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger# -ddump-minimal-imports
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger# flags also come in via ../uni/uni-package.conf
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger# but added it here in case of compilation without uni
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Noceralogics = CASL HasCASL Isabelle Modal CoCASL COL CspCASL CASL_DL SPASS OWL_DL ConstraintCASL
e9da3678fcfc774b325dc1eaa054d0e00028a1fcLennart PoetteringTESTTARGETS += test_parser hetpa hetana Test.o wrap isa fromKif \
f975e971accc4d50c73ae53167db3df7a7099cf2Lennart PoetteringUNI_PACKAGE_CONF = $(wildcard ../uni/uni-package.conf)
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart PoetteringHC_PACKAGE = -package-conf $(UNI_PACKAGE_CONF) -package uni-davinci \
fe1fed02c7637a2c18cd575f78be7fda27972148Zbigniew Jędrzejewski-Szmek# some modules from uni for haddock
92ec4495f76a7a2a6c31f5bb2a5240f78dcfe1d2Javier Jardón# if uni/server is included also HaXml sources are needed
2d0efdf1af5ff77441228854343c61d42a89840cSamuli Suominenuni_dirs = ../uni/davinci ../uni/graphs ../uni/events \
2d0efdf1af5ff77441228854343c61d42a89840cSamuli Suominenuni_sources = $(wildcard $(addsuffix /haddock/*.hs, $(uni_dirs))) \
2d0efdf1af5ff77441228854343c61d42a89840cSamuli SuominenTESTTARGETS += hetdg OWL_DL/readAStest taxonomy
7801356442578ff6e1c65844eb9e65c819af4660Zbigniew Jędrzejewski-Szmek### list of directories to run checks in
4acbce79798347cddf1e1d42e9be571e0a041873Zbigniew Jędrzejewski-SzmekPFE_TOOLDIR = $(wildcard ../programatica/tools)
80a5cbace45a6adbf2f9119edc5a4b10db493064Kay SieversPFE_DIRS = base/AST base/TI base/parse2 base/parse2/Lexer base/parse2/Parser \
b37250d661ed67d07c734630617d73e64f6d7e49Zbigniew Jędrzejewski-Szmek base/parse2/LexerGen base/parse2/LexerSpec base/tests/HbcLibraries \
b37250d661ed67d07c734630617d73e64f6d7e49Zbigniew Jędrzejewski-Szmek base/pretty base/syntax base/lib base/lib/Monads base/Modules base/defs \
6581f00f7eabdaccf587a4b6af60ed4696dd2791Zbigniew Jędrzejewski-Szmek base/transforms base/transforms/Deriving property \
6581f00f7eabdaccf587a4b6af60ed4696dd2791Zbigniew Jędrzejewski-Szmek property/syntax property/AST property/transforms \
92ec4495f76a7a2a6c31f5bb2a5240f78dcfe1d2Javier Jardón property/TI property/defs property/parse2 property/parse2/Parser
fe1fed02c7637a2c18cd575f78be7fda27972148Zbigniew Jędrzejewski-SzmekPFE_PATHS = $(addprefix $(PFE_TOOLDIR)/, $(PFE_DIRS))
fe1fed02c7637a2c18cd575f78be7fda27972148Zbigniew Jędrzejewski-Szmekpfe_sources = $(wildcard $(addsuffix /*hs, $(PFE_PATHS)))
fe1fed02c7637a2c18cd575f78be7fda27972148Zbigniew Jędrzejewski-SzmekPFE_PATH = $(addprefix -i, $(PFE_PATHS))
6e92b23f0d6dd398848376bbaf47e54a90ed3389Kay SieversPFE_FLAGS = -package data -package text $(PFE_PATH) -DPROGRAMATICA
0eaeca1f2373a323b98c86b47561d98e59c67b25Kay Sievershappy_files += $(PFE_TOOLDIR)/property/parse2/Parser/PropParser.hs
d66ee73a3dd7b5433fc0da3125bbdff740de7745Zbigniew Jędrzejewski-SzmekLEX_DIR = $(PFE_TOOLDIR)/base/parse2/Lexer
b62cfcea00862ccbf0e5e297f8a339f70987edefMichael Biebl echo "{-# OPTIONS -w #-}" > $@
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek$(LEX_DIR)Gen/HsLexerGen: $(LEX_DIR)Gen/*.hs $(LEX_DIR)Spec/*.hs \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek -i$(PFE_TOOLDIR)/base/tests/HbcLibraries \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek -i$(LEX_DIR) -i$(LEX_DIR)Gen -i$(LEX_DIR)Spec \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmekderived_sources += Haskell/PreludeString.hs $(LEX_DIR)/HsLex.hs \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekAPPENDPRELUDESTRING = utils/appendHaskellPreludeString \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek## rule for appendHaskellPreludeString
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekHaskell/PreludeString.hs: Haskell/PreludeString.append.hs \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek $(APPENDPRELUDESTRING) < $< > $@
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekAst_Haskell_files = HsDeclStruct HsExpStruct HsFieldsStruct \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek HsGuardsStruct HsKindStruct HsPatStruct HsTypeStruct HsAssocStruct \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek HsModule HsName HsLiteral HsIdent
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek#Ti_Haskell_files = TiTypes TiKinds TiDecorate TiInstanceDB
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek#Ti_Prop_files = property/TI/TiPropDecorate property/syntax/PropSyntaxRec
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart PoetteringOther_PFE_files = property/AST/HsPropStruct base/defs/PNT \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering base/defs/UniqueNames base/Modules/TypedIds base/Modules/Ents \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering base/parse2/SourceNames base/syntax/SyntaxRec \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(addprefix $(PFE_TOOLDIR)/base/AST/, $(Ast_Haskell_files)) \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(addprefix $(PFE_TOOLDIR)/, $(Other_PFE_files)))
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering## rule for ATC generation
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringHaskell/ATC_Haskell.der.hs: $(Haskell_files) $(GENRULES)
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(GENRULECALL) -i Haskell.BaseATC -o $@ $(Haskell_files)
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poetteringhs_der_files += Haskell/TiATC.hs Haskell/TiDecorateATC.hs Haskell/TiPropATC.hs
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering### Profiling (only for debugging)
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering### Attention every module must be compiled with profiling or the linker
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering### cannot link the various .o files properly. So after switching on
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering### Profiling, do an 'gmake real_clean; gmake'
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering### Comment in the following line for switching on profiling.
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart Poettering#HC_PROF = -prof -auto-all -fignore-asserts
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringHC_OPTS = $(HC_FLAGS) $(HC_INCLUDE) $(HC_PACKAGE) $(PFE_FLAGS) $(HC_PROF) \
1a40a3393e904fe4683f6d2b2450cfbd94a34000Zbigniew Jędrzejewski-Szmek####################################################################
d200735e13c52dcfe36c0e066f9f6c2fbfb85a9cMichal Schmidt## sources for hets
693eb9a2d42d71445dad273a76e2470199d1dc5aLennart Poetteringnon_sources = Common/LaTeX_maps.svmono.hs CspCASL/Main.hs \
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart Poettering Common/CaslLanguage.hs ./Test.hs Static/LogicStructured.hs
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbierisources = hets.hs $(filter-out $(non_sources), \
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbieri $(wildcard $(addsuffix /[A-Z]*hs, $(SOURCE_PATHS))))
c1663b9daf5a43425e54bbe3daf6b10e64578f80Lennart Poetteringdrifted_files = Syntax/AS_Architecture.hs Syntax/AS_Library.hs \
b850b06e1efcc7e27cfd785759a3a913ac9ed196Kay Sievers Common/AS_Annotation.hs CASL/AS_Basic_CASL.hs Syntax/AS_Structured.hs \
235c6e628199221b7885f159367614b7105547cfJohn Modal/AS_Modal.hs CoCASL/AS_CoCASL.hs COL/AS_COL.hs CASL_DL/AS_CASL_DL.hs\
03a170c03cd4a09721369ece48affb70d66c6b90Kay Sieversatc_files = Common/AS_Annotation.der.hs Common/DefaultMorphism.hs \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek Syntax/AS_Structured.der.hs Syntax/AS_Architecture.der.hs \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek Common/GlobalAnnotations.hs Syntax/AS_Library.der.hs \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek Logic/Prover.hs #Common/Id.hs Common/Result.hs OWL_DL/AS.hs
9e7adc3ae1133fa08a468768a490812299fad030Lucas De Marchiatc_der_files = $(foreach file, $(atc_files), \
9e7adc3ae1133fa08a468768a490812299fad030Lucas De Marchi ATC/$(basename $(basename $(notdir $(file)))).der.hs)
39c4ead2323b45bbe9866e0f97fd8dcfb8a0bedeZbigniew Jędrzejewski-SzmekATC/Result.der.hs: Common/Result.hs $(GENRULES)
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekATC/AS_Annotation.der.hs: Common/AS_Annotation.der.hs $(GENRULES)
ccd06097c79218f7d5ea4c21721bbcbc7c467dcaZbigniew Jędrzejewski-SzmekATC/DefaultMorphism.der.hs: Common/DefaultMorphism.hs $(GENRULES)
de0671ee7fe465e108f62dcbbbe9366f81dd9e9aZbigniew Jędrzejewski-SzmekATC/AS_Structured.der.hs: Syntax/AS_Structured.der.hs $(GENRULES)
de0671ee7fe465e108f62dcbbbe9366f81dd9e9aZbigniew Jędrzejewski-Szmek $(GENRULECALL) -i ATC.AS_Annotation -i ATC.Grothendieck -o $@ $<
de0671ee7fe465e108f62dcbbbe9366f81dd9e9aZbigniew Jędrzejewski-SzmekATC/AS_Architecture.der.hs: Syntax/AS_Architecture.der.hs $(GENRULES)
ccd06097c79218f7d5ea4c21721bbcbc7c467dcaZbigniew Jędrzejewski-Szmek $(GENRULECALL) -i ATC.AS_Structured -o $@ $<
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekATC/AS_Library.der.hs: Syntax/AS_Library.der.hs $(GENRULES)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek $(GENRULECALL) -i ATC.AS_Architecture -o $@ $<
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekATC/GlobalAnnotations.der.hs: Common/GlobalAnnotations.hs $(GENRULES)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek $(GENRULECALL) -i ATC.AS_Annotation -o $@ $<
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekATC/Prover.der.hs: Logic/Prover.hs $(GENRULES)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek $(GENRULECALL) -x ProverTemplate -i ATC.AS_Annotation -o $@ $<
be8737ae386166d2f279767ac87b226204c0de7eFilipe BrandenburgerCASL_files = CASL/Sublogic.hs CASL/Morphism.hs CASL/Sign.hs \
be8737ae386166d2f279767ac87b226204c0de7eFilipe BrandenburgerHasCASL_files = Common/Prec.hs HasCASL/As.hs HasCASL/Le.hs HasCASL/Sublogic.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekModal_files = Modal/AS_Modal.hs Modal/ModalSign.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekConstraintCASL_files = ConstraintCASL/AS_ConstraintCASL.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekCoCASL_files = CoCASL/AS_CoCASL.hs CoCASL/CoCASLSign.hs CoCASL/Sublogic.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekCOL_files = COL/AS_COL.hs COL/COLSign.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekCspCASL_files = CspCASL/AS_CSP_CASL.hs CspCASL/SignCSP.hs
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekCASL_DL_files = CASL_DL/AS_CASL_DL.hs CASL_DL/Sign.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmekatc_logic_files = $(foreach logic, $(logics), $(logic)/ATC_$(logic).der.hs)
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmekgenerated_rule_files = $(atc_der_files) $(atc_logic_files)
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmekgendrifted_files = $(patsubst %.der.hs, %.hs, $(generated_rule_files))
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmekinline_axiom_files = Comorphisms/CASL2PCFOL.hs Comorphisms/PCFOL2CFOL.hs \
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmek Comorphisms/Modal2CASL.hs Comorphisms/CASL2TopSort.hs \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek Comorphisms/CASL2SubCFOL.hs CASL_DL/PredefinedSign.hs
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmekgen_inline_axiom_files = $(patsubst %.hs,%.inline.hs, $(inline_axiom_files))
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmekderived_sources += $(drifted_files) Driver/Version.hs $(happy_files) \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek $(inline_axiom_files) Modal/ModalSystems.hs $(hs_der_files) \
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek OWL_DL/ReadWrite.hs ConstraintCASL/AS_ConstraintCASL.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek# sources that have {-# OPTIONS -cpp #-}
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmekcpp_sources = Common/DynamicUtils.hs \
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek Common/Lib/Set.hs Common/Lib/Map.hs ATC/Set.hs\
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek SPASS/Logic_SPASS.hs GUI/Utils.hs Driver/WriteFn.hs \
afea26ad7d406d8b6c95d2642cb5a1d807b87546Lennart Poettering Comorphisms/LogicList.hs Comorphisms/LogicGraph.hs \
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers Comorphisms/KnownProvers.hs hets.hs $(happy_files)
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers# unused, remove when header files are gone
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sieversgenrule_header_files = $(wildcard ATC/*.header.hs)
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Bieblnondoc_sources = $(wildcard utils/DrIFT-src/*.hs) \
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Biebl $(cpp_sources) $(pfe_sources) $(gen_inline_axiom_files) \
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers $(genrule_header_files) $(generated_rule_files) \
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers $(PFE_TOOLDIR)/property/parse2/Parser/PropParser.hspp \
fba1ea06bb5b653e9eb0cc1b6004af8da273a4abShawn Landden Haskell/PreludeString.append.hs Haskell/ProgramaticaPrelude.hs \
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poetteringhspp_sources = $(patsubst %.hs, %.hspp, $(cpp_sources))
4db17f291c627c885de668200ff8cce2e57c933fZbigniew Jędrzejewski-Szmek# this variable holds the modules that should be documented
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekdoc_sources = $(filter-out $(nondoc_sources), $(sources) $(hspp_sources))
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmektax_sources = Taxonomy/AbstractGraphView.hs Taxonomy/MMiSSOntology.hs \
a8348796c0d39435b1c3d85ce6e95dad1ac85fecLennart Poettering Taxonomy/MMiSSOntologyGraph.hs Taxonomy/OntoParser.hs
3b794314149e40afaf3c456285e1e529747b6560Holger Schurigtax_objects = $(patsubst %.hs, %.o, $(tax_sources))
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek####################################################################
75616a1332aff00d27db713cda3bd93c508a5b59Zbigniew Jędrzejewski-Szmek.PHONY : all hets-opt hets-optimized clean o_clean real_clean bin_clean \
6589d0dba2b1ccf2406db527c2c1b51c7143e117Jean-André Santoni distclean check capa hacapa wrap isa h2h h2hf clean_genRules genRules \
75616a1332aff00d27db713cda3bd93c508a5b59Zbigniew Jędrzejewski-Szmek taxonomy count doc apache_doc post_doc4apache fromKif \
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek derivedSources install_hets install release cgi patch ghci
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek.SECONDARY : %.hs %.d $(generated_rule_files) $(gen_inline_axiom_files)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekhets: $(sources) $(derived_sources)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(HC) --make -o $@ hets.hs $(HC_OPTS)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekhets-optimized: $(derived_sources)
a8348796c0d39435b1c3d85ce6e95dad1ac85fecLennart Poettering $(HC) --make -O -o hets hets.hs $(HC_OPTS)
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(HC) -o hets $(HC_OPTS) $(objects)
4b357e15876b730343db08719c877fdb45b6ad42Michael Marineau ghc --make GUI/hets_cgi.hs -o $@ $(HC_INCLUDE) \
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek###############################
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek### TAGS files for (x)emacs
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek# load them with "M-x" "visit-tags-table" from
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek# use "M-." to search for a tag
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek# !!Beware this is somewhat instable, because it uses an absolute path!!
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek /home/ger/linux/ghc-5.04.2/bin/i386-unknown-linux/hasktags \
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen $(sources); mv TAGS $@; mv tags hetcats.tags
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen @echo 'File : Maintainer' > $@
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen 'foreach my $$f (@ARGV) { open I, "<$$f"; \
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen print "$$f :"; while (<I>) \
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen { if(m,^\s*Maintainer\s*:\s*(.*)$$,o) { \
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen print " $$1" ; last} }; print "\n"; close I; }' \
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen###############################
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen### count lines of code
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen###############################
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen### Documentation via haddock
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen# generate haddock documentation with links to sources
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen# the interface treatment is stolen from uni/mk/suffix.mk
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner HINTERFACES0=`find docs/www -name '*.haddock' \
70d8320978dcbce022d9acbb953a10a7aca049abDavid Strauss $(HADDOCK) -o docs -h -v -s ../%F $$HINTERFACES \
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner -t 'Hets - the Heterogeneous Tool Set' \
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen# sources are not copied here
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier###############################
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier### release management
17df7223be064b1542dbe868e3b35cca977ee639Lennart PoetteringderivedSources: $(derived_sources) $(hspp_sources)
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier (cd utils/DrIFT-src; $(HC) --make DrIFT.hs -o ../DrIFT && \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier $(HC) --make -i../DrIFT-src -i../.. $(HC_WARN) \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier GenerateRules.hs -o ../genRules && strip ../genRules)
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu# "hssource" for ghc-5.04.2
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu $(HC) --make utils/InlineAxioms/InlineAxioms.hs $(HC_WARN) $(HC_PROF) \
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu cvs -d :pserver:cvsread@cvs-agbkb.informatik.uni-bremen.de:/repository\
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering if [ -d ../programatica ] ; then \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering ln -s ../../programatica/tools programatica/tools ; fi
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering (cd HetCATS; $(MAKE) derivedSources; $(MAKE) clean; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering find . -name CVS -o -name \*.o -o -name \*.hi | xargs $(RM) -r; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering cp -p hets $(INSTALLDIR)/versions/hets-`cat version_nr`
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering ln -s versions/hets-`cat version_nr` hets; $(RM) version_nr)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering#############################
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering### ATC DrIFT-rule generation
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart PoetteringCASL/ATC_CASL.der.hs: $(CASL_files) $(GENRULES)
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart Poettering $(GENRULECALL) -i ATC.GlobalAnnotations -o $@ $(CASL_files)
591622d7efbc828f00f190d91b6608148b967ff5Lennart PoetteringHasCASL/ATC_HasCASL.der.hs: $(HasCASL_files) $(GENRULES)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(HasCASL_files)
56cf987fe74270bde4e16c7ec9e0414a9030723bDaniel J WalshIsabelle/ATC_Isabelle.der.hs: $(Isabelle_files) $(GENRULES)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(Isabelle_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererModal/ATC_Modal.der.hs: $(Modal_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(Modal_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererConstraintCASL/ATC_ConstraintCASL.der.hs: $(ConstraintCASL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(ConstraintCASL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererCASL_DL/ATC_CASL_DL.der.hs: $(CASL_DL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CASL_DL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererCoCASL/ATC_CoCASL.der.hs: $(CoCASL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CoCASL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(COL_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian RodríguezCspCASL/ATC_CspCASL.der.hs: $(CspCASL_files) $(GENRULES)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CspCASL_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian RodríguezSPASS/ATC_SPASS.der.hs: $(SPASS_files) $(GENRULES)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(SPASS_files)
5ec6b15b65304d94dc1c8cbad05c8b996b470d3aKay SieversOWL_DL/ATC_OWL_DL.der.hs: $(OWL_DL_files) $(GENRULES)
56cf987fe74270bde4e16c7ec9e0414a9030723bDaniel J Walsh $(GENRULECALL) -i ATC.AS_Annotation -i OWL_DL.ReadWrite \
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(RM) $(generated_rule_files) $(gendrifted_files) $(hspp_sources) \
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez###############
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek### removes *.hi and *.o in all include directories
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek (cd $$p ; $(RM) *.hi *.o) ; done
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers### remove binaries
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### additionally removes the library files
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### additionally removes generated files not in the CVS tree
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(RM) Modal/GeneratePatterns.inline.hs utils/appendHaskellPreludeString
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(RM) utils/DrIFT utils/genRules $(INLINEAXIOMS)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering####################################################################
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### test targets
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering####################################################################
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### a parser to test annotation parser and Id parsers
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart PoetteringCommon/test_parser: Common/test_parser.hs Common/AS_Annotation.der.hs
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### interactive
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### christian's target
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### CASL parser
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart PoetteringCASL/fromKif: CASL/fromKif.hs Common/*.hs CASL/*.hs
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### CASL parser
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart PoetteringCASL/capa: CASL/capa.hs Common/*.hs CASL/*.hs
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### HasCASL parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHasCASL/hacapa: HasCASL/hacapa.hs Common/*.hs HasCASL/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell wrapper parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHaskell/wrap: Haskell/wrap.hs Common/*.hs Haskell/Wrapper.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Isar parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringIsabelle/isa: Isabelle/isa.hs Common/*.hs Isabelle/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell analysis
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHaskell/hana: Haskell/hana.hs Haskell/HatAna.hs Haskell/PreludeString.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell to Isabelle-HOLCF translation
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringToHaskell/h2hf: ToHaskell/h2hf.hs ToHaskell/*.hs Haskell/*.hs \
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### HasCASL to Haskell translation
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringToHaskell/h2h: ToHaskell/h2h.hs ToHaskell/*.hs Haskell/*.hs HasCASL/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### HetCASL parser
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### HetCASL parser
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### ATC test system
d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9eKay Sieversatctest2: ATC/ATCTest2.hs Common/SimpPretty.hs Common/ATerm/*.hs \
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kok### ATerm.Lib test system
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kokatermlibtest: Common/ATerm/ATermLibTest.hs Common/SimpPretty.hs \
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kokhatermdiff: Common/ATerm/ATermDiffMain.hs Common/SimpPretty.hs \
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### OWL_DL test target
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringOWL_DL/readAStest: OWL_DL/ToHaskellAS.hs Common/ATerm/*.hs \
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering### HetCASL with dev graph
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringTaxonomy/taxonomyTool: Taxonomy/taxonomyTool.hs $(tax_sources)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering### run tests in other directories
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering for i in $(TESTDIRS); do $(MAKE) -C $$i check; done
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering####################################################################
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering## Preparing the version of HetCATS
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringDriver/Version.hs: Driver/Version.in version_nr
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(PERL) utils/build_version.pl version_nr < Driver/Version.in > $@
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering## two hardcoded dependencies for a correct generation of Version.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringDriver/Options.hs Driver/WriteFn.hs Driver/ReadFn.hs: Driver/Version.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering####################################################################
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering## rules for DrIFT
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering echo "{-# OPTIONS -w #-}" > $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering ($(DRIFT_ENV); export DERIVEPATH; $(DRIFT) $< > $@)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## rules for inlineAxioms
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## rule for cpp and haddock
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## compiling rules for object and interface files
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## compiling rules for dependencies
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -M $< $(HC_OPTS) -optdep-f -optdep$@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -M $< $(HC_OPTS) -optdep-f -optdep$@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## generate the inline file for the predefined CASL_DL sign
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering# Warning: Don't change the order of the depencies!!
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering CASL_DL/PredefinedSign.inline.hs.in utils/appendHaskellPreludeString \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering utils/appendHaskellPreludeString CASL_DL/PredDatatypes.het \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering < CASL_DL/PredefinedSign.inline.hs.in > $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering echo " )" >> $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart PoetteringCASL_DL/PredDatatypes.het: utils/transformLibAsBasicSpec.pl \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering## rule for Modal/ModalSystems.hs needed for ModalLogic Translation
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering# uses intransparently utils/outlineAxioms
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart PoetteringModal/ModalSystems.hs: Modal/GeneratePatterns.inline.hs.in \