diff --git a/src/MAKE/Makefile.linux b/src/MAKE/Makefile.linux index cad1571214a4ca76312f26c829c7fa122c45f951..60bef6dc0f97df6704931cca9b12c4dfbf58fc39 100755 --- a/src/MAKE/Makefile.linux +++ b/src/MAKE/Makefile.linux @@ -1,4 +1,4 @@ -# linux = RedHat Linux box, Intel icc & ifort, MPICH2, FFTW +# linux = RedHat Linux box, Intel icc, Intel ifort, MPICH2, FFTW SHELL = /bin/sh diff --git a/src/Makefile b/src/Makefile index 4c3b86db72abc5cfeefcefdd04118c9f0dbde0e6..98d723d3bf7c92e2b87ed94915e82816f6936582 100755 --- a/src/Makefile +++ b/src/Makefile @@ -65,6 +65,7 @@ help: @/bin/sh Make.sh style @cp -p *.cpp *.h Obj_$@ @cp MAKE/Makefile.$@ Obj_$@/Makefile + @if [ ! -e Makefile.package ]; then make package-regenerate; fi @cp Makefile.package Obj_$@ @cd Obj_$@; \ $(MAKE) $(MFLAGS) "OBJ = $(OBJ)" "INC = $(INC)" "EXE = ../$(EXE)" ../$(EXE) @@ -161,6 +162,7 @@ no-%: # status = list differences between src and package files # update = replace src files with newer package files # overwrite = overwrite package files with newer src files +# regenerate = regenerate Makefile.package from Makefile.package.empty package-status: @for p in $(PACKAGEUC); do /bin/sh Package.sh $$p status; done @@ -176,3 +178,9 @@ package-overwrite: @for p in $(PACKAGEUC); do /bin/sh Package.sh $$p overwrite; done @echo '' @for p in $(PACKUSERUC); do /bin/sh Package.sh $$p overwrite; done + +package-regenerate: + @cp Makefile.package.empty Makefile.package + @echo "Regenerating Makefile.package" + @for p in $(PACKAGEUC); do /bin/sh Package.sh $$p regenerate; done + @for p in $(PACKUSERUC); do /bin/sh Package.sh $$p regenerate; done diff --git a/src/Makefile.package b/src/Makefile.package deleted file mode 100644 index 34f1e45a2251a0d7f26027d68c582112f254d062..0000000000000000000000000000000000000000 --- a/src/Makefile.package +++ /dev/null @@ -1,9 +0,0 @@ -# Settings for libraries used by specific LAMMPS packages -# this file is auto-edited when those packages are included/excluded - -PKG_INC = -I../../lib/reax -I../../lib/meam -I../../lib/poems -PKG_PATH = -L../../lib/reax -L../../lib/meam -L../../lib/poems -PKG_LIB = -lreax -lmeam -lpoems - -PKG_SYSPATH = $(reax_SYSPATH) $(meam_SYSPATH) -PKG_SYSLIB = $(reax_SYSLIB) $(meam_SYSLIB) diff --git a/src/Makefile.package.empty b/src/Makefile.package.empty index 1edf76c29bd6b7a3c59b3e0a3f514ea622d9a695..fbee509ca64c5d045e487cab7045b9e3a28788bb 100644 --- a/src/Makefile.package.empty +++ b/src/Makefile.package.empty @@ -1,6 +1,9 @@ # Settings for libraries used by specific LAMMPS packages # this file is auto-edited when those packages are included/excluded -PKGINC = -PKGPATH = -PKGLIB = +PKG_INC = +PKG_PATH = +PKG_LIB = + +PKG_SYSPATH = +PKG_SYSLIB = diff --git a/src/Package.sh b/src/Package.sh index 5fc2ffd2e1e63c872000625c989e04414595c8c1..01ce2ca59135437366998cbda4e5ab2b6d9a8e26 100644 --- a/src/Package.sh +++ b/src/Package.sh @@ -17,6 +17,7 @@ for file in *.cpp *.h; do fi done +# status # if installed: # issue warning if any package file is not in src or is different @@ -35,11 +36,11 @@ if (test $2 = "status") then echo "Installed NO: package $1" fi +# update # if installed: # cp package file to src if doesn't exist or is different elif (test $2 = "update") then - echo "Updating src files from $1 package files" if (test $installed = 1) then @@ -56,16 +57,16 @@ elif (test $2 = "update") then echo " $1 package is not installed, no action" fi +# overwrite # if installed: # if package file not in src, issue warning # if src file different than package file, overwrite package file elif (test $2 = "overwrite") then - echo "Overwriting $1 package files with src files" if (test $installed = 1) then - for file in *.cpp *.h; do + for file in *.cpp *.h; do if (test ! -e ../$file) then echo " src/$file does not exist" elif (test "`diff --brief $file ../$file`" != "") then @@ -77,4 +78,13 @@ elif (test $2 = "overwrite") then echo " $1 package is not installed, no action" fi +# regenernate Makefile.package from Makefile.package.empty +# if installed: +# re-install so Install.sh will edit Makefile.pacakge + +elif (test $2 = "regenerate") then + + if (test $installed = 1) then + /bin/sh Install.sh 1 + fi fi