SHELL=/bin/sh # # PC Makefile to build the adc_prep program # Known to work with Visual Fortran 6.6 # # To use this file, rename it to: makefile # # Options: # # To create an adcprep executable, type: nmake adcprep # To create preprocessed module files, type: nmake preprocessed_mods # To create preprocessed source files, type: nmake preprocessed_srcs # To eliminate all partial files, type: nmake clean # # Written by R.A. Luettich # University of North Carolina at Chapel Hill # Institute of Marine Sciences # 5/21/03 ##################### Preprocessor and Compiler Flags ##################### DA = -P -DPC_DIG_FORT #Preprocessor flags for a single precision, scalar code FC = f90 FFLAGS = #Compiler flags ####################### Source File Dependencies ############################ # # this assigns a preprocessed .f file in the current (work) directory with the # corresponding target name # adcprep.f: ../prep/adcprep.F fpp $(DA) ../prep/adcprep.F ../work/adcprep.f decomp.f: ../prep/decomp.F fpp $(DA) ../prep/decomp.F ../work/decomp.f pre_global.f: ../prep/pre_global.F fpp $(DA) ../prep/pre_global.F ../work/pre_global.f presizes.f: ../prep/presizes.F fpp $(DA) ../prep/presizes.F ../work/presizes.f read_global.f: ../prep/read_global.F fpp $(DA) ../prep/read_global.F ../work/read_global.f prep.f: ../prep/prep.F fpp $(DA) ../prep/prep.F ../work/prep.f machdep.f: ../prep/machdep.F fpp $(DA) ../prep/machdep.F ../work/machdep.f metis.f: ../metis/metis.F fpp $(DA) ../metis/metis.F ../work/metis.f metis2.f: ../metis/metis2.F fpp $(DA) ../metis/metis2.F ../work/metis2.f ####################### Processed File Dependencies ########################## # # this splits the proprocessed code into "modules" and "mains" and assigns # a general variable name to both # ADCPREP_MODS = presizes.f pre_global.f ADCPREP_MANS = adcprep.f prep.f decomp.f machdep.f metis.f metis2.f read_global.f ########################## Executable Targets ############################### # # this associates a target with each variable name # preprocessed_mods: $(ADCPREP_MODS) preprocessed_mans: $(ADCPREP_MANS) ####################### Object File Dependencies ############################ # # this assigns a general variable name to the modules and mains object files # ADCPREP_MODS_OBJS = presizes.obj pre_global.obj ADCPREP_MANS_OBJS = adcprep.obj prep.obj read_global.obj decomp.obj machdep.obj metis.obj metis2.obj ######################## compilation rules ################################# $(ADCPREP_MODS_OBJS): preprocessed_mods $(FC) -c $(FFLAGS) $*.f $(ADCPREP_MANS_OBJS): preprocessed_mans $(FC) -c $(FFLAGS) $*.f ########################## Executable Targets ############################### adcprep: $(ADCPREP_MODS_OBJS) $(ADCPREP_MANS_OBJS) $(FC) /exe:adcprep $(ADCPREP_MODS_OBJS) $(ADCPREP_MANS_OBJS) ########################## Misc Commands #################################### clean: del *.f *.mod *.obj