(file) Return to Rules.mk CVS log (file) (dir) Up to [Development] / JSOC / proj / globalhs / apps

  1 arta  1.45 # $Header: /home/cvsuser/cvsroot/JSOC/proj/globalhs/apps/Rules.mk,v 1.44 2017/05/05 00:51:15 yliu Exp $
  2 tplarson 1.29 
  3 tplarson 1.1  # Standard things
  4               sp 		:= $(sp).x
  5               dirstack_$(sp)	:= $(d)
  6               d		:= $(dir)
  7               
  8 tplarson 1.28 # all checks for icc being the compiler are removed; this condition is already checked in localization/Rules.mk
  9               # if the compiler is other than icc, this make file will not be included.
 10 tplarson 1.29 
 11 tplarson 1.33 # GLOBALHS_TAG is defined in Rules.mk in the parent directory,
 12               # its definition is repeated here for ease of reading
 13 tplarson 1.34 #GLOBALHS_TAG := $(shell $(SRCDIR)/proj/globalhs/scripts/checkglobalhstags $(SRCDIR))
 14 tplarson 1.29 
 15 tplarson 1.28 # Local variables
 16               
 17 tplarson 1.29 MODEXE_$(d) := $(addprefix $(d)/, jretile jrebinsmooth undistortmdi jtsslice mkylms)
 18 tplarson 1.28 MODEXE      := $(MODEXE) $(MODEXE_$(d))
 19               
 20 arta     1.45 MODEXE_USEF_$(d) := $(addprefix $(d)/, jv2ts jtsfiddle jpkbgn jpkbgn360d)
 21 tplarson 1.28 MODEXE_USEF      := $(MODEXE_USEF) $(MODEXE_USEF_$(d))
 22 arta     1.9  
 23 tplarson 1.28 MODEXE_SOCK_$(d) := $(MODEXE_$(d):%=%_sock)
 24               MODEXE_SOCK      := $(MODEXE_SOCK) $(MODEXE_SOCK_$(d))
 25 tplarson 1.19 
 26 tplarson 1.28 MODEXE_USEF_SOCK_$(d) := $(MODEXE_USEF_$(d):%=%_sock)
 27               MODEXE_USEF_SOCK      := $(MODEXE_USEF_SOCK) $(MODEXE_USEF_SOCK_$(d))
 28 arta     1.3  
 29 tplarson 1.29 JV2TS		:= $(addprefix $(d)/, jv2ts jv2ts_sock)
 30 arta     1.3  JRETILE		:= $(addprefix $(d)/, jretile jretile_sock)
 31 tplarson 1.29 JTSFIDDLE	:= $(addprefix $(d)/, jtsfiddle jtsfiddle_sock)
 32               JTSSLICE	:= $(addprefix $(d)/, jtsslice jtsslice_sock)
 33 arta     1.3  JPKBGN		:= $(addprefix $(d)/, jpkbgn jpkbgn_sock)
 34 tplarson 1.35 JPKBGN360D	:= $(addprefix $(d)/, jpkbgn360d jpkbgn360d_sock)
 35 tplarson 1.22 JREBINSMOOTH	:= $(addprefix $(d)/, jrebinsmooth jrebinsmooth_sock)
 36 tplarson 1.29 UNDISTORTMDI	:= $(addprefix $(d)/, undistortmdi undistortmdi_sock)
 37               MKYLMS		:= $(addprefix $(d)/, mkylms mkylms_sock)
 38 tplarson 1.14 DURCON		:= $(d)/durcon
 39 tplarson 1.43 ifeq ($(JSOC_MACHINE), linux_avx) 
 40 tplarson 1.36 INV2D		:= $(d)/inv2d.x
 41               INV2DOBJ	:= $(d)/inv2d.o
 42 tplarson 1.43 endif
 43 arta     1.3  
 44 tplarson 1.35 JPKBGNSRC	:= $(SRCDIR)/$(d)/jpkbgn.c
 45               
 46 arta     1.3  EXE_$(d)	:= $(MODEXE_$(d)) $(MODEXE_USEF_$(d))
 47 tplarson 1.1  OBJ_$(d)	:= $(EXE_$(d):%=%.o) 
 48 tplarson 1.22 DEP_$(d)	:= $(OBJ_$(d):%=%.d)
 49 tplarson 1.1  CLEAN		:= $(CLEAN) \
 50               		   $(OBJ_$(d)) \
 51               		   $(EXE_$(d)) \
 52 arta     1.3  		   $(MODEXE_SOCK_$(d)) \
 53               		   $(MODEXE_USEF_SOCK_$(d)) \
 54               		   $(DEP_$(d)) \
 55 tplarson 1.36 		   $(DURCON) \
 56               		   $(INV2D) $(INV2DOBJ)
 57 tplarson 1.1  
 58 arta     1.40 # Remove globalhs from 'default make'. To do a release, run 'make; make globalhs'.
 59               # TGT_BIN	        := $(TGT_BIN) $(EXE_$(d)) $(MODEXE_SOCK_$(d)) $(MODEXE_USEF_SOCK_$(d)) $(DURCON) $(INV2D)
 60 tplarson 1.1  
 61 tplarson 1.36 S_$(d)		:= $(notdir $(EXE_$(d)) $(MODEXE_SOCK_$(d)) $(MODEXE_USEF_SOCK_$(d)) $(DURCON) $(INV2D))
 62 tplarson 1.1  
 63               # Local rules
 64 tplarson 1.22 $(OBJ_$(d)):	$(SRCDIR)/$(d)/Rules.mk
 65 arta     1.41 $(OBJ_$(d)):	CF_TGT := $(CFITSIOH) $(GSLH) $(FFTWH) -I$(SRCDIR)/$(d)/../../libs/stats -I$(SRCDIR)/$(d)/../../libs/interpolate -I$(SRCDIR)/$(d)/../libs/projection -I$(SRCDIR)/$(d)/../libs/pkbgn
 66               $(OBJ_$(d)):	CF_TGT := $(CF_TGT) -DCDIR="\"$(SRCDIR)/$(d)\"" -DCVSTAG="\"$(GLOBALHS_TAG)\"" 
 67 arta     1.7  
 68 tplarson 1.29 $(JV2TS)			: $(LIBPROJECTION)
 69               $(JREBINSMOOTH)	$(MKYLMS)	: $(LIBINTERP)
 70               $(JTSFIDDLE)			: $(LIBDTGF)
 71               $(JPKBGN)			: $(LIBPKBGN)
 72 tplarson 1.35 $(JPKBGN360D)			: $(LIBPKBGN360D)
 73               $(JPKBGN360D:%=%.o) : $(JPKBGNSRC)
 74               	$(COMP)
 75 tplarson 1.29 
 76 tplarson 1.42 # the following include file makes use of the -mcmodel compiler flag
 77               # DO NOT COPY THIS FILE WITHOUT A THOROUGH UNDERSTANDING OF THIS FLAG
 78               include $(SRCDIR)/$(d)/invobj.mk
 79               
 80 tplarson 1.43 $(INV2D) : LL_TGT := $(LL_TGT) -lmkl_em64t
 81 tplarson 1.36 $(INV2D) : $(LIBINV2D)
 82               $(INV2D) : $(INV2DOBJ)
 83               	$(FLINK)
 84               	$(SLBIN)
 85               
 86 tplarson 1.39 ifeq ($(GLOBALHSTAGOVERRIDE),)
 87 tplarson 1.29 .PHONY: force_globalhsapps
 88 tplarson 1.37 $(OBJ_$(d)) $(INV2DOBJ): force_globalhsapps
 89 tplarson 1.32 force_globalhsapps:
 90               	[[ $(GLOBALHS_TAG) =~ globalhs ]]
 91 tplarson 1.39 endif
 92 tplarson 1.28 
 93               NOIPO_$(d) :=
 94               MKL := -lmkl
 95               
 96               ifeq ($(JSOC_MACHINE), linux_avx) 
 97                 MKL     := $(NOIPO_$(d)) -lmkl_em64t
 98 arta     1.8  endif
 99               
