# VIC Makefile # Last Changed: Fri Jun 23 16:16:50 2000 by Justin Sheffield # Note: replaced read_vegparam by read_vegparam_LAI # Last Changed by Youlong Xia on 13 March 2013 SHELL = /bin/sh CC = icc #### irix #CFLAGS = -I. -O2 -n32 -fullwarn #### linux CFLAGS = -I. -O3 -Wall -Wno-unused -Wuninitialized #CFLAGS = -I. -g -Wall -Wno-unused -Wuninitialized #### linux alpha #CFLAGS = -I. -O3 -mieee -Wall -Wno-unused -Wuninitialized LIBRARY = -lm HDRS = vicNl.h vicNl_def.h global.h snow.h user_def.h rad_and_vpd.h \ mtclim42_vic.h OBJS = CalcAerodynamic.o SnowPackEnergyBalance.o StabilityCorrection.o \ alloc_atmos.o arno_evap.o calc_air_temperature.o \ calc_cloud_cover_fraction.o calc_longwave.o calc_rainonly.o \ calc_root_fraction.o calc_surf_energy_bal.o calc_veg_params.o \ canopy_evap.o check_files.o close_files.o \ cmd_proc.o compress_files.o compute_dz.o correct_precip.o \ dist_prec_ldas.o estimate_T1.o \ free_dist_prcp.o free_vegcon.o frozen_soil.o full_energy.o \ func_surf_energy_bal.o get_force_type.o get_global_param.o \ get_ldas_global_param.o initialize_ldas_atmos.o \ initialize_model_state_ldas.o initialize_global.o \ initialize_new_storm.o initialize_snow.o initialize_soil.o \ initialize_veg.o make_cell_data.o make_dist_prcp.o make_dmy_ldas.o \ make_energy_bal.o make_fname.o make_snow_data.o \ make_veg_var.o massrelease.o modify_Ksat.o nrerror.o \ open_debug.o open_file.o open_ldas_files.o open_ldas_metfiles.o \ open_ldas_outfiles.o open_state_file.o penman.o prepare_full_energy.o \ process_masks.o put_data_ldas.o \ read_arcinfo_ascii.o read_atmos_data.o \ read_initial_model_state_ldas.o read_snowband.o \ read_soilparam.o read_soilparam_arc.o read_veglib.o read_vegparam.o \ redistribute_during_storm.o root_brent.o runoff.o snow_intercept.o \ snow_melt.o snow_utility.o soil_conduction.o soil_thermal_eqn.o \ solve_snow.o store_moisture_for_debug.o surface_fluxes.o svp.o \ vicNl.o vicerror.o write_atmosdata.o write_data_ldas.o write_debug.o \ write_layer.o write_model_state_ldas.o write_soilparam.o \ write_vegparam.o write_vegvar.o # The following object files have been removed from VIC: # # check_state_file.o # dist_prec.o # initialize_atmos.o # initialize_model_state.o # make_dmy.o # make_in_and_outfiles.o # mtclim42_vic.o # mtclim42_wrapper.o # read_forcing_data.o # The following object files have been added to VIC: # # dist_prec_ldas.o # get_ldas_global_param.o # initialize_ldas_atmos.o # initialize_model_state_ldas.c # make_dmy_ldas.o # open_ldas_files.o # open_ldas_metfiles.o # open_ldas_outfiles.o # process_masks.o # read_initial_model_state_ldas.o # write_data_ldas.c # write_model_state_ldas.o SRCS = $(OBJS:%.o=%.c) EXE = nldas_vic_ldas all: @echo "Making VIC on `uname -n`: [`uname -m` running `uname -s`]"; \ case `uname -s` in \ 'Linux') \ if test `uname -m` = "i686"; then \ echo "Linux on i686"; \ make model EXE=VIC-LDAS.linux_i686;\ elif test `uname -m` = "ia64"; then \ echo "Linux on ia64"; \ make model EXE=VIC-LDAS.linux_ia64;\ elif test `uname -m` = "x86_64"; then \ echo "Linux on x86_64"; \ # make model EXE=VIC-LDAS.linux_x86_64;\ make model EXE=$(EXE);\ elif test `uname -m` = "alpha"; then \ echo "Linux on Alpha"; \ make model EXE=VIC-LDAS.linux_alpha;\ else \ echo "Unknown Linux architecture"; \ fi; \ ;; \ 'IRIX') echo "Irix"; \ make model EXE=VIC-LDAS.irix; \ ;; \ 'IRIX64') echo "Irix64"; \ make model EXE=VIC-LDAS.irix; \ ;; \ 'SunOS') echo "SunOS"; \ make model EXE=VIC-LDAS.sunos; \ ;; \ *) echo "Unknown system (`uname -s`)"; \ ;; \ esac; # make model default: make model clean:: /bin/rm -f *.o core $(EXE) log *~ model: $(OBJS) $(CC) -o $(EXE) $(OBJS) $(CFLAGS) $(LIBRARY) # ------------------------------------------------------------- # tags # so we can find our way around # ------------------------------------------------------------- tags: TAGS TAGS: $(SRCS) $(HDRS) etags $(SRCS) $(HDRS) clean:: \rm -f TAGS # ------------------------------------------------------------- # depend # ------------------------------------------------------------- depend: .depend .depend: $(SRCS) $(HDRS) $(CC) $(CFLAGS) -MM $(SRCS) > $@ clean:: \rm -f .depend