| 1 | include $(SOPHYABASE)/include/sophyamake.inc | 
|---|
| 2 |  | 
|---|
| 3 | defaut: libs | 
|---|
| 4 |  | 
|---|
| 5 | all: libs extlibs PI | 
|---|
| 6 | libs: cxxlibs | 
|---|
| 7 | extlibs : cxxextlibs | 
|---|
| 8 |  | 
|---|
| 9 | cxxlibs:: | 
|---|
| 10 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/BaseTools.conf ] ; then cd  ../BaseTools ; $(MAKE) -f smakefile ; fi | 
|---|
| 11 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/SysTools.conf ] ; then cd  ../SysTools ; $(MAKE) -f smakefile ; fi | 
|---|
| 12 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/SUtils.conf ] ; then cd  ../SUtils ; $(MAKE) -f smakefile ; fi | 
|---|
| 13 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/TArray.conf ] ; then cd  ../TArray ; $(MAKE) -f smakefile ; fi | 
|---|
| 14 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/NTools.conf ] ; then cd  ../NTools ; $(MAKE) -f smakefile ; fi | 
|---|
| 15 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/HiStats.conf ] ; then cd  ../HiStats ; $(MAKE) -f smakefile ; fi | 
|---|
| 16 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/SkyMap.conf ] ; then cd  ../SkyMap ; $(MAKE) -f smakefile ; fi | 
|---|
| 17 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/Samba.conf ] ; then cd  ../Samba ; $(MAKE) -f smakefile ; fi | 
|---|
| 18 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/SkyT.conf ] ; then cd  ../SkyT ; $(MAKE) -f smakefile ; fi | 
|---|
| 19 |  | 
|---|
| 20 | cxxextlibs:: | 
|---|
| 21 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/FitsIOServer.conf ] ; then cd  ../FitsIOServer ; $(MAKE) -f smakefile ; fi | 
|---|
| 22 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/IFFTW.conf ] ; then cd  ../IFFTW ; $(MAKE) -f smakefile ; fi | 
|---|
| 23 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/LinAlg.conf ] ; then cd  ../LinAlg ; $(MAKE) -f smakefile ; fi | 
|---|
| 24 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/XAstroPack.conf ] ; then cd  ../XAstroPack ; $(MAKE) -f smakefile ; fi | 
|---|
| 25 |  | 
|---|
| 26 | PI:: | 
|---|
| 27 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/PI.conf ] ; then cd ../PI ; $(MAKE) -f smakefile ; fi | 
|---|
| 28 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/PIGcont.conf ] ; then cd ../PIGcont ; $(MAKE) -f smakefile ; fi | 
|---|
| 29 | if [ -f $(SOPHYAINCP)/SophyaConfInfo/PIext.conf ] ; then cd ../PIext ; $(MAKE) -f smakefile ; fi | 
|---|
| 30 |  | 
|---|
| 31 | #  Shared library creation part of the Makefile | 
|---|
| 32 |  | 
|---|
| 33 | #  main dependence list | 
|---|
| 34 | slball : slb slbext slbpi | 
|---|
| 35 | slb : $(SOPHYASLBP)libsophya.$(SLEXT) | 
|---|
| 36 | slbext : $(SOPHYASLBP)libextsophya.$(SLEXT) | 
|---|
| 37 | slbpi : $(SOPHYASLBP)libPI.$(SLEXT) | 
|---|
| 38 | #  All object modules in a single shared library | 
|---|
| 39 | slballinone : $(SOPHYASLBP)libAsophyaextPI.$(SLEXT) | 
|---|
| 40 |  | 
|---|
| 41 | # List of .o files for SOPHYA  module | 
|---|
| 42 | ALLOBJSF = $(SOPHYAINCP)/SophyaConfInfo/libsophya.objlist | 
|---|
| 43 |  | 
|---|
| 44 | # List of .o files modules with reference to external libraries | 
|---|
| 45 | ALLEXTOBJSF = $(SOPHYAINCP)/SophyaConfInfo/libextsophya.objlist | 
|---|
| 46 |  | 
|---|
| 47 | # List of .o files for PI modules | 
|---|
| 48 | ALLPIOBJSF = $(SOPHYAINCP)/SophyaConfInfo/libPI.objlist | 
|---|
| 49 |  | 
|---|
| 50 | # Building Sophya shared library | 
|---|
| 51 | $(SOPHYASLBP)libsophya.$(SLEXT) : $(ALLOBJSF) | 
|---|
| 52 | echo `cat $(ALLOBJSF)` ; \ | 
|---|
| 53 | cd  $(SOPHYAOBJP); \ | 
|---|
| 54 | $(CMDSHLCXX) -o $@  `cat $(ALLOBJSF) ` $(SOPBASELIBS) | 
|---|
| 55 |  | 
|---|
| 56 | # Building ExtSophya shared library | 
|---|
| 57 | $(SOPHYASLBP)libextsophya.$(SLEXT) : $(ALLEXTOBJSF) | 
|---|
| 58 | echo `cat $(ALLEXTOBJSF)` ; \ | 
|---|
| 59 | cd  $(SOPHYAOBJP); \ | 
|---|
| 60 | $(CMDSHLCXX) -o $@  `cat $(ALLEXTOBJSF) ` \ | 
|---|
| 61 | $(SOPHYASLBLIST) $(SOPEXTLIBS) | 
|---|
| 62 |  | 
|---|
| 63 | # Building PI shared library | 
|---|
| 64 | $(SOPHYASLBP)libPI.$(SLEXT) : $(ALLPIOBJSF) | 
|---|
| 65 | echo `cat $(ALLPIOBJSF)` ; \ | 
|---|
| 66 | cd  $(SOPHYAOBJP); \ | 
|---|
| 67 | $(CMDSHLCXX) -o $@ `cat $(ALLPIOBJSF) ` \ | 
|---|
| 68 | $(SOPHYAEXTSLBLIST) $(PILIBS) | 
|---|
| 69 |  | 
|---|
| 70 | # Building a single shared library with all modules Sophya+ExtSophya+PI | 
|---|
| 71 | $(SOPHYASLBP)libAsophyaextPI.$(SLEXT) : $(ALLOBJSF) $(ALLEXTOBJSF) $(ALLPIOBJSF) | 
|---|
| 72 | echo `cat $(ALLOBJSF)` ; \ | 
|---|
| 73 | echo `cat $(ALLEXTOBJSF)` ; \ | 
|---|
| 74 | echo `cat $(ALLPIOBJSF)` ; \ | 
|---|
| 75 | cd  $(SOPHYAOBJP); \ | 
|---|
| 76 | $(CMDSHLCXX) -o $@ \ | 
|---|
| 77 | `cat $(ALLOBJSF) ` \ | 
|---|
| 78 | `cat $(ALLEXTOBJSF) ` \ | 
|---|
| 79 | `cat $(ALLPIOBJSF) ` \ | 
|---|
| 80 | $(PILIBS) $(SOPEXTLIBS) $(SOPBASELIBS) | 
|---|
| 81 |  | 
|---|
| 82 |  | 
|---|
| 83 | #  Cleaning targets | 
|---|
| 84 | clean: | 
|---|
| 85 | if [ -d $(SOPHYALIBP) ] ; then cd $(SOPHYALIBP)/. ; rm -f *.a  ; fi | 
|---|
| 86 | if [ -d $(SOPHYASLBP) ] ; then cd $(SOPHYASLBP)/. ; rm -f *.so ; fi | 
|---|
| 87 | if [ -d $(SOPHYAEXEP) ] ; then cd $(SOPHYAEXEP)/. ; rm -f * ; fi | 
|---|
| 88 | if [ -d $(SOPHYAOBJP) ] ; then cd $(SOPHYAOBJP)/. ; rm -rf *.o cxxrep templateregistry ; fi | 
|---|
| 89 |  | 
|---|
| 90 | cleanobj: | 
|---|
| 91 | if [ -d $(SOPHYAOBJP) ] ; then rm -rf $(SOPHYAOBJP) ; fi | 
|---|
| 92 |  | 
|---|
| 93 | #  Various main program builds | 
|---|
| 94 | prgall : tests prgutil prgmap progpi | 
|---|
| 95 | piapp : progpi | 
|---|
| 96 | spiapp : progpi | 
|---|
| 97 |  | 
|---|
| 98 | basetests: | 
|---|
| 99 | cd ../Tests/ ; make -f smakefile arrt carrt tnt tobjio spar tparlex | 
|---|
| 100 |  | 
|---|
| 101 | tests: | 
|---|
| 102 | cd ../Tests/ ; make -f smakefile | 
|---|
| 103 |  | 
|---|
| 104 | prgutil: | 
|---|
| 105 | cd ../PrgUtil/ ; make -f smakefile | 
|---|
| 106 |  | 
|---|
| 107 | progpi: | 
|---|
| 108 | cd ../ProgPI/ ; make -f smakefile | 
|---|
| 109 |  | 
|---|
| 110 | prgmap: | 
|---|
| 111 | cd ../PrgMap/ ; make -f smakefile | 
|---|
| 112 |  | 
|---|
| 113 | pmixer: | 
|---|
| 114 | cd ../PMixer/ ; make -f smakefile | 
|---|
| 115 |  | 
|---|