Changeset 1987 in Sophya
- Timestamp:
- May 8, 2002, 10:14:02 PM (23 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ArchTOIPipe/SMakefile
r1984 r1987 1 USERFLAGS = -I$(EXTLIBDIR)/Include/FitsIO -DWITH_SOPHYA 2 include $(DPCBASEREP)/Include/MakefileUser.h 1 # ####################### ArchTOIPipe ########################### 2 # ##### LAL (Orsay) / IN2P3-CNRS DAPNIA/SPP (Saclay) / CEA ##### 3 # ############################################################### 4 # Top level makefile to build ArchTOIPipe library with SOPHYA 5 # Usage : make -f SMakefile mkmf 6 # make -f SMakefile libs 7 # make -f SMakefile slb 8 # ############################################################### 3 9 4 ALIB := ./$(MACHDIR)/ 5 AOBJ := ./$(MACHDIR)/ 10 # include files defining compiler/linker options 11 include SMakefile.h 12 include ${DPCBASEREP}/Include/Makefile.slb 6 13 7 $(AOBJ)%.o:%.cc 8 $(COMPILE.cc) $(USERFLAGS) -o $@ $< 9 $(AOBJ)%.o:%.c 10 $(COMPILE.c) $(CFLAGS) $(USERFLAGS) -o $@ $< 14 LIBF = $(MYLIB)libKernel.a $(MYLIB)libProcessors.a $(MYLIB)libProcWSophya.a 11 15 12 LIBOLIST := $(AOBJ)asciitoiwtr.o $(AOBJ)fitstoirdr.o $(AOBJ)fitstoiwtr.o \ 13 $(AOBJ)toi.o $(AOBJ)toimanager.o $(AOBJ)toiprocessor.o $(AOBJ)genwproc.o \ 14 $(AOBJ)toisqfilter.o $(AOBJ)toiregwindow.o $(AOBJ)toiseqbuff.o \ 15 $(AOBJ)toisegment.o \ 16 $(AOBJ)simtoipr.o $(AOBJ)map2toi.o $(AOBJ)toi2map.o $(AOBJ)nooppr.o \ 17 $(AOBJ)ring33.o $(AOBJ)PSB2ring.o $(AOBJ)Bolos2ring.o 18 EXEOLIST := $(AOBJ)fits2asc.o $(AOBJ)tsttoi.o $(AOBJ)tsttoi2.o $(AOBJ)simtst.o \ 19 $(AOBJ)tstrztoi.o $(AOBJ)rztoi.o $(AOBJ)sfftc.o $(AOBJ)mesovh.o \ 20 $(AOBJ)fits2ascii.o $(AOBJ)tgenw.o $(AOBJ)tstmap2toi.o $(AOBJ)tsttoi2map.o \ 21 $(AOBJ)tstflag.o $(AOBJ)tstdemopipe.o $(AOBJ)gph425_ring.o 22 EXELIST := $(AOBJ)sfftc $(AOBJ)simtst $(AOBJ)mesovh $(AOBJ)tstrztoi $(AOBJ)fits2asc $(AOBJ)tsttoi \ 23 $(AOBJ)tsttoi2 $(AOBJ)fits2ascii $(AOBJ)tgenw $(AOBJ)tstmap2toi $(AOBJ)tsttoi2map \ 24 $(AOBJ)tstflag $(AOBJ)tstdemopipe $(AOBJ)gph425_ring 16 defaut: libs 25 17 26 INCLIST := asciitoiwtr.h fitstoirdr.h fitstoiwtr.h toi.h config.h conf.h \ 27 toiprocessor.h genwproc.h toimanager.h toiseqbuff.h toiregwindow.h \ 28 simtoipr.h map2toi.h toi2map.h nooppr.h toisegment.h ring33.h PSB2ring.h Bolos2ring.h 18 all: libs slb 29 19 30 all : $(EXELIST) 31 lib : $(LIBOLIST) 20 21 libs: archlibs 22 slb: archslb 23 24 archlibs: Kernel Processors ProcWSophya 25 26 #--- Create directory and copy includes for install 27 depend: 28 ifdef ARCHPDEVREP 29 ifdef EROSCXX 30 @echo "ArchTOIPipe will be installed under:" 31 @echo " $(ARCHPDEVREP)/Include" 32 @echo " $(ARCHPDEVREP)/`uname`-$(EROSCXX)" 33 ./crerep_pipe $(ARCHPDEVREP) `uname`-$(EROSCXX); \ 34 # ./makefileuser.csh; \ 35 ./mkmflien -copy ; \ 36 else 37 @echo "Variable EROSCXX must be define with setenv" 38 endif 39 else 40 @echo "Variable ARCHPDEVREP must be define with setenv" 41 endif 42 #-------------------------------------------------------------------- 43 44 #--- Create library module Makefiles 45 mkmf: 46 @echo 'Running ./smkmf' 47 ./smkmf 48 #-------------------------------------------------------------------- 49 50 .PHONY: Kernel 51 Kernel: 52 if [ -d Kernel ] ; then cd Kernel ; $(MAKE) ; fi 53 54 .PHONY: Processors 55 Processors: 56 if [ -d Processors ] ; then cd Processors ; $(MAKE) ; fi 57 58 .PHONY: ProcWSophya 59 ProcWSophya: 60 if [ -d ProcWSophya ] ; then cd ProcWSophya ; $(MAKE) ; fi 61 62 # Shared library creation part of the Makefile 63 64 # List of libraries (.a) 65 PSLB = $(MYLIB)libKernel.a $(MYLIB)libProcessors.a $(MYLIB)libProcWSophya.a 66 67 # List of external library references 68 EXTLIBL = -L$(EXTLIBPATH) -lcfitsio -lfftw -lrfftw -lxastro 69 EXTSLBL = -L$(EXTSLBPATH) -lcfitsio -lfftw -lrfftw -lxastro 70 71 # defining the other external libraries needed on different systems 72 73 # On Linux lapack and blas and f2c/g2c ere needed 74 ifeq ($(MACHEROS),Linux) 75 #EXTLIB = $(EXTLIBL) -llapack -lblas -lf2c 76 #EXTSLB = $(EXTSLBL) -llapack -lblas -lf2c 77 EXTLIB = $(EXTLIBL) -llapack -lblas -lg2c 78 EXTSLB = $(EXTSLBL) -llapack -lblas -lg2c 79 endif 80 81 # On OSF1 libdxml contains Lapack, but the fortran support library is needed 82 ifeq ($(MACHEROS),OSF1) 83 EXTLIB = $(EXTLIBL) -ldxml -lfor 84 EXTSLB = $(EXTSLBL) -ldxml -lfor 85 endif 86 87 # On IRIX , complib.sgimath contains Lapack 88 ifeq ($(MACHEROS),IRIX64) 89 EXTLIB = $(EXTLIBL) -lcomplib.sgimath 90 EXTSLB = $(EXTSLBL) -lcomplib.sgimath 91 endif 92 93 94 95 # XPILIBS = $(LIBXPIPATH) $(LIBXPILIST) 96 97 # main dependence list 98 archslb : $(SLB)libpipe.so 99 100 # List of .o files for each module 101 # OBJKernel = $(shell echo `cat ./Kernel/objlist.list `) 102 # OBJProcessors = $(shell echo `cat ./Processors/objlist.list `) 103 # OBJProcWSophya = $(shell echo `cat ./ProcWSophya/objlist.list `) 104 OBJKernel = $(shell echo `cat ./Kernel/Kernel.o.list `) 105 OBJProcessors = $(shell echo `cat ./Processors/Processors.o.list `) 106 OBJProcWSophya = $(shell echo `cat ./ProcWSophya/ProcWSophya.o.list `) 107 108 ALLOBJS = $(OBJKernel) $(OBJProcessors) $(OBJProcWSophya) 109 110 # Building ArchTOIPipe shared library 111 $(SLB)libpipe.so : $(PSLB) 112 cd $(OBJ); \ 113 $(CMDSHLCXX) -o $(MYSLB)libpipe.so \ 114 $(FGSHLACXX) $(ALLOBJS) $(FGSHLNCXX)\ 115 -L$(SLB) -lsophya -lextsophya $(EXTLIB) $(LIBLSHL) 116 117 32 118 33 119 clean: 34 rm -f $(LIBOLIST)35 rm -f $(EXEOLIST)36 rm -f $(EXELIST)120 if [ -d $(MYLIB) ] ; then cd $(MYLIB)/. ; rm -f *.a ; fi 121 if [ -d $(MYSLB) ] ; then cd $(MYSLB)/. ; rm -f *.so ; fi 122 if [ -d $(OBJ) ] ; then cd $(OBJ)/. ; rm -f *.o rm -rf cxxrep* ; fi 37 123 38 LIBF = $(SLB)libsophya.so $(SLB)libextsophya.so39 LIBS = -L$(SLB) -lextsophya -lsophya -lpthread -lm40 ####ifeq ($(MACHEROS),OSF1)41 ####LIBS := $(LIBS) -lfor42 ####endif43 44 ########################################45 #### Les Executables des Programmes ####46 ########################################47 tstrztoi: $(AOBJ)tstrztoi48 @echo done49 $(AOBJ)tstrztoi: $(AOBJ)tstrztoi.o $(AOBJ)rztoi.o $(LIBOLIST)50 $(LINK.cc) -o $@ $^ $(LIBS)51 52 sfftc: $(AOBJ)sfftc53 @echo done54 $(AOBJ)sfftc: $(AOBJ)sfftc.o $(LIBOLIST)55 $(LINK.cc) -o $@ $^ $(LIBS)56 57 mesovh: $(AOBJ)mesovh58 @echo done59 $(AOBJ)mesovh: $(AOBJ)mesovh.o $(LIBOLIST)60 $(LINK.cc) -o $@ $^ $(LIBS)61 62 simtst: $(AOBJ)simtst63 @echo done64 $(AOBJ)simtst: $(AOBJ)simtst.o $(LIBOLIST)65 $(LINK.cc) -o $@ $^ $(LIBS)66 67 fits2asc: $(AOBJ)fits2asc68 @echo done69 $(AOBJ)fits2asc: $(AOBJ)fits2asc.o $(LIBOLIST)70 $(LINK.cc) -o $@ $^ $(LIBS)71 72 tsttoi: $(AOBJ)tsttoi73 @echo done74 $(AOBJ)tsttoi: $(AOBJ)tsttoi.o $(LIBOLIST)75 $(LINK.cc) -o $@ $^ $(LIBS)76 77 tsttoi2: $(AOBJ)tsttoi278 @echo done79 $(AOBJ)tsttoi2: $(AOBJ)tsttoi2.o $(LIBOLIST)80 $(LINK.cc) -o $@ $^ $(LIBS)81 82 fits2ascii: $(AOBJ)fits2ascii83 @echo done84 $(AOBJ)fits2ascii: $(AOBJ)fits2ascii.o $(LIBOLIST)85 $(LINK.cc) -o $@ $^ $(LIBS)86 87 tgenw: $(AOBJ)tgenw88 @echo done89 $(AOBJ)tgenw: $(AOBJ)tgenw.o $(LIBOLIST)90 $(LINK.cc) -o $@ $^ $(LIBS)91 92 tstmap2toi: $(AOBJ)tstmap2toi93 @echo done94 $(AOBJ)tstmap2toi: $(AOBJ)tstmap2toi.o $(LIBOLIST)95 $(LINK.cc) -o $@ $^ $(LIBS)96 97 tsttoi2map: $(AOBJ)tsttoi2map98 @echo done99 $(AOBJ)tsttoi2map: $(AOBJ)tsttoi2map.o $(LIBOLIST)100 $(LINK.cc) -o $@ $^ $(LIBS)101 102 tstflag: $(AOBJ)tstflag103 @echo done104 $(AOBJ)tstflag: $(AOBJ)tstflag.o $(LIBOLIST)105 $(LINK.cc) -o $@ $^ $(LIBS)106 107 tstdemopipe: $(AOBJ)tstdemopipe108 @echo done109 $(AOBJ)tstdemopipe: $(AOBJ)tstdemopipe.o $(LIBOLIST)110 $(LINK.cc) -o $@ $^ $(LIBS)111 112 gph425_ring: $(AOBJ)gph425_ring113 @echo done114 $(AOBJ)gph425_ring: $(AOBJ)gph425_ring.o $(LIBOLIST)115 $(LINK.cc) -o $@ $^ $(LIBS)116 117 118 ################################################119 #### Compilation des Sources des Programmes ####120 ################################################121 $(AOBJ)simtst.o: simtst.cc $(INCLIST)122 $(AOBJ)sfftc.o: sfftc.cc $(INCLIST)123 $(AOBJ)mesovh.o: mesovh.cc $(INCLIST)124 $(AOBJ)tstrztoi.o: tstrztoi.cc rztoi.h $(INCLIST)125 $(AOBJ)rztoi.o: rztoi.cc rztoi.h $(INCLIST)126 $(AOBJ)fits2asc.o: fits2asc.cc $(INCLIST)127 $(AOBJ)tsttoi.o: tsttoi.cc $(INCLIST)128 $(AOBJ)tsttoi2.o: tsttoi2.cc $(INCLIST)129 $(AOBJ)fits2ascii.o: fits2ascii.cc $(INCLIST)130 $(AOBJ)tgenw.o: tgenw.cc $(INCLIST)131 $(AOBJ)tstmap2toi.o: tstmap2toi.cc $(INCLIST)132 $(AOBJ)tsttoi2map.o: tsttoi2map.cc $(INCLIST)133 $(AOBJ)tstflag.o: tstflag.cc $(INCLIST)134 $(AOBJ)tstdemopipe.o: tstdemopipe.cc $(INCLIST)135 $(AOBJ)gph425_ring.o: gph425_ring.cc $(INCLIST)136 137 ################################################138 #### Compilation des Sources des Librairies ####139 ################################################140 $(AOBJ)asciitoiwtr.o: asciitoiwtr.cc asciitoiwtr.h toi.h config.h conf.h toiprocessor.h toimanager.h141 $(AOBJ)fitstoirdr.o: fitstoirdr.cc fitstoirdr.h toiprocessor.h config.h conf.h142 $(AOBJ)fitstoiwtr.o: fitstoiwtr.cc fitstoiwtr.h toi.h config.h conf.h143 $(AOBJ)toi.o: toi.cc toiprocessor.h config.h conf.h toi.h144 $(AOBJ)toimanager.o: toimanager.cc toimanager.h145 $(AOBJ)toiprocessor.o: toiprocessor.cc toiprocessor.h config.h conf.h toi.h toimanager.h146 $(AOBJ)genwproc.o: genwproc.h toiprocessor.h toimanager.h147 $(AOBJ)toisqfilter.o: toisqfilter.cc toisqfilter.h toiprocessor.h config.h conf.h toi.h toimanager.h148 $(AOBJ)toiseqbuff.o: toiseqbuff.cc toiprocessor.h config.h conf.h toi.h toiseqbuff.h149 $(AOBJ)toiregwindow.o: toiregwindow.cc toiprocessor.h config.h conf.h toi.h toiregwindow.h150 $(AOBJ)simtoipr.o: simtoipr.cc toiprocessor.h config.h conf.h toi.h simtoipr.h151 $(AOBJ)map2toi.o: map2toi.cc map2toi.h152 $(AOBJ)toi2map.o: toi2map.cc toi2map.h153 $(AOBJ)nooppr.o: nooppr.cc nooppr.h154 $(AOBJ)toisegment.o: toisegment.cc toiprocessor.h config.h conf.h toi.h155 $(AOBJ)ring33.o: ring33.cc ring33.h156 $(AOBJ)PSB2ring.o: PSB2ring.cc PSB2ring.h157 $(AOBJ)Bolos2ring.o: Bolos2ring.cc Bolos2ring.h
Note:
See TracChangeset
for help on using the changeset viewer.