# Multithreaded + multi-processing makefile for: # Linux prod-137 4.18.0-513.24.1.el8_9.x86_64 #1 SMP Thu Apr 4 18:13:02 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux # This makefile was generated automatically on # Mon Dec 2 13:37:38 CET 2024 # by the command: # ../../../tools/genmake2 -ds -m make -mods=../code -optfile=/albedo/home/mlosch/MITgcm/MITgcm/tools/build_options/linux_amd64_ifort_albedo -mpi # executed by: # mlosch@prod-137:/albedo/work/projects/p_testreport/MITgcm_ifort/verification/advect_cs/build # # OPTFILE="/albedo/home/mlosch/MITgcm/MITgcm/tools/build_options/linux_amd64_ifort_albedo" # # BUILDDIR : Directory where object files are written # SOURCEDIRS : Directories containing the source (.F) files # INCLUDEDIRS : Directories containing the header-source (.h) files # EXEDIR : Directory where executable that is generated is written # EXECUTABLE : Full path of executable binary # # CPP : C-preprocessor command # INCLUDES : Directories searched for header files # DEFINES : Macro definitions for CPP # MAKEDEPEND : Dependency generator # FC : Fortran compiler command # FFLAGS : Configuration/debugging options for FC # FOPTIM : Optimization options for FC # LINK : Command for link editor program # LIBS : Library flags /or/ additional optimization/debugging flags ROOTDIR = ../../.. BUILDDIR = . SOURCEDIRS = ../code $(ROOTDIR)/pkg/debug $(ROOTDIR)/pkg/diagnostics $(ROOTDIR)/pkg/exch2 $(ROOTDIR)/pkg/generic_advdiff $(ROOTDIR)/pkg/mdsio $(ROOTDIR)/pkg/mom_common $(ROOTDIR)/pkg/mom_fluxform $(ROOTDIR)/pkg/mom_vecinv $(ROOTDIR)/pkg/monitor $(ROOTDIR)/pkg/rw $(ROOTDIR)/eesupp/src $(ROOTDIR)/model/src INCLUDEDIRS = /albedo/soft/sw/spack-sw/intel-oneapi-mpi/2021.6.0-ypwmdz5/mpi/latest/lib/pkgconfig/../../include/ ../code $(ROOTDIR)/pkg/debug $(ROOTDIR)/pkg/diagnostics $(ROOTDIR)/pkg/exch2 $(ROOTDIR)/pkg/generic_advdiff $(ROOTDIR)/pkg/mdsio $(ROOTDIR)/pkg/mom_common $(ROOTDIR)/pkg/mom_fluxform $(ROOTDIR)/pkg/mom_vecinv $(ROOTDIR)/pkg/monitor $(ROOTDIR)/pkg/rw $(ROOTDIR)/eesupp/inc $(ROOTDIR)/model/inc EXEDIR = . EXECUTABLE = $(EXEDIR)/mitgcmuv TOOLSDIR = $(ROOTDIR)/tools OADTOOLS = #eh3 new defines for the adjoint work AUTODIFF = $(ROOTDIR)/pkg/autodiff EXE_ADJ = mitgcmuv_ad EXE_TLM = mitgcmuv_ftl EXE_SVD = mitgcmuv_svd ENABLED_PACKAGES = -DALLOW_DEBUG -DALLOW_DIAGNOSTICS -DALLOW_EXCH2 -DALLOW_GENERIC_ADVDIFF -DALLOW_MDSIO -DALLOW_MOM_COMMON -DALLOW_MOM_FLUXFORM -DALLOW_MOM_VECINV -DALLOW_MONITOR -DALLOW_RW DISABLED_PACKAGES = -UALLOW_ADMTLM -UALLOW_AIM_V23 -UALLOW_ATM2D -UALLOW_ATM_COMMON -UALLOW_ATM_COMPON_INTERF -UALLOW_ATM_OCN_COUPLER -UALLOW_ATM_PHYS -UALLOW_AUTODIFF -UALLOW_BBL -UALLOW_BLING -UALLOW_BULK_FORCE -UALLOW_CAL -UALLOW_CD_CODE -UALLOW_CFC -UALLOW_CHEAPAML -UALLOW_CHRONOS -UALLOW_COMPON_COMMUNIC -UALLOW_COST -UALLOW_CTRL -UALLOW_DIC -UALLOW_DOWN_SLOPE -UALLOW_EBM -UALLOW_ECCO -UALLOW_EMBED_FILES -UALLOW_EXF -UALLOW_FIZHI -UALLOW_FLT -UALLOW_FRAZIL -UALLOW_GCHEM -UALLOW_GGL90 -UALLOW_GMREDI -UALLOW_GRDCHK -UALLOW_GRIDALT -UALLOW_ICEFRONT -UALLOW_KL10 -UALLOW_KPP -UALLOW_LAND -UALLOW_LAYERS -UALLOW_LONGSTEP -UALLOW_MATRIX -UALLOW_MNC -UALLOW_MY82 -UALLOW_MYPACKAGE -UALLOW_OBCS -UALLOW_OCN_COMPON_INTERF -UALLOW_OFFLINE -UALLOW_OPENAD -UALLOW_OPPS -UALLOW_PP81 -UALLOW_PROFILES -UALLOW_PTRACERS -UALLOW_RBCS -UALLOW_REGRID -UALLOW_RUNCLOCK -UALLOW_SALT_PLUME -UALLOW_SBO -UALLOW_SEAICE -UALLOW_SHAP_FILT -UALLOW_SHELFICE -UALLOW_SHOWFLOPS -UALLOW_SMOOTH -UALLOW_SPHERE -UALLOW_STEEP_ICECAVITY -UALLOW_STREAMICE -UALLOW_TAPENADE -UALLOW_THSICE -UALLOW_TIMEAVE -UALLOW_ZONAL_FILT # These files are created by Makefile SPECIAL_FILES = PACKAGES_CONFIG.h AD_CONFIG.h FC_NAMEMANGLE.h BUILD_INFO.h EMBEDDED_FILES = # Unix ln (link) LN = ln -s # Dependency generator MAKEDEPEND = $(TOOLSDIR)/xmakedepend # Special preprocessor (KAP on DECs, FPP on Crays) KPP = # Fortran compiler FC = mpiifort # Fortran compiler F90C = mpiifort # C compiler CC = mpiicc # Link editor LINK = mpiifort # Defines for CPP DEFINES = -DWORDLENGTH=4 -DALLOW_USE_MPI -DHAVE_SYSTEM -DHAVE_FDATE -DHAVE_ETIME_FCT -DHAVE_CLOC -DHAVE_SETRLSTK -DHAVE_SIGREG -DHAVE_STAT -DHAVE_NETCDF -DHAVE_FLUSH # Includes for CPP INCLUDES = -I/albedo/soft/sw/spack-sw/netcdf-fortran/4.5.4-rujc52i/include -I/albedo/soft/sw/spack-sw/netcdf-fortran/4.5.4-rujc52i/include -I/albedo/soft/sw/spack-sw/intel-oneapi-mpi/2021.6.0-ypwmdz5/mpi/latest/lib/pkgconfig/../../include/ # default CPP includes for makedepend CPPINCLUDES = -I/albedo/soft/sw/spack-sw/intel-oneapi-mpi/2021.6.0-ypwmdz5/mpi/2021.6.0//include -I/usr/lib/gcc/x86_64-redhat-linux/8/include -I/usr/local/include -I/usr/include # Flags for KPP KFLAGS1 = KFLAGS2 = # Optim./debug for FC FFLAGS = -W0 -WB -convert big_endian -assume byterecl -fPIC FOPTIM = -ip -align -O3 -no-prec-div -fp-model fast=2 -march=core-avx2 -mtune=core-avx2 -qopt-prefetch=5 -unroll-aggressive # Optim./debug for FC F90FLAGS = -W0 -WB -convert big_endian -assume byterecl -fPIC F90OPTIM = -ip -align -O3 -no-prec-div -fp-model fast=2 -march=core-avx2 -mtune=core-avx2 -qopt-prefetch=5 -unroll-aggressive F90FIXEDFORMAT = -fixed -Tf # Flags for CC CFLAGS = -O0 -fPIC -ip # Files that should not be optimized NOOPTFILES = obcs_init_fixed.F obcs_set_connect.F NOOPTFLAGS = -ip -align -O1 -no-prec-div -fp-model fast=2 -march=core-avx2 # Flags and libraries needed for linking LIBS = -L/albedo/soft/sw/spack-sw/netcdf-fortran/4.5.4-rujc52i/lib -lnetcdff # Name of the makefile MAKEFILE = Makefile # Name of the make program MAKE = make F77_SRC_FILES = \ ini_vel.F \ chksum_tiled.F \ debug_call.F \ debug_cs_corner_uv.F \ debug_enter.F \ debug_fld_stats_rl.F \ debug_fld_stats_rs.F \ debug_leave.F \