Inter ifort.exe could not link impimt.lib

Inter ifort.exe could not link impimt.lib

Hi, James,

I am trying to use a makefile to generate a hybrid MPI/OpenMP application imex.exe. But I failed to do it and please see the following linking results:

U:\\imex\\bin\\opt64_hybridMPIOpenMP>clearmake -k -V imex.exe

        insert_string.exe -d -v  -c  -f \\imex\\imex.lib\\simver.f > simver.f

        ifort.exe /Qauto /cm /nologo /w /MT  /Qfpp  /DIFL_IA32 /DWIN_X64 /Qopenmp -c simver.f

        dir imex.exe > imex.exe &&  del /f imex.exe &&  ifort.exe /Qauto /cm /nologo /w /MT  /Qopenmp /4Yportlib *.obj mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib Wsock32.lib User32.lib shell
32.lib Advapi32.lib Gdi32.lib    libsecure.lib rlmclient.lib  binarrayfile.lib   /link /LARGEADDRESSAWARE /incremental:no /STACK:4000000 /out:imex.exe &&  mt.exe -manifest ReqExecLevelInvoker.manifest
 -outputresource:imex.exe;1 &&  echo 'Done.'
   Creating library imex.lib and object imex.exp
imex.obj : error LNK2019: unresolved external symbol MPI_INIT_THREAD referenced in function TMLOOP
imex.obj : error LNK2019: unresolved external symbol MPI_COMM_RANK referenced in function TMLOOP
imex.obj : error LNK2019: unresolved external symbol MPI_COMM_SIZE referenced in function TMLOOP
imex.obj : error LNK2019: unresolved external symbol MPI_FINALIZE referenced in function TMLOOP
imex.exe : fatal error LNK1120: 4 unresolved externals
*** Error code 1120
clearmake: Error: Build script failed for "imex.exe"

by the way, please see the envoirment variable settings attached below.  I guess I have set  intel MPI include and library ready.

Could you tell me how this happened? Thanks indeed in advance. 

Dingjun 

/********** Envorimental variable settings on my computer ***********/
ALLUSERSPROFILE=C:\\ProgramData
APPDATA=C:\\Users\\dingjun\\AppData\\Roaming
ARCH_PATH=intel64
ARCH_PATH_MPI=em64t
BIN_ROOT=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\bin\\
BUNDLE_NAME=Intel® Parallel Studio XE 2011 Update 1
CCASE_IP_VERSION=4
CCP_HOME=C:\\Program Files\\Microsoft Compute Cluster Pack\\
CMG_HOME=C:\\Program Files (x86)\\CMG
CMG_LIC_HOST=rlmserv
CommandPromptType=Native
CommonProgramFiles=C:\\Program Files\\Common Files
CommonProgramFiles(x86)=C:\\Program Files (x86)\\Common Files
CommonProgramW6432=C:\\Program Files\\Common Files
COMPUTERNAME=DINGJUNC
ComSpec=C:\\Windows\\system32\\cmd.exe
CPRO_PATH=C:\\Program Files (x86)\\Intel\\ComposerXE-2011
CPU=i386
C_EM64T_REDIST12=C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\
C_IA32_REDIST12=C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\
C_TARGET_ARCH=intel64
DEFLOGDIR=C:\\ProgramData\\McAfee\\DesktopProtection
envsdk_regkey=9.0
FP_NO_HOST_CHECK=NO
Framework35Version=v3.5
FrameworkDir=C:\\Windows\\Microsoft.NET\\Framework64
FrameworkDIR64=C:\\Windows\\Microsoft.NET\\Framework64
FrameworkVersion=v4.0.30319
FrameworkVersion64=v4.0.30319
FSHARPINSTALLDIR=C:\\Program Files (x86)\\Microsoft F#\\v4.0\\
F_EM64T_REDIST12=C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\
F_IA32_REDIST12=C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\
HOMEDRIVE=C:
HOMEPATH=\\Users\\dingjun
ICPP_COMPILER12=C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\
IFORT_COMPILER12=C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\
IMPI_BIN=C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\\\em64t\\bin;
INCLUDE=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\compiler\\include;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\compiler\\include\\intel64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\INCLUDE;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\ATLMFC\\INCLUDE;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\include;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp\\include;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\mkl\\include;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\tbb\\bin\\..\\include;C:\\Program Files\\Microsoft Visual Studio\\DF98\\IMSL\\INCLUDE;C:\\Program Files\\Microsoft Visual Studio\\DF98\\INCLUDE;C:\\Program Files\\Microsoft Visual Studio\\VC98\\INCLUDE;C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\VC\\include;C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\VC\\atlmfc\\include;C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\em64t\\include;C:\\Program Files\\MPICH2\\include
INSPECTOR_XE_2011_DIR=C:\\Program Files (x86)\\Intel\\Inspector XE 2011\\
INTEL_LICENSE_FILE=C:\\Program Files (x86)\\Common Files\\Intel\\Licenses
IPPROOT=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp
IPP_TARGET_ARCH=intel64
I_MPI_ROOT=C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\
KMP_AFFINITY=compact,1
LIB=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\compiler\\lib;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\compiler\\lib\\intel64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\ATLMFC\\LIB\\amd64;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\lib\\x64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp\\lib\\intel64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp\\..\\compiler\\lib\\intel64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\mkl\\lib\\intel64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\compiler\\lib\\intel64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\tbb\\bin\\..\\lib\\intel64\\vc10;C:\\Program Files\\Microsoft Visual Studio\\DF98\\IMSL\\LIB;C:\\Program Files\\Microsoft Visual Studio\\DF98\\LIB;C:\\Program Files\\Microsoft Visual Studio\\VC98\\LIB;C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\VC\\lib\\amd64;C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\em64t\\lib;C:\\Program Files\\MPICH2\\lib
LIBMPI=C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\em64t\\lib
LIBPATH=C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Windows\\Microsoft.NET\\Framework64\\v3.5;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\ATLMFC\\LIB\\amd64;
LINK_F90=imsl.lib imsls_err.lib imslmpistub.lib impimt.lib
LOCALAPPDATA=C:\\Users\\dingjun\\AppData\\Local
LOGONSERVER=\\\\NTSVR1
MKLROOT=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\mkl
MKL_LP64_ILP64=lp64
MKL_TARGET_ARCH=intel64
MOD_NAME=mod
MPICHHOME=C:\\Program Files\\MPICH2
MSVS_VAR_SCRIPT="C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\Tools\\..\\..\\VC\\vcvarsall.bat"
NUMBER_OF_PROCESSORS=12
OMP_SCHEDULE=static,1
OS=Windows_NT
Path=C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\\\em64t\\bin;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\bin\\intel64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\redist\\intel64\\compiler;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\BIN\\amd64;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Windows\\Microsoft.NET\\Framework64\\v3.5;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\VCPackages;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\Tools;C:\\Program Files (x86)\\HTML Help Workshop;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\bin\\NETFX 4.0 Tools\\x64;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\bin\\x64;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\bin;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp\\..\\redist\\intel64\\ipp;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\ipp\\..\\redist\\intel64\\compiler;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\redist\\intel64\\mkl;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\redist\\intel64\\compiler;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\tbb\\bin\\..\\..\\redist\\intel64\\tbb\\vc10;C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\em64t\\bin;C:\\Program Files (x86)\\Intel\\MPI\\4.0.3.009\\ia32\\bin;C:\\Program Files (x86)\\CMG\\LAUNCHER\\2011.20\\Win32\\exe;C:\\Program Files\\MPICH2\\bin;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\ia32\\tbb\\vc10;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\intel64\\tbb\\vc10;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\intel64\\ipp;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\ia32\\ipp;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\intel64\\mkl;C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\redist\\ia32\\mkl;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\intel64\\mpirt;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\intel64\\compiler;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\ia32\\mpirt;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\ia32\\compiler;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\intel64\\compiler;C:\\Program Files (x86)\\Common Files\\Intel\\Shared Libraries\\redist\\ia32\\compiler; C:\\Program Files (x86)\\CMG\\LAUNCHER\\2011.01\\Win32\\exe;C:\\Program Files (x86)\\CMG\\LAUNCHER\\2009.13\\Win32\\exe;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Microsoft SQL Server\\90\\Tools\\binn\\;C:\\Program Files (x86)\\IBM\\RationalSDLC\\ClearCase\\bin;C:\\Program Files (x86)\\IBM\\RationalSDLC\\common;c:\\program files (x86)\\winxs32\\bin;c:\\pfe;c:\\windiff;C:\\Program Files (x86)\\Common Files\\Roxio Shared\\DLLShared\\;C:\\Program Files (x86)\\Common Files\\Roxio Shared\\10.0\\DLLShared\\;C:\\Program Files\\Microsoft Compute Cluster Pack\\Bin\\;D:\\tools;D:\\tools\\dist;C:\\Program Files (x86)\\Intel\\Compiler\\11.1\\051\\bin\\intel64;C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\VC\\bin;C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\VC\\bin\\amd64;C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\redist\\intel64\\mpirt;
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
Platform=X64
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 44 Stepping 2, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=2c02
PRODUCT_NAME=Intel® Composer XE 2011
PRODUCT_NAME_FULL=Intel® Composer XE 2011 Update 3 (package 175)
ProgramData=C:\\ProgramData
ProgramFiles=C:\\Program Files
ProgramFiles(x86)=C:\\Program Files (x86)
ProgramW6432=C:\\Program Files
PROMPT=$P$G
PSModulePath=C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules\\
PUBLIC=C:\\Users\\Public
RATIONAL_ICU4J_DIR=C:\\Program Files (x86)\\IBM\\RationalSDLC\\common\\java\\icu
RATIONAL_ICU4J_VERSION=3_8_1
REDIST=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\redist
ROOT=C:\\Program Files (x86)\\Intel\\ComposerXE-2011
RoxioCentral=C:\\Program Files (x86)\\Common Files\\Roxio Shared\\10.0\\Roxio Central36\\
SCRIPT_NAME=compilervars_arch.bat
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\\Windows
TARGET_ARCH=intel64
TARGET_VS=vs2010
TARGET_VS_ARCH=amd64
TBB30_BIN_DIR=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\tbb\\bin\\
TBB30_INSTALL_DIR=C:\\Program Files (x86)\\Intel\\ComposerXE-2011\\tbb\\bin\\..
TBB_ARCH_PLATFORM=intel64\\vc10
TBB_CXX=icl.exe
TBB_TARGET_ARCH=intel64
TBB_TARGET_VS=vc10
TEMP=C:\\Users\\dingjun\\AppData\\Local\\Temp
TMP=C:\\Users\\dingjun\\AppData\\Local\\Temp
USERDNSDOMAIN=CGY.CMGL.CA
USERDOMAIN=CMGL
USERNAME=dingjun
USERPROFILE=C:\\Users\\dingjun
VCINSTALLDIR=C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\
VNI_F90_MSG=C:\\Program Files\\Microsoft Visual Studio\\DF98\\IMSL\\MESSAGE
VS100COMNTOOLS=C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\Tools\\
VSEDEFLOGDIR=C:\\ProgramData\\McAfee\\DesktopProtection
VSINSTALLDIR=C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\
VTUNE_AMPLIFIER_XE_2011_DIR=C:\\Program Files (x86)\\Intel\\VTune Amplifier XE 2011\\
windir=C:\\Windows
WindowsSdkDir=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\
WIN_TITLE=Intel® Composer XE 2011 Intel® 64 Visual Studio 2010
WIN_TITLE_ARCH=Intel® 64
WIN_TITLE_VS=Visual Studio 2010

 

