############################################################ 
##  makefile for interferometer response 
##  R.Ansari - Avril 2010  
############################################################ 

include $(SOPHYABASE)/include/sophyamake.inc

all : pknoise repicon calcpk calcpk2 syncube srcat2cube tjyk applobe 

clean : 
	rm Objs/* 

PKGOLIST =  Objs/fgndsub.o Objs/lobe.o Objs/specpk.o Objs/mdish.o Objs/interfconfigs.o Objs/qhist.o Objs/radutil.o 
PKGHLIST =  fgndsub.h lobe.h specpk.h mdish.h interfconfigs.h qhist.h radutil.h cubedef.h 

### les executables 
pknoise : Objs/pknoise
	echo 'makefile : pknoise made'

repicon : Objs/repicon
	echo 'makefile : repicon made'

calcpk : Objs/calcpk
	echo 'makefile : calcpk made'

calcpk2 : Objs/calcpk2
	echo 'makefile : calcpk2 made'

syncube : Objs/syncube
	echo 'makefile : syncube made'

srcat2cube : Objs/srcat2cube
	echo 'makefile : srcat2cube made'

tjyk : Objs/tjyk
	echo 'makefile : tjyk made'

applobe : Objs/applobe
	echo 'makefile : applobe made'

### programme pknoise
Objs/pknoise : Objs/pknoise.o $(PKGOLIST)
	$(CXXLINK) -o Objs/pknoise Objs/pknoise.o $(PKGOLIST)  $(SOPHYAEXTSLBLIST)

Objs/pknoise.o : pknoise.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/pknoise.o pknoise.cc

### programme repicon  (calcul et sauvegarde de la reponse de l'interferometre dans le plan (u,v)
Objs/repicon : Objs/repicon.o $(PKGOLIST)
	$(CXXLINK) -o Objs/repicon Objs/repicon.o $(PKGOLIST)  $(SOPHYAEXTSLBLIST)

Objs/repicon.o : repicon.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/repicon.o repicon.cc

### programme calcpk
Objs/calcpk : Objs/calcpk.o $(PKGOLIST)
	$(CXXLINK) -o Objs/calcpk Objs/calcpk.o $(PKGOLIST)  $(SOPHYAEXTSLBLIST)

Objs/calcpk.o : calcpk.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/calcpk.o calcpk.cc

### programme calcpk2
Objs/calcpk2 : Objs/calcpk2.o $(PKGOLIST)
	$(CXXLINK) -o Objs/calcpk2 Objs/calcpk2.o $(PKGOLIST) $(SOPHYAEXTSLBLIST)

Objs/calcpk2.o : calcpk2.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/calcpk2.o calcpk2.cc

### programme syncube
Objs/syncube : Objs/syncube.o $(PKGOLIST)
	$(CXXLINK) -o Objs/syncube Objs/syncube.o $(PKGOLIST) $(SOPHYAEXTSLBLIST)

Objs/syncube.o : syncube.cc  $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/syncube.o syncube.cc

### programme srcat2cube
Objs/srcat2cube : Objs/srcat2cube.o $(PKGOLIST)
	$(CXXLINK) -o Objs/srcat2cube Objs/srcat2cube.o $(PKGOLIST) $(SOPHYAEXTSLBLIST)

Objs/srcat2cube.o : srcat2cube.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/srcat2cube.o srcat2cube.cc

### programme tjyk
Objs/tjyk : Objs/tjyk.o $(PKGOLIST)
	$(CXXLINK) -o Objs/tjyk Objs/tjyk.o $(PKGOLIST) $(SOPHYAEXTSLBLIST)

Objs/tjyk.o : tjyk.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/tjyk.o tjyk.cc

### programme applobe
Objs/applobe : Objs/applobe.o $(PKGOLIST)
	$(CXXLINK) -o Objs/applobe Objs/applobe.o $(PKGOLIST) $(SOPHYAEXTSLBLIST)

Objs/applobe.o : applobe.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/applobe.o applobe.cc


### les classes / fonctions 
Objs/fgndsub.o : fgndsub.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/fgndsub.o fgndsub.cc

Objs/specpk.o : specpk.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/specpk.o specpk.cc

Objs/mdish.o : mdish.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/mdish.o mdish.cc

Objs/interfconfigs.o : interfconfigs.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/interfconfigs.o interfconfigs.cc

Objs/lobe.o : lobe.cc $(PKGHLIST)
	$(CXXCOMPILE) -o Objs/lobe.o lobe.cc

Objs/qhist.o : qhist.cc qhist.h 
	$(CXXCOMPILE) -o Objs/qhist.o qhist.cc

Objs/radutil.o : radutil.cc radutil.h 
	$(CXXCOMPILE) -o Objs/radutil.o radutil.cc
