Makefile revision 37951dbd8e5f2418a07f072d9bf551d0c3a1eafc
# !!! Note: This makefile is written for GNU make !!! #################################################################### ## Some varibles, which control the compilation # the 'replacing spaces' example was taken from the (GNU) Make info manual ## set ghc imports properly for your system # import directories for ghc-5.04.2 # override on commandline for other architectures # remove -fno-warn-orphans for older ghcs and add -ifgl # 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 ### list of directories to run checks in echo "{-# OPTIONS -w #-}" > $@
## rule for appendHaskellPreludeString #Ti_Haskell_files = TiTypes TiKinds TiDecorate TiInstanceDB ## 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' ### Comment in the following line for switching on profiling. #HC_PROF = -prof -auto-all -fignore-asserts #################################################################### # sources that have {-# OPTIONS -cpp #-} # unused, remove when header files are gone # 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!! @
echo 'File : Maintainer' > $@
'foreach my $$f (@ARGV) { open I, "<$$f"; \ print "$$f :"; while (<I>) \ { if(m,^\s*Maintainer\s*:\s*(.*)$$,o) { \ print " $$1" ; last} }; print "\n"; close I; }' \
############################### ############################### ### Documentation via haddock # generate haddock documentation with links to sources -printf "--read-interface=www/%P,%p "` ; \
$(PERL) -pe 's+/[^/]*.haddock,+,+g'` ; \
-t
'Hets - the Heterogeneous Tool Set' \
# sources are not copied here cvs up -d ;
echo "CVS exited with: " $$?
############################### # "hssource" for ghc-5.04.2 ## TODO: add more dependencies and use hets-opt # compile $< -b . -k web -o $@ ################################### @
echo "please copy the file manually to Common"############################# ### ATC DrIFT-rule generation ### removes *.hi and *.o in all include directories (cd $$p ; $(RM) *.hi *.o) ;
done ### additionally removes the library files ### additionally removes generated files not in the CVS tree #################################################################### #################################################################### ### Haskell to Isabelle-HOLCF translation ### HasCASL to Haskell translation ### test program to check the known provers ### run tests in other directories #################################################################### ## Preparing the version of HetCATS ## two hardcoded dependencies for a correct generation of Version.hs ## two dependencies for avoidence of circular prerequisites #################################################################### echo "{-# OPTIONS -w #-}" > $@
## rules for inlineAxioms ## rule for cpp and haddock ## compiling rules for object and interface files ## compiling rules for dependencies ## generate the inline file for the predefined CASL_DL sign # Warning: Don't change the order of the depencies!!