📄 makefile
字号:
TOPDIR=../../../..ifndef SRCDIR SRCDIR=$(shell pwd)endifinclude $(SRCDIR)/$(TOPDIR)/lib/GlobalMakefileINSUF=inPROGRAM=mpqcRUN=runREF=refMPQC=../../mpqcINPUTGENDEPS=$(SRCTOPDIR)/lib/perl/QCParse.pm \ $(SRCTOPDIR)/lib/perl/QCResult.pm \ $(SRCTOPDIR)/lib/perl/Molecule.pm \ $(SRCDIR)/makein.plMAKEIN=$(PERL) -I$(SRCTOPDIR)/lib/perl $(SRCDIR)/makein.plCHECKOUT=$(PERL) -I$(SRCTOPDIR)/lib/perl $(SRCDIR)/checkout.pl########################################################################H2OMASTER=h2o.qciH2OINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(H2OMASTER))H2OOUTPUTS = $(H2OINPUTS:%.$(INSUF)=%.out)H2OMP2MASTER=h2omp2.qciH2OMP2INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(H2OMP2MASTER))H2OMP2OUTPUTS = $(H2OMP2INPUTS:%.$(INSUF)=%.out)MP2R12MASTER=mp2r12.qciMP2R12INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(MP2R12MASTER))MP2R12OUTPUTS = $(MP2R12INPUTS:%.$(INSUF)=%.out)H2OFRQMASTER=h2ofrq.qciH2OFRQINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(H2OFRQMASTER))H2OFRQOUTPUTS = $(H2OFRQINPUTS:%.$(INSUF)=%.out)ORTHOGMASTER=orthog.qciORTHOGINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(ORTHOGMASTER))ORTHOGOUTPUTS = $(ORTHOGINPUTS:%.$(INSUF)=%.out)BASIS1MASTER=basis1.qciBASIS1INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(BASIS1MASTER))BASIS1OUTPUTS = $(BASIS1INPUTS:%.$(INSUF)=%.out)DFTMASTER=dft.qciDFTINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(DFTMASTER))DFTOUTPUTS = $(DFTINPUTS:%.$(INSUF)=%.out)BASIS2MASTER=basis2.qciBASIS2INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(BASIS2MASTER))BASIS2OUTPUTS = $(BASIS2INPUTS:%.$(INSUF)=%.out)OPTMASTER=opt.qciOPTINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(OPTMASTER))OPTOUTPUTS = $(OPTINPUTS:%.$(INSUF)=%.out)OPTTSMASTER=optts.qciOPTTSINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(OPTTSMASTER))OPTTSOUTPUTS = $(OPTTSINPUTS:%.$(INSUF)=%.out)SYMM1MASTER=symm1.qciSYMM1INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(SYMM1MASTER))SYMM1OUTPUTS = $(SYMM1INPUTS:%.$(INSUF)=%.out)SYMM2MASTER=symm2.qciSYMM2INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(SYMM2MASTER))SYMM2OUTPUTS = $(SYMM2INPUTS:%.$(INSUF)=%.out)SYMM3MASTER=symm3.qciSYMM3INPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(SYMM3MASTER))SYMM3OUTPUTS = $(SYMM3INPUTS:%.$(INSUF)=%.out)CLSCFMASTER=clscf.qciCLSCFINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(CLSCFMASTER))CLSCFOUTPUTS = $(CLSCFINPUTS:%.$(INSUF)=%.out)USCFMASTER=uscf.qciUSCFINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(USCFMASTER))USCFOUTPUTS = $(USCFINPUTS:%.$(INSUF)=%.out)HSOSSCFMASTER=hsosscf.qciHSOSSCFINPUTS=$(shell $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -e -d $(RUN) $(HSOSSCFMASTER))HSOSSCFOUTPUTS = $(HSOSSCFINPUTS:%.$(INSUF)=%.out)CKPTINPUTS = \ ckpt_0clscf.in ckpt_0qnewtopt.in ckpt_1zapt2.in ckpt_mp2.in \ ckpt_0efcopt.in ckpt_1clscf.in ckpt_1qnewtopt.in ckpt_2qnewtopt.in \ ckpt_0hsosscf.in ckpt_1efcopt.in ckpt_clscf.in ckpt_efcopt.in \ ckpt_0mp2.in ckpt_1hsosscf.in ckpt_2efcopt.in ckpt_qnewtopt.in \ ckpt_0zapt2.in ckpt_1mp2.in ckpt_hsosscf.in \ ckpt_0clksb3lyp.in ckpt_1clksb3lyp.in ckpt_clksb3lyp.in \ ckpt_0clksbp86.in ckpt_1clksbp86.in ckpt_clksbp86.in \ ckpt_0clkshfg96.in ckpt_1clkshfg96.in ckpt_clkshfg96.in \ ckpt_0clksmpwpw91.in ckpt_1clksmpwpw91.in ckpt_clksmpwpw91.in \ ckpt_0clkspbe.in ckpt_1clkspbe.in ckpt_clkspbe.in \ ckpt_0clkspw91.in ckpt_1clkspw91.in ckpt_clkspw91.in \ ckpt_0clksspz81.in ckpt_1clksspz81.in ckpt_clksspz81.in \ ckpt_0clkssvwn1.in ckpt_1clkssvwn1.in ckpt_clkssvwn1.in \ ckpt_0clkssvwn1rpa.in ckpt_1clkssvwn1rpa.in ckpt_clkssvwn1rpa.in \ ckpt_0clkssvwn2.in ckpt_1clkssvwn2.in ckpt_clkssvwn2.in \ ckpt_0clkssvwn3.in ckpt_1clkssvwn3.in ckpt_clkssvwn3.in \ ckpt_0clkssvwn4.in ckpt_1clkssvwn4.in ckpt_clkssvwn4.in \ ckpt_0clkssvwn5.in ckpt_1clkssvwn5.in ckpt_clkssvwn5.in \ ckpt_0clksxalpha.in ckpt_1clksxalpha.in ckpt_clksxalpha.in \ ckpt_0hsosksxalpha.in ckpt_1hsosksxalpha.in ckpt_hsosksxalpha.in \ ckpt_0uksxalpha.in ckpt_1uksxalpha.in ckpt_uksxalpha.inCKPTINPUTS := $(CKPTINPUTS:%=run/%)CKPTOUTPUTS = $(CKPTINPUTS:%.$(INSUF)=%.out)MBPTINPUTS = \ mbpt_mp2mem.in mbpt_opt12v1.in mbpt_opt22v2.in mbpt_zapt2v2lb.in \ mbpt_mp2v1.in mbpt_opt12v2.in mbpt_opt22v2lb.in \ mbpt_mp2v2.in mbpt_opt12v2lb.in mbpt_zapt2v1.in \ mbpt_mp2v2lb.in mbpt_opt22v1.in mbpt_zapt2v2.in \ mbpt_mp2mem_mp.in mbpt_mp2v2_mp.in mbpt_mp2mem_c1.in mbpt_mp2mem_auto.in \ mbpt_mp2r12_ne2.in mbpt_mp2r12_ne2_posix.in mbpt_mp2r12_ne2_multipass.in mbpt_mp2r12_ne2_tz.in \ mbpt_mp2r12_c6h6_multipass.inMBPTINPUTS := $(MBPTINPUTS:%=run/%)MBPTOUTPUTS = $(MBPTINPUTS:%.$(INSUF)=%.out)METHODSINPUTS = \ clks_b88.in clks_lsdax.in clks_xa.in clks_blyp.in clks_b3lyp.in \ hsosks_b88.in hsosks_lsdax.in hsosks_xa.in hsosks_blyp.in hsosks_b3lyp.in \ uks_b88.in uks_lsdax.in uks_xa.in uks_blyp.in uks_b3lyp.in \ clhf.in hsoshf.in uhf.in osshf.in tchf.inMETHODSINPUTS := $(METHODSINPUTS:%=run/methods_%)INPUTINPUTS = \rksch2.in uksch2.in uhfch2opt.in rhfch2opt.in hfch2opt.in \hfh2ofreq.in ksh2oco.in ksh2o.in hfh2oopt.in \mp2h2o.in mp2r12ah2o.in mp2r12aph2o.in zapt2ch2.inINPUTINPUTS := $(INPUTINPUTS:%=run/input_%)##############################################################################ALLINPUTS = $(METHODSINPUTS) $(H2OINPUTS) $(H2OMP2INPUTS) $(H2OFRQINPUTS) \ $(MP2R12INPUTS) \ $(ORTHOGINPUTS) $(BASIS1INPUTS) $(BASIS2INPUTS) \ $(DFTINPUTS) \ $(OPTINPUTS) $(OPTTSINPUTS) \ $(SYMM1INPUTS) $(SYMM2INPUTS) $(SYMM3INPUTS) \ $(CKPTINPUTS) $(MBPTINPUTS) \ $(CLSCFINPUTS) $(USCFINPUTS) $(HSOSSCFINPUTS) \ $(INPUTINPUTS)ALLOUTPUTS = $(ALLINPUTS:%.$(INSUF)=%.out)##############################################################################.PHONY: defaultdefault:: @echo \'make inputs\' to make a run directory containing all inputs @echo \'make checkrun\' to check outputs of the run directory @echo \'make check\' to compare the outputs in run with those in ref @echo \'make diff\' to use the diff program to compare outputs.PHONY: inputsinputs:: h2o h2omp2 mp2r12 h2ofrq basis1 basis2 opt optts symm1 symm2 symm3 ckpt mbptinputs:: methods clscf uscf hsosscf input dft orthog.PHONY: h2oh2o: stamp-h2o.PHONY: h2omp2h2omp2: stamp-h2omp2.PHONY: mp2r12mp2r12: stamp-mp2r12.PHONY: h2ofrqh2ofrq: stamp-h2ofrq.PHONY: orthogorthog: stamp-orthog.PHONY: basis1basis1: stamp-basis1.PHONY: dftdft: stamp-dft.PHONY: basis2basis2: stamp-basis2.PHONY: symm1symm1: stamp-symm1.PHONY: symm2symm2: stamp-symm2.PHONY: symm3symm3: stamp-symm3.PHONY: clscfclscf: stamp-clscf.PHONY: uscfuscf: stamp-uscf.PHONY: hsosscfhsosscf: stamp-hsosscf.PHONY: optopt: stamp-opt.PHONY: opttsoptts: stamp-optts.PHONY: ckptckpt: $(CKPTINPUTS) $(CKPTINPUTS:%.in=%.qci).PHONY: mbptmbpt: $(MBPTINPUTS) $(MBPTINPUTS:%.in=%.qci).PHONY: methodsmethods: $(METHODSINPUTS) $(METHODSINPUTS:%.in=%.qci).PHONY: inputinput: $(INPUTINPUTS) $(INPUTINPUTS:%.in=%.qci)stamp-h2o: $(RUN) $(H2OMASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(H2OMASTER) touch stamp-h2ostamp-h2omp2: $(RUN) $(H2OMP2MASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(H2OMP2MASTER) touch stamp-h2omp2stamp-mp2r12: $(RUN) $(MP2R12MASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(MP2R12MASTER) touch stamp-mp2r12stamp-h2ofrq: $(RUN) $(H2OFRQMASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(H2OFRQMASTER) touch stamp-h2ofrqstamp-orthog: $(RUN) $(ORTHOGMASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(ORTHOGMASTER) touch stamp-orthogstamp-basis1: $(RUN) $(BASIS1MASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(BASIS1MASTER) touch stamp-basis1stamp-dft: $(RUN) $(DFTMASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(DFTMASTER) touch stamp-dftstamp-basis2: $(RUN) $(BASIS2MASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(BASIS2MASTER) touch stamp-basis2stamp-opt: $(RUN) $(OPTMASTER) $(INPUTGENDEPS) $(MAKEIN) -p $(PROGRAM) -I$(SRCDIR) -d $(RUN) $(OPTMASTER) touch stamp-optstamp-optts: $(RUN) $(OPTTSMASTER) $(INPUTGENDEPS)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -