cmake_minimum_required (VERSION 3.0) project (TinkerInterface LANGUAGES NONE) enable_language (Fortran) add_library (tinkerObjF OBJECT ../source/action.f ../source/align.f ../source/analyz.f ../source/angang.f ../source/angbnd.f ../source/angpot.f ../source/angtor.f ../source/argue.f ../source/ascii.f ../source/atmlst.f ../source/atomid.f ../source/atoms.f ../source/bath.f ../source/bitor.f ../source/bndpot.f ../source/bndstr.f ../source/bound.f ../source/boxes.f ../source/cell.f ../source/cflux.f ../source/charge.f ../source/chgpen.f ../source/chgpot.f ../source/chgtrn.f ../source/chrono.f ../source/chunks.f ../source/couple.f ../source/ctrpot.f ../source/deriv.f ../source/dipole.f ../source/disgeo.f ../source/disp.f ../source/dma.f ../source/domega.f ../source/dsppot.f ../source/energi.f ../source/ewald.f ../source/expol.f ../source/extfld.f ../source/faces.f ../source/fft.f ../source/fields.f ../source/files.f ../source/fracs.f ../source/freeze.f ../source/gkstuf.f ../source/group.f ../source/hescut.f ../source/hessn.f ../source/hpmf.f ../source/ielscf.f ../source/improp.f ../source/imptor.f ../source/inform.f ../source/inter.f ../source/iounit.f ../source/kanang.f ../source/kangs.f ../source/kantor.f ../source/katoms.f ../source/kbonds.f ../source/kcflux.f ../source/kchrge.f ../source/kcpen.f ../source/kctrn.f ../source/kdipol.f ../source/kdsp.f ../source/kexpl.f ../source/keys.f ../source/khbond.f ../source/kiprop.f ../source/kitors.f ../source/kmulti.f ../source/kopbnd.f ../source/kopdst.f ../source/korbs.f ../source/kpitor.f ../source/kpolpr.f ../source/kpolr.f ../source/krepl.f ../source/ksolut.f ../source/kstbnd.f ../source/ksttor.f ../source/ktorsn.f ../source/ktrtor.f ../source/kurybr.f ../source/kvdwpr.f ../source/kvdws.f ../source/light.f ../source/limits.f ../source/linmin.f ../source/math.f ../source/mdstuf.f ../source/merck.f ../source/minima.f ../source/molcul.f ../source/moldyn.f ../source/moment.f ../source/mplpot.f ../source/mpole.f ../source/mrecip.f ../source/mutant.f ../source/neigh.f ../source/nonpol.f ../source/nucleo.f ../source/omega.f ../source/opbend.f ../source/opdist.f ../source/openmp.f ../source/orbits.f ../source/output.f ../source/params.f ../source/paths.f ../source/pbstuf.f ../source/pdb.f ../source/phipsi.f ../source/piorbs.f ../source/pistuf.f ../source/pitors.f ../source/pme.f ../source/polar.f ../source/polgrp.f ../source/polopt.f ../source/polpcg.f ../source/polpot.f ../source/poltcg.f ../source/potent.f ../source/potfit.f ../source/ptable.f ../source/qmstuf.f ../source/refer.f ../source/repel.f ../source/reppot.f ../source/resdue.f ../source/restrn.f ../source/rgddyn.f ../source/rigid.f ../source/ring.f ../source/rotbnd.f ../source/rxnfld.f ../source/rxnpot.f ../source/scales.f ../source/sequen.f ../source/shunt.f ../source/sizes.f ../source/socket.f ../source/solpot.f ../source/solute.f ../source/stodyn.f ../source/strbnd.f ../source/strtor.f ../source/syntrn.f ../source/tarray.f ../source/titles.f ../source/torpot.f ../source/tors.f ../source/tortor.f ../source/tree.f ../source/units.f ../source/uprior.f ../source/urey.f ../source/urypot.f ../source/usage.f ../source/valfit.f ../source/vdw.f ../source/vdwpot.f ../source/vibs.f ../source/virial.f ../source/warp.f ../source/xtals.f ../source/zclose.f ../source/zcoord.f ../source/active.f ../source/alterchg.f ../source/alterpol.f ../source/analysis.f ../source/angles.f ../source/attach.f ../source/baoab.f ../source/basefile.f ../source/beeman.f ../source/bicubic.f ../source/bitors.f ../source/bonds.f ../source/born.f ../source/bounds.f ../source/bussi.f ../source/calendar.f ../source/center.f ../source/chkpole.f ../source/chkring.f ../source/chkxyz.f ../source/cholesky.f ../source/clock.f ../source/cluster.f ../source/column.f ../source/command.f ../source/connect.f ../source/connolly.f ../source/control.f ../source/cspline.f ../source/cutoffs.f ../source/damping.f ../source/dcflux.f ../source/deflate.f ../source/delete.f ../source/dexpol.f ../source/diagq.f ../source/diffeq.f ../source/eangang.f ../source/eangang1.f ../source/eangang2.f ../source/eangang3.f ../source/eangle.f ../source/eangle1.f ../source/eangle2.f ../source/eangle3.f ../source/eangtor.f ../source/eangtor1.f ../source/eangtor2.f ../source/eangtor3.f ../source/ebond.f ../source/ebond1.f ../source/ebond2.f ../source/ebond3.f ../source/ebuck.f ../source/ebuck1.f ../source/ebuck2.f ../source/ebuck3.f ../source/echarge.f ../source/echarge1.f ../source/echarge2.f ../source/echarge3.f ../source/echgdpl.f ../source/echgdpl1.f ../source/echgdpl2.f ../source/echgdpl3.f ../source/echgtrn.f ../source/echgtrn1.f ../source/echgtrn2.f ../source/echgtrn3.f ../source/edipole.f ../source/edipole1.f ../source/edipole2.f ../source/edipole3.f ../source/edisp.f ../source/edisp1.f ../source/edisp2.f ../source/edisp3.f ../source/egauss.f ../source/egauss1.f ../source/egauss2.f ../source/egauss3.f ../source/egeom.f ../source/egeom1.f ../source/egeom2.f ../source/egeom3.f ../source/ehal.f ../source/ehal1.f ../source/ehal2.f ../source/ehal3.f ../source/eimprop.f ../source/eimprop1.f ../source/eimprop2.f ../source/eimprop3.f ../source/eimptor.f ../source/eimptor1.f ../source/eimptor2.f ../source/eimptor3.f ../source/elj.f ../source/elj1.f ../source/elj2.f ../source/elj3.f ../source/embed.f ../source/emetal.f ../source/emetal1.f ../source/emetal2.f ../source/emetal3.f ../source/emm3hb.f ../source/emm3hb1.f ../source/emm3hb2.f ../source/emm3hb3.f ../source/empole.f ../source/empole1.f ../source/empole2.f ../source/empole3.f ../source/energy.f ../source/eopbend.f ../source/eopbend1.f ../source/eopbend2.f ../source/eopbend3.f ../source/eopdist.f ../source/eopdist1.f ../source/eopdist2.f ../source/eopdist3.f ../source/epitors.f ../source/epitors1.f ../source/epitors2.f ../source/epitors3.f ../source/epolar.f ../source/epolar1.f ../source/epolar2.f ../source/epolar3.f ../source/erepel.f ../source/erepel1.f ../source/erepel2.f ../source/erepel3.f ../source/erf.f ../source/erxnfld.f ../source/erxnfld1.f ../source/erxnfld2.f ../source/erxnfld3.f ../source/esolv.f ../source/esolv1.f ../source/esolv2.f ../source/esolv3.f ../source/estrbnd.f ../source/estrbnd1.f ../source/estrbnd2.f ../source/estrbnd3.f ../source/estrtor.f ../source/estrtor1.f ../source/estrtor2.f ../source/estrtor3.f ../source/etors.f ../source/etors1.f ../source/etors2.f ../source/etors3.f ../source/etortor.f ../source/etortor1.f ../source/etortor2.f ../source/etortor3.f ../source/eurey.f ../source/eurey1.f ../source/eurey2.f ../source/eurey3.f ../source/evcorr.f ../source/exfield.f ../source/extra.f ../source/extra1.f ../source/extra2.f ../source/extra3.f ../source/fatal.f ../source/fft3d.f ../source/fftpack.f ../source/field.f ../source/final.f ../source/flatten.f ../source/freeunit.f ../source/geometry.f ../source/getarc.f ../source/getcart.f ../source/getdcd.f ../source/getint.f ../source/getkey.f ../source/getmol.f ../source/getmol2.f ../source/getnumb.f ../source/getpdb.f ../source/getprm.f ../source/getref.f ../source/getstring.f ../source/gettext.f ../source/getword.f ../source/getxyz.f ../source/ghmcstep.f ../source/gradient.f ../source/gradrgd.f ../source/gradrot.f ../source/groups.f ../source/grpline.f ../source/gyrate.f ../source/hessian.f ../source/hessrgd.f ../source/hessrot.f ../source/hybrid.f ../source/image.f ../source/impose.f ../source/induce.f ../source/inertia.f ../source/initatom.f ../source/initial.f ../source/initprm.f ../source/initres.f ../source/initrot.f ../source/insert.f ../source/invbeta.f ../source/invert.f ../source/jacobi.f ../source/kangang.f ../source/kangle.f ../source/kangtor.f ../source/katom.f ../source/kbond.f ../source/kcharge.f ../source/kchgflx.f ../source/kchgtrn.f ../source/kdipole.f ../source/kdisp.f ../source/kewald.f ../source/kexpol.f ../source/kextra.f ../source/kgeom.f ../source/kimprop.f ../source/kimptor.f ../source/kinetic.f ../source/kmetal.f ../source/kmpole.f ../source/kopbend.f ../source/kopdist.f ../source/korbit.f ../source/kpitors.f ../source/kpolar.f ../source/krepel.f ../source/ksolv.f ../source/kstrbnd.f ../source/kstrtor.f ../source/ktors.f ../source/ktortor.f ../source/kurey.f ../source/kvdw.f ../source/lattice.f ../source/lbfgs.f ../source/lights.f ../source/lusolve.f ../source/makeint.f ../source/makeref.f ../source/makexyz.f ../source/maxwell.f ../source/mdinit.f ../source/mdrest.f ../source/mdsave.f ../source/mdstat.f ../source/mechanic.f ../source/merge.f ../source/molecule.f ../source/moments.f ../source/mutate.f ../source/nblist.f ../source/nextarg.f ../source/nexttext.f ../source/nose.f ../source/nspline.f ../source/number.f ../source/numeral.f ../source/numgrad.f ../source/ocvm.f ../source/openend.f ../source/optinit.f ../source/optsave.f ../source/orbital.f ../source/orient.f ../source/orthog.f ../source/overlap.f ../source/picalc.f ../source/pmestuf.f ../source/pmpb.f ../source/polymer.f ../source/predict.f ../source/pressure.f ../source/prmkey.f ../source/promo.f ../source/prtarc.f ../source/prtdcd.f ../source/prtdyn.f ../source/prterr.f ../source/prtint.f ../source/prtmol2.f ../source/prtpdb.f ../source/prtprm.f ../source/prtseq.f ../source/prtxyz.f ../source/qrsolve.f ../source/quatfit.f ../source/random.f ../source/rattle.f ../source/readcart.f ../source/readdcd.f ../source/readdyn.f ../source/readgau.f ../source/readgdma.f ../source/readint.f ../source/readmol.f ../source/readmol2.f ../source/readpdb.f ../source/readprm.f ../source/readseq.f ../source/readxyz.f ../source/replica.f ../source/respa.f ../source/rgdstep.f ../source/rings.f ../source/rmsfit.f ../source/rotlist.f ../source/rotpole.f ../source/sdstep.f ../source/search.f ../source/server.f ../source/setprm.f ../source/shakeup.f ../source/sigmoid.f ../source/simplex.f ../source/sktstuf.f ../source/sort.f ../source/square.f ../source/suffix.f ../source/surface.f ../source/surfatom.f ../source/switch.f ../source/tcgstuf.f ../source/temper.f ../source/tncg.f ../source/torphase.f ../source/torque.f ../source/torsions.f ../source/trimtext.f ../source/unitcell.f ../source/verlet.f ../source/version.f ../source/volume.f ../source/xyzatm.f ../source/zatom.f) if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/cpp/tinker/routines.h") enable_language (CXX) add_library (tinkerObjCpp OBJECT cpp/tinker/routines.cpp cpp/tinker/modcpp.cpp) if (${CMAKE_Fortran_COMPILER_ID} STREQUAL GNU) target_include_directories (tinkerObjCpp PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include/tinker/gfortran") elseif (${CMAKE_Fortran_COMPILER_ID} STREQUAL Intel) target_include_directories (tinkerObjCpp PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include/tinker/ifort") else () message (FATAL_ERROR "Must use a GNU or Intel Fortran compiler; Please export FC=valid_fortran_compiler; ${CMAKE_Fortran_COMPILER_ID} is not supported.") endif () add_library (tinkerFToCpp STATIC $ $) target_include_directories (tinkerFToCpp PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/cpp") target_link_libraries (tinkerFToCpp PUBLIC tinkerObjF tinkerObjCpp) endif () if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/c/tinker/routines.h") enable_language (C) add_library (tinkerObjC OBJECT c/tinker/routines.c) if (${CMAKE_Fortran_COMPILER_ID} STREQUAL GNU) target_include_directories (tinkerObjC PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include/tinker/gfortran") elseif (${CMAKE_Fortran_COMPILER_ID} STREQUAL Intel) target_include_directories (tinkerObjC PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include/tinker/ifort") else () message (FATAL_ERROR "Must use a GNU or Intel Fortran compiler; Please export FC=valid_fortran_compiler; ${CMAKE_Fortran_COMPILER_ID} is not supported.") endif () add_library (tinkerFToC STATIC $ $) target_include_directories (tinkerFToC PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/c") target_link_libraries (tinkerFToC PUBLIC tinkerObjF tinkerObjC) endif () # Generated by v49.