more lib compilation updates
This commit is contained in:
@ -12,7 +12,7 @@ try:
|
|||||||
except: from urllib import urlretrieve as geturl
|
except: from urllib import urlretrieve as geturl
|
||||||
except:
|
except:
|
||||||
def geturl(url,fname):
|
def geturl(url,fname):
|
||||||
cmd = "curl -o %s %s" % (fname,url)
|
cmd = 'curl -L -o "%s" %s' % (fname,url)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
return txt
|
return txt
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ if buildflag:
|
|||||||
|
|
||||||
if os.path.isdir(kimdir):
|
if os.path.isdir(kimdir):
|
||||||
print("kim-api is already installed at %s.\nRemoving it for re-install" % kimdir)
|
print("kim-api is already installed at %s.\nRemoving it for re-install" % kimdir)
|
||||||
cmd = "rm -rf %s" % kimdir
|
cmd = 'rm -rf "%s"' % kimdir
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|
||||||
# configure LAMMPS to use kim-api to be installed
|
# configure LAMMPS to use kim-api to be installed
|
||||||
@ -160,48 +160,48 @@ if buildflag:
|
|||||||
print("Downloading kim-api tarball ...")
|
print("Downloading kim-api tarball ...")
|
||||||
geturl(url,"%s/%s.tgz" % (thisdir,version))
|
geturl(url,"%s/%s.tgz" % (thisdir,version))
|
||||||
print("Unpacking kim-api tarball ...")
|
print("Unpacking kim-api tarball ...")
|
||||||
cmd = "cd %s; rm -rf %s; tar zxvf %s.tgz" % (thisdir,version,version)
|
cmd = 'cd "%s"; rm -rf "%s"; tar -xzvf %s.tgz' % (thisdir,version,version)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|
||||||
# configure kim-api
|
# configure kim-api
|
||||||
|
|
||||||
print("Configuring kim-api ...")
|
print("Configuring kim-api ...")
|
||||||
cmd = "cd %s/%s; ./configure --prefix='%s'" % (thisdir,version,kimdir)
|
cmd = 'cd "%s/%s"; ./configure --prefix="%s"' % (thisdir,version,kimdir)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|
||||||
# build kim-api
|
# build kim-api
|
||||||
|
|
||||||
print("Configuring example Models")
|
print("Configuring example Models")
|
||||||
cmd = "cd %s/%s; make add-examples" % (thisdir,version)
|
cmd = 'cd "%s/%s"; make add-examples' % (thisdir,version)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
if verboseflag: print (txt.decode("UTF-8"))
|
if verboseflag: print (txt.decode("UTF-8"))
|
||||||
|
|
||||||
if everythingflag:
|
if everythingflag:
|
||||||
print("Configuring all OpenKIM models, this will take a while ...")
|
print("Configuring all OpenKIM models, this will take a while ...")
|
||||||
cmd = "cd %s/%s; make add-OpenKIM" % (thisdir,version)
|
cmd = 'cd "%s/%s"; make add-OpenKIM' % (thisdir,version)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
if verboseflag: print(txt.decode("UTF-8"))
|
if verboseflag: print(txt.decode("UTF-8"))
|
||||||
|
|
||||||
print("Building kim-api ...")
|
print("Building kim-api ...")
|
||||||
cmd = "cd %s/%s; make" % (thisdir,version)
|
cmd = 'cd "%s/%s"; make' % (thisdir,version)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
if verboseflag: print(txt.decode("UTF-8"))
|
if verboseflag: print(txt.decode("UTF-8"))
|
||||||
|
|
||||||
# install kim-api
|
# install kim-api
|
||||||
|
|
||||||
print("Installing kim-api ...")
|
print("Installing kim-api ...")
|
||||||
cmd = "cd %s/%s; make install" % (thisdir,version)
|
cmd = 'cd "%s/%s"; make install' % (thisdir,version)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
if verboseflag: print(txt.decode("UTF-8"))
|
if verboseflag: print(txt.decode("UTF-8"))
|
||||||
|
|
||||||
cmd = "cd %s/%s; make install-set-default-to-v1" %(thisdir,version)
|
cmd = 'cd "%s/%s"; make install-set-default-to-v1' %(thisdir,version)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
if verboseflag: print(txt.decode("UTF-8"))
|
if verboseflag: print(txt.decode("UTF-8"))
|
||||||
|
|
||||||
# remove source files
|
# remove source files
|
||||||
|
|
||||||
print("Removing kim-api source and build files ...")
|
print("Removing kim-api source and build files ...")
|
||||||
cmd = "cd %s; rm -rf %s; rm -rf %s.tgz" % (thisdir,version,version)
|
cmd = 'cd "%s"; rm -rf %s; rm -rf %s.tgz' % (thisdir,version,version)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|
||||||
# add a single model (and possibly its driver) to existing KIM installation
|
# add a single model (and possibly its driver) to existing KIM installation
|
||||||
@ -219,11 +219,11 @@ if addflag:
|
|||||||
geturl(url,"%s/%s.tgz" % (thisdir,addmodelname))
|
geturl(url,"%s/%s.tgz" % (thisdir,addmodelname))
|
||||||
|
|
||||||
print("Unpacking item tarball ...")
|
print("Unpacking item tarball ...")
|
||||||
cmd = "cd %s; tar zxvf %s.tgz" % (thisdir,addmodelname)
|
cmd = 'cd "%s"; tar -xzvf %s.tgz' % (thisdir,addmodelname)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|
||||||
print("Building item ...")
|
print("Building item ...")
|
||||||
cmd = "cd %s/%s; make; make install" %(thisdir,addmodelname)
|
cmd = 'cd "%s/%s"; make; make install' %(thisdir,addmodelname)
|
||||||
try:
|
try:
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
except subprocess.CalledProcessError as e:
|
except subprocess.CalledProcessError as e:
|
||||||
@ -231,18 +231,18 @@ if addflag:
|
|||||||
# Error: but first, check to see if it needs a driver
|
# Error: but first, check to see if it needs a driver
|
||||||
firstRunOutput = e.output.decode("UTF-8")
|
firstRunOutput = e.output.decode("UTF-8")
|
||||||
|
|
||||||
cmd = "cd %s/%s; make kim-item-type" % (thisdir,addmodelname)
|
cmd = 'cd "%s/%s"; make kim-item-type' % (thisdir,addmodelname)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
txt = txt.decode("UTF-8")
|
txt = txt.decode("UTF-8")
|
||||||
if txt == "ParameterizedModel":
|
if txt == "ParameterizedModel":
|
||||||
|
|
||||||
# Get and install driver
|
# Get and install driver
|
||||||
|
|
||||||
cmd = "cd %s/%s; make model-driver-name" % (thisdir,addmodelname)
|
cmd = 'cd "%s/%s"; make model-driver-name' % (thisdir,addmodelname)
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
adddrivername = txt.decode("UTF-8").strip()
|
adddrivername = txt.decode("UTF-8").strip()
|
||||||
print("First installing model driver: %s..." % adddrivername)
|
print("First installing model driver: %s..." % adddrivername)
|
||||||
cmd = "cd %s; python Install.py -n -a %s" % (thisdir,adddrivername)
|
cmd = 'cd "%s"; python Install.py -n -a %s' % (thisdir,adddrivername)
|
||||||
try:
|
try:
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
except subprocess.CalledProcessError as e:
|
except subprocess.CalledProcessError as e:
|
||||||
@ -254,7 +254,7 @@ if addflag:
|
|||||||
# now install the model that needed the driver
|
# now install the model that needed the driver
|
||||||
|
|
||||||
print("Now installing model : %s" % addmodelname)
|
print("Now installing model : %s" % addmodelname)
|
||||||
cmd = "cd %s; python Install.py -n -a %s" % (thisdir,addmodelname)
|
cmd = 'cd "%s"; python Install.py -n -a %s' % (thisdir,addmodelname)
|
||||||
try:
|
try:
|
||||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
except subprocess.CalledProcessError as e:
|
except subprocess.CalledProcessError as e:
|
||||||
@ -272,5 +272,5 @@ if addflag:
|
|||||||
|
|
||||||
if verboseflag: print(txt.decode("UTF-8"))
|
if verboseflag: print(txt.decode("UTF-8"))
|
||||||
print("Removing kim item source and build files ...")
|
print("Removing kim item source and build files ...")
|
||||||
cmd = "cd %s; rm -rf %s; rm -rf %s.tgz" %(thisdir,addmodelname,addmodelname)
|
cmd = 'cd "%s"; rm -rf %s; rm -rf %s.tgz' %(thisdir,addmodelname,addmodelname)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|||||||
4
lib/mscg/.gitignore
vendored
Normal file
4
lib/mscg/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# files to ignore
|
||||||
|
/liblink
|
||||||
|
/includelink
|
||||||
|
/MSCG-release-master
|
||||||
@ -3,127 +3,133 @@
|
|||||||
# Install.py tool to download, unpack, build, and link to the MS-CG library
|
# Install.py tool to download, unpack, build, and link to the MS-CG library
|
||||||
# used to automate the steps described in the README file in this dir
|
# used to automate the steps described in the README file in this dir
|
||||||
|
|
||||||
import sys,os,re,commands
|
from __future__ import print_function
|
||||||
|
import sys,os,re,subprocess
|
||||||
|
|
||||||
|
try:
|
||||||
|
import ssl
|
||||||
|
try: from urllib.request import urlretrieve as geturl
|
||||||
|
except: from urllib import urlretrieve as geturl
|
||||||
|
except:
|
||||||
|
def geturl(url,fname):
|
||||||
|
cmd = 'curl -L -o "%s" %s' % (fname,url)
|
||||||
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
return txt
|
||||||
|
|
||||||
# help message
|
# help message
|
||||||
|
|
||||||
help = """
|
help = """
|
||||||
Syntax from src dir: make lib-mscg args="-h hpath hdir -g -b [suffix] -l"
|
Syntax from src dir: make lib-mscg args="-p [path] -m [suffix]"
|
||||||
Syntax from lib dir: python Install.py -h hpath hdir -g -b [suffix] -l
|
Syntax from lib dir: python Install.py -p [path] -m [suffix]
|
||||||
|
|
||||||
specify one or more options, order does not matter
|
specify one or more options, order does not matter
|
||||||
|
|
||||||
-h = set home dir of MS-CG to be hpath/hdir
|
-b = download and build MS-CG library (default)
|
||||||
hpath can be full path, contain '~' or '.' chars
|
-p = specify folder of existing MS-CG installation
|
||||||
default hpath = . = lib/mscg
|
-m = machine suffix specifies which src/Make/Makefile.suffix to use
|
||||||
default hdir = MSCG-release-master = what GitHub zipfile unpacks to
|
|
||||||
-g = grab (download) zipfile from MS-CG GitHub website
|
|
||||||
unpack it to hpath/hdir
|
|
||||||
hpath must already exist
|
|
||||||
if hdir already exists, it will be deleted before unpack
|
|
||||||
-b = build MS-CG library in its src dir
|
|
||||||
optional suffix specifies which src/Make/Makefile.suffix to use
|
|
||||||
default suffix = g++_simple
|
default suffix = g++_simple
|
||||||
-l = create 2 softlinks (includelink,liblink) in lib/mscg to MS-CG src dir
|
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
make lib-mscg args="-g -b -l" # download/build in lib/mscg/MSCG-release-master
|
make lib-mscg args="-b " # download/build in lib/mscg/MSCG-release-master
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# settings
|
# settings
|
||||||
|
|
||||||
url = "https://github.com/uchicago-voth/MSCG-release/archive/master.zip"
|
url = "http://github.com/uchicago-voth/MSCG-release/archive/master.tar.gz"
|
||||||
zipfile = "MS-CG-master.zip"
|
tarfile = "MS-CG-master.tar.gz"
|
||||||
zipdir = "MSCG-release-master"
|
tardir = "MSCG-release-master"
|
||||||
|
|
||||||
# print error message or help
|
# print error message or help
|
||||||
|
|
||||||
def error(str=None):
|
def error(str=None):
|
||||||
if not str: print help
|
if not str: print(help)
|
||||||
else: print "ERROR",str
|
else: print("ERROR",str)
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
# expand to full path name
|
# expand to full path name
|
||||||
# process leading '~' or relative path
|
# process leading '~' or relative path
|
||||||
|
|
||||||
def fullpath(path):
|
def fullpath(path):
|
||||||
return os.path.abspath(os.path.expanduser(path))
|
return os.path.abspath(os.path.expanduser(path))
|
||||||
|
|
||||||
# parse args
|
# parse args
|
||||||
|
|
||||||
args = sys.argv[1:]
|
args = sys.argv[1:]
|
||||||
nargs = len(args)
|
nargs = len(args)
|
||||||
if nargs == 0: error()
|
|
||||||
|
|
||||||
homepath = "."
|
homepath = "."
|
||||||
homedir = zipdir
|
homedir = tardir
|
||||||
|
|
||||||
grabflag = 0
|
buildflag = True
|
||||||
buildflag = 0
|
pathflag = False
|
||||||
|
linkflag = True
|
||||||
msuffix = "g++_simple"
|
msuffix = "g++_simple"
|
||||||
linkflag = 0
|
|
||||||
|
|
||||||
iarg = 0
|
iarg = 0
|
||||||
while iarg < nargs:
|
while iarg < nargs:
|
||||||
if args[iarg] == "-h":
|
if args[iarg] == "-p":
|
||||||
if iarg+3 > nargs: error()
|
if iarg+2 > nargs: error()
|
||||||
homepath = args[iarg+1]
|
mscgpath = fullpath(args[iarg+1])
|
||||||
homedir = args[iarg+2]
|
pathflag = True
|
||||||
iarg += 3
|
buildflag = False
|
||||||
elif args[iarg] == "-g":
|
iarg += 2
|
||||||
grabflag = 1
|
elif args[iarg] == "-m":
|
||||||
iarg += 1
|
if iarg+2 > nargs: error()
|
||||||
|
msuffix = args[iarg+1]
|
||||||
|
iarg += 2
|
||||||
elif args[iarg] == "-b":
|
elif args[iarg] == "-b":
|
||||||
buildflag = 1
|
buildflag = True
|
||||||
if iarg+1 < nargs and args[iarg+1][0] != '-':
|
|
||||||
msuffix = args[iarg+1]
|
|
||||||
iarg += 1
|
|
||||||
iarg += 1
|
|
||||||
elif args[iarg] == "-l":
|
|
||||||
linkflag = 1
|
|
||||||
iarg += 1
|
iarg += 1
|
||||||
else: error()
|
else: error()
|
||||||
|
|
||||||
homepath = fullpath(homepath)
|
homepath = fullpath(homepath)
|
||||||
if not os.path.isdir(homepath): error("MS-CG path does not exist")
|
|
||||||
homedir = "%s/%s" % (homepath,homedir)
|
homedir = "%s/%s" % (homepath,homedir)
|
||||||
|
|
||||||
# download and unpack MS-CG zipfile
|
if (pathflag):
|
||||||
|
if not os.path.isdir(mscgpath): error("MS-CG path does not exist")
|
||||||
|
homedir = mscgpath
|
||||||
|
|
||||||
if grabflag:
|
if (buildflag and pathflag):
|
||||||
print "Downloading MS-CG ..."
|
error("Cannot use -b and -p flag at the same time")
|
||||||
cmd = "curl -L %s > %s/%s" % (url,homepath,zipfile)
|
|
||||||
print cmd
|
|
||||||
print commands.getoutput(cmd)
|
|
||||||
|
|
||||||
print "Unpacking MS-CG zipfile ..."
|
# download and unpack MS-CG tarfile
|
||||||
if os.path.exists("%s/%s" % (homepath,zipdir)):
|
|
||||||
commands.getoutput("rm -rf %s/%s" % (homepath,zipdir))
|
if buildflag:
|
||||||
cmd = "cd %s; unzip %s" % (homepath,zipfile)
|
print("Downloading MS-CG ...")
|
||||||
commands.getoutput(cmd)
|
geturl(url,"%s/%s" % (homepath,tarfile))
|
||||||
if os.path.basename(homedir) != zipdir:
|
|
||||||
if os.path.exists(homedir): commands.getoutput("rm -rf %s" % homedir)
|
print("Unpacking MS-CG tarfile ...")
|
||||||
os.rename("%s/%s" % (homepath,zipdir),homedir)
|
if os.path.exists("%s/%s" % (homepath,tardir)):
|
||||||
|
cmd = 'rm -rf "%s/%s"' % (homepath,tardir)
|
||||||
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
cmd = 'cd "%s"; tar -xzvf %s' % (homepath,tarfile)
|
||||||
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
os.remove("%s/%s" % (homepath,tarfile))
|
||||||
|
if os.path.basename(homedir) != tardir:
|
||||||
|
if os.path.exists(homedir):
|
||||||
|
cmd = 'rm -rf "%s"' % homedir
|
||||||
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
os.rename("%s/%s" % (homepath,tardir),homedir)
|
||||||
|
|
||||||
# build MS-CG
|
# build MS-CG
|
||||||
|
|
||||||
if buildflag:
|
if buildflag:
|
||||||
print "Building MS-CG ..."
|
print("Building MS-CG ...")
|
||||||
cmd = "cd %s/src; cp Make/Makefile.%s .; make -f Makefile.%s" % \
|
cmd = 'cd "%s/src"; cp Make/Makefile.%s .; make -f Makefile.%s' % \
|
||||||
(homedir,msuffix,msuffix)
|
(homedir,msuffix,msuffix)
|
||||||
txt = commands.getoutput(cmd)
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
print txt
|
print(txt.decode('UTF-8'))
|
||||||
|
|
||||||
# create 2 links in lib/mscg to MS-CG src dir
|
# create 2 links in lib/mscg to MS-CG src dir
|
||||||
|
|
||||||
if linkflag:
|
if linkflag:
|
||||||
print "Creating links to MS-CG include and lib files"
|
print("Creating links to MS-CG include and lib files")
|
||||||
if os.path.isfile("includelink") or os.path.islink("includelink"):
|
if os.path.isfile("includelink") or os.path.islink("includelink"):
|
||||||
os.remove("includelink")
|
os.remove("includelink")
|
||||||
if os.path.isfile("liblink") or os.path.islink("liblink"):
|
if os.path.isfile("liblink") or os.path.islink("liblink"):
|
||||||
os.remove("liblink")
|
os.remove("liblink")
|
||||||
cmd = "ln -s %s/src includelink" % homedir
|
cmd = 'ln -s "%s/src" includelink' % homedir
|
||||||
commands.getoutput(cmd)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
cmd = "ln -s %s/src liblink" % homedir
|
cmd = 'ln -s "%s/src" liblink' % homedir
|
||||||
commands.getoutput(cmd)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|||||||
@ -68,7 +68,7 @@ OBJ = $(SRC:.cpp=.o)
|
|||||||
# ------ SETTINGS ------
|
# ------ SETTINGS ------
|
||||||
|
|
||||||
CC = g++
|
CC = g++
|
||||||
CCFLAGS = -O -g -fPIC -Wall #-Wno-deprecated
|
CCFLAGS = -O3 -g -fPIC -Wall #-Wno-deprecated
|
||||||
ARCHIVE = ar
|
ARCHIVE = ar
|
||||||
ARCHFLAG = -rc
|
ARCHFLAG = -rc
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
|
|||||||
@ -1,110 +0,0 @@
|
|||||||
# *
|
|
||||||
# *_________________________________________________________________________*
|
|
||||||
# * POEMS: PARALLELIZABLE OPEN SOURCE EFFICIENT MULTIBODY SOFTWARE *
|
|
||||||
# * DESCRIPTION: SEE READ-ME *
|
|
||||||
# * FILE NAME: Makefile *
|
|
||||||
# * AUTHORS: See Author List *
|
|
||||||
# * GRANTS: See Grants List *
|
|
||||||
# * COPYRIGHT: (C) 2005 by Authors as listed in Author's List *
|
|
||||||
# * LICENSE: Please see License Agreement *
|
|
||||||
# * DOWNLOAD: Free at www.rpi.edu/~anderk5 *
|
|
||||||
# * ADMINISTRATOR: Prof. Kurt Anderson *
|
|
||||||
# * Computational Dynamics Lab *
|
|
||||||
# * Rensselaer Polytechnic Institute *
|
|
||||||
# * 110 8th St. Troy NY 12180 *
|
|
||||||
# * CONTACT: anderk5@rpi.edu *
|
|
||||||
# *_________________________________________________________________________*/
|
|
||||||
|
|
||||||
SHELL = /bin/sh
|
|
||||||
|
|
||||||
# which file will be copied to Makefile.lammps
|
|
||||||
|
|
||||||
EXTRAMAKE = Makefile.lammps.empty
|
|
||||||
|
|
||||||
# ------ FILES ------
|
|
||||||
|
|
||||||
SRC_MAIN = workspace.cpp system.cpp poemsobject.cpp
|
|
||||||
INC_MAIN = workspace.h system.h poemsobject.h
|
|
||||||
|
|
||||||
SRC_BODY = body.cpp rigidbody.cpp particle.cpp inertialframe.cpp
|
|
||||||
INC_BODY = bodies.h body.h rigidbody.h particle.h inertialframe.h
|
|
||||||
|
|
||||||
|
|
||||||
SRC_JOINT = joint.cpp revolutejoint.cpp prismaticjoint.cpp sphericaljoint.cpp \
|
|
||||||
freebodyjoint.cpp body23joint.cpp mixedjoint.cpp
|
|
||||||
INC_JOINT = joints.h joint.h revolutejoint.h prismaticjoint.h sphericaljoint.h \
|
|
||||||
freebodyjoint.h body23joint.h mixedjoint.h
|
|
||||||
|
|
||||||
SRC_POINT = point.cpp fixedpoint.cpp
|
|
||||||
INC_POINT = points.h point.h fixedpoint.h
|
|
||||||
|
|
||||||
SRC_SOLVE = solver.cpp
|
|
||||||
INC_SOLVE = solver.h
|
|
||||||
|
|
||||||
SRC_ORDERN = onsolver.cpp onfunctions.cpp onbody.cpp
|
|
||||||
INC_ORDERN = onsolver.h onfunctions.h onbody.h
|
|
||||||
|
|
||||||
SRC_MAT = virtualmatrix.cpp matrix.cpp matrixfun.cpp mat3x3.cpp virtualcolmatrix.cpp \
|
|
||||||
colmatrix.cpp vect3.cpp virtualrowmatrix.cpp rowmatrix.cpp mat6x6.cpp vect6.cpp \
|
|
||||||
fastmatrixops.cpp colmatmap.cpp eulerparameters.cpp vect4.cpp norm.cpp mat4x4.cpp \
|
|
||||||
|
|
||||||
INC_MAT = matrices.h virtualmatrix.h matrix.h matrixfun.h mat3x3.h virtualcolmatrix.h \
|
|
||||||
colmatrix.h vect3.h virtualrowmatrix.h rowmatrix.h mat6x6.h vect6.h \
|
|
||||||
fastmatrixops.h colmatmap.h eulerparameters.h vect4.h norm.h mat4x4.h
|
|
||||||
|
|
||||||
SRC_MISC = poemstreenode.cpp
|
|
||||||
INC_MISC = poemslist.h poemstreenode.h poemstree.h poemsnodelib.h SystemProcessor.h defines.h POEMSChain.h
|
|
||||||
|
|
||||||
SRC = $(SRC_MAIN) $(SRC_BODY) $(SRC_JOINT) $(SRC_POINT) $(SRC_SOLVE) $(SRC_ORDERN) $(SRC_MAT) $(SRC_MISC)
|
|
||||||
INC = $(INC_MAIN) $(INC_BODY) $(INC_JOINT) $(INC_POINT) $(INC_SOLVE) $(INC_ORDERN) $(INC_MAT) $(INC_MISC)
|
|
||||||
|
|
||||||
FILES = $(SRC) $(INC) Makefile Authors_List.txt Grants_List.txt POEMS_License.txt README Copyright_Notice
|
|
||||||
|
|
||||||
# ------ DEFINITIONS ------
|
|
||||||
|
|
||||||
DIR = Obj_mingw32/
|
|
||||||
LIB = $(DIR)libpoems.a
|
|
||||||
OBJ = $(SRC:%.cpp=$(DIR)%.o)
|
|
||||||
|
|
||||||
# ------ SETTINGS ------
|
|
||||||
|
|
||||||
CC = i686-w64-mingw32-g++
|
|
||||||
CCFLAGS = -O2 -march=i686 -mtune=generic -mfpmath=387 -mpc64 \
|
|
||||||
-ffast-math -funroll-loops -finline-functions -fno-rtti \
|
|
||||||
-fno-exceptions -fstrict-aliasing \
|
|
||||||
-Wall -W -Wno-uninitialized
|
|
||||||
ARCHIVE = i686-w64-mingw32-ar
|
|
||||||
ARCHFLAG = -rcs
|
|
||||||
DEPFLAGS = -M
|
|
||||||
LINK = i686-w64-mingw32-g++
|
|
||||||
LINKFLAGS = -O
|
|
||||||
USRLIB =
|
|
||||||
SYSLIB =
|
|
||||||
|
|
||||||
# ------ MAKE PROCEDURE ------
|
|
||||||
|
|
||||||
default: $(DIR) $(LIB)
|
|
||||||
|
|
||||||
$(DIR):
|
|
||||||
-mkdir $(DIR)
|
|
||||||
|
|
||||||
$(LIB): $(OBJ)
|
|
||||||
$(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ)
|
|
||||||
@cp $(EXTRAMAKE) Makefile.lammps
|
|
||||||
|
|
||||||
# ------ COMPILE RULES ------
|
|
||||||
|
|
||||||
$(DIR)%.o:%.cpp
|
|
||||||
$(CC) $(CCFLAGS) -c $< -o $@
|
|
||||||
|
|
||||||
# ------ DEPENDENCIES ------
|
|
||||||
|
|
||||||
include .depend
|
|
||||||
|
|
||||||
# ------ CLEAN ------
|
|
||||||
|
|
||||||
clean:
|
|
||||||
-rm $(DIR)*.o $(DIR)*.d *~ $(LIB)
|
|
||||||
|
|
||||||
tar:
|
|
||||||
-tar -cvf ../POEMS.tar $(FILES)
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
# -*- makefile -*- wrapper for non-MPI libraries
|
|
||||||
|
|
||||||
SHELL=/bin/sh
|
|
||||||
|
|
||||||
all:
|
|
||||||
$(MAKE) $(MFLAGS) mingw32-cross
|
|
||||||
-rm -f Obj_mingw32-mpi
|
|
||||||
ln -s Obj_mingw32 Obj_mingw32-mpi
|
|
||||||
|
|
||||||
clean:
|
|
||||||
$(MAKE) $(MFLAGS) clean-mingw32-cross
|
|
||||||
-rm -f Obj_mingw32-mpi
|
|
||||||
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
# -*- makefile -*- wrapper for non-MPI libraries
|
|
||||||
|
|
||||||
SHELL=/bin/sh
|
|
||||||
|
|
||||||
all:
|
|
||||||
$(MAKE) $(MFLAGS) mingw64-cross
|
|
||||||
-rm -f Obj_mingw64-mpi
|
|
||||||
ln -s Obj_mingw64 Obj_mingw64-mpi
|
|
||||||
|
|
||||||
clean:
|
|
||||||
$(MAKE) $(MFLAGS) clean-mingw64-cross
|
|
||||||
-rm -f Obj_mingw64-mpi
|
|
||||||
|
|
||||||
@ -62,40 +62,31 @@ FILES = $(SRC) $(INC) Makefile Authors_List.txt Grants_List.txt POEMS_License.tx
|
|||||||
|
|
||||||
# ------ DEFINITIONS ------
|
# ------ DEFINITIONS ------
|
||||||
|
|
||||||
DIR = Obj_mingw64/
|
LIB = libpoems.a
|
||||||
LIB = $(DIR)libpoems.a
|
OBJ = $(SRC:.cpp=.o)
|
||||||
OBJ = $(SRC:%.cpp=$(DIR)%.o)
|
|
||||||
|
|
||||||
# ------ SETTINGS ------
|
# ------ SETTINGS ------
|
||||||
|
|
||||||
CC = x86_64-w64-mingw32-g++
|
CC = mpicxx
|
||||||
CCFLAGS = -O2 -march=core2 -mtune=core2 -msse2 -mpc64 \
|
CCFLAGS = -O3 -g -fPIC -Wall #-Wno-deprecated
|
||||||
-ffast-math -funroll-loops -finline-functions -fno-rtti \
|
ARCHIVE = ar
|
||||||
-fno-exceptions -fstrict-aliasing \
|
ARCHFLAG = -rc
|
||||||
-Wall -W -Wno-uninitialized
|
|
||||||
ARCHIVE = x86_64-w64-mingw32-ar
|
|
||||||
ARCHFLAG = -rcs
|
|
||||||
DEPFLAGS = -M
|
DEPFLAGS = -M
|
||||||
LINK = x86_64-w64-mingw32-g++
|
LINK = mpicxx
|
||||||
LINKFLAGS = -O
|
LINKFLAGS = -O
|
||||||
USRLIB =
|
USRLIB =
|
||||||
SYSLIB =
|
SYSLIB =
|
||||||
|
|
||||||
# ------ MAKE PROCEDURE ------
|
# ------ MAKE PROCEDURE ------
|
||||||
|
|
||||||
default: $(DIR) $(LIB)
|
lib: $(OBJ)
|
||||||
|
|
||||||
$(DIR):
|
|
||||||
-mkdir $(DIR)
|
|
||||||
|
|
||||||
$(LIB): $(OBJ)
|
|
||||||
$(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ)
|
$(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ)
|
||||||
@cp $(EXTRAMAKE) Makefile.lammps
|
@cp $(EXTRAMAKE) Makefile.lammps
|
||||||
|
|
||||||
# ------ COMPILE RULES ------
|
# ------ COMPILE RULES ------
|
||||||
|
|
||||||
$(DIR)%.o:%.cpp
|
%.o:%.cpp
|
||||||
$(CC) $(CCFLAGS) -c $< -o $@
|
$(CC) $(CCFLAGS) -c $<
|
||||||
|
|
||||||
# ------ DEPENDENCIES ------
|
# ------ DEPENDENCIES ------
|
||||||
|
|
||||||
@ -104,7 +95,7 @@ include .depend
|
|||||||
# ------ CLEAN ------
|
# ------ CLEAN ------
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
-rm $(DIR)*.o $(DIR)*.d *~ $(LIB)
|
-rm *.o *.d *~ $(LIB)
|
||||||
|
|
||||||
tar:
|
tar:
|
||||||
-tar -cvf ../POEMS.tar $(FILES)
|
-tar -cvf ../POEMS.tar $(FILES)
|
||||||
1
lib/poems/Makefile.serial
Symbolic link
1
lib/poems/Makefile.serial
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
Makefile.g++
|
||||||
66
lib/qmmm/Makefile.mpi
Normal file
66
lib/qmmm/Makefile.mpi
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
# -*- Makefile -*- for coupling LAMMPS to PWscf for QM/MM molecular dynamics
|
||||||
|
|
||||||
|
# this file will be copied to Makefile.lammps
|
||||||
|
EXTRAMAKE = Makefile.lammps.empty
|
||||||
|
|
||||||
|
# top level directory of Quantum ESPRESSO 5.4.1 or later
|
||||||
|
QETOPDIR=$(HOME)/compile/espresso
|
||||||
|
|
||||||
|
# import compiler settings from Quantum ESPRESSO
|
||||||
|
sinclude $(QETOPDIR)/make.sys
|
||||||
|
|
||||||
|
# FLAGS for c++ OpenMPI 1.8.8 or later when QE was compiled with GNU Fortran 4.x
|
||||||
|
MPICXX=mpicxx
|
||||||
|
MPICXXFLAGS= -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -O2 -g -fPIC\
|
||||||
|
-I../../src -I$(QETOPDIR)/COUPLE/include
|
||||||
|
MPILIBS=-fopenmp -lgfortran -ldl -ljpeg -lpng -lz -lmpi_mpifh -lmpi
|
||||||
|
|
||||||
|
# location of required libraries
|
||||||
|
# part 1: hi-level libraries for building pw.x
|
||||||
|
PWOBJS = \
|
||||||
|
$(QETOPDIR)/COUPLE/src/libqecouple.a \
|
||||||
|
$(QETOPDIR)/PW/src/libpw.a \
|
||||||
|
$(QETOPDIR)/Modules/libqemod.a
|
||||||
|
# part 2: lo-level libraries for all of Q-E
|
||||||
|
LIBOBJS = \
|
||||||
|
$(QETOPDIR)/FFTXlib/libqefft.a \
|
||||||
|
$(QETOPDIR)/LAXlib/libqela.a \
|
||||||
|
$(QETOPDIR)/clib/clib.a \
|
||||||
|
$(QETOPDIR)/iotk/src/libiotk.a
|
||||||
|
|
||||||
|
# part 3: add-on libraries and main library for LAMMPS
|
||||||
|
sinclude ../../src/Makefile.package
|
||||||
|
LAMMPSCFG = mpi
|
||||||
|
LAMMPSLIB = ../../src/liblammps_$(LAMMPSCFG).a
|
||||||
|
|
||||||
|
# part 4: local QM/MM library and progams
|
||||||
|
SRC=pwqmmm.c libqmmm.c
|
||||||
|
OBJ=$(SRC:%.c=%.o)
|
||||||
|
|
||||||
|
|
||||||
|
default: libqmmm.a
|
||||||
|
|
||||||
|
all : tldeps libqmmm.a pwqmmm.x
|
||||||
|
|
||||||
|
pwqmmm.x : pwqmmm.o $(OBJ) $(PWOBJS) $(LIBOBJS) $(LAMMPSLIB)
|
||||||
|
$(MPICXX) $(LDFLAGS) -o $@ $^ $(PKG_PATH) $(PKG_LIB) $(MPILIBS) $(LIBS)
|
||||||
|
|
||||||
|
libqmmm.a: libqmmm.o
|
||||||
|
$(AR) $(ARFLAGS) $@ $^
|
||||||
|
@cp $(EXTRAMAKE) Makefile.lammps
|
||||||
|
|
||||||
|
%.o: %.c
|
||||||
|
$(MPICXX) -c $(LAMMPSFLAGS) $(MPICXXFLAGS) $< -o $@
|
||||||
|
|
||||||
|
tldeps:
|
||||||
|
( cd $(QETOPDIR) ; $(MAKE) $(MFLAGS) couple || exit 1)
|
||||||
|
$(MAKE) -C ../../src $(MFLAGS) $(LAMMPSCFG)
|
||||||
|
$(MAKE) -C ../../src $(MFLAGS) mode=lib $(LAMMPSCFG)
|
||||||
|
|
||||||
|
clean :
|
||||||
|
-rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L
|
||||||
|
|
||||||
|
# explicit dependencies
|
||||||
|
|
||||||
|
pwqmmm.o: pwqmmm.c libqmmm.h
|
||||||
|
libqmmm.o: libqmmm.c libqmmm.h
|
||||||
66
lib/qmmm/Makefile.serial
Normal file
66
lib/qmmm/Makefile.serial
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
# -*- Makefile -*- for coupling LAMMPS to PWscf for QM/MM molecular dynamics
|
||||||
|
|
||||||
|
# this file will be copied to Makefile.lammps
|
||||||
|
EXTRAMAKE = Makefile.lammps.empty
|
||||||
|
|
||||||
|
# top level directory of Quantum ESPRESSO 5.4.1 or later
|
||||||
|
QETOPDIR=$(HOME)/compile/espresso
|
||||||
|
|
||||||
|
# import compiler settings from Quantum ESPRESSO
|
||||||
|
sinclude $(QETOPDIR)/make.sys
|
||||||
|
|
||||||
|
# FLAGS for GNU c++ with STUBS. non-functional for real coupling
|
||||||
|
MPICXX=g++
|
||||||
|
MPICXXFLAGS= -I../../src/STUBS -O2 -g -fPIC\
|
||||||
|
-I../../src -I$(QETOPDIR)/COUPLE/include
|
||||||
|
MPILIBS=-fopenmp -lgfortran -ldl -ljpeg -lpng -lz -lmpi_mpifh -lmpi
|
||||||
|
|
||||||
|
# location of required libraries
|
||||||
|
# part 1: hi-level libraries for building pw.x
|
||||||
|
PWOBJS = \
|
||||||
|
$(QETOPDIR)/COUPLE/src/libqecouple.a \
|
||||||
|
$(QETOPDIR)/PW/src/libpw.a \
|
||||||
|
$(QETOPDIR)/Modules/libqemod.a
|
||||||
|
# part 2: lo-level libraries for all of Q-E
|
||||||
|
LIBOBJS = \
|
||||||
|
$(QETOPDIR)/FFTXlib/libqefft.a \
|
||||||
|
$(QETOPDIR)/LAXlib/libqela.a \
|
||||||
|
$(QETOPDIR)/clib/clib.a \
|
||||||
|
$(QETOPDIR)/iotk/src/libiotk.a
|
||||||
|
|
||||||
|
# part 3: add-on libraries and main library for LAMMPS
|
||||||
|
sinclude ../../src/Makefile.package
|
||||||
|
LAMMPSCFG = mpi
|
||||||
|
LAMMPSLIB = ../../src/liblammps_$(LAMMPSCFG).a
|
||||||
|
|
||||||
|
# part 4: local QM/MM library and progams
|
||||||
|
SRC=pwqmmm.c libqmmm.c
|
||||||
|
OBJ=$(SRC:%.c=%.o)
|
||||||
|
|
||||||
|
|
||||||
|
default: libqmmm.a
|
||||||
|
|
||||||
|
all : tldeps libqmmm.a pwqmmm.x
|
||||||
|
|
||||||
|
pwqmmm.x : pwqmmm.o $(OBJ) $(PWOBJS) $(LIBOBJS) $(LAMMPSLIB)
|
||||||
|
$(MPICXX) $(LDFLAGS) -o $@ $^ $(PKG_PATH) $(PKG_LIB) $(MPILIBS) $(LIBS)
|
||||||
|
|
||||||
|
libqmmm.a: libqmmm.o
|
||||||
|
$(AR) $(ARFLAGS) $@ $^
|
||||||
|
@cp $(EXTRAMAKE) Makefile.lammps
|
||||||
|
|
||||||
|
%.o: %.c
|
||||||
|
$(MPICXX) -c $(LAMMPSFLAGS) $(MPICXXFLAGS) $< -o $@
|
||||||
|
|
||||||
|
tldeps:
|
||||||
|
( cd $(QETOPDIR) ; $(MAKE) $(MFLAGS) couple || exit 1)
|
||||||
|
$(MAKE) -C ../../src $(MFLAGS) $(LAMMPSCFG)
|
||||||
|
$(MAKE) -C ../../src $(MFLAGS) mode=lib $(LAMMPSCFG)
|
||||||
|
|
||||||
|
clean :
|
||||||
|
-rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L
|
||||||
|
|
||||||
|
# explicit dependencies
|
||||||
|
|
||||||
|
pwqmmm.o: pwqmmm.c libqmmm.h
|
||||||
|
libqmmm.o: libqmmm.c libqmmm.h
|
||||||
@ -28,7 +28,7 @@ OBJ = $(SRC:.F=.o)
|
|||||||
# ------ SETTINGS ------
|
# ------ SETTINGS ------
|
||||||
|
|
||||||
F90 = gfortran
|
F90 = gfortran
|
||||||
F90FLAGS = -O -fPIC -fno-second-underscore
|
F90FLAGS = -O3 -fPIC -fno-second-underscore
|
||||||
ARCHIVE = ar
|
ARCHIVE = ar
|
||||||
ARCHFLAG = -rc
|
ARCHFLAG = -rc
|
||||||
USRLIB =
|
USRLIB =
|
||||||
|
|||||||
5
lib/reax/Makefile.lammps.empty
Normal file
5
lib/reax/Makefile.lammps.empty
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Settings that the LAMMPS build will import when this package library is used
|
||||||
|
|
||||||
|
reax_SYSINC =
|
||||||
|
reax_SYSLIB =
|
||||||
|
reax_SYSPATH =
|
||||||
51
lib/reax/Makefile.mpi
Normal file
51
lib/reax/Makefile.mpi
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# *
|
||||||
|
# *_________________________________________________________________________*
|
||||||
|
# * Fortran Library for Reactive Force Field *
|
||||||
|
# * DESCRIPTION: SEE READ-ME *
|
||||||
|
# * FILE NAME: Makefile *
|
||||||
|
# * CONTRIBUTING AUTHORS: Hansohl Cho(MIT), Aidan Thompson(SNL) *
|
||||||
|
# * and Greg Wagner(SNL) *
|
||||||
|
# * CONTACT: hansohl@mit.edu, athompson@sandia.gov, gjwagne@sandia.gov *
|
||||||
|
# *_________________________________________________________________________*/
|
||||||
|
|
||||||
|
SHELL = /bin/sh
|
||||||
|
|
||||||
|
# which file will be copied to Makefile.lammps
|
||||||
|
|
||||||
|
EXTRAMAKE = Makefile.lammps.empty
|
||||||
|
|
||||||
|
# ------ FILES ------
|
||||||
|
|
||||||
|
SRC = reax_connect.F reax_inout.F reax_lammps.F reax_poten.F reax_reac.F reax_charges.F
|
||||||
|
|
||||||
|
HEADERFILES = reax_defs.h *.blk
|
||||||
|
|
||||||
|
# ------ DEFINITIONS ------
|
||||||
|
|
||||||
|
LIB = libreax.a
|
||||||
|
OBJ = $(SRC:.F=.o)
|
||||||
|
|
||||||
|
# ------ SETTINGS ------
|
||||||
|
|
||||||
|
F90 = mpifort
|
||||||
|
F90FLAGS = -O3 -fPIC
|
||||||
|
ARCHIVE = ar
|
||||||
|
ARCHFLAG = -rc
|
||||||
|
USRLIB =
|
||||||
|
SYSLIB =
|
||||||
|
|
||||||
|
# ------ MAKE PROCEDURE ------
|
||||||
|
|
||||||
|
lib: $(OBJ)
|
||||||
|
$(ARCHIVE) $(ARFLAGS) $(LIB) $(OBJ)
|
||||||
|
@cp $(EXTRAMAKE) Makefile.lammps
|
||||||
|
|
||||||
|
# ------ COMPILE RULES ------
|
||||||
|
|
||||||
|
%.o:%.F $(HEADERFILES)
|
||||||
|
$(F90) $(F90FLAGS) -c $<
|
||||||
|
|
||||||
|
# ------ CLEAN ------
|
||||||
|
|
||||||
|
clean:
|
||||||
|
-rm *.o $(LIB)
|
||||||
1
lib/reax/Makefile.serial
Symbolic link
1
lib/reax/Makefile.serial
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
Makefile.gfortran
|
||||||
@ -98,7 +98,7 @@ if buildflag:
|
|||||||
edir = glob.glob("%s/eigen-eigen-*" % homepath)
|
edir = glob.glob("%s/eigen-eigen-*" % homepath)
|
||||||
for one in edir:
|
for one in edir:
|
||||||
if os.path.isdir(one):
|
if os.path.isdir(one):
|
||||||
subprocess.check_output("rm -rf %s" % one,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output('rm -rf "%s"' % one,stderr=subprocess.STDOUT,shell=True)
|
||||||
cmd = 'cd "%s"; tar -xzvf %s' % (homepath,tarball)
|
cmd = 'cd "%s"; tar -xzvf %s' % (homepath,tarball)
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
edir = glob.glob("%s/eigen-eigen-*" % homepath)
|
edir = glob.glob("%s/eigen-eigen-*" % homepath)
|
||||||
@ -113,5 +113,5 @@ if linkflag:
|
|||||||
os.remove("includelink")
|
os.remove("includelink")
|
||||||
if pathflag: linkdir = eigenpath
|
if pathflag: linkdir = eigenpath
|
||||||
else: linkdir = "%s/%s" % (homepath,homedir)
|
else: linkdir = "%s/%s" % (homepath,homedir)
|
||||||
cmd = "ln -s %s includelink" % linkdir
|
cmd = 'ln -s "%s" includelink' % linkdir
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
# Settings that the LAMMPS build will import when this package library is used
|
# Settings that the LAMMPS build will import when this package library is used
|
||||||
|
|
||||||
user-smd_SYSINC =
|
user-smd_SYSINC = -I../../lib/includelink/eigen3
|
||||||
user-smd_SYSLIB =
|
user-smd_SYSLIB =
|
||||||
user-smd_SYSPATH =
|
user-smd_SYSPATH =
|
||||||
|
|||||||
@ -5,8 +5,16 @@
|
|||||||
|
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import sys,os,re,subprocess
|
import sys,os,re,subprocess
|
||||||
try: from urllib.request import urlretrieve as geturl
|
|
||||||
except: from urllib import urlretrieve as geturl
|
try:
|
||||||
|
import ssl
|
||||||
|
try: from urllib.request import urlretrieve as geturl
|
||||||
|
except: from urllib import urlretrieve as geturl
|
||||||
|
except:
|
||||||
|
def geturl(url,fname):
|
||||||
|
cmd = 'curl -L -o "%s" %s' % (fname,url)
|
||||||
|
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
return txt
|
||||||
|
|
||||||
# help message
|
# help message
|
||||||
|
|
||||||
@ -55,7 +63,6 @@ nargs = len(args)
|
|||||||
homepath = "."
|
homepath = "."
|
||||||
homedir = version
|
homedir = version
|
||||||
|
|
||||||
grabflag = True
|
|
||||||
buildflag = True
|
buildflag = True
|
||||||
pathflag = False
|
pathflag = False
|
||||||
linkflag = True
|
linkflag = True
|
||||||
@ -89,7 +96,7 @@ if (buildflag and pathflag):
|
|||||||
|
|
||||||
# download and unpack Voro++ tarball
|
# download and unpack Voro++ tarball
|
||||||
|
|
||||||
if grabflag:
|
if buildflag:
|
||||||
print("Downloading Voro++ ...")
|
print("Downloading Voro++ ...")
|
||||||
geturl(url,"%s/%s.tar.gz" % (homepath,version))
|
geturl(url,"%s/%s.tar.gz" % (homepath,version))
|
||||||
|
|
||||||
@ -122,7 +129,7 @@ if linkflag:
|
|||||||
os.remove("includelink")
|
os.remove("includelink")
|
||||||
if os.path.isfile("liblink") or os.path.islink("liblink"):
|
if os.path.isfile("liblink") or os.path.islink("liblink"):
|
||||||
os.remove("liblink")
|
os.remove("liblink")
|
||||||
cmd = ['ln -s "%s/src" includelink' % homedir, 'includelink']
|
cmd = 'ln -s "%s/src" includelink' % homedir
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
cmd = ['ln -s "%s/src" liblink' % homedir]
|
cmd = 'ln -s "%s/src" liblink' % homedir
|
||||||
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user