SHELL = /bin/sh #---Paths are read from a common file (used across the MIRS package) paths_path = ../../../setup include $(paths_path)/paths lib_path_cpp = ${MIRS_ROOT}/src/lib_cpp MAIN_path = . CURR_path = `pwd` #---Default macros and rules (from CRTM) include $(CRTM_path)/make.macros include $(CRTM_path)/make.rules # ------------- # This makefile # ------------- MAKEFILE = makefile # ---------------- # Executable # ---------------- EXE_1 = $(exec_path)/rdr2tdr_n18_amsua EXE_2 = $(exec_path)/rdr2tdr_n18_mhs EXE_3 = $(exec_path)/rdr2tdr_metopA_amsua EXE_4 = $(exec_path)/rdr2tdr_metopA_mhs EXE_5 = $(exec_path)/calib_f16_ssmis EXE_6 = $(exec_path)/rdr2tdr_f16_ssmis EXE_7 = $(exec_path)/rdr2tdr_n19_amsua EXE_8 = $(exec_path)/rdr2tdr_n19_mhs EXE_a = $(exec_path)/rdr2tdr_f18_ssmis EXE_b = $(exec_path)/rdr2tdr_npp_atms EXE_c = $(exec_path)/rdr2tdr_npp_atms_proxy EXE_d = $(exec_path)/rdr2tdr_fy3ri_mwri #EXE_e = $(exec_path)/rdr2tdr_trmm_tmi EXE_f = $(exec_path)/rdr2tdr_mtma_madras EXE_g = $(exec_path)/rdr2tdr_mtsa_saphir EXE_h = $(exec_path)/rdr2tdr_metopB_amsua EXE_i = $(exec_path)/rdr2tdr_metopB_mhs EXE_j = $(exec_path)/rdr2tdr_gcomw1_amsr2 EXE_k = $(exec_path)/rdr2tdr_f17_ssmis EXE_l = $(exec_path)/rdr2tdr_gpm_gmi EXE_m = $(exec_path)/rdr2tdr_f19_ssmis EXE_n = $(exec_path)/rdr2tdr_n20_atms EXE_o = $(exec_path)/rdr2tdr_metopC_amsua EXE_p = $(exec_path)/rdr2tdr_metopC_mhs EXE_q = $(exec_path)/rdr2tdr_n21_atms EXE_r = $(exec_path)/rdr2tdr_metopSGA1_mws EXE_S = $(EXE_1) $(EXE_2) $(EXE_3) $(EXE_4) $(EXE_5) $(EXE_6) $(EXE_7) $(EXE_8) \ $(EXE_a) $(EXE_b) $(EXE_f) $(EXE_g) $(EXE_h) $(EXE_i) $(EXE_j) \ $(EXE_k) $(EXE_l) $(EXE_m) $(EXE_n) $(EXE_o) $(EXE_p) $(EXE_q) $(EXE_r) # ------------ # Main Object # ------------ OBJ_MAIN_1 = $(MAIN_path)/rdr2tdr_n18_amsua.o OBJ_MAIN_2 = $(MAIN_path)/rdr2tdr_n18_mhs.o OBJ_MAIN_3 = $(MAIN_path)/rdr2tdr_metopA_amsua.o OBJ_MAIN_4 = $(MAIN_path)/rdr2tdr_metopA_mhs.o OBJ_MAIN_5 = $(MAIN_path)/calib_f16_ssmis.o OBJ_MAIN_6 = $(MAIN_path)/rdr2tdr_f16_ssmis.o OBJ_MAIN_7 = $(MAIN_path)/rdr2tdr_n19_amsua.o OBJ_MAIN_8 = $(MAIN_path)/rdr2tdr_n19_mhs.o OBJ_MAIN_a = $(MAIN_path)/rdr2tdr_f18_ssmis.o OBJ_MAIN_b = $(MAIN_path)/rdr2tdr_npp_atms.o OBJ_MAIN_c = $(MAIN_path)/rdr2tdr_npp_atms_proxy.o OBJ_MAIN_d = $(MAIN_path)/rdr2tdr_fy3ri_mwri.o #OBJ_MAIN_e = $(MAIN_path)/rdr2tdr_trmm_tmi.o OBJ_MAIN_f = $(MAIN_path)/rdr2tdr_mtma_madras.o OBJ_MAIN_g = $(MAIN_path)/rdr2tdr_mtsa_saphir.o OBJ_MAIN_h = $(MAIN_path)/rdr2tdr_metopB_amsua.o OBJ_MAIN_i = $(MAIN_path)/rdr2tdr_metopB_mhs.o OBJ_MAIN_j = $(MAIN_path)/rdr2tdr_gcomw1_amsr2.o OBJ_MAIN_k = $(MAIN_path)/rdr2tdr_f17_ssmis.o OBJ_MAIN_l = $(MAIN_path)/rdr2tdr_gpm_gmi.o OBJ_MAIN_m = $(MAIN_path)/rdr2tdr_f19_ssmis.o OBJ_MAIN_n = $(MAIN_path)/rdr2tdr_n20_atms.o OBJ_MAIN_o = $(MAIN_path)/rdr2tdr_metopC_amsua.o OBJ_MAIN_p = $(MAIN_path)/rdr2tdr_metopC_mhs.o OBJ_MAIN_q = $(MAIN_path)/rdr2tdr_n21_atms.o OBJ_MAIN_r = $(MAIN_path)/rdr2tdr_metopSGA1_mws.o OBJ_MAIN_S = $(OBJ_MAIN_1) $(OBJ_MAIN_2) $(OBJ_MAIN_3) \ $(OBJ_MAIN_4) $(OBJ_MAIN_5) $(OBJ_MAIN_6) \ $(OBJ_MAIN_7) $(OBJ_MAIN_8) $(OBJ_MAIN_a) \ $(OBJ_MAIN_b) $(OBJ_MAIN_c) $(OBJ_MAIN_d) \ $(OBJ_MAIN_f) $(OBJ_MAIN_g) \ $(OBJ_MAIN_h) $(OBJ_MAIN_i) $(OBJ_MAIN_j) \ $(OBJ_MAIN_k) $(OBJ_MAIN_l) $(OBJ_MAIN_m) \ $(OBJ_MAIN_n) $(OBJ_MAIN_o) $(OBJ_MAIN_p) \ $(OBJ_MAIN_q) $(OBJ_MAIN_r) # ------------ # Main Src # ------------ SRC_MAIN_1 = $(MAIN_path)/rdr2tdr_n18_amsua.f90 SRC_MAIN_2 = $(MAIN_path)/rdr2tdr_n18_mhs.f90 SRC_MAIN_3 = $(MAIN_path)/rdr2tdr_metopA_amsua.f90 SRC_MAIN_4 = $(MAIN_path)/rdr2tdr_metopA_mhs.f90 SRC_MAIN_5 = $(MAIN_path)/calib_f16_ssmis.f90 SRC_MAIN_6 = $(MAIN_path)/rdr2tdr_f16_ssmis.f90 SRC_MAIN_7 = $(MAIN_path)/rdr2tdr_n19_amsua.f90 SRC_MAIN_8 = $(MAIN_path)/rdr2tdr_n19_mhs.f90 SRC_MAIN_a = $(MAIN_path)/rdr2tdr_f18_ssmis.f90 SRC_MAIN_b = $(MAIN_path)/rdr2tdr_npp_atms.cc SRC_MAIN_c = $(MAIN_path)/rdr2tdr_npp_atms_proxy.cc SRC_MAIN_d = $(MAIN_path)/rdr2tdr_fy3ri_mwri.f90 #SRC_MAIN_e = $(MAIN_path)/rdr2tdr_trmm_tmi.f90 SRC_MAIN_f = $(MAIN_path)/rdr2tdr_mtma_madras.cc SRC_MAIN_g = $(MAIN_path)/rdr2tdr_mtsa_saphir.cc SRC_MAIN_h = $(MAIN_path)/rdr2tdr_metopB_amsua.f90 SRC_MAIN_i = $(MAIN_path)/rdr2tdr_metopB_mhs.f90 SRC_MAIN_j = $(MAIN_path)/rdr2tdr_gcomw1_amsr2.cc SRC_MAIN_k = $(MAIN_path)/rdr2tdr_f17_ssmis.f90 SRC_MAIN_l = $(MAIN_path)/rdr2tdr_gpm_gmi.f90 SRC_MAIN_m = $(MAIN_path)/rdr2tdr_f19_ssmis.f90 SRC_MAIN_n = $(MAIN_path)/rdr2tdr_n20_atms.cc SRC_MAIN_o = $(MAIN_path)/rdr2tdr_metopC_amsua.f90 SRC_MAIN_p = $(MAIN_path)/rdr2tdr_metopC_mhs.f90 SRC_MAIN_q = $(MAIN_path)/rdr2tdr_n21_atms.cc SRC_MAIN_r = $(MAIN_path)/rdr2tdr_metopSGA1_mws.cc #----Comment out SSMIS related programs as they are not standard compliant OBJ_UTILITY = $(lib_path)/io/IO_MeasurData.o \ $(lib_path)/io/IO_Noise.o \ $(lib_path)/io/IO_InstrConfig.o \ $(lib_path)/misc/misc.o \ $(lib_path)/misc/Consts.o \ $(lib_path)/io/IO_Misc.o \ $(lib_path)/qc/ErrorHandling.o \ $(lib_path)/io/io_ssmis.o \ $(MAIN_path)/calib_ssmis_sub.o OBJ_MT = $(lib_path_cpp)/mt.o OBJ_1 = $(OBJ_MAIN_1) $(OBJ_UTILITY) OBJ_2 = $(OBJ_MAIN_2) $(OBJ_UTILITY) OBJ_3 = $(OBJ_MAIN_3) $(OBJ_UTILITY) OBJ_4 = $(OBJ_MAIN_4) $(OBJ_UTILITY) OBJ_5 = $(OBJ_MAIN_5) $(OBJ_UTILITY) OBJ_6 = $(OBJ_MAIN_6) $(OBJ_UTILITY) OBJ_7 = $(OBJ_MAIN_7) $(OBJ_UTILITY) OBJ_8 = $(OBJ_MAIN_8) $(OBJ_UTILITY) OBJ_a = $(OBJ_MAIN_a) $(OBJ_UTILITY) OBJ_b = $(OBJ_MAIN_b) OBJ_c = $(OBJ_MAIN_c) OBJ_d = $(OBJ_MAIN_d) $(OBJ_UTILITY) #OBJ_e = $(OBJ_MAIN_e) $(OBJ_UTILITY) OBJ_f = $(OBJ_MAIN_f) $(OBJ_MT) OBJ_g = $(OBJ_MAIN_g) $(OBJ_MT) OBJ_h = $(OBJ_MAIN_h) $(OBJ_UTILITY) OBJ_i = $(OBJ_MAIN_i) $(OBJ_UTILITY) OBJ_j = $(OBJ_MAIN_j) OBJ_k = $(OBJ_MAIN_k) $(OBJ_UTILITY) OBJ_l = $(OBJ_MAIN_l) $(OBJ_UTILITY) OBJ_m = $(OBJ_MAIN_m) $(OBJ_UTILITY) OBJ_n = $(OBJ_MAIN_n) OBJ_o = $(OBJ_MAIN_o) $(OBJ_UTILITY) OBJ_p = $(OBJ_MAIN_p) $(OBJ_UTILITY) OBJ_q = $(OBJ_MAIN_q) OBJ_r = $(OBJ_MAIN_r) SRC_UTILITY = $(OBJ_UTILITY:.o=.f90) SRC_MT = $(lib_path_cpp)/src/mt/mt.cc SRC_MT_HEAD = $(lib_path_cpp)/include/mt/mt.h # ------------------------------- # Include and library definitions # ------------------------------- INCLUDES = -I$(CRTM_path) -I$(lib_path) -I$(lib_path)/misc \ -I$(lib_path)/io -I$(lib_path)/qc -I$(MAIN_path) # ----------------------- # Extra compilation flags # ----------------------- EXTRA_FC_FLAGS = $(convEndOption) # ----------------------- # Extra flags for NPP ATMS # ----------------------- INCLUDE_NPP = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) LIBS_NPP = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_NPP = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # Extra flags for N20 ATMS # ----------------------- INCLUDE_N20 = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) LIBS_N20 = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_N20 = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # Extra flags for N21 ATMS # ----------------------- INCLUDE_N21 = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) LIBS_N21 = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_N21 = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # # Extra flags for EPS MWS # ----------------------- INCLUDE_metopSGA1 = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) LIBS_metopSGA1 = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_metopSGA1 = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # Extra flags for FY3 # ----------------------- INCLUDE_FY3 = -I$(HDF4INC) -I$(SZIPINC) $(INCLUDES) LIBS_FY3 = -L$(HDF4LIB) -L$(SZIPLIB) LDFLAGS_FY3 = -lmfhdf -ldf -ljpeg -lsz -lz -lm FL_FLAGS_FY3 = $(LIBS_FY3) $(LDFLAGS_FY3) $(FL_FLAGS) # ----------------------- # Extra flags for TRMM TMI # ----------------------- INCLUDE_TRMM = -I$(HDFEOSINC) -I$(HDF4INC) -I$(SZIPINC) $(INCLUDES) LIBS_TRMM = -L$(HDFEOSLIB) -L$(HDF4LIB) -L$(SZIPLIB) LDFLAGS_TRMM = -lhdfeos -lGctp -lmfhdf -ldf -ljpeg -lz -lm -lsz FL_FLAGS_TRMM = $(LIBS_TRMM) $(LDFLAGS_TRMM) $(FL_FLAGS) # ----------------------- # Extra flags for MT MADRAS and SAPHIR # ----------------------- INCLUDE_MT = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) -I$(lib_path_cpp)/include/mt LIBS_MT = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_MT = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # Extra flags for GCOM AMSR2 # ----------------------- INCLUDE_GCOM = -I$(HDF5INC) -I$(SZIPINC) -I$(ZLIBINC) LIBS_GCOM = -L$(HDF5LIB) -L$(SZIPLIB) -L$(ZLIBLIB) LDFLAGS_GCOM = -lhdf5_cpp -lhdf5 -lsz -lz -lm # ----------------------- # Extra flags for GPM GMI # ----------------------- INCLUDE_GPM = -I$(HDFEOSINC) -I$(HDF5INC) -I$(SZIPINC) $(INCLUDES) LIBS_GPM = -L$(HDFEOSLIB) -L$(HDF5LIB) -L$(SZIPLIB) LDFLAGS_GPM = -lhdfeos -lGctp -ljpeg -lz -lm -lsz -lhdf5 -lhdf5_fortran FL_FLAGS_GPM = $(LIBS_GPM) $(LDFLAGS_GPM) $(FL_FLAGS) #----------------------------------------------------------------------------- # -- Define dependecies -- #----------------------------------------------------------------------------- # --------------------- # Make based on OS type # --------------------- all: @echo "OS type detected: "`uname -s` @case `uname -s` in \ "SunOS" ) make -f $(MAKEFILE) the_program $(SUNOS_FLAGS) ;; \ "AIX" ) make -f $(MAKEFILE) the_program $(AIX_FLAGS) ;; \ "IRIX64" ) make -f $(MAKEFILE) the_program $(IRIX64_FLAGS) ;; \ "Linux" ) make -f $(MAKEFILE) the_program $(LINUX_FLAGS) ;; \ * ) echo "This system is not supported" ;; \ esac # --------------------- # Make the test program # --------------------- the_program : $(EXE_S) # --------------- # Dependency list # --------------- #---Dependence of the main program object $(OBJ_MAIN_1) : $(SRC_MAIN_1) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_1) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_1) $(OBJ_MAIN_2) : $(SRC_MAIN_2) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_2) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_2) $(OBJ_MAIN_3) : $(SRC_MAIN_3) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_3) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_3) $(OBJ_MAIN_4) : $(SRC_MAIN_4) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_4) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_4) $(OBJ_MAIN_5) : $(SRC_MAIN_5) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_5) $(EXTRA_FC_FLAGS) $(FC_FLAGS) $(qsaveOption) -o $(OBJ_MAIN_5) $(OBJ_MAIN_6) : $(SRC_MAIN_6) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_6) $(EXTRA_FC_FLAGS) $(FC_FLAGS) $(qsaveOption) -o $(OBJ_MAIN_6) $(OBJ_MAIN_7) : $(SRC_MAIN_7) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_7) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_7) $(OBJ_MAIN_8) : $(SRC_MAIN_8) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_8) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_8) $(OBJ_MAIN_a) : $(SRC_MAIN_a) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_a) $(EXTRA_FC_FLAGS) $(FC_FLAGS) $(qsaveOption) -o $(OBJ_MAIN_a) $(OBJ_MAIN_b) : $(SRC_MAIN_b) $(CXX) $(CXX_FLAGS) $(INCLUDE_NPP) -c $(SRC_MAIN_b) -o $(OBJ_MAIN_b) $(OBJ_MAIN_c) : $(SRC_MAIN_c) $(lib_path_cpp)/MeasurementType.h $(CXX) $(CXX_FLAGS) $(INCLUDE_NPP) -c $(SRC_MAIN_c) -o $(OBJ_MAIN_c) $(OBJ_MAIN_d) : $(SRC_MAIN_d) $(OBJ_UTILITY) $(FC) $(INCLUDE_FY3) $(SRC_MAIN_d) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_d) #$(OBJ_MAIN_e) : $(SRC_MAIN_e) $(OBJ_UTILITY) # $(FC) $(INCLUDE_TRMM) $(SRC_MAIN_e) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_e) $(OBJ_MAIN_f) : $(SRC_MAIN_f) $(CXX) $(CXX_FLAGS) $(INCLUDE_MT) -c $(SRC_MAIN_f) -o $(OBJ_MAIN_f) $(OBJ_MAIN_g) : $(SRC_MAIN_g) $(CXX) $(CXX_FLAGS) $(INCLUDE_MT) -c $(SRC_MAIN_g) -o $(OBJ_MAIN_g) $(OBJ_MAIN_h) : $(SRC_MAIN_h) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_h) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_h) $(OBJ_MAIN_i) : $(SRC_MAIN_i) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_i) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_i) $(OBJ_MAIN_j) : $(SRC_MAIN_j) $(CXX) $(CXX_FLAGS) -Wno-write-strings $(INCLUDE_GCOM) -c $(SRC_MAIN_j) -o $(OBJ_MAIN_j) $(OBJ_MAIN_k) : $(SRC_MAIN_k) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_k) $(EXTRA_FC_FLAGS) $(FC_FLAGS) $(qsaveOption) -o $(OBJ_MAIN_k) $(OBJ_MAIN_l) : $(SRC_MAIN_l) $(OBJ_UTILITY) $(FC) $(INCLUDE_GPM) $(SRC_MAIN_l) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_l) $(OBJ_MAIN_m) : $(SRC_MAIN_m) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_m) $(EXTRA_FC_FLAGS) $(FC_FLAGS) $(qsaveOption) -o $(OBJ_MAIN_m) $(OBJ_MAIN_n) : $(SRC_MAIN_n) $(CXX) $(CXX_FLAGS) $(INCLUDE_N20) -c $(SRC_MAIN_n) -o $(OBJ_MAIN_n) $(OBJ_MAIN_o) : $(SRC_MAIN_o) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_o) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_o) $(OBJ_MAIN_p) : $(SRC_MAIN_p) $(OBJ_UTILITY) $(FC) $(SRC_MAIN_p) $(EXTRA_FC_FLAGS) $(FC_FLAGS) -o $(OBJ_MAIN_p) $(OBJ_MAIN_q) : $(SRC_MAIN_q) $(CXX) $(CXX_FLAGS) $(INCLUDE_N21) -c $(SRC_MAIN_q) -o $(OBJ_MAIN_q) $(OBJ_MAIN_r) : $(SRC_MAIN_r) $(CXX) $(CXX_FLAGS) $(INCLUDE_metopSGA1) -c $(SRC_MAIN_r) -o $(OBJ_MAIN_r) $(OBJ_UTILITY) : $(SRC_UTILITY) cd $(lib_path) ; make $(FC) $(MAIN_path)/calib_ssmis_sub.f90 $(EXTRA_FC_FLAGS) \ $(FC_FLAGS) $(qsaveOption) -o $(MAIN_path)/calib_ssmis_sub.o $(OBJ_MT) : $(SRC_MT) $(SRC_MT_HEAD) cd $(lib_path_cpp) ; make #---Dependence of the executable $(EXE_1) : $(OBJ_MAIN_1) $(FL) $(OBJ_1) $(FL_FLAGS) $(EXE_1) $(EXE_2) : $(OBJ_MAIN_2) $(FL) $(OBJ_2) $(FL_FLAGS) $(EXE_2) $(EXE_3) : $(OBJ_MAIN_3) $(FL) $(OBJ_3) $(FL_FLAGS) $(EXE_3) $(EXE_4) : $(OBJ_MAIN_4) $(FL) $(OBJ_4) $(FL_FLAGS) $(EXE_4) $(EXE_5) : $(OBJ_MAIN_5) $(FL) $(OBJ_5) $(FL_FLAGS) $(EXE_5) $(EXE_6) : $(OBJ_MAIN_6) $(FL) $(OBJ_6) $(FL_FLAGS) $(EXE_6) $(EXE_7) : $(OBJ_MAIN_7) $(FL) $(OBJ_7) $(FL_FLAGS) $(EXE_7) $(EXE_8) : $(OBJ_MAIN_8) $(FL) $(OBJ_8) $(FL_FLAGS) $(EXE_8) $(EXE_a) : $(OBJ_MAIN_a) $(FL) $(OBJ_a) $(FL_FLAGS) $(EXE_a) $(EXE_b) : $(OBJ_MAIN_b) $(CXX) -o $(EXE_b) $(OBJ_MAIN_b) $(LIBS_NPP) $(LDFLAGS_NPP) $(EXE_c) : $(OBJ_MAIN_c) $(CXX) -o $(EXE_c) $(OBJ_MAIN_c) $(LIBS_NPP) $(LDFLAGS_NPP) $(EXE_d) : $(OBJ_MAIN_d) $(FL) $(OBJ_d) $(FL_FLAGS_FY3) $(EXE_d) #$(EXE_e) : $(OBJ_MAIN_e) # $(FL) $(OBJ_e) $(FL_FLAGS_TRMM) $(EXE_e) $(EXE_f) : $(OBJ_f) $(CXX) -o $(EXE_f) $(OBJ_f) $(LIBS_MT) $(LDFLAGS_MT) $(EXE_g) : $(OBJ_g) $(CXX) -o $(EXE_g) $(OBJ_g) $(LIBS_MT) $(LDFLAGS_MT) $(EXE_h) : $(OBJ_MAIN_h) $(FL) $(OBJ_h) $(FL_FLAGS) $(EXE_h) $(EXE_i) : $(OBJ_MAIN_i) $(FL) $(OBJ_i) $(FL_FLAGS) $(EXE_i) $(EXE_j) : $(OBJ_MAIN_j) $(CXX) -o $(EXE_j) $(OBJ_MAIN_j) $(LIBS_GCOM) $(LDFLAGS_GCOM) $(EXE_k) : $(OBJ_MAIN_k) $(FL) $(OBJ_k) $(FL_FLAGS) $(EXE_k) $(EXE_l) : $(OBJ_MAIN_l) $(FL) $(OBJ_l) $(FL_FLAGS_GPM) $(EXE_l) $(EXE_m) : $(OBJ_MAIN_m) $(FL) $(OBJ_m) $(FL_FLAGS) $(EXE_m) $(EXE_n) : $(OBJ_MAIN_n) $(CXX) -o $(EXE_n) $(OBJ_MAIN_n) $(LIBS_N20) $(LDFLAGS_N20) $(EXE_o) : $(OBJ_MAIN_o) $(FL) $(OBJ_o) $(FL_FLAGS) $(EXE_o) $(EXE_p) : $(OBJ_MAIN_p) $(FL) $(OBJ_p) $(FL_FLAGS) $(EXE_p) $(EXE_q) : $(OBJ_MAIN_q) $(CXX) -o $(EXE_q) $(OBJ_MAIN_q) $(LIBS_N21) $(LDFLAGS_N21) $(EXE_r) : $(OBJ_MAIN_r) $(CXX) -o $(EXE_r) $(OBJ_MAIN_r) $(LIBS_metopSGA1) $(LDFLAGS_metopSGA1) # -------- # Clean up # -------- clean: $(REMOVE) $(EXE_S) $(OBJ_MAIN_S) $(MAIN_path)/calib_ssmis_sub.o $(MAIN_path)/calib_ssmis_sub.mod