# *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
# ** Copyright UCAR (c) 1992 - 2013
# ** University Corporation for Atmospheric Research (UCAR)
# ** National Center for Atmospheric Research (NCAR)
# ** Research Applications Lab (RAL)
# ** P.O.Box 3000, Boulder, Colorado, 80307-3000, USA
# *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

########################################################################
#
# Makefile for the MODE tool
#
########################################################################


EXECUTABLES = mode


OBJECTS     = mode_ps_file.o       \
              plot_engine.o        \
              page_1.o             \
              fcst_enlarge_page.o  \
               obs_enlarge_page.o  \
              cluster_page.o       \
              overlap_page.o       \
              mode_exec.o          \


LIBRARIES   =


########################################################################


HEADERS     =


########################################################################


all: $(OBJECTS) $(LIBRARIES) $(EXECUTABLES)
	@ echo
	@ echo "*** Finished Making the MODE Tool ***"
	@ echo


########################################################################


   ##
   ##  objects
   ##

mode_ps_file.o: mode_ps_file.h mode_ps_file.cc
	$(CXX) mode_ps_file.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

plot_engine.o: mode_ps_file.h plot_engine.cc
	$(CXX) plot_engine.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

page_1.o: page_1.cc mode_ps_file.h
	$(CXX) page_1.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

fcst_enlarge_page.o: fcst_enlarge_page.cc mode_ps_file.h
	$(CXX) fcst_enlarge_page.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

obs_enlarge_page.o: obs_enlarge_page.cc mode_ps_file.h
	$(CXX) obs_enlarge_page.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

overlap_page.o: overlap_page.cc mode_ps_file.h
	$(CXX) overlap_page.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)

cluster_page.o: cluster_page.cc mode_ps_file.h
	$(CXX) cluster_page.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR)


mode_exec.o: mode_exec.h mode_exec.cc
	$(CXX) mode_exec.cc -c $(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" -I$(MET_INC_DIR) $(NETCDF_INCS) $(GSL_INCS)


########################################################################


   ##
   ##  libraries
   ##


########################################################################


   ##
   ##  executables
   ##

mode: mode.cc $(OBJECTS)
	$(CXX) -o mode mode.cc $(OBJECTS) \
	$(CXX_FLAGS) -DMET_BASE=\"$(MET_BASE_DIR)\" \
	-I$(MET_INC_DIR) $(NETCDF_INCS) $(GSL_INCS) $(GRIB2C_INCS) \
	-L$(MET_LIB_DIR) $(NETCDF_LIBS) $(GSL_LIBS) $(GRIB2C_LIBS) \
	-lvx_pxm \
	-lvx_plot_util \
	-lvx_nav \
	-lvx_render \
	-lvx_ps \
	-lvx_afm \
	-lvx_stat_out \
	-lvx_statistics \
	-lvx_shapedata \
	-lvx_gsl_prob \
	-lvx_analysis_util \
	-lvx_data2d_factory \
	-lvx_data2d_nc_met \
	-lvx_data2d_grib $(GRIB2_LIBS) \
	-lvx_data2d_nc_pinterp \
	-lvx_data2d \
	-lvx_nc_util \
	-lvx_grid \
	-lvx_config \
	-lvx_cal \
	-lvx_util \
	-lvx_math \
	-lvx_color \
	-lvx_log \
	-lm -lnetcdf_c++ -lnetcdf -lgsl -lgslcblas \
	$(CXX_LIBS)
	cp mode $(MET_BIN_DIR)


########################################################################


clean:
	rm -f *.a *.o temp junk core a.out $(OBJECTS) $(LIBRARIES) $(EXECUTABLES)
	rm -f $(MET_BIN_DIR)/mode


########################################################################


.PHONY: all clean


########################################################################

