From d59f7398a3cf89a1e55e4e339cf77834aa0dea91 Mon Sep 17 00:00:00 2001 From: Toyohisa Kameyama Date: Tue, 28 Apr 2020 00:57:14 +0900 Subject: MODYLAS: New package (#16317) --- .../builtin/packages/modylas/gcc_format.patch | 13 + .../repos/builtin/packages/modylas/makefile.patch | 418 +++++++++++++++++++++ .../repos/builtin/packages/modylas/package.py | 46 +++ 3 files changed, 477 insertions(+) create mode 100755 var/spack/repos/builtin/packages/modylas/gcc_format.patch create mode 100755 var/spack/repos/builtin/packages/modylas/makefile.patch create mode 100644 var/spack/repos/builtin/packages/modylas/package.py diff --git a/var/spack/repos/builtin/packages/modylas/gcc_format.patch b/var/spack/repos/builtin/packages/modylas/gcc_format.patch new file mode 100755 index 0000000000..086c4275aa --- /dev/null +++ b/var/spack/repos/builtin/packages/modylas/gcc_format.patch @@ -0,0 +1,13 @@ +diff --git a/source/src/parse_f.f b/source/src/parse_f.f +index c58f90e..37821dd 100644 +--- a/source/src/parse_f.f ++++ b/source/src/parse_f.f +@@ -360,7 +360,7 @@ + stop + endif + +- 9000 format('ERROR: the order of atoms is wrong:',i) ++ 9000 format('ERROR: the order of atoms is wrong:',i8) + + return + end diff --git a/var/spack/repos/builtin/packages/modylas/makefile.patch b/var/spack/repos/builtin/packages/modylas/makefile.patch new file mode 100755 index 0000000000..b308306ff5 --- /dev/null +++ b/var/spack/repos/builtin/packages/modylas/makefile.patch @@ -0,0 +1,418 @@ +diff --git a/source/src/Makefile.am b/source/src/Makefile.am +index 5a41380..1807821 100644 +--- a/source/src/Makefile.am ++++ b/source/src/Makefile.am +@@ -21,6 +21,7 @@ modylas_mdtrj2xyz_SOURCES = version.f fmodules.f MAP_module.f \ + parse_f.f parse_input.f mdff.f + if HAVE_MPI + bin_PROGRAMS += modylas ++FCFLAGS += -DMPIPARA + endif + FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS) + FCLD = $(FC) +diff --git a/source/src/Makefile.in b/source/src/Makefile.in +index c0f5dca..7c1988f 100644 +--- a/source/src/Makefile.in ++++ b/source/src/Makefile.in +@@ -1,9 +1,8 @@ +-# Makefile.in generated by automake 1.11.1 from Makefile.am. ++# Makefile.in generated by automake 1.16.1 from Makefile.am. + # @configure_input@ + +-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +-# Inc. ++# Copyright (C) 1994-2018 Free Software Foundation, Inc. ++ + # This Makefile.in is free software; the Free Software Foundation + # gives unlimited permission to copy and/or distribute it, + # with or without modifications, as long as this notice is preserved. +@@ -16,6 +15,61 @@ + @SET_MAKE@ + + VPATH = @srcdir@ ++am__is_gnu_make = { \ ++ if test -z '$(MAKELEVEL)'; then \ ++ false; \ ++ elif test -n '$(MAKE_HOST)'; then \ ++ true; \ ++ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ ++ true; \ ++ else \ ++ false; \ ++ fi; \ ++} ++am__make_running_with_option = \ ++ case $${target_option-} in \ ++ ?) ;; \ ++ *) echo "am__make_running_with_option: internal error: invalid" \ ++ "target option '$${target_option-}' specified" >&2; \ ++ exit 1;; \ ++ esac; \ ++ has_opt=no; \ ++ sane_makeflags=$$MAKEFLAGS; \ ++ if $(am__is_gnu_make); then \ ++ sane_makeflags=$$MFLAGS; \ ++ else \ ++ case $$MAKEFLAGS in \ ++ *\\[\ \ ]*) \ ++ bs=\\; \ ++ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ ++ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ ++ esac; \ ++ fi; \ ++ skip_next=no; \ ++ strip_trailopt () \ ++ { \ ++ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ ++ }; \ ++ for flg in $$sane_makeflags; do \ ++ test $$skip_next = yes && { skip_next=no; continue; }; \ ++ case $$flg in \ ++ *=*|--*) continue;; \ ++ -*I) strip_trailopt 'I'; skip_next=yes;; \ ++ -*I?*) strip_trailopt 'I';; \ ++ -*O) strip_trailopt 'O'; skip_next=yes;; \ ++ -*O?*) strip_trailopt 'O';; \ ++ -*l) strip_trailopt 'l'; skip_next=yes;; \ ++ -*l?*) strip_trailopt 'l';; \ ++ -[dEDm]) skip_next=yes;; \ ++ -[JT]) skip_next=yes;; \ ++ esac; \ ++ case $$flg in \ ++ *$$target_option*) has_opt=yes; break;; \ ++ esac; \ ++ done; \ ++ test $$has_opt = yes ++am__make_dryrun = (target_option=n; $(am__make_running_with_option)) ++am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) + pkgdatadir = $(datadir)/@PACKAGE@ + pkgincludedir = $(includedir)/@PACKAGE@ + pkglibdir = $(libdir)/@PACKAGE@ +@@ -35,13 +89,13 @@ POST_UNINSTALL = : + bin_PROGRAMS = modylas-text2bin$(EXEEXT) modylas-mdtrj2xyz$(EXEEXT) \ + $(am__EXEEXT_1) + @HAVE_MPI_TRUE@am__append_1 = modylas ++@HAVE_MPI_TRUE@am__append_2 = -DMPIPARA + subdir = src +-DIST_COMMON = $(srcdir)/Doxyfile.in $(srcdir)/Makefile.am \ +- $(srcdir)/Makefile.in + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/configure.in + am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) ++DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) + mkinstalldirs = $(install_sh) -d + CONFIG_HEADER = $(top_builddir)/config.h + CONFIG_CLEAN_FILES = Doxyfile +@@ -80,18 +134,62 @@ am_modylas_text2bin_OBJECTS = version.$(OBJEXT) fmodules.$(OBJEXT) \ + mdff.$(OBJEXT) + modylas_text2bin_OBJECTS = $(am_modylas_text2bin_OBJECTS) + modylas_text2bin_LDADD = $(LDADD) ++AM_V_P = $(am__v_P_@AM_V@) ++am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) ++am__v_P_0 = false ++am__v_P_1 = : ++AM_V_GEN = $(am__v_GEN_@AM_V@) ++am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) ++am__v_GEN_0 = @echo " GEN " $@; ++am__v_GEN_1 = ++AM_V_at = $(am__v_at_@AM_V@) ++am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) ++am__v_at_0 = @ ++am__v_at_1 = + DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) + F77COMPILE = $(F77) $(AM_FFLAGS) $(FFLAGS) ++AM_V_F77 = $(am__v_F77_@AM_V@) ++am__v_F77_ = $(am__v_F77_@AM_DEFAULT_V@) ++am__v_F77_0 = @echo " F77 " $@; ++am__v_F77_1 = + F77LD = $(F77) ++AM_V_F77LD = $(am__v_F77LD_@AM_V@) ++am__v_F77LD_ = $(am__v_F77LD_@AM_DEFAULT_V@) ++am__v_F77LD_0 = @echo " F77LD " $@; ++am__v_F77LD_1 = + SOURCES = $(modylas_SOURCES) $(modylas_mdtrj2xyz_SOURCES) \ + $(modylas_text2bin_SOURCES) + DIST_SOURCES = $(modylas_SOURCES) $(modylas_mdtrj2xyz_SOURCES) \ + $(modylas_text2bin_SOURCES) ++am__can_run_installinfo = \ ++ case $$AM_UPDATE_INFO_DIR in \ ++ n|no|NO) false;; \ ++ *) (install-info --version) >/dev/null 2>&1;; \ ++ esac ++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) ++# Read a list of newline-separated strings from the standard input, ++# and print each of them once, without duplicates. Input order is ++# *not* preserved. ++am__uniquify_input = $(AWK) '\ ++ BEGIN { nonempty = 0; } \ ++ { items[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in items) print i; }; } \ ++' ++# Make sure the list of sources is unique. This is necessary because, ++# e.g., the same source file might be shared among _SOURCES variables ++# for different programs/libraries. ++am__define_uniq_tagged_files = \ ++ list='$(am__tagged_files)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | $(am__uniquify_input)` + ETAGS = etags + CTAGS = ctags ++am__DIST_COMMON = $(srcdir)/Doxyfile.in $(srcdir)/Makefile.in + DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + ACLOCAL = @ACLOCAL@ + AMTAR = @AMTAR@ ++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ + AUTOCONF = @AUTOCONF@ + AUTOHEADER = @AUTOHEADER@ + AUTOMAKE = @AUTOMAKE@ +@@ -109,7 +207,7 @@ ECHO_T = @ECHO_T@ + EXEEXT = @EXEEXT@ + F77 = @F77@ + FC = @FC@ +-FCFLAGS = @FCFLAGS@ ++FCFLAGS = @FCFLAGS@ $(am__append_2) + INSTALL = @INSTALL@ + INSTALL_DATA = @INSTALL_DATA@ + INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -127,6 +225,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + PACKAGE_NAME = @PACKAGE_NAME@ + PACKAGE_STRING = @PACKAGE_STRING@ + PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ + PACKAGE_VERSION = @PACKAGE_VERSION@ + PATH_SEPARATOR = @PATH_SEPARATOR@ + SET_MAKE = @SET_MAKE@ +@@ -186,7 +285,7 @@ modylas_SOURCES = version.f fmodules.f main_f90.f parse_f.f app_f90.f \ + diagonal.f matrix_inverse.f \ + comm.f comm_2.f comm_3.f comm_fmm.f \ + opt_integrate.f position_constrain.f \ +- calc_center_of_mass.f shake_rattle_com.f ++ calc_center_of_mass.f shake_rattle_com.f + + modylas_text2bin_SOURCES = version.f fmodules.f MAP_module.f \ + modylas-text2bin.f \ +@@ -218,14 +317,13 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/Makefile +-.PRECIOUS: Makefile + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ +- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ +- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + esac; + + $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) +@@ -240,14 +338,18 @@ Doxyfile: $(top_builddir)/config.status $(srcdir)/Doxyfile.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ + install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) +- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ ++ if test -n "$$list"; then \ ++ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ ++ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ ++ fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ +- while read p p1; do if test -f $$p; \ +- then echo "$$p"; echo "$$p"; else :; fi; \ ++ while read p p1; do if test -f $$p \ ++ ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ +- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ ++ sed -e 'p;s,.*/,,;n;h' \ ++ -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ +@@ -268,22 +370,26 @@ uninstall-binPROGRAMS: + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ +- -e 's/$$/$(EXEEXT)/' `; \ ++ -e 's/$$/$(EXEEXT)/' \ ++ `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + + clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) +-modylas$(EXEEXT): $(modylas_OBJECTS) $(modylas_DEPENDENCIES) ++ ++modylas$(EXEEXT): $(modylas_OBJECTS) $(modylas_DEPENDENCIES) $(EXTRA_modylas_DEPENDENCIES) + @rm -f modylas$(EXEEXT) +- $(F77LINK) $(modylas_OBJECTS) $(modylas_LDADD) $(LIBS) +-modylas-mdtrj2xyz$(EXEEXT): $(modylas_mdtrj2xyz_OBJECTS) $(modylas_mdtrj2xyz_DEPENDENCIES) ++ $(AM_V_F77LD)$(F77LINK) $(modylas_OBJECTS) $(modylas_LDADD) $(LIBS) ++ ++modylas-mdtrj2xyz$(EXEEXT): $(modylas_mdtrj2xyz_OBJECTS) $(modylas_mdtrj2xyz_DEPENDENCIES) $(EXTRA_modylas_mdtrj2xyz_DEPENDENCIES) + @rm -f modylas-mdtrj2xyz$(EXEEXT) +- $(F77LINK) $(modylas_mdtrj2xyz_OBJECTS) $(modylas_mdtrj2xyz_LDADD) $(LIBS) +-modylas-text2bin$(EXEEXT): $(modylas_text2bin_OBJECTS) $(modylas_text2bin_DEPENDENCIES) ++ $(AM_V_F77LD)$(F77LINK) $(modylas_mdtrj2xyz_OBJECTS) $(modylas_mdtrj2xyz_LDADD) $(LIBS) ++ ++modylas-text2bin$(EXEEXT): $(modylas_text2bin_OBJECTS) $(modylas_text2bin_DEPENDENCIES) $(EXTRA_modylas_text2bin_DEPENDENCIES) + @rm -f modylas-text2bin$(EXEEXT) +- $(F77LINK) $(modylas_text2bin_OBJECTS) $(modylas_text2bin_LDADD) $(LIBS) ++ $(AM_V_F77LD)$(F77LINK) $(modylas_text2bin_OBJECTS) $(modylas_text2bin_LDADD) $(LIBS) + + mostlyclean-compile: + -rm -f *.$(OBJEXT) +@@ -292,31 +398,20 @@ distclean-compile: + -rm -f *.tab.c + + .f.o: +- $(F77COMPILE) -c -o $@ $< ++ $(AM_V_F77)$(F77COMPILE) -c -o $@ $< + + .f.obj: +- $(F77COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` +- +-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) +- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ +- unique=`for i in $$list; do \ +- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ +- done | \ +- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ +- END { if (nonempty) { for (i in files) print i; }; }'`; \ +- mkid -fID $$unique +-tags: TAGS +- +-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ +- $(TAGS_FILES) $(LISP) ++ $(AM_V_F77)$(F77COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++ID: $(am__tagged_files) ++ $(am__define_uniq_tagged_files); mkid -fID $$unique ++tags: tags-am ++TAGS: tags ++ ++tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ +- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ +- unique=`for i in $$list; do \ +- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ +- done | \ +- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ +- END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ +@@ -328,15 +423,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $$unique; \ + fi; \ + fi +-ctags: CTAGS +-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ +- $(TAGS_FILES) $(LISP) +- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ +- unique=`for i in $$list; do \ +- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ +- done | \ +- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ +- END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ctags: ctags-am ++ ++CTAGS: ctags ++ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) ++ $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique +@@ -345,11 +436,29 @@ GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" ++cscopelist: cscopelist-am ++ ++cscopelist-am: $(am__tagged_files) ++ list='$(am__tagged_files)'; \ ++ case "$(srcdir)" in \ ++ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ ++ *) sdir=$(subdir)/$(srcdir) ;; \ ++ esac; \ ++ for i in $$list; do \ ++ if test -f "$$i"; then \ ++ echo "$(subdir)/$$i"; \ ++ else \ ++ echo "$$sdir/$$i"; \ ++ fi; \ ++ done >> $(top_builddir)/cscope.files + + distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +-distdir: $(DISTFILES) ++distdir: $(BUILT_SOURCES) ++ $(MAKE) $(AM_MAKEFLAGS) distdir-am ++ ++distdir-am: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ +@@ -396,10 +505,15 @@ install-am: all-am + + installcheck: installcheck-am + install-strip: +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ +- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ +- `test -z '$(STRIP)' || \ +- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install ++ if test -z '$(STRIP)'; then \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ install; \ ++ else \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ ++ fi + mostlyclean-generic: + + clean-generic: +@@ -474,18 +588,21 @@ uninstall-am: uninstall-binPROGRAMS + + .MAKE: install-am install-strip + +-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ +- clean-generic ctags distclean distclean-compile \ +- distclean-generic distclean-tags distdir dvi dvi-am html \ +- html-am info info-am install install-am install-binPROGRAMS \ +- install-data install-data-am install-dvi install-dvi-am \ +- install-exec install-exec-am install-html install-html-am \ +- install-info install-info-am install-man install-pdf \ +- install-pdf-am install-ps install-ps-am install-strip \ +- installcheck installcheck-am installdirs maintainer-clean \ +- maintainer-clean-generic mostlyclean mostlyclean-compile \ +- mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ +- uninstall-am uninstall-binPROGRAMS ++.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ ++ clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \ ++ distclean distclean-compile distclean-generic distclean-tags \ ++ distdir dvi dvi-am html html-am info info-am install \ ++ install-am install-binPROGRAMS install-data install-data-am \ ++ install-dvi install-dvi-am install-exec install-exec-am \ ++ install-html install-html-am install-info install-info-am \ ++ install-man install-pdf install-pdf-am install-ps \ ++ install-ps-am install-strip installcheck installcheck-am \ ++ installdirs maintainer-clean maintainer-clean-generic \ ++ mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \ ++ ps ps-am tags tags-am uninstall uninstall-am \ ++ uninstall-binPROGRAMS ++ ++.PRECIOUS: Makefile + + parse_input.o: parse.o + parse.o: hash.o diff --git a/var/spack/repos/builtin/packages/modylas/package.py b/var/spack/repos/builtin/packages/modylas/package.py new file mode 100644 index 0000000000..1241d3a8ed --- /dev/null +++ b/var/spack/repos/builtin/packages/modylas/package.py @@ -0,0 +1,46 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack import * +import os + + +class Modylas(AutotoolsPackage): + """ + The 'MOlecular DYnamics Software for LArge Systems' (MODYLAS) is + a general-purpose, molecular dynamics simulation program suited + to the simulation of very large physical, chemical, + and biological systems. + """ + + homepage = "https://www.modylas.org" + url = "file://{0}/MODYLAS_1.0.4.tar.gz".format(os.getcwd()) + + version('1.0.4', 'e0b5cccf8e363c1182eced37aa31b06b1c5b1526da7d449a6142424ac4ea6311') + + variant('mpi', default=True, description='Enable MPI support') + + # to define MPIPARA when +mpi + patch('makefile.patch') + # fix no width I in format + patch('gcc_format.patch', when='%gcc') + + depends_on('autoconf', type='build') + depends_on('automake', type='build') + depends_on('mpi', when='+mpi') + + build_directory = 'source' + configure_directory = 'source' + + def setup_build_environment(self, env): + if self.spec.satisfies('+mpi'): + env.set('FC', self.spec['mpi'].mpifc, force=True) + fflags = ['-O3', self.compiler.openmp_flag] + if self.spec.satisfies('%gcc'): + fflags.append('-cpp') + env.set('FCFLAGS', ' '.join(fflags)) + + def configure_args(self): + return self.enable_or_disable('mpi') -- cgit v1.2.3-70-g09d2