17 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione
Ritratto di James Tullos (Intel)

Hi Dingjun,

Please try adding impimt.lib to your link line.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

Hi again, James,

I have tried to do it and failed. I have attached below my makefile. Could you see it and tell me where to add it?

Thanks indeed.

Dingjun

Ritratto di James Tullos (Intel)

Hi Dingjun,

The file did not attach, please try again.  Or if you want to email it directly to me, that will work as well.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

# -------------------------------------------------------------------------------------------
# | |
# | UNIX MAKEFILE for IMEX |
# | ---------------------- |
# | |
# | Usage: |
# | |
# | clearmake |
# | ..........................to make an imex executable: imex.exe |
# | |
# | clearmake imex.exe |
# | ..........................to make an imex executable: imex.exe |
# | |
# | clearmake fgmx.dll |
# | ..........................to make an FORMEX dll (see note 1): fgmx.dll |
# | |
# | clearmake mxsrc.split |
# | ..........................to make IMEX split source code |
# | |
# | clearmake imex.src |
# | ..........................to make IMEX secure source code (see note 5) |
# | |
# | clearmake fgmxsrc.split |
# | ..........................to make PC FORMEX IMEX split source code |
# | |
# | clearmake fx.src |
# | ..........................to copy PC FORMEX IMEX split source code |
# | |
# | Notes: |
# | |
# | Note 1: to make FGMX.DLL: in Makefile.options uncomment |
# | imex.o := SED_PROCESSOR = 's/^c.fg//;s/^ program imex//' |
# | There are some other Makefile.options changes - see Makefile_pc_fmo.options |
# | for optimized code and Makefile_pc-fmd.options for debug code. |
# | |
# | Note 2: Do not delete source code files that are generated by a build rule |
# | (e.g., 'imex2_aloc.f' for target 'imex2.inc'). |
# | Unlike MAKE, CLEARMAKE checks for the existence of these intermediate |
# | files. It is also good to have them for debugging purposes. |
# | Note 3: When using CLEARMAKE, put the element-dependent compile options |
# | in the file 'Makefile.options'. |
# | Note 4: The macro SED_PROCESSOR is the 'sed' command to enable |
# | platform-specific code, etc. It is set to null by default, |
# | but should be assigned for the required element |
# | in 'Makefile.options'. |
# | Note 5: The target imex.src for UNIX platforms builds a secure source in a non-vob |
# | directory. A build of imex.exe in /imex/bin must be done first. |
# | For pc target platform, imex.src builds a source build (non-secure) in a |
# | non-vob directory, including dll's and lib's. These files may be copied |
# | to the pc, compiled and then copied back along with the .o's. The following |
# | source files must then be deleted: |
# | aimptr.f avmult.f forbkv.f genluv.f jdump.f minvsq.f order.f prepro.f |
# | presym.f pstpro.f scalp.f solver.f symfcv.f mxslvr.f mxslvr_aloc.f |
# | mxslvr1_aloc.f callap.f callls.f callsc.f callsl.f simver.f mxprsl_mod.f |
# | |
# -------------------------------------------------------------------------------------------

# This version for the hybrid MPI/OpenMP
#-- Over-all Defaults
FC = f90
FFLAGS =
CFLAGS =
LIBS =
UXKEY =
SED_PROCESSOR =
PLATFORM =
D = \
O = obj
COPY = cp -f
COPY_PREPRO = cp -f
PREPRO = fpp /P
DELETE = rm -f
CAT = cat
CHDIR = cd
SED = /bin/sed
MOVE = mv
LINK_OUT = -o $(N)
XDR_TYPE = ux
EOC = ;
SECURE_INC =
OPENMP_DLL =
LSDIR = dir
REDIR =
VIEW =
D2U =
MISSING_IMPORTS = impimt.lib
LICENSE_LIB = libsecure.a

REPR_LIB = librlm.a
BLD_HOST_TYPE = win32
BINREADER_LIB = libbinarrayfile.a
BINREADER_DLL = binarrayfile.dll
MANIFEST = mt.exe ReqExecLevelInvoker.manifest
MANIFEST_EXEC= mt.exe -manifest ReqExecLevelInvoker.manifest -outputresource:imex.exe;1
COMPVER_SRC= compver.f
XDRMOD_SRC = xdrint_mod.f
XDRMOD = $(XDRMOD_SRC:.f=.$(O))
PC_XDR_LIB =impimt.lib

# setup large ints to be 4 or 8 bytes
LARGE_INT_MOD_SRC = large_int4_mod.f

# f90 style allocate's
ALOC = $(@:_mod.f=_aloc.f)
F90_DEPENDENCY = $(F90_MOD_OBJS)

# ---------------------------------------------
# | |
# | L I B R A R Y M A C R O S |
# | |
# ---------------------------------------------

#-- IMEX Library
# -------------

IMEX_BIN = $(VIEW)$(D)imex$(D)bin$(D)

#-- Dependencies Library
# --------------------

MAKE_OPTS = $(MAKEFILE).options

IMEX_LIB = $(VIEW)$(D)imex$(D)imex.lib$(D)

IMEX_OBJS = \
imex.$(O) \
allcat.$(O) \
asignv.$(O) \
dynamx.$(O) \
dygrck.$(O) \
dbgpar.$(O) \
aqcal.$(O) \
anmist.$(O) \
begin.$(O) \
bryflw.$(O) \
callap.$(O) \
calljb.$(O) \
calllp.$(O) \
callls.$(O) \
callsc.$(O) \
callsl.$(O) \
callst.$(O) \
callwm.$(O) \
call_eqtpar.$(O) \
chkcmx.$(O) \
cldate.$(O) \
clday.$(O) \
compak.$(O) \
conv.$(O) \
cubeq.$(O) \
cvgptv.$(O) \
datini.$(O) \
datum.$(O) \
dbrent.$(O) \
denogs.$(O) \
dicrak.$(O) \
diform.$(O) \
diltab.$(O) \
dmndmx.$(O) \
dnpntr.$(O) \
dpdzwb.$(O) \
dvzcal.$(O) \
dwlayr.$(O) \
endmci.$(O) \
endpts.$(O) \
eqnmfc.$(O) \
eqnsa.$(O) \
eqnsav.$(O) \
eqnsfv.$(O) \
expiry.$(O) \
ffrict.$(O) \
fluxsct.$(O) \
flxscout.$(O) \
fluxsfm.$(O) \
frcmoody.$(O) \
genbis.$(O) \
grgetsim.$(O) \
hystst.$(O) \
incomp.$(O) \
indasr.$(O) \
indata.$(O) \
indatm.$(O) \
indbug.$(O) \
indt.$(O) \
indynm.$(O) \
inendpt_recur.$(O) \
ineqil.$(O) \
infohd.$(O) \
inhert_gm.$(O) \
iniblks.$(O) \
inini1.$(O) \
inini2.$(O) \
ininit.$(O) \
inio.$(O) \
iniord.$(O) \
innum.$(O) \
inrel.$(O) \
inres.$(O) \
inres_fsct.$(O) \
intplt.$(O) \
intwrt.$(O) \
inwell.$(O) \
inwint.$(O) \
jbuild.$(O) \
jst.$(O) \
krochk.$(O) \
krolup.$(O) \
lay1mx.$(O) \
lescal.$(O) \
lessr2.$(O) \
levstr.$(O) \
linint.$(O) \
lstpar.$(O) \
lstpro.$(O) \
matbal.$(O) \
matinv.$(O) \
maxchg.$(O) \
mcinit.$(O) \
mnbrak.$(O) \
multi1.$(O) \
md2sur.$(O) \
mxasin.$(O) \
mxcent.$(O) \
mxcspf.$(O) \
mxdmnew.$(O) \
mxeos.$(O) \
mxgetf.$(O) \
mxinit.$(O) \
mxitfg.$(O) \
mxptos.$(O) \
mxrops.$(O) \
mxsetf.$(O) \
mxsrwg.$(O) \
mxwskp.$(O) \
ndarcy.$(O) \
nondarcy.$(O) \
opprnt.$(O) \
outin.$(O) \
outv.$(O) \
outflux.$(O) \
pcmnmx.$(O) \
phswch.$(O) \
plawln.$(O) \
plawrg.$(O) \
plchi.$(O) \
pldchi.$(O) \
pormci.$(O) \
porcrb.$(O) \
portab.$(O) \
poten.$(O) \
power.$(O) \
prkrpc.$(O) \
prnbgn.$(O) \
propc.$(O) \
propi.$(O) \
proppc.$(O) \
propsn.$(O) \
propsp.$(O) \
propwb.$(O) \
prpsat.$(O) \
psdobb.$(O) \
psdocm.$(O) \
psdoi.$(O) \
psdosb.$(O) \
psfcal.$(O) \
pthresh.$(O) \
pvtchk.$(O) \
qquit.$(O) \
rdprn.$(O) \
regm2.$(O) \
relpmc.$(O) \
resid.$(O) \
resolve_cons.$(O) \
resolve_ipr.$(O) \
resolve_link.$(O) \
resolve_op.$(O) \
restrd.$(O) \
restwt.$(O) \
rk4wb.$(O) \
rk4mom.$(O) \
rkintdf.$(O) \
rkintmo.$(O) \
rkintw.$(O) \
rkqcwb.$(O) \
rkqmom.$(O) \
rhows.$(O) \
rstrcn.$(O) \
rstrdd.$(O) \
rstrdw.$(O) \
rstsec.$(O) \
satlrt.$(O) \
satrbl.$(O) \
save.$(O) \
savejb.$(O) \
sbasin.$(O) \
sctcal.$(O) \
secout.$(O) \
secsr2.$(O) \
secwel.$(O) \
setpfc.$(O) \
setprf.$(O) \
settbp.$(O) \
setupv.$(O) \
shif.$(O) \
simdim.$(O) \
sltsmo.$(O) \
slvint.$(O) \
solpas.$(O) \
sorland.$(O) \
spcchr.$(O) \
spcsrf.$(O) \
spline.$(O) \
splinl.$(O) \
splint.$(O) \
splinw.$(O) \
srfint.$(O) \
srfout.$(O) \
srgrid.$(O) \
stab.$(O) \
strat.$(O) \
strsr2.$(O) \
swtsmo.$(O) \
sur2md.$(O) \
tabsat.$(O) \
tblint.$(O) \
tblchk.$(O) \
thswch.$(O) \
timsum.$(O) \
totpi.$(O) \
trap.$(O) \
trmcrb.$(O) \
tsbomb.$(O) \
tsconv.$(O) \
tshead.$(O) \
tsio.$(O) \
tswcnv.$(O) \
tswell.$(O) \
tswlap.$(O) \
unitcn.$(O) \
upkcyc.$(O) \
validk.$(O) \
varass.$(O) \
velcty.$(O) \
vrec.$(O) \
watrvs.$(O) \
wbcomp.$(O) \
wecho.$(O) \
welbr1.$(O) \
welbr2.$(O) \
welbr3.$(O) \
welbr4.$(O) \
welbr5.$(O) \
welbr7.$(O) \
welbrn.$(O) \
welcum.$(O) \
welhed.$(O) \
well.$(O) \
wellcs.$(O) \
welmom.$(O) \
welout.$(O) \
welpis.$(O) \
welscl.$(O) \
welsrf.$(O) \
whpcal.$(O) \
wlmpas.$(O) \
wlrate.$(O) \
wpinit.$(O) \
wpnter.$(O) \
wdpntr.$(O) \
wscout.$(O) \
xfcalc.$(O)

