Makefile revision 8e494181dee5cfc59ae494e4082c71edfde24f58
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2004
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder# This Makefile will compile the new hetcats system and provides also
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder# targets for test programs during implementation phases.
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder# !!! Note: This makefile is written for GNU make !!!
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder# (gmake on solaris ; make on linux)
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder####################################################################
f8a1ab8012a1f36060d6ce9b63399fa4a8a2981cChristian Maeder## Some varibles, which control the compilation
b603f34b79bc0992e5d74f484e5bdc9f9c2346c6Christian MaederCOMMONLIB_PATH = Common/Lib:Common/ATerm:fgl/Data/Graph:fgl/Data/Graph/Inductive:fgl/Data/Graph/Inductive/Aux:fgl/Data/Graph/Inductive/Monad:fgl/Data/Graph/Inductive/Query
b603f34b79bc0992e5d74f484e5bdc9f9c2346c6Christian MaederCLEAN_PATH = utils/DrIFT-src:utils/GenerateRules:utils/InlineAxioms:Common:Logic:CASL:CASL/CCC:Syntax:Static:GUI:HasCASL:Haskell:Modal:CoCASL:COL:CspCASL:ATC:ToHaskell:Proofs:Comorphisms:Isabelle:$(INCLUDE_PATH):Haskell/Hatchet:Taxonomy:$(PFE_PATHS)
d50ea352472823a62196db3cf11fae2af6866ab6Christian Maeder## set ghc imports properly for your system
6cb518d88084543c13aa7e56db767c14ee97ab77Christian MaederLINUX_IMPORTS = $(wildcard /home/linux-bkb/ghc/ghc-latest/lib/ghc-*/imports)
6f031207ab25d41ae4740a4151d5946faff4768bChristian MaederDRIFT_ENV = DERIVEPATH='.:ghc:hetcats:${LINUX_IMPORTS}:${GHC_IMPORTS}'
946f62de1b188898dde0c472f2a8a6fb86f4d2f5Christian Maeder# the 'replacing spaces' example was taken from the (GNU) Make info manual
4f759b699e41703e06e6ce522072aa3210953561Christian Maeder# override on commandline for other architectures
6cb518d88084543c13aa7e56db767c14ee97ab77Christian MaederINSTALLDIR = /home/www/agbkb/forschung/formal_methods/CoFI/hets/`utils/sysname.sh`
6cb518d88084543c13aa7e56db767c14ee97ab77Christian MaederGENERATERULES_deps = utils/GenerateRules/*hs $(DRIFT_deps)
6cb518d88084543c13aa7e56db767c14ee97ab77Christian MaederINLINEAXIOMS_deps = utils/InlineAxioms/*hs $(drifted_files)
6cb518d88084543c13aa7e56db767c14ee97ab77Christian MaederHC_FLAGS = -Wall -fglasgow-exts -fno-monomorphism-restriction
6cb518d88084543c13aa7e56db767c14ee97ab77Christian Maeder# -ddump-minimal-imports
117f087bc4e24ad34fac1bf8aa4385681bba4524Christian Maeder# flags also come in via ../uni/uni-package.conf
6cb518d88084543c13aa7e56db767c14ee97ab77Christian Maeder# but added it here in case of compilation without uni
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian MaederUNI_PACKAGE_CONF := $(wildcard ../uni/uni-package.conf)
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian MaederHC_PACKAGE = -package-conf $(UNI_PACKAGE_CONF) -package uni-davinci \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder# some modules from uni for haddock
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder# if uni/server is included also HaXml sources are needed
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maederuni_sources = $(wildcard ../uni/davinci/haddock/*.hs) \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian MaederPFE_TOOLDIR := $(wildcard ../programatica/tools)
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian MaederPFE_DIRS = base/AST base/TI base/parse2 base/parse2/Lexer base/parse2/Parser \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder base/pretty base/syntax base/lib base/lib/Monads base/Modules base/defs \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder base/transforms base/transforms/Deriving hs2html \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder property/pfe property/syntax property/AST property/transforms \
3aa7e4492a7e28b37d1a0b23f5bfe2109f87d4d6Christian Maeder property/TI property/defs property/parse2 property/parse2/Parser \
#.PRECIOUS: sources_hetcats.mk
$(RM) $@
$(HC_FLAGS) -O
(cd utils/GenerateRules; \
GenerateRules.hs -o ../genRules && strip ../genRules)
gen_atc_files = \
### also delete *.d.bak (dependency file backups)
$(RM) $@
ghci:
$(RM) $@
$(RM) $@
$(RM) $@
$(happy_files)
$(RM) $@
$(RM) $@
$(RM) $@
$(RM) $@
$(RM) $@
### ATerm.Lib test system
$(RM) $@
$(RM) $@
## two hardcoded dependencies for a correct generation of Version.hs
.SUFFIXES:
$(HAPPY) $<
$(INLINEAXIOMS) $< > $@
%.d : %.hs
%.d : %.lhs
## rule for Modal/ModalSystems.hs needed for ModalLogic Translation