Makefile revision f1541d4a151dbd08002dbd14e7eb1d5dde253689
2N/A# Author: (c) Klaus L�ttich, Christian Maeder, Uni Bremen 2002-2005 2N/A# This Makefile will compile the new hets system and provides also 2N/A# targets for test programs during implementation phases. 2N/A# !!! Note: This makefile is written for GNU make !!! 2N/A#################################################################### 2N/A## Some varibles, which control the compilation 2N/A# the 'replacing spaces' example was taken from the (GNU) Make info manual 2N/A## set ghc imports properly for your system 2N/A# override on commandline for other architectures 2N/A# -ddump-minimal-imports 2N/A# but added it here in case of compilation without uni 2N/A# some modules from uni for haddock # if uni/server is included also HaXml sources are needed ### list of directories to run checks in ## rule for appendHaskellPreludeString ## rule for ATC generation ### 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 #################################################################### ## sources for hets (semi - manually produced with a perl script) #GHCMAKE_OUTPUT = $(wildcard hetcats-make) #ifneq ($(strip $(GHCMAKE_OUTPUT)),) # sources that have {-# OPTIONS -cpp #-} # this variable holds the modules that should be documented #################################################################### # $(call run_hc,<command-that-compiles-hetc-with-ghc>) # and it generates hetcats-make # iff there was no error during compilation ############################### ### 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 cvs up -d ;
echo "CVS exited with: " $$?
############################### ############################# ### ATC DrIFT-rule generation ### 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 ### HasCASL to Haskell translation ### 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