#-- AIMSOL Library
# --------------

AIMSOL_LIB = $(VIEW)$(D)aimsol$(D)aimsol.lib$(D)

AIMSOL_OBJS = \
aimptp.$(O) \
aimptr.$(O) \
avmulp.$(O) \
avmult.$(O) \
eqtpar.$(O) \
forbkp.$(O) \
forbkv.$(O) \
genlup.$(O) \
genluv.$(O) \
gmresp.$(O) \
jdump.$(O) \
mindeg.$(O) \
minsqp.$(O) \
minvsq.$(O) \
order.$(O) \
orderp.$(O) \
parasol.$(O) \
prepro.$(O) \
preprp.$(O) \
presym.$(O) \
presyp.$(O) \
pstpro.$(O) \
pstprp.$(O) \
rdsord.$(O) \
scalp.$(O) \
scalpp.$(O) \
solver.$(O) \
symfcp.$(O) \
symfcv.$(O)

#-- GRID Library
# --------------

GRID_LIB = $(VIEW)$(D)shared$(D)grid.lib$(D)

GRID_OBJS = \
grappk.$(O) \
graqui.$(O) \
grcell.$(O) \
grcnc1.$(O) \
grcnc2.$(O) \
grcnc4.$(O) \
grcnc5.$(O) \
grcnc6.$(O) \
grcnc7.$(O) \
grcnc8.$(O) \
grsrcd.$(O) \
grcnc8nb.$(O) \
grcorn2nd.$(O) \
grcncb.$(O) \
grcnct.$(O) \
grwritecn.$(O) \
gradrg.$(O) \
grcncx.$(O) \
grcncw.$(O) \
grcnmp.$(O) \
grcnnp.$(O) \
grcorn.$(O) \
grdbas.$(O) \
grdbug.$(O) \
grdbst.$(O) \
grinit.$(O) \
grlast.$(O) \
grload.$(O) \
grmai1.$(O) \
grmain.$(O) \
grmess.$(O) \
grnhrt.$(O) \
grpdgd.$(O) \
grpkpt.$(O) \
grmkpt.$(O) \
grptcs.$(O) \
grrgtl.$(O) \
grrdap.$(O) \
grrdar.$(O) \
grrdcp.$(O) \
grrdg2.$(O) \
grrdg3.$(O) \
grrdg4.$(O) \
grrdg5.$(O) \
grrdg6.$(O) \
gramal.$(O) \
grptwtsr.$(O) \
grrdgr.$(O) \
grrdpa.$(O) \
grrdrg.$(O) \
grread.$(O) \
grresr.$(O) \
grrev1.$(O) \
grrev2.$(O) \
grrevu.$(O) \
grscan.$(O) \
grspec.$(O) \
grspt1.$(O) \
grspt2.$(O) \
grspt3.$(O) \
grspt4.$(O) \
grspt5.$(O) \
grspt6.$(O) \
grspt5nb.$(O) \
grspt6nb.$(O) \
grsptl.$(O) \
grtrnf.$(O) \
grunit.$(O) \
grutil.$(O) \
grvar1.$(O) \
grvar2.$(O) \
grvarm.$(O) \
igrlnk.$(O)

# grife1.$(O) \
# grife2.$(O) \

#-- MXGM Library
# ------------

MXGM_LIB = $(VIEW)$(D)shared$(D)mxgm.lib$(D)

MXGM_OBJS = \
blksat.$(O) \
condpt.$(O) \
dtbinp.$(O) \
dwodgo.$(O) \
gasden.$(O) \
kro3p.$(O) \
mcdeps.$(O) \
mcdpfn.$(O) \
mcdpit.$(O) \
mcsort.$(O) \
mdqcin.$(O) \
oilden.$(O) \
pcgwoc.$(O) \
rk4in.$(O) \
rk4in2.$(O) \
rk4st2.$(O) \
rk4stp.$(O) \
rkqci2.$(O) \
rkqcin.$(O) \
rmbgin.$(O) \
satsmc.$(O) \
tbintg.$(O) \
watden.$(O) \
welprm.$(O)

#-- PARASOL Library
# ---------------

PARASOL_LIB = $(VIEW)$(D)aimsol$(D)parasol.lib$(D)

PARASOL_OBJS = \
pschbd.$(O) \
psgnbs.$(O) \
pslvds.$(O) \
pslvst.$(O) \
pspldn.$(O) \
psreor.$(O) \
psrtls.$(O) \
psslds.$(O) \
ps2dds.$(O) \
ps2dds_regular.$(O) \
ps2dds_general.$(O) \
ps2dds_actpls.$(O) \
ps2dds_wrkbalance.$(O) \
ps2dds_auxil.$(O) \
psspa2.$(O) \
psspg1.$(O) \
psvrtx.$(O)

#-- POINTER Library
# ---------------

POINTER_LIB = $(VIEW)$(D)shared$(D)pointer.lib$(D)

POINTER_OBJS = \
acopy.$(O) \
aucopy.$(O) \
cginit.$(O) \
cstfun.$(O) \
cstijk.$(O) \
cstuba.$(O) \
dpnter.$(O) \
ijktps.$(O) \
inuba.$(O) \
ipftpm.$(O) \
ipmtpf.$(O) \
prtbln.$(O) \
prtcon.$(O) \
prtset.$(O) \
pstsv.$(O) \
ptasin.$(O) \
ptcsva.$(O) \
ptprn.$(O) \
ptwtsr.$(O) \
ubatcs.$(O)

#-- REPORT Library
# ---------------

REPORT_LIB = $(VIEW)$(D)shared$(D)report.lib$(D)

REPORT_OBJS = \
rpfmln.$(O) rppmul.$(O) rptabl.$(O)

#-- SR2 Library
# -----------

SR2_LIB = $(VIEW)$(D)shared$(D)sr2.lib$(D)

SR2_OBJS = \
sratcp.$(O) \
srclos.$(O) \
srcpin.$(O) \
srdict.$(O) \
srfrwd.$(O) \
srgeta.$(O) \
srinit.$(O) \
srnckl.$(O) \
srprec.$(O) \
srrdea.$(O) \
srrdin.$(O) \
srrdt2.$(O) \
srrdt2c.$(O) \
srrdt3.$(O) \
srrdt4.$(O) \
srrdt5.$(O) \
srrdtm.$(O) \
srrkls.$(O) \
srscan.$(O) \
srsclr.$(O) \
srscrr.$(O) \
srscxd.$(O) \
srseta.$(O) \
srskip.$(O) \
srskt2.$(O) \
srvrat.$(O) \
srwkls.$(O) \
srwkni.$(O) \
srwpar.$(O) \
srwpt2.$(O) \
srwret.$(O) \
srwrfn.$(O) \
srwrt1.$(O) \
srwrt2.$(O) \
srwrt2c.$(O) \
srwrt3.$(O) \
srwrt4.$(O) \
srwrt5.$(O) \
srwrt6.$(O) \
srwrtm.$(O)

SR2_C_OBJS = xdrint.$(O)

#-- TOOLS Library
# -------------

TOOLS_LIB = $(VIEW)$(D)shared$(D)tools.lib$(D)

TOOLS_OBJS = \
aiqual.$(O) \
cdatim.$(O) \
chtoin.$(O) \
chtoup.$(O) \
cmg_sleep.$(O) \
cmgtar.$(O) \
cpack.$(O) \
datime.$(O) \
date_to_days.$(O) \
dbtoch.$(O) \
exxit.$(O) \
getcpu.$(O) \
getdpr.$(O) \
getclk.$(O) \
gethost.$(O) \
getlen.$(O) \
getwrd.$(O) \
header.$(O) \
hepsrt.$(O) \
ihpsrt.$(O) \
inaray.$(O) \
inuary.$(O) \
infile.$(O) \
in8toch.$(O) \
inltoch.$(O) \
intabl.$(O) \
intoch.$(O) \
kyobls.$(O) \
kyskip.$(O) \
kwget.$(O) \
kwset.$(O) \
lnb.$(O) \
messag.$(O) \
parse.$(O) \
procstat.$(O) \
rcaray.$(O) \
rcdpr.$(O) \
rdaray.$(O) \
rdline.$(O) \
retoch.$(O) \
rltoch.$(O) \
setio.$(O) \
setio5.$(O) \
sigcl1.$(O) \
sigft1.$(O) \
siggst.$(O) \
str_delim.$(O) \
string.$(O) \
tearwd.$(O) \
wsallc.$(O) \
wscall.$(O) \
wschck.$(O) \
wsfree.$(O) \
wsinit.$(O) \
wsprnt.$(O)

TOOLS_C_OBJS =

#-- WELMAN Library
# --------------

WELMAN_LIB = $(VIEW)$(D)shared$(D)welman.lib$(D)