100 tplarson 1.28 ifeq ($(JSOC_MACHINE), linux_x86_64) 
101                 MKL     := $(NOIPO_$(d)) -lmkl_em64t
102               endif
103 arta     1.3  
104 tplarson 1.28 ifeq ($(JSOC_MACHINE), linux_ia32) 
105                 MKL     := $(NOIPO_$(d)) -lmkl_lapack -lmkl_ia32
106 arta     1.8  endif
107               
108               SVML_$(d) 	:=
109               GUIDE_$(d)	:=
110               
111 tplarson 1.22 ALL_$(d)	:= $(MODEXE_$(d)) $(MODEXE_SOCK_$(d)) $(MODEXE_USEF_$(d)) $(MODEXE_USEF_SOCK_$(d))
112 tplarson 1.29 $(ALL_$(d)) 	: LL_TGT := $(LL_TGT) $(GSLLIBS) $(CFITSIOLIBS) $(FFTW3FLIBS) $(MKL) $(SVML_$(d)) $(GUIDE_$(d))
113 tplarson 1.22 
114 tplarson 1.33 $(DURCON) : $(SRCDIR)/$(d)/durcon.c $(SRCDIR)/$(d)/Rules.mk
115 tplarson 1.14 	cc -o $@ $<
116               	$(SLBIN)
117               
118 tplarson 1.1  # Shortcuts
119 arta     1.3  .PHONY:	$(S_$(d)) globalhs
120 tplarson 1.1  $(S_$(d)):	%:	$(d)/%
121 tplarson 1.38 globalhs : $(ALL_$(d)) $(DURCON) $(INV2D)
122 tplarson 1.1  
123 arta     1.9  
124 tplarson 1.1  # Standard things
125               -include	$(DEP_$(d))
126               
127               d		:= $(dirstack_$(sp))
128               sp		:= $(basename $(sp))

Karen Tian
Powered by
ViewCVS 0.9.4