Makefile revision 4561227a776bdf0ab679b19fb92f1eaaed8786f7
fb0951b02ebf51a93acf12721d8857d31ce57ba3Lennart Poettering# Makefile
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# $Header$
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2005
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers# Year: 2004
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# This Makefile will compile the new hets system and provides also
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# targets for test programs during implementation phases.
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering# !!! Note: This makefile is written for GNU make !!!
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering# (gmake on solaris)
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poetteringall: patch hets
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering####################################################################
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart Poettering## Some varibles, which control the compilation
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering
5430f7f2bc7330f3088b894166bf3524a067e3d8Lennart PoetteringINCLUDE_PATH = hxt
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart PoetteringCLEAN_PATH = . \
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
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardón# the 'replacing spaces' example was taken from the (GNU) Make info manual
4e949c11a1df4547d5f102e4131e07b026369cd7Javier Jardónempty =
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poetteringspace = $(empty) $(empty)
78a825f216d39ee0295b00647b059d45467e1d02Kay Sievers
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
4db6d587c37c0357d20c79bf1a7c9afd4c7ced61Kay SieversDRIFT_ENV = \
907dd1953b7517534d646f5b2777780020c896e2Kay Sievers DERIVEPATH=.:$(GHC_IMPORTS):$(GHC5):$(subst $(space),:,$(PFE_PATHS))
eb7bbee6cd182d5c4eb1e1180631c35158f59379Kay Sievers
6aad7f2cd75c88f990c7857bb173b3e8d0faee0fUmut Tezduyar Lindskog# override on commandline for other architectures
4196a3ead3cfb823670d225eefcb3e60e34c7d95Kay SieversINSTALLDIR = \
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers /home/www/agbkb/forschung/formal_methods/CoFI/hets/`utils/sysname.sh`
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering
22be093ffb403a1c474037939ca9b88b1ee39f77Lennart PoetteringDRIFT_deps = utils/DrIFT-src/*hs
d59d0a2b4b41a75eaf618b26b8f8bd1e17de7e2bceeGENERATERULES_deps = utils/GenerateRules/*hs $(DRIFT_deps) Common/Utils.hs
d59d0a2b4b41a75eaf618b26b8f8bd1e17de7e2bceeINLINEAXIOMS_deps = utils/InlineAxioms/InlineAxioms.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 Brandenburger
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerHC = ghc
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerPERL = perl
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerHAPPY = happy -sga
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerGENRULES = utils/genRules
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerGENRULECALL = $(GENRULES) -r Typeable -r ShATermConvertible \
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe Brandenburger -i Common.DynamicUtils -i Common.ATerm.Lib
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerDRIFT = utils/DrIFT
f15515b5e6a9ebe95c938cc670df6e576fcf9176Filipe BrandenburgerINLINEAXIOMS = utils/outlineAxioms
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe BrandenburgerHADDOCK = haddock
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe BrandenburgerCPPP = cpp
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe Brandenburger
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Nocera# remove -fno-warn-orphans for older ghcs and add -ifgl
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe BrandenburgerHC_WARN = -Wall -fno-warn-orphans
2f96919bcdd0978164c801b21e053fb3b31e8bacFilipe BrandenburgerHC_FLAGS = \
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 Nocera
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien NoceraHC_INCLUDE = $(addprefix -i, $(INCLUDE_PATH))
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Nocera
1c7dde3e475978c569a982d65fd86d4b4e3caad8Bastien Noceralogics = CASL HasCASL Isabelle Modal CoCASL COL CspCASL CASL_DL SPASS OWL_DL ConstraintCASL
e9da3678fcfc774b325dc1eaa054d0e00028a1fcLennart Poettering
e9da3678fcfc774b325dc1eaa054d0e00028a1fcLennart PoetteringTESTTARGETS += test_parser hetpa hetana Test.o wrap isa fromKif \
e9da3678fcfc774b325dc1eaa054d0e00028a1fcLennart Poettering atermlibtest hatermdiff atctest atctest2
3ce4fad8f548db9edb19869ea540e3192d2123f4Kay Sievers
f975e971accc4d50c73ae53167db3df7a7099cf2Lennart PoetteringUNI_PACKAGE_CONF = $(wildcard ../uni/uni-package.conf)
e9da3678fcfc774b325dc1eaa054d0e00028a1fcLennart Poetteringifneq ($(strip $(UNI_PACKAGE_CONF)),)
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart PoetteringHC_PACKAGE = -package-conf $(UNI_PACKAGE_CONF) -package uni-davinci \
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering -package uni-server -DUNI_PACKAGE
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers
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 Suominen ../uni/reactor ../uni/util ../uni/posixutil
b51fc639f01ee6194af3e7e944a79accce474fe1Dave Reisner
2d0efdf1af5ff77441228854343c61d42a89840cSamuli Suominenuni_sources = $(wildcard $(addsuffix /haddock/*.hs, $(uni_dirs))) \
96ede2601f27cd5fe52eed96b873bef55cd0ce23Lennart Poettering $(wildcard ../uni/htk/haddock/*/*.hs)
2d0efdf1af5ff77441228854343c61d42a89840cSamuli SuominenTESTTARGETS += hetdg OWL_DL/readAStest taxonomy
edeb68c53f1cdc452016b4c8512586a70b1262e3Tom Gundersenendif
2d0efdf1af5ff77441228854343c61d42a89840cSamuli Suominen
7801356442578ff6e1c65844eb9e65c819af4660Zbigniew Jędrzejewski-Szmek### list of directories to run checks in
446883528524429283626208928b51f49f28f810Lennart PoetteringTESTDIRS += Common CASL HasCASL test
446883528524429283626208928b51f49f28f810Lennart Poettering
4acbce79798347cddf1e1d42e9be571e0a041873Zbigniew Jędrzejewski-SzmekPFE_TOOLDIR = $(wildcard ../programatica/tools)
4acbce79798347cddf1e1d42e9be571e0a041873Zbigniew Jędrzejewski-Szmekifneq ($(strip $(PFE_TOOLDIR)),)
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-Szmek
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-Szmek
d66ee73a3dd7b5433fc0da3125bbdff740de7745Zbigniew Jędrzejewski-SzmekLEX_DIR = $(PFE_TOOLDIR)/base/parse2/Lexer
d66ee73a3dd7b5433fc0da3125bbdff740de7745Zbigniew Jędrzejewski-Szmek
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sieverspatch: Haskell/Programatica.patch
ac714a78fdca481488d88f84b6332d28083a4511Martin Jansa patch -usNlp0 -d $(PFE_TOOLDIR) -i `pwd`/$< \
ac714a78fdca481488d88f84b6332d28083a4511Martin Jansa base/parse2/NumberNames.hs || exit 0
b62cfcea00862ccbf0e5e297f8a339f70987edefMichael Biebl
b62cfcea00862ccbf0e5e297f8a339f70987edefMichael Biebl$(LEX_DIR)/HsLex.hs: $(LEX_DIR)Gen/HsLexerGen
b62cfcea00862ccbf0e5e297f8a339f70987edefMichael Biebl echo "{-# OPTIONS -w #-}" > $@
9a60da2834074d970ca063c210fe9d2f05c70532Thierry Reding $< >> $@
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek$(LEX_DIR)Gen/HsLexerGen: $(LEX_DIR)Gen/*.hs $(LEX_DIR)Spec/*.hs \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek $(LEX_DIR)/HsTokens.hs
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek $(HC) --make -O -package data \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek -i$(PFE_TOOLDIR)/base/tests/HbcLibraries \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek -i$(PFE_TOOLDIR)/base/lib \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek -i$(LEX_DIR) -i$(LEX_DIR)Gen -i$(LEX_DIR)Spec \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek $@.hs -o $@
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek strip $@
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmeklogics += Haskell
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmekderived_sources += Haskell/PreludeString.hs $(LEX_DIR)/HsLex.hs \
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek $(LEX_DIR)Gen/HsLexerGen
732bfe09aeffc3cd78b80ee9e20c9c3babd944d6Zbigniew Jędrzejewski-Szmek
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekAPPENDPRELUDESTRING = utils/appendHaskellPreludeString \
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek Haskell/ProgramaticaPrelude.hs
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek
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-Szmek $(APPENDPRELUDESTRING) < $< > $@
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek chmod 444 $@
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek
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
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek#files in base/TI/
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek#Ti_Haskell_files = TiTypes TiKinds TiDecorate TiInstanceDB
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek#Ti_Prop_files = property/TI/TiPropDecorate property/syntax/PropSyntaxRec
eb2e280f9c59b66965c9316eadc4c113a13ca744Lucas De Marchi
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 \
27765dfc7a32d790badb29e6498b34edb0b60c33Lennart Poettering property/syntax/PropSyntaxStruct
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering
780040dc2a4b08a2c1fe5bd8db3a70e966c2acb3Kay SieversHaskell_files = $(addsuffix .hs, \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(addprefix $(PFE_TOOLDIR)/base/AST/, $(Ast_Haskell_files)) \
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(addprefix $(PFE_TOOLDIR)/, $(Other_PFE_files)))
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering## rule for ATC generation
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringHaskell/ATC_Haskell.der.hs: $(Haskell_files) $(GENRULES)
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering $(GENRULECALL) -i Haskell.BaseATC -o $@ $(Haskell_files)
03930e48636e86ad84946253ca2bf4f91deeb645Lennart Poettering
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poetteringhs_der_files += Haskell/TiATC.hs Haskell/TiDecorateATC.hs Haskell/TiPropATC.hs
693eb9a2d42d71445dad273a76e2470199d1dc5aLennart Poettering
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringTESTDIRS += ToHaskell Haskell/test
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringTESTTARGETS += hana h2hf
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poetteringendif
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering
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
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart Poettering
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringHC_OPTS = $(HC_FLAGS) $(HC_INCLUDE) $(HC_PACKAGE) $(PFE_FLAGS) $(HC_PROF) \
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart Poettering -DCASLEXTENSIONS
8745297f9853c4a17bac69e1b7e652fe81bc1940Lennart Poettering
1a40a3393e904fe4683f6d2b2450cfbd94a34000Zbigniew Jędrzejewski-Szmek####################################################################
d200735e13c52dcfe36c0e066f9f6c2fbfb85a9cMichal Schmidt## sources for hets
213298fb822258bb69c6b85b7c8d7f019fd2306aLennart Poettering
693eb9a2d42d71445dad273a76e2470199d1dc5aLennart Poetteringnon_sources = Common/LaTeX_maps.svmono.hs CspCASL/Main.hs \
be1a67d9d63bfdd4a5f8ba9cfc804030f10f5833Lennart Poettering Common/CaslLanguage.hs ./Test.hs Static/LogicStructured.hs
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poettering
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart PoetteringSOURCE_PATHS = $(CLEAN_PATH)
9f64229f9ca69f5652b238a67531432e56108bd6Zbigniew Jędrzejewski-Szmek
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbierisources = hets.hs $(filter-out $(non_sources), \
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbieri $(wildcard $(addsuffix /[A-Z]*hs, $(SOURCE_PATHS))))
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbieri
5a45a93627609451784a04366cfa1150d32611d1Lennart Poettering#endif
c1663b9daf5a43425e54bbe3daf6b10e64578f80Lennart Poettering
aca33b078cd32c5416a7fa3d5020a5d461c130eeCristian Rodríguezobjects = $(sources:%.hs=%.o)
2a4d1ec1520c926b0160efe14142634e164ddc30Cristian Rodríguez
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 \
b850b06e1efcc7e27cfd785759a3a913ac9ed196Kay Sievers HasCASL/As.hs ATC/DevGraph.hs \
235c6e628199221b7885f159367614b7105547cfJohn Modal/AS_Modal.hs CoCASL/AS_CoCASL.hs COL/AS_COL.hs CASL_DL/AS_CASL_DL.hs\
b850b06e1efcc7e27cfd785759a3a913ac9ed196Kay Sievers ConstraintCASL/AS_ConstraintCASL.hs\
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek $(gendrifted_files)
5a45a93627609451784a04366cfa1150d32611d1Lennart Poettering
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
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-Szmek
9e7adc3ae1133fa08a468768a490812299fad030Lucas De Marchiatc_der_files = $(foreach file, $(atc_files), \
9e7adc3ae1133fa08a468768a490812299fad030Lucas De Marchi ATC/$(basename $(basename $(notdir $(file)))).der.hs)
9b85fc6a89386582bfe792dba881800b0a093839Gustavo Sverzut Barbieri
9d2d0fe1e3f28a639c26b62391f79cfd1450d91bEvangelos FoutrasATC/Id.der.hs: Common/Id.hs $(GENRULES)
5a45a93627609451784a04366cfa1150d32611d1Lennart Poettering $(GENRULECALL) -o $@ $<
5a45a93627609451784a04366cfa1150d32611d1Lennart Poettering
39c4ead2323b45bbe9866e0f97fd8dcfb8a0bedeZbigniew Jędrzejewski-SzmekATC/Result.der.hs: Common/Result.hs $(GENRULES)
2a4d1ec1520c926b0160efe14142634e164ddc30Cristian Rodríguez $(GENRULECALL) -o $@ $<
39c4ead2323b45bbe9866e0f97fd8dcfb8a0bedeZbigniew Jędrzejewski-Szmek
ae0ceefc2f432bc1068889fcff53d929eca8a3c4Zbigniew Jędrzejewski-SzmekATC/AS_Annotation.der.hs: Common/AS_Annotation.der.hs $(GENRULES)
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering $(GENRULECALL) -o $@ $<
ccd06097c79218f7d5ea4c21721bbcbc7c467dcaZbigniew Jędrzejewski-Szmek
ccd06097c79218f7d5ea4c21721bbcbc7c467dcaZbigniew Jędrzejewski-SzmekATC/DefaultMorphism.der.hs: Common/DefaultMorphism.hs $(GENRULES)
1c231f56482546725c4dbd3303f70300bd3c63e9Lennart Poettering $(GENRULECALL) -o $@ $<
de0671ee7fe465e108f62dcbbbe9366f81dd9e9aZbigniew Jędrzejewski-Szmek
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-Szmek
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-Szmek
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-Szmek
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekATC/GlobalAnnotations.der.hs: Common/GlobalAnnotations.hs $(GENRULES)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek $(GENRULECALL) -i ATC.AS_Annotation -o $@ $<
32dcef3ab1eb91ee469c3246ef859578dccd8a45Zbigniew Jędrzejewski-Szmek
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekATC/Prover.der.hs: Logic/Prover.hs $(GENRULES)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek $(GENRULECALL) -x ProverTemplate -i ATC.AS_Annotation -o $@ $<
be8737ae386166d2f279767ac87b226204c0de7eFilipe Brandenburger
be8737ae386166d2f279767ac87b226204c0de7eFilipe BrandenburgerCASL_files = CASL/Sublogic.hs CASL/Morphism.hs CASL/Sign.hs \
be8737ae386166d2f279767ac87b226204c0de7eFilipe Brandenburger CASL/AS_Basic_CASL.der.hs
be8737ae386166d2f279767ac87b226204c0de7eFilipe Brandenburger
be8737ae386166d2f279767ac87b226204c0de7eFilipe BrandenburgerHasCASL_files = Common/Prec.hs HasCASL/As.hs HasCASL/Le.hs HasCASL/Sublogic.hs
be8737ae386166d2f279767ac87b226204c0de7eFilipe Brandenburger
be8737ae386166d2f279767ac87b226204c0de7eFilipe BrandenburgerIsabelle_files = Isabelle/IsaSign.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek
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-Szmek
747cf8cdf61cdad068c727e42eac699f2505ae77Zbigniew Jędrzejewski-SzmekCASL_DL_files = CASL_DL/AS_CASL_DL.hs CASL_DL/Sign.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-SzmekSPASS_files = SPASS/Sign.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek
25ee45f9953c121fc26a54a85ad7bb3a3180152bMichael BieblOWL_DL_files = OWL_DL/Sign.hs
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmekatc_logic_files = $(foreach logic, $(logics), $(logic)/ATC_$(logic).der.hs)
c937e0d5c579863677e0fcb5508517f7714c332dZbigniew Jędrzejewski-Szmek
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmekgenerated_rule_files = $(atc_der_files) $(atc_logic_files)
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmek
1864b0e39505cd44a98eee61c97916b86491c0b4Zbigniew Jędrzejewski-Szmekgendrifted_files = $(patsubst %.der.hs, %.hs, $(generated_rule_files))
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek
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-Szmek
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmekgen_inline_axiom_files = $(patsubst %.hs,%.inline.hs, $(inline_axiom_files))
a6c0b31d509f76023d8efbcd5e912863c8fb254cZbigniew Jędrzejewski-Szmek
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
f2ec0646aba7c6703a6c79603957e805b74c3befZbigniew Jędrzejewski-Szmek
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 Isabelle/CreateTheories.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)
4b357e15876b730343db08719c877fdb45b6ad42Michael Marineau
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers# unused, remove when header files are gone
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sieversgenrule_header_files = $(wildcard ATC/*.header.hs)
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Bieblnondoc_sources = $(wildcard utils/DrIFT-src/*.hs) \
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Biebl $(wildcard utils/DrIFT-src/*.lhs) \
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Biebl $(wildcard utils/GenerateRules/*.hs) \
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poettering $(wildcard utils/InlineAxioms/*.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 \
7959ff9914a6f3a59dbff95c199bcc540b70ac94Kay Sievers Modal/GeneratePatterns.inline.hs \
fba1ea06bb5b653e9eb0cc1b6004af8da273a4abShawn Landden CASL/CCC/FreeTypes.hs \
fba1ea06bb5b653e9eb0cc1b6004af8da273a4abShawn Landden Haskell/PreludeString.append.hs Haskell/ProgramaticaPrelude.hs \
fba1ea06bb5b653e9eb0cc1b6004af8da273a4abShawn Landden $(patsubst %.hs, %.der.hs, $(drifted_files))
85f19d825e7504676f3a80c78c1d9a7ec35a3b3fMichael Biebl
47be870bd83fb3719dffc3ee9348a409ab762a14Lennart Poetteringhspp_sources = $(patsubst %.hs, %.hspp, $(cpp_sources))
9388e99e208a6487b26dcbda86005ee9eba8d93dMichael Olbrich
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-Szmek
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmektax_sources = Taxonomy/AbstractGraphView.hs Taxonomy/MMiSSOntology.hs \
a8348796c0d39435b1c3d85ce6e95dad1ac85fecLennart Poettering Taxonomy/MMiSSOntologyGraph.hs Taxonomy/OntoParser.hs
9388e99e208a6487b26dcbda86005ee9eba8d93dMichael Olbrich
3b794314149e40afaf3c456285e1e529747b6560Holger Schurigtax_objects = $(patsubst %.hs, %.o, $(tax_sources))
5f381b355a95b953654e46ba3ccdc81bdec165eaLennart Poettering
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek####################################################################
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek### targets
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
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek.SECONDARY : %.hs %.d $(generated_rule_files) $(gen_inline_axiom_files)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekpatch:
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekhets: $(sources) $(derived_sources)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(HC) --make -o $@ hets.hs $(HC_OPTS)
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekhets-opt:
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(MAKE) distclean
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(MAKE) derivedSources
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(MAKE) clean
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek $(MAKE) hets-optimized
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmek
81577dc22887debaf9b19bf1034a2887fb9069c7Zbigniew Jędrzejewski-Szmekhets-optimized: $(derived_sources)
a8348796c0d39435b1c3d85ce6e95dad1ac85fecLennart Poettering $(HC) --make -O -o hets hets.hs $(HC_OPTS)
b237ef2cfac7ab0b33170809e8cb64628606207dTollef Fog Heen strip hets
a9b5b03212f9c854938483b8901e433c2ba6619bMichael Tremer
d1ab0ca07372649dad70a0348d75e394f254e1b6Lennart Poetteringhets-old: $(objects)
2270309471213a3c960543e523130627e9cb10e2Kay Sievers $(RM) $@
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(HC) -o hets $(HC_OPTS) $(objects)
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek
8114dedc5910d9a9cec702f6b6658551a0cd9edeChengwei Yangcgi:
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(MAKE) distclean
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(MAKE) derivedSources
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(MAKE) real_clean
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek $(MAKE) hets.cgi
ac6b760ceedd4b21921b6a682cf1479af3d3024fZbigniew Jędrzejewski-Szmek
2270309471213a3c960543e523130627e9cb10e2Kay Sievershets.cgi: $(sources) GUI/hets_cgi.hs
4b357e15876b730343db08719c877fdb45b6ad42Michael Marineau ghc --make GUI/hets_cgi.hs -o $@ $(HC_INCLUDE) \
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek $(HC_FLAGS) $(PFE_FLAGS) -O
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek strip hets.cgi
53e856e16ac37fe30b8bb59153ff69aad0fa9c27Zbigniew Jędrzejewski-Szmek
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# "HetCATS/hetcats.TAGS"
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-Szmekhetcats.TAGS: $(sources)
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
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersenhets_maintainers.txt: $(sources)
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen @echo 'File : Maintainer' > $@
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen @echo -n Generating $@ " "
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen @$(PERL) -e \
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 $(sources) >> $@
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen @echo " done"
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen###############################
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen### count lines of code
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersencount: $(sources)
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen wc -l $(sources)
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen###############################
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen### Documentation via haddock
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersendoc: docs/index.html
6aea6d10f460853111ca8744201ec8dade97de3cThomas H.P. Andersen
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
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersendocs/index.html: $(doc_sources)
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen $(RM) -r docs
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen mkdir docs
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen cp -r ../uni/www docs/www || mkdir docs/www
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner HINTERFACES0=`find docs/www -name '*.haddock' \
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner -printf "--read-interface=www/%P,%p "` ; \
a18535d9e138c525d0443ec9f30a90b3e2184686Tom Gundersen HINTERFACES=`echo $$HINTERFACES0 | \
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner $(PERL) -pe 's+/[^/]*.haddock,+,+g'` ; \
70d8320978dcbce022d9acbb953a10a7aca049abDavid Strauss $(HADDOCK) -o docs -h -v -s ../%F $$HINTERFACES \
e2ca86cf78f911a8be51f0224796e24883019139Dave Reisner -t 'Hets - the Heterogeneous Tool Set' \
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen -p Hets-Haddock-Prologue.txt $(doc_sources)
c4955740969d7ba8ba43b024bca1a0a5b56eb8e8Tom Gundersen
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen# sources are not copied here
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersenapache_doc:
e30431623a7d871da123cc37055ac49abf2c20eaTom Gundersen $(RM) -r docs
f553b3b1074151200187df916427a1468186435eAnders Olofsson cvs up -d ; echo "CVS exited with: " $$?
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(MAKE) hets-opt
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(MAKE) doc
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(MAKE) post_doc4apache
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(MAKE) o_clean
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(MAKE) hets.cgi
f553b3b1074151200187df916427a1468186435eAnders Olofsson
f553b3b1074151200187df916427a1468186435eAnders Olofssonpost_doc4apache:
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(RM) -r a-docs
f553b3b1074151200187df916427a1468186435eAnders Olofsson cp -r docs a-docs
f553b3b1074151200187df916427a1468186435eAnders Olofsson $(PERL) utils/post_process_docs.pl a-docs \
f553b3b1074151200187df916427a1468186435eAnders Olofsson 'Common.Lib.Map.html:Common.Lib._Map.html'
728beb28a713709f521d374c9f8f3da781969d26Tom Gundersen $(PERL) utils/post_process_docs.pl a-docs \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier 'Data.Map.html:Data._Map.html'
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier###############################
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier### release management
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier
17df7223be064b1542dbe868e3b35cca977ee639Lennart PoetteringderivedSources: $(derived_sources) $(hspp_sources)
17df7223be064b1542dbe868e3b35cca977ee639Lennart Poettering
17df7223be064b1542dbe868e3b35cca977ee639Lennart Poetteringutils/DrIFT: $(DRIFT_deps)
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier (cd utils/DrIFT-src; $(HC) --make DrIFT.hs -o ../DrIFT && \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier strip ../DrIFT)
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalierutils/genRules: $(GENERATERULES_deps)
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier (cd utils/GenerateRules; \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier $(HC) --make -i../DrIFT-src -i../.. $(HC_WARN) \
c0467cf387548dc98c0254f63553d862b35a84e5Ronny Chevalier GenerateRules.hs -o ../genRules && strip ../genRules)
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu# "hssource" for ghc-5.04.2
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu$(INLINEAXIOMS): $(INLINEAXIOMS_deps)
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu $(HC) --make utils/InlineAxioms/InlineAxioms.hs $(HC_WARN) $(HC_PROF) \
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu -package hssource -i../.. -o $(INLINEAXIOMS)
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu strip $(INLINEAXIOMS)
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassurelease:
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu $(RM) -r HetCATS
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu cvs -d :pserver:cvsread@cvs-agbkb.informatik.uni-bremen.de:/repository\
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu co -P HetCATS
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu $(RM) -r uni
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu if [ -d ../uni ] ; then ln -s ../uni uni ; fi
816115863962548a9a0d9fbfe429c7f8e685beacRoberto Sassu $(RM) -r programatica
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering if [ -d ../programatica ] ; then \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering mkdir programatica; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering ln -s ../../programatica/tools programatica/tools ; fi
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering (cd HetCATS; $(MAKE) derivedSources; $(MAKE) clean; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering cp Makefile Makefile.orig; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering cp ReleaseMakefile Makefile; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering ./clean.sh; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering find . -name CVS -o -name \*.o -o -name \*.hi | xargs $(RM) -r; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering $(RM) clean.*)
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering tar cvf HetCATS.tar HetCATS
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poetteringinstall-hets:
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering chmod g+w hets
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering cp -p hets $(INSTALLDIR)/versions/hets-`cat version_nr`
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering cp -p version_nr $(INSTALLDIR)
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering (cd $(INSTALLDIR); $(RM) hets; \
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering ln -s versions/hets-`cat version_nr` hets; $(RM) version_nr)
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poettering
77e68fa2f0bd018bab2621a31919bfaa6a6b0a35Lennart Poetteringinstall: hets-opt install-hets
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering#############################
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering### ATC DrIFT-rule generation
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering
3f8cc098d218525710e5cbad9adf37001d3b6060Jan EngelhardtgenRules: $(generated_rule_files)
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart Poettering
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart PoetteringCASL/ATC_CASL.der.hs: $(CASL_files) $(GENRULES)
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart Poettering $(GENRULECALL) -i ATC.GlobalAnnotations -o $@ $(CASL_files)
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart Poettering
591622d7efbc828f00f190d91b6608148b967ff5Lennart PoetteringHasCASL/ATC_HasCASL.der.hs: $(HasCASL_files) $(GENRULES)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(HasCASL_files)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering
56cf987fe74270bde4e16c7ec9e0414a9030723bDaniel J WalshIsabelle/ATC_Isabelle.der.hs: $(Isabelle_files) $(GENRULES)
591622d7efbc828f00f190d91b6608148b967ff5Lennart Poettering $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(Isabelle_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererModal/ATC_Modal.der.hs: $(Modal_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(Modal_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererConstraintCASL/ATC_ConstraintCASL.der.hs: $(ConstraintCASL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(ConstraintCASL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererCASL_DL/ATC_CASL_DL.der.hs: $(CASL_DL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CASL_DL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererCoCASL/ATC_CoCASL.der.hs: $(CoCASL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CoCASL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael SchererCOL/ATC_COL.der.hs: $(COL_files) $(GENRULES)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(COL_files)
eef65bf3ee6f73afa4a5de23ae3a794a279f30c0Michael Scherer
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian RodríguezCspCASL/ATC_CspCASL.der.hs: $(CspCASL_files) $(GENRULES)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(GENRULECALL) -i CASL.ATC_CASL -o $@ $(CspCASL_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian RodríguezSPASS/ATC_SPASS.der.hs: $(SPASS_files) $(GENRULES)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(GENRULECALL) -i ATC.AS_Annotation -o $@ $(SPASS_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez
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 -o $@ $(OWL_DL_files)
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguezclean_genRules:
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez $(RM) $(generated_rule_files) $(gendrifted_files) $(hspp_sources) \
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez Haskell/ATC_Haskell.der.hs
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez###############
45df1f2c9a7fee67b37f64ddd00adad5982844faCristian Rodríguez### clean up
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmekclean: bin_clean o_clean
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek### removes *.hi and *.o in all include directories
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmeko_clean:
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek for p in $(CLEAN_PATH) ; do \
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek (cd $$p ; $(RM) *.hi *.o) ; done
ad95fd1d2b9c6344864857c2ba7634fd87753f8eZbigniew Jędrzejewski-Szmek
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers### remove binaries
807e17f05e217b474af39503efb9503d81b12596Lennart Poetteringbin_clean:
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) hets
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) hets.cgi
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) test_parser
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) CASL/fromKif
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) CASL/capa
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) HasCASL/hacapa
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) Haskell/hana
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) Haskell/wrap
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) Isabelle/isa
807e17f05e217b474af39503efb9503d81b12596Lennart Poettering $(RM) ToHaskell/h2h
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) ToHaskell/h2hf
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) Syntax/hetpa
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) Static/hetana
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) GUI/hetdg
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) hetpa
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) hetana
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) hetdg
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) atctest2
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) atctest
d89c8fdf48c7bad5816b9f2e77e8361721f22517Zbigniew Jędrzejewski-Szmek $(RM) Common/annos
3b1a55e110ab387a8d213581983e20c0a63d7894Zbigniew Jędrzejewski-Szmek $(RM) Common/test_parser
3b1a55e110ab387a8d213581983e20c0a63d7894Zbigniew Jędrzejewski-Szmek $(RM) Taxonomy/taxonomyTool
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers $(RM) OWL_DL/readAStest
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### additionally removes the library files
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poetteringreal_clean: clean
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### additionally removes generated files not in the CVS tree
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poetteringdistclean: clean clean_genRules
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(RM) $(derived_sources)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(RM) Modal/GeneratePatterns.inline.hs utils/appendHaskellPreludeString
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(RM) utils/DrIFT utils/genRules $(INLINEAXIOMS)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering####################################################################
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### test targets
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering####################################################################
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### a parser to test annotation parser and Id parsers
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poetteringtest_parser: Common/test_parser
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart PoetteringCommon/test_parser: Common/test_parser.hs Common/AS_Annotation.der.hs
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### interactive
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poetteringghci: $(derived_sources)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(HC)i $(HC_OPTS)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### christian's target
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### CASL parser
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart PoetteringfromKif: CASL/fromKif
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
6a6751fe24bf456cf5c1efad785a4d11e78b42d0Lennart PoetteringCASL/fromKif: CASL/fromKif.hs Common/*.hs CASL/*.hs
812cce323db081634f37e4ec6d29f2b9328a3f52Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
812cce323db081634f37e4ec6d29f2b9328a3f52Lennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### CASL parser
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poetteringcapa: CASL/capa
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart PoetteringCASL/capa: CASL/capa.hs Common/*.hs CASL/*.hs
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering
5b6319dceedd81f3f1ce7eb70ea5defaef43bcecLennart Poettering### HasCASL parser
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievershacapa: HasCASL/hacapa
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHasCASL/hacapa: HasCASL/hacapa.hs Common/*.hs HasCASL/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell wrapper parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringwrap: Haskell/wrap
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHaskell/wrap: Haskell/wrap.hs Common/*.hs Haskell/Wrapper.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Isar parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringisa: Isabelle/isa
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringIsabelle/isa: Isabelle/isa.hs Common/*.hs Isabelle/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell analysis
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringhana: Haskell/hana
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringHaskell/hana: Haskell/hana.hs Haskell/HatAna.hs Haskell/PreludeString.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### Haskell to Isabelle-HOLCF translation
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringh2hf: ToHaskell/h2hf
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringToHaskell/h2hf: ToHaskell/h2hf.hs ToHaskell/*.hs Haskell/*.hs \
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering HasCASL/*.hs Isabelle/*.hs Common/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### HasCASL to Haskell translation
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringh2h: ToHaskell/h2h
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart PoetteringToHaskell/h2h: ToHaskell/h2h.hs ToHaskell/*.hs Haskell/*.hs HasCASL/*.hs
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poettering### HetCASL parser
5eda94dda25bccda928c4b33c790dbe748573a22Lennart Poetteringhetpa: Syntax/hetpa.hs Syntax/*.hs
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski $(HC) --make -o $@ $< $(HC_OPTS)
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### HetCASL parser
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowskihetana: Static/hetana.hs Static/*.hs
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski $(HC) --make -o $@ $< $(HC_OPTS)
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### ATC test system
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowskiatctest: ATC/ATCTest.hs ATC/*.hs
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski $(HC) --make -o $@ $< $(HC_OPTS)
d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9eKay Sievers
d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9eKay Sieversatctest2: ATC/ATCTest2.hs Common/SimpPretty.hs Common/ATerm/*.hs \
d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9eKay Sievers Common/Lib/*.hs
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski $(HC) --make -o $@ $< $(HC_OPTS)
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kok### ATerm.Lib test system
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kokatermlibtest: Common/ATerm/ATermLibTest.hs Common/SimpPretty.hs \
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kok Common/ATerm/*.hs Common/Lib/*.hs
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kok $(HC) --make -o $@ $< $(HC_OPTS)
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kok
8b197c3a8a57c3f7c231b39e5660856fd9580c80Auke Kokhatermdiff: Common/ATerm/ATermDiffMain.hs Common/SimpPretty.hs \
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski Common/ATerm/*.hs Common/Lib/*.hs
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski $(HC) --make -o $@ $< $(HC_OPTS)
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski
2b3e18de74ca89b374dd4f7a2c30e5731d347841Karol Lewandowski### OWL_DL test target
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringOWL_DL/readAStest: OWL_DL/ToHaskellAS.hs Common/ATerm/*.hs \
feb12d3ed2c7f9132c64773c7c41b9e3a608a814Lennart Poettering Common/Lib/*.hs OWL_DL/*.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering### HetCASL with dev graph
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poetteringhetdg: GUI/hetdg.hs $(drifted_files) *.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poetteringtaxonomy: Taxonomy/taxonomyTool
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringTaxonomy/taxonomyTool: Taxonomy/taxonomyTool.hs $(tax_sources)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(HC) --make -o $@ $< $(HC_OPTS)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering### run tests in other directories
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poetteringcheck: $(TESTTARGETS)
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering for i in $(TESTDIRS); do $(MAKE) -C $$i check; done
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering####################################################################
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering## Preparing the version of HetCATS
7560fffcd2531786b9c1ca657667a43e90331326Lennart PoetteringDriver/Version.hs: Driver/Version.in version_nr
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(RM) $@
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(PERL) utils/build_version.pl version_nr < Driver/Version.in > $@
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering chmod 444 $@
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
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 Poetteringhets.hs: Driver/Version.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering####################################################################
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering## rules for DrIFT
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering.SUFFIXES:
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering%: %.hs
7560fffcd2531786b9c1ca657667a43e90331326Lennart Poettering $(HC) --make -o $@ $<
3e2147858f21943d5f4a781c60f33ac22c6096edKay Sievers
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.hs: %.y
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HAPPY) -o $@.tmp $<
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering echo "{-# OPTIONS -w #-}" > $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering cat $@.tmp >> $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(RM) $@.tmp
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.hs: %.der.hs $(DRIFT)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(RM) $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering ($(DRIFT_ENV); export DERIVEPATH; $(DRIFT) $< > $@)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering chmod 444 $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## rules for inlineAxioms
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.hs: %.inline.hs $(INLINEAXIOMS)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(RM) $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(INLINEAXIOMS) $< > $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering chmod 444 $@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## rule for cpp and haddock
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.hspp: %.hs
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -E -cpp -DUNI_PACKAGE -optP -P $<
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## compiling rules for object and interface files
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.o %.hi: %.hs
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -c $< $(HC_OPTS)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.o %.hi: %.lhs
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -c $< $(HC_OPTS)
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## compiling rules for dependencies
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.d : %.hs
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -M $< $(HC_OPTS) -optdep-f -optdep$@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering%.d : %.lhs
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering $(HC) -M $< $(HC_OPTS) -optdep-f -optdep$@
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering
4927fcae48de061393b3ce9c12d49f80d73fbf1dLennart Poettering## generate the inline file for the predefined CASL_DL sign
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering# Warning: Don't change the order of the depencies!!
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart PoetteringCASL_DL/PredefinedSign.inline.hs: \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering CASL_DL/PredefinedSign.inline.hs.in utils/appendHaskellPreludeString \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering CASL_DL/PredDatatypes.het
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering $(RM) $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering utils/appendHaskellPreludeString CASL_DL/PredDatatypes.het \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering < CASL_DL/PredefinedSign.inline.hs.in > $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering echo " )" >> $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering chmod 444 $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart PoetteringCASL_DL/PredDatatypes.het: utils/transformLibAsBasicSpec.pl \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering CASL_DL/Datatypes.het
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering $(RM) $@
972bded03215d4602fdd2ed2d680350c8eacb056Michael Marineau $(PERL) $+ > $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering chmod 444 $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering
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 \
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering utils/genTransMFormFunc.pl $(INLINEAXIOMS)
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering $(RM) $@
972bded03215d4602fdd2ed2d680350c8eacb056Michael Marineau $(PERL) utils/genTransMFormFunc.pl $< $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering chmod 444 $@
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering
8d4e028f1868c47864ec873d9f30c3ee961a8849Lennart Poettering