WELMAN_OBJS = \
wmalin.$(O) \
wmbdin.$(O) \
wmbrwi.$(O) \
wmbwit.$(O) \
wmcent.$(O) \
wmcgin.$(O) \
wmcknm.$(O) \
wmclin.$(O) \
wmcmpi.$(O) \
wmcmpp.$(O) \
wmcmsg.$(O) \
wmcnvt.$(O) \
wmcsin.$(O) \
wmcsvi.$(O) \
wmcwsi.$(O) \
wmcwst.$(O) \
wmdvin.$(O) \
wmdwsm.$(O) \
wmfmiw.$(O) \
wmfmpw.$(O) \
wmfwin.$(O) \
wmgcci.$(O) \
wmgccp.$(O) \
wmgccv.$(O) \
wmgcin.$(O) \
wmgdri.$(O) \
wmgdrp.$(O) \
wmget.$(O) \
wmgetf.$(O) \
wmgetll.$(O) \
wmghyd.$(O) \
wmghyi.$(O) \
wmgimr.$(O) \
wmglin.$(O) \
wmglls.$(O) \
wmgpmr.$(O) \
wmgrai.$(O) \
wmgrap.$(O) \
wmgrcn.$(O) \
wmgrin.$(O) \
wmgrls.$(O) \
wmgydi.$(O) \
wmgydr.$(O) \
wmgyfi.$(O) \
wmgyfs.$(O) \
wmhfpin.$(O) \
wmhydi.$(O) \
wmhydr.$(O) \
wmhyfs.$(O) \
wmhymd.$(O) \
wmhysi.$(O) \
wmichc.$(O) \
wmigai.$(O) \
wmigap.$(O) \
wmilst.$(O) \
wmimap.$(O) \
wminit.$(O) \
wminmr.$(O) \
wminsr.$(O) \
wminje.$(O) \
wminpt.$(O) \
wmipai.$(O) \
wmipap.$(O) \
wmisin.$(O) \
wmisum.$(O) \
wmitin.$(O) \
wmitlu.$(O) \
wmlbin.$(O) \
wmlcin.$(O) \
wmlgci.$(O) \
wmlgcp.$(O) \
wmlgin.$(O) \
wmlifd.$(O) \
wmlift.$(O) \
wmllin.$(O) \
wmllrc.$(O) \
wmlmpsetlysm.$(O) \
wmlyid.$(O) \
wmlynm.$(O) \
wmlopd.$(O) \
wmlypr.$(O) \
wmlimc.$(O) \
wmlioc.$(O) \
wmlpmc.$(O) \
wmlpoc.$(O) \
wmlsin.$(O) \
wmlsrt.$(O) \
wmlyad.$(O) \
wmlyif.$(O) \
wmlypn.$(O) \
wmmain.$(O) \
wmmani.$(O) \
wmmanp.$(O) \
wmmcni.$(O) \
wmmcon.$(O) \
wmmimr.$(O) \
wmmirt.$(O) \
wmmirz.$(O) \
wmmisi.$(O) \
wmmnti.$(O) \
wmmpmr.$(O) \
wmmprt.$(O) \
wmmprz.$(O) \
wmmpsi.$(O) \
wmmsnt.$(O) \
wmmssm.$(O) \
wmmtri.$(O) \
wmmtrt.$(O) \
wmmwpr.$(O) \
wmmxit.$(O) \
wmmxth.$(O) \
wmncch.$(O) \
wmncci.$(O) \
wmndpn.$(O) \
wmndti.$(O) \
wmocni.$(O) \
wmocon.$(O) \
wmopnl.$(O) \
wmopnw.$(O) \
wmotin.$(O) \
wmowwi.$(O) \
wmowwp.$(O) \
wmpchc.$(O) \
wmpiin.$(O) \
wmplri.$(O) \
wmplrt.$(O) \
wmplst.$(O) \
wmprin.$(O) \
wmprmr.$(O) \
wmprn1.$(O) \
wmprn3.$(O) \
wmprn4.$(O) \
wmprnt.$(O) \
wmprod.$(O) \
wmpsum.$(O) \
wmptin.$(O) \
wmptlu.$(O) \
wmpwwo.$(O) \
wmqimx.$(O) \
wmqpmx.$(O) \
wmrcal.$(O) \
wmrcit.$(O) \
wmrcyc.$(O) \
wmrgin.$(O) \
wmrkai.$(O) \
wmrkap.$(O) \
wmrlin.$(O) \
wmrllr.$(O) \
wmrlnl.$(O) \
wmropn.$(O) \
wmrsrd.$(O) \
wmrswt.$(O) \
wmrtgi.$(O) \
wmrtgp.$(O) \
wmrtzo.$(O) \
wmrzth.$(O) \
wmrzoi.$(O) \
wmscan.$(O) \
wmscin.$(O) \
wmscpm.$(O) \
wmset.$(O) \
wmsetf.$(O) \
wmsr2h.$(O) \
wmsr2m.$(O) \
wmsrln.$(O) \
wmtrch.$(O) \
wmtrin.$(O) \
wmtrst.$(O) \
wmtrte.$(O) \
wmtrwt.$(O) \
wmupcm.$(O) \
wmvldk.$(O) \
wmvpin.$(O) \
wmwain.$(O) \
wmwbhp.$(O) \
wmwfri.$(O) \
wmwfrg.$(O) \
wmwfrp.$(O) \
wmwgfp.$(O) \
wmwhin.$(O) \
wmwhsm.$(O) \
wmwhyd.$(O) \
wmwlin.$(O) \
wmwlls.$(O) \
wmwlpn.$(O) \
wmwlsr.$(O) \
wmwlwt.$(O) \
wmwtin.$(O)

#-- BINARRAY Library
# ----------------

BINARRAY_LIB = $(VIEW)$(D)shared$(D)binarrayfile.lib

IMPI_LIB = C:$(D)Program Files (x86)$(D)Intel$(D)MPI$(D)4.0.3.009$(D)em64t$(D)lib$(D)impimt.lib

#-- CMG License Library
# -------------------

CMGSECURE_LIB = $(VIEW)$(D)shared$(D)secure.lib$(D)cmgsecure$(D)

#-- Reprise License Library
# -----------------------

REPRISELM_LIB = $(VIEW)$(D)shared$(D)secure.lib$(D)repriselm$(D)

#-- Binary Pool
# -----------

BINARY_POOL = $(VIEW)$(D)imex$(D)binary_pool$(D)

BINARY_OBJS = $(IMEX_OBJS) simver.$(O) compver.$(O) \
$(F90_ALOC_OBJS) \
$(AIMSOL_OBJS) \
$(GRID_OBJS) \
$(MXGM_OBJS) \
$(PARASOL_OBJS) \
$(POINTER_OBJS) \
$(REPORT_OBJS) \
$(SR2_OBJS) \
$(SR2_C_OBJS) \
$(TOOLS_OBJS) \
$(TOOLS_C_OBJS) \
$(WELMAN_OBJS)

BINARY_OBJS_LNK = $(BINARY_OBJS)

BINARY_MX_OBJS = $(BINARY_OBJS)

BINARY_MX_OBJS_LNK = $(BINARY_MX_OBJS)

F90_DEPENDENCY_LNK = $(F90_DEPENDENCY)

IMEX_INCS = mxeqnloc.inc mxthpr.inc

TOOLS_INCS = wscoin.inc

F90_INCS = mxeqnloc.inc mxthpr.inc wscoin.inc

IMEX_MOD_SRC = \
imex1_mod.f \
imex2_mod.f \
imex3_mod.f \
mxgr01_mod.f \
mxinit_mod.f \
mxslvr1_mod.f \
mxslvr_mod.f \
mxprsl_mod.f \
mxwell_mod.f \
params_mod.f \
sector_mod.f

IMEX_ALOC_SRC = $(IMEX_MOD_SRC:_mod.f=_aloc.f)

AIMSOL_MOD_SRC = aimint_mod.f aimloc_mod.f eqtpar_mod.f

AIMSOL_ALOC_SRC = eqtpar_aloc.f

GRID_MOD_SRC = grmod0_mod.f grmod1_mod.f grmod2_mod.f grife1_mod.f grife2_mod.f

GRID_ALOC_SRC = grmod0_aloc.f grmod1_aloc.f grmod2_aloc.f

GRID_ALOC_OBJS = $(GRID_ALOC_SRC:.f=.$(O))

PARASOL_MOD_SRC = domain2dproc_mod.f

POINTER_MOD_SRC = point_mod.f ptlocal_mod.f prtcm_mod.f

POINTER_ALOC_SRC = $(POINTER_MOD_SRC:_mod.f=_aloc.f)

SR2_MOD_SRC = sr2com_mod.f $(XDRMOD_SRC)

SR2_ALOC_SRC = $(SR2_MOD_SRC:_mod.f=_aloc.f)

TOOLS_MOD_SRC = cmgfile_mod.f globstore_mod.f kwcom1_mod.f toolsint_mod.f wscom1_mod.f

TOOLS_MOD_SPEC_SRC = large_int_mod.f

TOOLS_ALOC_SRC = cmgfile_aloc.f kwcom1_aloc.f wscom1_aloc.f

WELMAN_MOD_SRC = wmcom1_mod.f wmcom2_mod.f wmcom4_mod.f wmcom5_mod.f

WELMAN_ALOC_SRC = $(WELMAN_MOD_SRC:_mod.f=_aloc.f)

WELMAN_ALOC_OBJS = $(WELMAN_MOD_OBJS:_mod.$(O)=_aloc.$(O))

F90_MOD_SRC = $(IMEX_MOD_SRC) \
$(AIMSOL_MOD_SRC) \
$(GRID_MOD_SRC) \
$(PARASOL_MOD_SRC) \
$(POINTER_MOD_SRC) \
$(SR2_MOD_SRC) srdict_mod.f \
$(TOOLS_MOD_SPEC_SRC) \
$(TOOLS_MOD_SRC) \
$(WELMAN_MOD_SRC)

IMEX_MOD_OBJS = $(IMEX_MOD_SRC:_mod.f=_mod.$(O))
AIMSOL_MOD_OBJS = $(AIMSOL_MOD_SRC:_mod.f=_mod.$(O))
GRID_MOD_OBJS = grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O) grife1_mod.$(O) grife2_mod.$(O)
PARASOL_MOD_OBJS = $(PARASOL_MOD_SRC:_mod.f=_mod.$(O))
POINTER_MOD_OBJS = point_mod.$(O) ptlocal_mod.$(O) prtcm_mod.$(O)
SR2_MOD_OBJS = sr2com_mod.$(O) $(XDRMOD) srdict_mod.$(O)
TOOLS_MOD_OBJS = cmgfile_mod.$(O) globstore_mod.$(O) kwcom1_mod.$(O) large_int_mod.$(O) toolsint_mod.$(O) wscom1_mod.$(O)
WELMAN_MOD_OBJS = wmcom1_mod.$(O) wmcom2_mod.$(O) wmcom4_mod.$(O) wmcom5_mod.$(O)

F90_MOD_OBJS = $(IMEX_MOD_OBJS) \
$(AIMSOL_MOD_OBJS) \
$(GRID_MOD_OBJS) \
$(PARASOL_MOD_OBJS) \
$(POINTER_MOD_OBJS) \
$(SR2_MOD_OBJS) \
$(TOOLS_MOD_OBJS) \
$(WELMAN_MOD_OBJS)

F90_ALOC_OBJS = \
cmgfile_aloc.$(O) \
eqtpar_aloc.$(O) \
grmod0_aloc.$(O) \
grmod1_aloc.$(O) \
grmod2_aloc.$(O) \
imex1_aloc.$(O) \
imex2_aloc.$(O) \
imex3_aloc.$(O) \
kwcom1_aloc.$(O) \
mxgr01_aloc.$(O) \
mxinit_aloc.$(O) \
mxprsl_aloc.$(O) \
mxslvr_aloc.$(O) \
mxslvr1_aloc.$(O) \
mxwell_aloc.$(O) \
point_aloc.$(O) \
prtcm_aloc.$(O) \
ptlocal_aloc.$(O) \
sector_aloc.$(O) \
sr2com_aloc.$(O) \
wmcom1_aloc.$(O) \
wmcom2_aloc.$(O) \
wmcom5_aloc.$(O) \
wscom1_aloc.$(O)

# not req'd for now: grife1_aloc.$(O) grife2_aloc.$(O)

F90_ALOC_SRC = $(F90_ALOC_OBJS:.$(O)=.f)

#Dynamic dimensioning changes to Makefile.
#Rules for include files.
# dyndim.exe removed from dependency list due to spurious
# rebuild problem on IBM 3CT

$(IMEX_INCS):
$(COPY) $(IMEX_LIB)$@ $@ $(D2U)

$(IMEX_MOD_SRC):
$(COPY_PREPRO) $(IMEX_LIB)$@ $@ $(D2U)

