Makefile revision 7c5c311d67e187280877c45bd89dcba9038bc0a3
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2005
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# This Makefile will compile the new hets system and provides also
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# targets for test programs during implementation phases.
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# !!! Note: This makefile is written for GNU make !!!
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# (gmake on solaris)
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens####################################################################
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens## Some varibles, which control the compilation
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensINCLUDE_PATH = hxt syb-generics haifa-lite/src hcl/src
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensHXT_PATHS = Data Data/Tree Data/Tree/NTree Data/Digest Text Text/XML \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Text/XML/HXT Text/XML/HXT/IO Text/XML/HXT/DOM Text/XML/HXT/Arrow \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Text/XML/HXT/XPath Text/XML/HXT/Validator Text/XML/HXT/Parser \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Text/XML/HXT/RelaxNG Text/XML/HXT/ProtocolHandler Codec Codec/ASN1 \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Codec/Binary Codec/Encryption Codec/Encryption/RSA System Control \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensHAIFA_PATHS = Network Network/Server Org Org/W3 Org/W3/N2001 \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Org/Xmlsoap Org/Xmlsoap/Schemas Org/Xmlsoap/Schemas/Soap \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Text Text/XML Text/XML/HXT Text/XML/Schema Text/XML/Schema/TypeMapper \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens utils utils/DrIFT-src utils/GenerateRules utils/InlineAxioms Common \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Common/Lib Common/ATerm Logic CASL CASL/CCC CASL/CompositionTable \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Syntax Static GUI HasCASL Haskell Modal CoCASL COL ConstraintCASL \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens CspCASL ATC Proofs Comorphisms Isabelle Driver \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Taxonomy CASL_DL SPASS OWL_DL OMDoc $(PFE_PATHS) \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens hcl/src/Data syb-generics/Data syb-generics/Data/Generics2 \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# the 'replacing spaces' example was taken from the (GNU) Make info manual
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens## set ghc imports properly for your system
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# import directories for ghc-5.04.2
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensGHC5 = $(GHC_IMPORTS)/base:$(GHC_IMPORTS)/haskell98
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens DERIVEPATH=.:$(GHC_IMPORTS):$(GHC5):$(subst $(space),:,$(PFE_PATHS))
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# override on commandline for other architectures
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens /home/www/agbkb/forschung/formal_methods/CoFI/hets/`utils/sysname.sh`
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensGENERATERULES_deps = utils/GenerateRules/*hs $(DRIFT_deps)
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensGENITCORRECTIONS_deps = utils/itcor/GenItCorrections.hs Common/Utils.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensINLINEAXIOMS_deps = utils/InlineAxioms/InlineAxioms.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Common/Lib/*.hs Common/*.hs CASL/*.hs Modal/AS_Modal.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Modal/Parse_AS.hs Modal/ModalSign.hs Modal/Print_AS.hs Modal/StatAna.hs
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensGENRULECALL = $(GENRULES) -r Typeable -r ShATermConvertible \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# remove -fno-warn-orphans for older ghcs and add -ifgl
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens $(HC_WARN) -fglasgow-exts -fno-monomorphism-restriction \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens -fallow-overlapping-instances -fallow-undecidable-instances
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# -ddump-minimal-imports
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# flags also come in via ../uni/uni-package.conf
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# but added it here in case of compilation without uni
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owenslogics = CASL HasCASL Isabelle Modal CoCASL COL CspCASL CASL_DL SPASS \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensTESTTARGETFILES += CASL/fromKif.hs CASL/capa.hs HasCASL/hacapa.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Haskell/wrap.hs Isabelle/isa.hs Syntax/hetpa.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens ATC/ATCTest.hs ATC/ATCTest2.hs Common/ATerm/ATermLibTest.hs \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens Common/ATerm/ATermDiffMain.hs Common/annos.hs Common/test_parser.hs
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensUNI_PACKAGE_CONF = $(wildcard ../uni/uni-package.conf)
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensHC_PACKAGE = -package-conf $(UNI_PACKAGE_CONF) -package uni-davinci \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# some modules from uni for haddock
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owens# if uni/server is included also HaXml sources are needed
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owensuni_dirs = ../uni/davinci ../uni/graphs ../uni/events \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin Owensuni_sources = $(wildcard $(addsuffix /haddock/*.hs, $(uni_dirs))) \
edee13f2ac1205fb2d9ccc42a40c8c3657154c3cMartin OwensTESTTARGETFILES += OWL_DL/ToHaskellAS.hs Taxonomy/taxonomyTool.hs
$@.hs -o $@
strip $@
$(APPENDPRELUDESTRING) < $< > $@
#Ti_Prop_files = property/TI/TiPropDecorate property/syntax/PropSyntaxRec
$(wildcard syb-generics/Data/Generics2/*.hs) \
$(GENRULECALL) -o $@ $<
$(GENRULECALL) -o $@ $<
$(GENRULECALL) -o $@ $<
$(GENRULECALL) -o $@ $<
$(wildcard utils/GenerateRules/*.hs) \
$(wildcard utils/InlineAxioms/*.hs) \
$(RM) $@
cgi:
# "HetCATS/hetcats.TAGS"
@$(PERL) -e \
$(sources) >> $@
(cd utils/GenerateRules; \
GenerateRules.hs -o ../genRules && strip ../genRules)
if [ -d ../programatica ] ; then \
./clean.sh; \
### Common/LaTeX_maps.hs generation
strip $@
@echo -n "Generating pretty/LaTeX_maps.hs ... "
@(cd pretty >/dev/null; ../utils/genItCorrections \
-o $@ $(OWL_DL_files)
$(RM) $@
## two hardcoded dependencies for a correct generation of Version.hs
.SUFFIXES:
%: %.hs
%.hs: %.y
$(RM) $@
$(RM) $@
$(INLINEAXIOMS) $< > $@
%.d : %.hs
%.d : %.lhs
$(RM) $@
$(RM) $@
$(PERL) $+ > $@
## rule for Modal/ModalSystems.hs needed for ModalLogic Translation
# uses intransparently utils/outlineAxioms
$(RM) $@