Makefile revision 3ac400e01fbeffd928e06b170d40e8fc84652b7f
2605N/A# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2004 2605N/A# This Makefile will compile the new hetcats system and provides also 2605N/A# targets for test programs during implementation phases. 2605N/A# !!! Note: This makefile is written for GNU make !!! 2605N/A# (gmake on solaris ; make on linux) 2605N/A#################################################################### 2605N/A## Some varibles, which control the compilation 2605N/A## set ghc imports properly for your system 3215N/A# the 'replacing spaces' example was taken from the (GNU) Make info manual 2605N/A# override on commandline for other architectures 2637N/A# but added it here in case of compilation without uni # some modules from uni for haddock # if uni/server is included also HaXml sources are needed # add PFE_PATHS to DERIVEPATH if needed # but name clashes currently prevent ATC generation in a single file #-fallow-undecidable-instances -fno-monomorphism-restriction ### Profiling (only for debugging) ### Attention every module must be compiled with profiling or the linker ### cannot link the various .o files properly. So after switching on ### Profiling, do an 'gmake real_clean; gmake' ### and comment out HC_PACKAGE variable definition above. ### Comment in the following line for switching on profiling. #HC_PROF = -prof -auto-all ### list of directories to run checks in #################################################################### ## sources for hetcats (semi - manually produced with a perl script) # sources that have {-# OPTIONS -cpp #-} # this variable holds the modules that should be documented #################################################################### ############################### ### TAGS files for (x)emacs # load them with "M-x" "visit-tags-table" from # use "M-." to search for a tag # !!Beware this is somewhat instable, because it uses an absolute path!! ############################### ############################### ### Documentation via haddock # generate haddock documentation with links to sources -t
'hets -- a heterogenous Specification (CASL) tool set'# sources are not copied here ############################### $(HC) --make '-i../..:../DrIFT-src' \ ############################# ### ATC DrIFT-rule generation ############################# ## bad rule without programatica ### removes *.hi and *.o in all include directories ### additonally removes *.d (dependency files) in every include directory ### also delete *.d.bak (dependency file backups) ### remove files also in own libraries (cd $$p ; $(RM) *.hi *.d *.o) ;
done ### additionally removes the files that define the sources-variable ### additionally removes files not in CVS tree #################################################################### #################################################################### ### a parser to test annotation parser and Id parsers ### HetCASL with dev graph ### run tests in other directories #################################################################### ## Preparing the version of HetCATS ## two hardcoded dependencies for a correct generation of Version.hs #################################################################### ## rules for inlineAxioms ## rule for cpp and haddock ## compiling rules for object and interface files ## compiling rules for dependencies # hetcats-make is created as side-effect of hets or hets-optimized