$(IMEX_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

$(AIMSOL_MOD_SRC):
$(COPY_PREPRO) $(AIMSOL_LIB)$@ $@ $(D2U)

$(AIMSOL_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

$(GRID_MOD_SRC):
$(COPY_PREPRO) $(GRID_LIB)$@ $@ $(D2U)

$(GRID_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

$(PARASOL_MOD_SRC):
$(COPY_PREPRO) $(PARASOL_LIB)$@ $@ $(D2U)

$(POINTER_MOD_SRC):
$(COPY_PREPRO) $(POINTER_LIB)$@ $@ $(D2U)

$(POINTER_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

$(SR2_MOD_SRC):
$(COPY_PREPRO) $(SR2_LIB)$@ $@ $(D2U)

$(SR2_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

pcxdr.lib:
$(COPY) $(SR2_LIB)$@ $@

$(TOOLS_INCS):
$(COPY) $(TOOLS_LIB)$@ $@ $(D2U)

$(TOOLS_MOD_SRC):
$(COPY_PREPRO) $(TOOLS_LIB)$@ $@ $(D2U)

$(TOOLS_MOD_SPEC_SRC):
$(COPY_PREPRO) $(TOOLS_LIB)$(LARGE_INT_MOD_SRC) $@ $(D2U)

$(TOOLS_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

$(MANIFEST):
$(COPY) $(TOOLS_LIB)$@ $@

$(WELMAN_MOD_SRC):
$(COPY_PREPRO) $(WELMAN_LIB)$@ $@ $(D2U)

$(WELMAN_ALOC_SRC): $$(@:_aloc.f=_mod.f) mod_to_aloc.exe
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
mod_to_aloc.exe -f $(@:_aloc.f=_mod.f) $(D2U)

#-- Files for source builds.
# ------------------------
IMEX_SRC = $(IMEX_OBJS:.$(O)=.f)
AIMSOL_SRC = $(AIMSOL_OBJS:.$(O)=.f)
GRID_SRC = $(GRID_OBJS:.$(O)=.f)
MXGM_SRC = $(MXGM_OBJS:.$(O)=.f)
PARASOL_SRC = $(PARASOL_OBJS:.$(O)=.f)
POINTER_SRC = $(POINTER_OBJS:.$(O)=.f)
REPORT_SRC = $(REPORT_OBJS:.$(O)=.f)
SR2_SRC = $(SR2_OBJS:.$(O)=.f)
TOOLS_SRC = $(TOOLS_OBJS:.$(O)=.f)
WELMAN_SRC = $(WELMAN_OBJS:.$(O)=.f)

MXGM_SRC_TMP = $(MXGM_SRC:.f=.tmp)
POINTER_SRC_TMP = $(POINTER_SRC:.f=.tmp)
REPORT_SRC_TMP = $(REPORT_SRC:.f=.tmp)
TOOLS_SRC_TMP = $(TOOLS_SRC:.f=.tmp)
SR2_SRC_TMP = $(SR2_SRC:.f=.tmp)

SR2_C_SRC = $(SR2_C_OBJS:.$(O)=.c)

TOOLS_C_SRC = $(TOOLS_C_OBJS:.$(O)=.c)

##-- Binary Pool
## -----------
#

ALL_F_SRC = $(IMEX_SRC) \
$(AIMSOL_SRC) \
$(GRID_SRC) \
$(MXGM_SRC) \
$(PARASOL_SRC) \
$(POINTER_SRC) \
$(REPORT_SRC) \
$(SR2_SRC) \
$(TOOLS_SRC) \
$(WELMAN_SRC) \
$(F90_ALOC_SRC) \
$(F90_MOD_SRC)

ALL_MX_F_SRC = $(ALL_F_SRC)

SECURE_SRCS =$(IMEX_SRC) \
$(GRID_SRC) \
$(MXGM_SRC) \
$(PARASOL_SRC) \
$(POINTER_SRC) \
$(REPORT_SRC) \
$(SR2_SRC) \
$(TOOLS_SRC) \
$(WELMAN_SRC) \
$(F90_ALOC_SRC) \
$(F90_MOD_SRC)

# ---------------------------------------------
# | |
# | B U I L D R U L E S |
# | |
# ---------------------------------------------

#-- Ultimate target is link to executable file

imex.exe: $(BINARY_MX_OBJS) $(MAKEFILE) $(MAKE_OPTS) $(LICENSE_LIB) $(REPR_LIB) $(F90_DEPENDENCY) \
$(MISSING_IMPORTS) $(LICENSE_DLL) $(OPENMP_DLL) $(BINREADER_LIB) $(BINREADER_DLL) $(MANIFEST) $(PC_XDR_LIB)
$(LSDIR) $@ > $@ $(EOC) \
$(DELETE) $@ $(EOC) \
$(LD) $(LINK_FLAGS) $(BINARY_MX_OBJS_LNK) $(LIBS) $(F90_DEPENDENCY_LNK) \
$(LICENSE_LIB) $(REPR_LIB) $(MISSING_IMPORTS) $(BINREADER_LIB) $(PC_XDR_LIB) $(LINK_OUT)$@ $(EOC) \
$(MANIFEST_EXEC) $(EOC) \
echo 'Done.'

force_rebuild:
@ $(LSDIR) simver.f > simver.f $(EOC) \
$(DELETE) simver.f

simver.f: force_rebuild insert_string.exe
insert_string.exe -d -v $(VER_NAME) -c $(VER_COM) -f $(IMEX_LIB)$@ > $@ $(D2U)

simver.$(O): simver.f
$(FC) $(FFLAGS) -c simver.f

mxtool.c: $(SR2_C_SRC)
@ echo All C tool and SR2 routines have been copied

srcb_msg:
@ echo .inc and .c files are being copied, if any is needed ...

#Build macros specific to platform

ALL_IMEX_INCS = $(IMEX_INCS) $(POINTER_INCS) $(SR2_INCS) $(TOOLS_INCS) \
$(WELMAN_INCS)

ALL_IMEX_C_SRC = $(SR2_C_SRC) $(TOOLS_C_SRC)

#-- Separated Source Code
# ---------------------

mxsrc.split: $(ALL_MX_F_SRC) simver.f $(COMPVER_SRC) srcb_msg $(ALL_IMEX_INCS) $(ALL_IMEX_C_SRC) \
$(LICENSE_LIB) $(REPR_LIB) $(OPENMP_DLL) $(PC_XDR_LIB) \
$(MAKEFILE) $(BINREADER_LIB) $(BINREADER_DLL) $(MISSING_IMPORTS)
@ echo 'build mxsrc.split complete' > mxsrc.split $(EOC) \
echo ' Split source build mxsrc.split complete.'

#-- IMEX Library
# -------------

$(IMEX_SRC):
$(COPY_PREPRO) $(IMEX_LIB)$@ $@ $(D2U)

$(IMEX_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- AIMSOL Library
# --------------

$(AIMSOL_SRC):
$(COPY_PREPRO) $(AIMSOL_LIB)$@ $@ $(D2U)

$(AIMSOL_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- GRID Library
# --------------

$(GRID_SRC):
$(COPY_PREPRO) $(GRID_LIB)$@ $@ $(D2U)

$(GRID_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- MXGM Library
# ------------

$(MXGM_SRC):
$(COPY_PREPRO) $(MXGM_LIB)$@ $@ $(D2U)

$(MXGM_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- PARASOL Library
# ---------------

$(PARASOL_SRC):
$(COPY_PREPRO) $(PARASOL_LIB)$@ $@ $(D2U)

$(PARASOL_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- POINTER Library
# ---------------

$(POINTER_SRC):
$(COPY_PREPRO) $(POINTER_LIB)$@ $@ $(D2U)

$(POINTER_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- REPORT Library
# ------------

$(REPORT_SRC):
$(COPY_PREPRO) $(REPORT_LIB)$@ $@ $(D2U)

$(REPORT_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- TOOLS Library
# -------------

$(TOOLS_SRC):
$(COPY_PREPRO) $(TOOLS_LIB)$@ $@ $(D2U)

$(TOOLS_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

aix_mem_info.c:
$(COPY_PREPRO) $(TOOLS_LIB)$@ $@ $(D2U)

aix_mem_info.$(O):
$(CC) $(CFLAGS) -c $(@:.$(O)=.c)

#-- Tool which inserts date, version number and version comment
# into simver.f

insert_string.exe:
$(COPY) $(TOOLS_LIB)$(@:.exe=.f) $(@:.exe=.f) $(EOC) \
$(COPY) $(TOOLS_LIB)cmgtar.f cmgtar_is.f $(EOC) \
$(FC) $(FFLAGS) -c $(@:.exe=.f) $(EOC) \
$(FC) $(FFLAGS) -c cmgtar_is.f $(EOC) \
$(FC) $(LINK_FLAGS) insert_string.$(O) cmgtar_is.$(O) $(LINK_OUT)$@ $(EOC) \
$(DELETE) $(@:.exe=.$(O)) $(EOC) \
$(DELETE) *_is.*

#-- Tool which converts mod to aloc for f90 versions

mod_to_aloc.exe:
$(COPY) $(TOOLS_LIB)$(@:.exe=.f) $(@:.exe=.f) $(EOC) \
$(COPY) $(TOOLS_LIB)cmgtar.f cmgtar_mta.f $(EOC) \
$(FC) $(FFLAGS) -c $(@:.exe=.f) $(EOC) \
$(FC) $(FFLAGS) -c cmgtar_mta.f $(EOC) \
$(FC) $(LINK_FLAGS) mod_to_aloc.$(O) cmgtar_mta.$(O) $(LINK_OUT)$@ $(EOC) \
$(DELETE) $(@:.exe=.$(O)) $(EOC) \
$(DELETE) *_mta.*

#-- Tool which auto-generates compver.f for compiler version information
compver_gen.f:
$(COPY) $(TOOLS_LIB)$@ $@ $(D2U)

compver_gen.exe: compver_gen.f
$(FC) $(FFLAGS) compver_gen.f $(EOC) rm -f compver_gen.$(O)

#-- Local text file to hold compiler version information.
#-- Compile the dummy files and capture the compiler output.
DUMMY_F = $(FC) -c $(TOOLS_LIB)dummy_f.f > $@ 2>&1
DUMMY_C = && $(CC) -c $(TOOLS_LIB)dummy_c.c >> $@ 2>&1

compver.txt:
$(DUMMY_F) $(DUMMY_C) $(EOC) rm -f dummy_*.$(O)

#-- Auto-generated routine which returns compiler version info.
compver.f: compver.txt compver_gen.exe
compver_gen.exe

compver.$(O): compver.f
$(FC) $(FFLAGS) -c compver.f

#-- SR2 Library
# -----------

byteordr.c xdr.c xdrarray.c xdrfloat.c xdrint.c xdrrefer.c xdrstdio.c:
$(COPY) $(SR2_LIB)$@ $@ $(D2U)

#-- FORTRAN include file generated from Source SR2 Data Dictionary

dict.dat:
$(COPY) $(SR2_LIB)$@ $@

srdict_mod.f: dict.dat
$(SR2_LIB)gensr2inc$(D)$(BLD_HOST_TYPE)$(D)gensr2fo.exe $(SR2_LIB)dict.dat > srdict_mod.f $(D2U)

$(SR2_SRC):
$(COPY_PREPRO) $(SR2_LIB)$@ $@ $(D2U)

$(SR2_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

byteordr.$(O) xdr.$(O) xdrarray.$(O) xdrfloat.$(O) xdrint.$(O) xdrrefer.$(O) xdrstdio.$(O): $$(@:.$(O)=.c)
$(CC) $(CFLAGS) -c $(@:.$(O)=.c)

#-- WELMAN Library
# --------------

$(WELMAN_SRC):
$(COPY_PREPRO) $(WELMAN_LIB)$@ $@ $(D2U)

$(WELMAN_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- MOD, ALOC compiles

$(F90_MOD_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

$(F90_ALOC_OBJS): $$(@:.$(O)=.f)
$(FC) $(FFLAGS) -c $(@:.$(O)=.f)

#-- CMG License Library
# -------------------

libsecure.a:
$(COPY) $(CMGSECURE_LIB)$(PLATFORM)$(D)$@ .

libsecure.lib:
$(COPY) $(CMGSECURE_LIB)$(PLATFORM)$(D)$@ .

cmgsecure.lib:
$(COPY) $(CMGSECURE_LIB)$(PLATFORM)$(D)$@ .

cmgsecure.dll:
$(COPY) $(CMGSECURE_LIB)$(PLATFORM)$(D)$@ .

libiomp5md.dll:
$(COPY) $(IMEX_LIB)$(PLATFORM)$(D)$@ .

missing_aix_imports.imp:
$(COPY) $(CMGSECURE_LIB)$(PLATFORM)$(D)$@ $@ $(D2U)

#-- Reprise License Library
# -----------------------

librlm.a:
$(COPY) $(REPRISELM_LIB)$(PLATFORM)$(D)$@ .

rlmclient.lib:
$(COPY) $(REPRISELM_LIB)$(PLATFORM)$(D)$@ .

rlm.dll:
$(COPY) $(REPRISELM_LIB)$(PLATFORM)$(D)$@ .

#-- BINARRAY Library
# ----------------

binarrayfile.dll:
copy $(BINARRAY_LIB)$(D)$(PLATFORM)$(D)$@ $@

$(BINREADER_LIB):
copy $(BINARRAY_LIB)$(D)$(PLATFORM)$(D)$@ $@

#-- Include File Dependencies

# Module dependencies for modules

aimint_mod.$(O): large_int_mod.$(O) eqtpar_mod.$(O)
cmgfile_mod.$(O): $(XDRMOD)
domain2dproc_mod.$(O): aimloc_mod.$(O)
eqtpar_mod.$(O): large_int_mod.$(O)
globstore_mod.$(O): large_int_mod.$(O)
grmod0_mod.$(O): large_int_mod.$(O)
grmod1_mod.$(O): large_int_mod.$(O)
imex1_mod.$(O): large_int_mod.$(O)
imex2_mod.$(O): large_int_mod.$(O)
mxslvr1_mod.$(O): large_int_mod.$(O)
mxslvr_mod.$(O): large_int_mod.$(O)
params_mod.$(O): large_int_mod.$(O)

#-- Include file dependencies for IMEX_LIB files.

allcat.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxslvr_mod.$(O) point_mod.$(O)
aqcal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) grmod1_mod.$(O)
asignv.$(O): params_mod.$(O) mxslvr_mod.$(O)
begin.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O) grmod1_mod.$(O)
bryflw.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) sector_mod.$(O)
call_eqtpar.$(O): large_int_mod.$(O) aimint_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O) params_mod.$(O) point_mod.$(O)
callap.$(O): params_mod.$(O) aimint_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O)
calljb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
calllp.$(O): params_mod.$(O) aimint_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O) mxprsl_mod.$(O)
callls.$(O): large_int_mod.$(O) aimint_mod.$(O) params_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O)
callsc.$(O): imex1_mod.$(O) imex2_mod.$(O)
callsl.$(O): aimint_mod.$(O) params_mod.$(O) imex1_mod.$(O) mxinit_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O) mxwell_mod.$(O) wscom1_mod.$(O)
callst.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
callwm.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
chkcmx.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
cldate.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
clday.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
compak.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) kwcom1_mod.$(O) grmod1_mod.$(O)
conv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
dbgpar.$(O): params_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) point_mod.$(O)
denogs.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
dicrak.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) kwcom1_mod.$(O) grmod1_mod.$(O)
diform.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
diltab.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
dmndmx.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
dnpntr.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
dpdzwb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
dvzcal.$(O): params_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O)
dygrck.$(O): imex1_mod.$(O) imex2_mod.$(O) grmod1_mod.$(O)
dynamx.$(O): params_mod.$(O) grmod1_mod.$(O) point_mod.$(O)
endmci.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
endpts.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
eqnmfc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
eqnsa.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
eqnsav.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) point_mod.$(O)
eqnsfv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
fluxsct.$(O): params_mod.$(O) sector_mod.$(O) point_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
fluxsfm.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) point_mod.$(O) imex3_mod.$(O)
flxscout.$(O): params_mod.$(O) sector_mod.$(O) imex1_mod.$(O) imex2_mod.$(O)
genbis.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxprsl_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O) point_mod.$(O) wscom1_mod.$(O) large_int_mod.$(O)
grgetsim.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) point_mod.$(O)
hystst.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
imex.$(O): params_mod.$(O) imex1_mod.$(O) point_mod.$(O) wscom1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O)
incomp.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) sector_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
indasr.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) wscom1_mod.$(O)
indata.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) sector_mod.$(O) wscom1_mod.$(O)
indbug.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O)
indt.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
indynm.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) grmod1_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O) mxprsl_mod.$(O)
inendpt_recur.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
ineqil.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
infohd.$(O): imex1_mod.$(O) imex2_mod.$(O)
inhert_gm.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) sector_mod.$(O) grmod2_mod.$(O) grmod0_mod.$(O)
iniblks.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
inini1.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
inini2.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
ininit.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
inio.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O)
iniord.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O)
innum.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
inrel.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
inres.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxwell_mod.$(O) kwcom1_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) sector_mod.$(O) grmod2_mod.$(O)
inres_fsct.$(O): params_mod.$(O) point_mod.$(O) kwcom1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) sector_mod.$(O)
intwrt.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
inwell.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O) mxgr01_mod.$(O) grmod1_mod.$(O) grmod0_mod.$(O) grmod2_mod.$(O)
inwint.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
jbuild.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O) mxeqnloc.inc
jst.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
krochk.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
krolup.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
lay1mx.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
lescal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
lessr2.$(O): imex1_mod.$(O) imex2_mod.$(O)
levstr.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) mxprsl_mod.$(O)
lstpar.$(O): aimint_mod.$(O) params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxprsl_mod.$(O) mxwell_mod.$(O) point_mod.$(O) mxslvr_mod.$(O) mxslvr1_mod.$(O) large_int_mod.$(O)
lstpro.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
matbal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
maxchg.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
mcinit.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
md2sur.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
mxasin.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O) point_mod.$(O)
mxcspf.$(O): point_mod.$(O)
mxdmnew.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O) mxslvr_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
mxeos.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
mxgetf.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O)
mxinit.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
mxitfg.$(O): params_mod.$(O) imex1_mod.$(O) point_mod.$(O)
mxptos.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
mxrops.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
mxsetf.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O)
mxsrwg.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) sector_mod.$(O) wscom1_mod.$(O) point_mod.$(O)
ndarcy.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
nondarcy.$(O): params_mod.$(O) imex1_mod.$(O) point_mod.$(O) wscom1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O)
opprnt.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O)
outflux.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
outin.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) point_mod.$(O) sector_mod.$(O) wscom1_mod.$(O)
outv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
pcmnmx.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
phswch.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
porcrb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
portab.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
poten.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
prkrpc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
prnbgn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) grmod1_mod.$(O) mxwell_mod.$(O) wscom1_mod.$(O)
propc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
propi.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O)
proppc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
propsn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
propsp.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O) point_mod.$(O)
propwb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O)
prpsat.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
psdobb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
psdocm.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
psdoi.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
psdosb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
psfcal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
pthresh.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
pvtchk.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) imex3_mod.$(O) point_mod.$(O)
qquit.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) mxwell_mod.$(O)
rdprn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
relpmc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
resid.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
resolve_cons.$(O): mxwell_mod.$(O) imex2_mod.$(O)
resolve_ipr.$(O): mxwell_mod.$(O) params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O)
resolve_link.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O) mxgr01_mod.$(O)
resolve_op.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
restrd.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) kwcom1_mod.$(O)
restwt.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
rhows.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rk4mom.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rk4wb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rkintw.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rkqcwb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rkqmom.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
rstrcn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
rstrdd.$(O): params_mod.$(O) grmod1_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
rstrdw.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
rstsec.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
satlrt.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
satrbl.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
save.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxthpr.inc
savejb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxthpr.inc
sbasin.$(O): params_mod.$(O) point_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
sctcal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) sector_mod.$(O) wscom1_mod.$(O)
secout.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
secsr2.$(O): imex1_mod.$(O) imex2_mod.$(O)
secwel.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) sector_mod.$(O)
setpfc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
setprf.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
setupv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
shif.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
simdim.$(O): params_mod.$(O) mxslvr_mod.$(O) point_mod.$(O)
sltsmo.$(O): params_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
slvint.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
solpas.$(O): grmod2_mod.$(O) grmod1_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
spcchr.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O)
spcsrf.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxinit_mod.$(O) point_mod.$(O) wscom1_mod.$(O)
splinl.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
splinw.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
srfint.$(O): imex1_mod.$(O) imex2_mod.$(O)
srfout.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) wscom1_mod.$(O) grmod0_mod.$(O)
srgrid.$(O): imex2_mod.$(O) mxgr01_mod.$(O)
stab.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O) mxeqnloc.inc
strsr2.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
sur2md.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
swtsmo.$(O): params_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
tabsat.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
thswch.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
timsum.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
totpi.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
trmcrb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
tsbomb.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
tsconv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
tshead.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
tsio.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) wscom1_mod.$(O) grmod1_mod.$(O)
tswcnv.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
tswell.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) imex3_mod.$(O)
tswlap.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
unitcn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
upkcyc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) point_mod.$(O)
varass.$(O): params_mod.$(O) imex1_mod.$(O) mxslvr_mod.$(O) point_mod.$(O)
velcty.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) point_mod.$(O) mxwell_mod.$(O)
vrec.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxslvr_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
wbcomp.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
wdpntr.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
wecho.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welbr1.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O)
welbr2.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welbrn.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welcum.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welhed.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O) imex3_mod.$(O)
well.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welmom.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welout.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
welpis.$(O): imex1_mod.$(O) mxwell_mod.$(O) params_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O)
welscl.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxwell_mod.$(O)
welsrf.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O)
whpcal.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)
wlmpas.$(O): params_mod.$(O) imex2_mod.$(O) imex1_mod.$(O) mxwell_mod.$(O)
wlrate.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxwell_mod.$(O)
wpinit.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
wpnter.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) point_mod.$(O)
wscout.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O) sector_mod.$(O) wscom1_mod.$(O)
xfcalc.$(O): params_mod.$(O) imex1_mod.$(O) imex2_mod.$(O) imex3_mod.$(O) mxgr01_mod.$(O) mxwell_mod.$(O)

#-- Include file dependencies for AIMSOL_LIB files.

aimptp.$(O): large_int_mod.$(O)
aimptr.$(O): large_int_mod.$(O)
avmulp.$(O): large_int_mod.$(O)
avmult.$(O): large_int_mod.$(O)
eqtpar.$(O): large_int_mod.$(O) eqtpar_mod.$(O)
forbkp.$(O): large_int_mod.$(O)
forbkv.$(O): large_int_mod.$(O)
genlup.$(O): large_int_mod.$(O)
genluv.$(O): large_int_mod.$(O)
gmresp.$(O): large_int_mod.$(O)
jdump.$(O): large_int_mod.$(O)
mindeg.$(O): large_int_mod.$(O)
order.$(O): large_int_mod.$(O)
orderp.$(O): large_int_mod.$(O)
parasol.$(O): large_int_mod.$(O)
prepro.$(O): large_int_mod.$(O)
preprp.$(O): large_int_mod.$(O)
presym.$(O): large_int_mod.$(O)
presyp.$(O): large_int_mod.$(O)
pstpro.$(O): large_int_mod.$(O)
pstprp.$(O): large_int_mod.$(O)
rdsord.$(O): large_int_mod.$(O)
scalp.$(O): large_int_mod.$(O)
scalpp.$(O): large_int_mod.$(O)
solver.$(O): large_int_mod.$(O)
symfcp.$(O): large_int_mod.$(O)
symfcv.$(O): large_int_mod.$(O)

#-- Include file dependencies for GRID_LIB files.

gradrg.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
gramal.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grappk.$(O): grmod0_mod.$(O)
graqui.$(O): grmod1_mod.$(O)
grcell.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grcnc1.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc2.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc4.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc5.$(O): grmod0_mod.$(O)
grcnc6.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc7.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc8.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnc8nb.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcncb.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grcnct.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcncw.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcncx.$(O): grmod0_mod.$(O)
grcnmp.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grcnnp.$(O): grmod0_mod.$(O)
grcorn.$(O): grmod0_mod.$(O)
grcorn2nd.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grdbas.$(O): grmod0_mod.$(O)
grdbug.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grinit.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grlast.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grload.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grmai1.$(O): grmod0_mod.$(O)
grmain.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grmkpt.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grnhrt.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grpdgd.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grpkpt.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grptcs.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grptwtsr.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grrdap.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdar.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdcp.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdg2.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdg3.$(O): grmod0_mod.$(O)
grrdg4.$(O): grmod0_mod.$(O)
grrdg5.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grrdg6.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdgr.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdpa.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrdrg.$(O): grmod0_mod.$(O)
grread.$(O): large_int_mod.$(O) grmod2_mod.$(O) grmod1_mod.$(O) grmod0_mod.$(O)
grresr.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrev1.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrev2.$(O): grmod0_mod.$(O)
grrevu.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grrgtl.$(O): grmod0_mod.$(O)
grscan.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grspec.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)
grspt1.$(O): large_int_mod.$(O) grmod0_mod.$(O)
grspt3.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grspt4.$(O): grmod0_mod.$(O)
grspt5.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grspt5nb.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grspt6.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grspt6nb.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grsptl.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grsrcd.$(O): grmod0_mod.$(O)
grtrnf.$(O): grmod0_mod.$(O)
grunit.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grutil.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
grwritecn.$(O): grmod0_mod.$(O) grmod1_mod.$(O)
igrlnk.$(O): grmod0_mod.$(O) grmod1_mod.$(O) grmod2_mod.$(O)

#-- Include file dependencies for PARASOL_LIB files.

ps2dds_actpls.$(O): aimloc_mod.$(O) domain2dproc_mod.$(O)
ps2dds_auxil.$(O): aimloc_mod.$(O) domain2dproc_mod.$(O)
ps2dds_general.$(O): aimloc_mod.$(O) domain2dproc_mod.$(O)
ps2dds_wrkbalance.$(O): aimloc_mod.$(O) domain2dproc_mod.$(O)
psgnbs.$(O): large_int_mod.$(O)
pslvst.$(O): large_int_mod.$(O)
psrtls.$(O): large_int_mod.$(O)
psspa2.$(O): large_int_mod.$(O)
psspg1.$(O): large_int_mod.$(O)
psvrtx.$(O): large_int_mod.$(O)

#-- Include file dependencies for POINTER_LIB files.

acopy.$(O): point_mod.$(O)
cginit.$(O): point_mod.$(O)
cstfun.$(O): point_mod.$(O)
cstijk.$(O): point_mod.$(O)
cstuba.$(O): point_mod.$(O)
dpnter.$(O): point_mod.$(O)
ijktps.$(O): point_mod.$(O)
ipftpm.$(O): point_mod.$(O)
ipmtpf.$(O): point_mod.$(O)
prtbln.$(O): params_mod.$(O) point_mod.$(O) ptlocal_mod.$(O)
prtcon.$(O): point_mod.$(O)
prtset.$(O): point_mod.$(O) prtcm_mod.$(O)
pstsv.$(O): point_mod.$(O)
ptasin.$(O): point_mod.$(O)
ptcsva.$(O): params_mod.$(O) point_mod.$(O)
ptprn.$(O): point_mod.$(O) prtcm_mod.$(O)
ptwtsr.$(O): point_mod.$(O)
ubatcs.$(O): point_mod.$(O)

#-- Include file dependencies for SR2_LIB files.

sratcp.$(O): sr2com_mod.$(O)
srclos.$(O): sr2com_mod.$(O) $(XDRMOD)
srcpin.$(O): sr2com_mod.$(O)
srdict.$(O): srdict_mod.$(O) sr2com_mod.$(O)
srfrwd.$(O): sr2com_mod.$(O) $(XDRMOD)
srgeta.$(O): sr2com_mod.$(O)
srinit.$(O): sr2com_mod.$(O)
srnckl.$(O): sr2com_mod.$(O)
srprec.$(O): sr2com_mod.$(O)
srrdea.$(O): sr2com_mod.$(O)
srrdin.$(O): sr2com_mod.$(O)
srrdt2.$(O): sr2com_mod.$(O) toolsint_mod.$(O)
srrdt3.$(O): sr2com_mod.$(O)
srrdt4.$(O): sr2com_mod.$(O)
srrdt5.$(O): sr2com_mod.$(O)
srrdtm.$(O): sr2com_mod.$(O)
srrkls.$(O): sr2com_mod.$(O)
srscan.$(O): sr2com_mod.$(O)
srsclr.$(O): sr2com_mod.$(O)
srscrr.$(O): sr2com_mod.$(O)
srscxd.$(O): sr2com_mod.$(O)
srseta.$(O): sr2com_mod.$(O) toolsint_mod.$(O) cmgfile_mod.$(O)
srskip.$(O): sr2com_mod.$(O) $(XDRMOD)
srskt2.$(O): sr2com_mod.$(O)
srvrat.$(O): sr2com_mod.$(O)
srwkls.$(O): sr2com_mod.$(O)
srwkni.$(O): sr2com_mod.$(O)
srwpar.$(O): sr2com_mod.$(O) $(XDRMOD) toolsint_mod.$(O)
srwret.$(O): sr2com_mod.$(O)
srwrfn.$(O): sr2com_mod.$(O)
srwrt1.$(O): sr2com_mod.$(O)
srwrt2.$(O): sr2com_mod.$(O) toolsint_mod.$(O)
srwrt3.$(O): sr2com_mod.$(O)
srwrt4.$(O): sr2com_mod.$(O) toolsint_mod.$(O)
srwrt5.$(O): sr2com_mod.$(O)
srwrt6.$(O): sr2com_mod.$(O)
srwrtm.$(O): sr2com_mod.$(O)

#-- Include file dependencies for TOOLS_LIB files.

getwrd.$(O): kwcom1_mod.$(O)
infile.$(O): cmgfile_mod.$(O)
inltoch.$(O): large_int_mod.$(O)
kwget.$(O): kwcom1_mod.$(O)
kwset.$(O): kwcom1_mod.$(O)
kyskip.$(O): kwcom1_mod.$(O)
messag.$(O): kwcom1_mod.$(O)
rcaray.$(O): kwcom1_mod.$(O)
rcdpr.$(O): kwcom1_mod.$(O)
rdline.$(O): kwcom1_mod.$(O) cmgfile_mod.$(O)
setio.$(O): kwcom1_mod.$(O)
setio5.$(O): kwcom1_mod.$(O)
wsc

Please see the file attached. the makefile is too long and I failed to directly paste it in the email several times.

Hi, James,

Did you see the makefile in my folder? If not, please let me know your email address and I will directly send it to your email box.

Thanks.

Dingjun

Ritratto di James Tullos (Intel)

Hi Dingjun,

I cannot see your file folders.  Please use the email address on my profile, james.a.tullos@intel.com, or see http://redfort-software.intel.com/en-us/articles/how-to-attach-file-insert-code-into-forum-post/ to attach the file to a post.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

James,

I have already sent it to your email box.

dingjun

Ritratto di James Tullos (Intel)

Hi Dingjun,

I believe that the best place to add it would be in the LIBS variable.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

Hi, James,

I have tried and the following is shown: 

        insert_string.exe -d -v  -c  -f \imex\imex.lib\simver.f > simver.f

        ifort.exe /Qauto /cm /nologo /w /MT  /Qfpp  /DIFL_IA32 /DWIN_X64 /Qopenmp -c simver.f

clearmake: Error:  Don't know how to make "impimt.lib". Stop.

How to do next?

Dingjun

Ritratto di James Tullos (Intel)

Hi Dingjun,

Is LIBS being set somewhere other than in the makefile?  What is insert_string?

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

HI, James,

LIBS is defined as follows:

LIBS = mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib Wsock32.lib User32.lib shell32.lib Advapi32.lib Gdi32.lib

Insert_string is one of tools developed by us and it is also a .exe file.

Dingjun

HI, James,

Please see the followng and compiler used is define in this file. 

#-- BOS (Build Options Specification) for:  PC/NT
#   ---------------------------------------------

#-- Things that don't change
#LIBS =
LIBS = mkl_intel_lp64.lib impimt.lib mkl_intel_thread.lib mkl_core.lib Wsock32.lib User32.lib shell32.lib Advapi32.lib Gdi32.lib
#LIBS = mkl_intel_lp64.lib mkl_sequential.lib mkl_core.lib Wsock32.lib User32.lib shell32.lib Advapi32.lib Gdi32.lib
PLATFORM = win_x64
FORTTARG = F90

# pc native build - for the pc link flags must follow /link
#                   /incremental:no forces a complete relink
#                   /out: is the same as the unix -o
#                   link related compiler flags are inserted
#                   using LINK_FLAGS
#                   the default type is a .exe hence /dll
#                   needs to be used for fgmx.dll
#                   with /dll, the default libraries are
#                   multi-threaded, hence use /libs:static

LCCC       = icl
CC         = icl
FC         = ifort.exe
LD         = ifort.exe
FCA        = ifort.exe
LINK_OUT     = /link /incremental:no /out:
D            = \$N
O            = obj
COPY         = copy
DELETE       = del /f
SED          = d:\tools\sed.exe
MOVE         = move
SHELL        =
EOC          = &&

# setup large ints to be 4 or 8 bytes
LARGE_INT_MOD_SRC = large_int8_mod.f

LICENSE_LIB     = libsecure.lib
REPR_LIB        = rlmclient.lib
OPENMP_DLL      = libiomp5md.dll
BINREADER_LIB     = binarrayfile.lib
BINREADER_DLL     = binarrayfile.dll
SR2_C_OBJS     = byteordr.obj xdr.obj xdrarray.obj xdrfloat.obj xdrint.obj xdrrefer.obj xdrstdio.obj
BINARY_MX_OBJS_LNK  = *.obj
F90_DEPENDENCY_LNK  =

insert_string.exe mod_to_aloc.exe compver_gen.exe
        := LINK_FLAGS = /4Yportlib

insert_string.exe mod_to_aloc.exe compver_gen.exe
        := LINK_OUT   = /link /incremental:no /out:

#-- Code Preprocessor Directives
#   ----------------------------

#-- To add another pre-processor, define its macro similar to
#   existing ones and add it to the list defining PP.

#initialize pre-processors

PP_CVF        =
PP_DD         =
PP_F95        =
PP_OPENMP_VER =
PP_PN         =
PP_WIN32      =
PP_IFL_IA32   =
PP_WIN_X64    =
PP_NO_BINARRAY =
PP_NO_SECURE  =
PP_NO_XDR     =
PP_RPREC      =

###-- Enable Platform Specific Code
# pc

# imex
callsc.f callsc.obj
imex.f imex.obj
imexx.f imexx.obj
inio.f inio.obj
innum.f innum.obj
qquit.f qquit.obj
resolve_link.f resolve_link.obj
cmgfile_mod.f cmgfile_mod.obj
cmgtar.f cmgtar.obj
datime.f datime.obj
getclk.f getclk.obj
header.f header.obj
rdline.f rdline.obj
sigcl1.f sigcl1.obj
sigft1.f sigft1.obj
siggst.f siggst.obj
jdump.f jdump.obj
solver.f solver.obj
parasol.f parasol.obj
srskip.f srskip.obj
srwpar.f srwpar.obj
insert_string.exe
mod_to_aloc.exe
  := PP_WIN32 = $N /DWIN32

# simver.obj just add's Win x64 as part of header
# callsc.obj has secure.inc in it
callsc.f callsc.obj
indynm.f indynm.obj
innum.f innum.obj
rdline.f rdline.obj
simver.f simver.obj
  := PP_WIN_X64 = $N /DWIN_X64

# intel ia32 fortran
callsc.f callsc.obj
cmgfile_mod.f cmgfile_mod.obj
cmg_sleep.f cmg_sleep.obj
cmgtar.f cmgtar.obj
getclk.f getclk.obj
getcpu.f getcpu.obj
gethost.f gethost.obj
imex.f imex.obj
procstat.f procstat.obj
qquit.f qquit.obj
rdline.f rdline.obj
sigcl1.f sigcl1.obj
sigft1.f sigft1.obj
siggst.f siggst.obj
simver.f simver.obj
srskip.f srskip.obj
srwpar.f srwpar.obj
insert_string.exe
mod_to_aloc.exe
  := PP_IFL_IA32 = $N /DIFL_IA32

#debug coupled version
#imex.obj
#  := PP_DD = $N /DDD

## openmp enabled version (special omp system calls)
indynm.f indynm.obj
innum.f innum.obj
preprp.f preprp.obj
genlup.f genlup.obj
  :=  PP_OPENMP_VER = $N /DOPENMP_VER

# /Qtcheck required in addition to /Qopenmp for thread checker plus,
#          for intermittent problem with system call omp_get_num_procs
#          add /DOPENMP_TCHECK to above (required by innum)
OMP_FLAGS            = /Qopenmp
#OMP_FLAGS           =

# disable security for ia32 tests
#callsc.obj
#rdline.obj
#  :=  PP_NO_SECURE = $N /DNO_SECURE

## disable xdr for tests
#inio.obj
#iniord.obj
#  :=  PP_NO_XDR    = $N /DNO_XDR

# to disable MKL if you do not have MKL installed - MKL is used for
# some diagnostics related to the block diagonal matrices in the
# Jacobian
#innum.obj
#jdump.obj
#  := PP_NO_MKL = $N /DNO_MKL

# new fortran (VF6.1) appears to allow F95 version for all win32 os's
# F95 standard call reports cpu time rather than elapsed time
# tested on US win95a,b, win98.1, nt4/sp4;CH win98, SP win98
getcpu.f getcpu.obj
  :=  PP_F95 = $N /DF95

## try real(16) for gmres dot products and key jbuild ops
## stab.obj - stab probably not needed
#avmulp.obj gmresp.obj jbuild.obj solver.obj
#  :=  PP_RPREC = $N /DREAL_16

# allow register use for full gmresp dot products (old default for 2002.10)
# use REAL_* for Intel fortran 8.1.019 - otherwise get wrong answers
# disable this for Intel Fortran 9.1.029 - no longer required
#avmulp.obj gmresp.obj
#  :=  PP_RPREC = $N /DREAL_8

#-- Accumulate all PP pre-processing directives
PP_1 = $(PP_CVF)$(PP_DD)$(PP_F95)$(PP_IFL_IA32)$(PP_OPENMP_VER)$(PP_WIN32)$(PP_NO_SECURE)
PP_2 = $(PP_NO_XDR)$(PP_NO_BINARRAY)$(PP_RPREC)$(PP_NO_MKL)$(PP_WIN_X64)
PP   = $(PP_1)$(PP_2)

# default to preprocessing .f files instead of copying them
COPY_PREPRO  = fpp /P$(PP)

#-- Compile Options

# /cm - disables comment reporting /CV causes problems if a scalar
#  rather than an array
# /Ap64 - enable 64 bit pointers

     PLATFORM_FLAGS = /Qauto /cm /nologo /w /MT
     RELEASE_FLAGS  = $(PLATFORM_FLAGS)

# for development/release toggle the two lines below plus toggle FFLAGS_XTRA
# blank for release and non-blank for debug
# /CB is allowed for Intel Fortran 8.0 - not for 7.1
# for 9.1 compiler: /check:uninit or /RTCu checks for unitialized variables at runtime - does not work with parallel so disable /Qopenmp and OPENMP_VER
#                   /check:bounds checks for subrange errors
#                   /Zi - supports parallel debugging
#                   /traceback required for traceback
# Thread checker does not support optimization (use /Od), thread profiler does support
# optimization, use /O2
# to set environment variables, run appropriate Intel compiler bat's followed by thcheckvars.bat "32e"
# for thread checker, tprofilevars.bat "32e" for thread profiler
# "32e" is required for x64 version, default is 32bit version
# If you want to pass these settings to Visual Studio, follow this from the same dos shell
# with devenv /useenv
# use /Zi /O2 with otherwise normal OpenMP version for Intel Performance Tuning Utility (PTU)
#    also need to build outside of clearcase
#    FFLAGS_XTRA     = /Zi /O2
#    FFLAGS_XTRA     = /Zi /Od
#    FFLAGS_XTRA     = /Zi /check:bounds /check:uninit /traceback
#    FFLAGS_XTRA     = /Zi /C /check:noarg_temp_created /Qvc10 /traceback /fpe:0
     FFLAGS_XTRA     =

     CFLAGS  = /nologo /MT /w /W0 /GX /O2 /I"$(VIEW)\shared\sr2.lib" /D"WIN64" /D"NDEBUG" /D"_WINDOWS" /D"_Windows" /D"PC" /D"IFL_IA32" /D"_PTRDIFF_T" /D"_SIZE_T_DEFINED" /D"_SIZE_T"
     FFLAGS  = $(PLATFORM_FLAGS) $(FFLAGS_XTRA) /Qfpp $(PP) $(OMP_FLAGS)

insert_string.exe:= FFLAGS  = $(PLATFORM_FLAGS) /4Yportlib /Qfpp $(PP)
mod_to_aloc.exe  := FFLAGS  = $(PLATFORM_FLAGS) /4Yportlib /Qfpp $(PP)

# Intel fortran 8.0.038 - stack overflow -fixed by moving local arrays from wmlypn to wmcom1_mod (was /STACK:2000000)
# /fixed:no required for Vtune, Thread Checker, Thread Profiler
# increases stack size required for Intel fortran 8.1.019 - default worked fine for 8.0.038
# if do not increase stack size for 8.1.019, then remote .bat (tpl) runs to Win2K AS has large number of
# runs ending in segmentation faults
# debug requires /EXPECTEDOUTPUTSIZE:100000000
# /Qopenmp_profile required instead of /Qopenmp for thread profiler
imex.exe        := LINK_FLAGS = $(PLATFORM_FLAGS) $(FFLAGS_XTRA) $(OMP_FLAGS) /4Yportlib
#imex.exe        := LINK_FLAGS = $(PLATFORM_FLAGS) $(FFLAGS_XTRA) /Qopenmp_profile /4Yportlib
imex.exe        := LINK_OUT   = /link /LARGEADDRESSAWARE /incremental:no /STACK:4000000 /out:
#imex.exe        := LINK_OUT   = /link /LARGEADDRESSAWARE /fixed:no /EXPECTEDOUTPUTSIZE:100000000 /STACK:4000000 /incremental:no /out:

# Workaround for Fortran/C++ 10.1.021 / 11.0.066 (windows) compiler problem
xdrint.obj
   := CFLAGS = /nologo /MT /w /W0 /GX /Zi /O1 /I"$(VIEW)\shared\sr2.lib" /D"WIN64" /D"NDEBUG" /D"_WINDOWS" /D"_Windows" /D"PC" /D"IFL_IA32" /D"_PTRDIFF_T" /D"_SIZE_T_DEFINED" /D"_SIZE_T"

#-- Portability library routines

getcpu.obj sigcl1.obj srskip.obj srwpar.obj
   := FFLAGS  = $(PLATFORM_FLAGS) $(FFLAGS_XTRA) /4Yportlib /Qfpp $(PP) $(OMP_FLAGS)

#-- Turn off vectorization for selected routines

gmresp.obj solver.obj tsio.obj
   := FFLAGS  = $(PLATFORM_FLAGS) $(FFLAGS_XTRA) /Qfpp $(PP) $(OMP_FLAGS) /Qvec-

************ end ***************

Please advise me how to update above compiler options. Thanks again.

Dingjun

Hi, James,

Thank you so much! I have added impimt.lib in the following LIBS and succeed to pass linking.

LIBS = mkl_intel_lp64.lib mkl_intel_thread.lib impimt.lib mkl_core.lib Wsock32.lib User32.lib shell32.lib Advapi32.lib Gdi32.lib

Have a good day

Dingjun

Ritratto di James Tullos (Intel)

Hi Dingjun,

Add impimt.lib to the LIBS variable in this file.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

Ritratto di James Tullos (Intel)

Hi Dingjun,

Good, I'm glad to hear it working now.

Sincerely,
James Tullos
Technical Consulting Engineer
Intel® Cluster Tools

Accedere per lasciare un commento.