summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToyohisa Kameyama <kameyama@riken.jp>2020-04-28 00:57:14 +0900
committerGitHub <noreply@github.com>2020-04-27 10:57:14 -0500
commitd59f7398a3cf89a1e55e4e339cf77834aa0dea91 (patch)
tree58005cab00042e4810eaa2042f30d117b750130d
parent5938499be7ffff509a031c6a103c87455ce0318a (diff)
downloadspack-d59f7398a3cf89a1e55e4e339cf77834aa0dea91.tar.gz
spack-d59f7398a3cf89a1e55e4e339cf77834aa0dea91.tar.bz2
spack-d59f7398a3cf89a1e55e4e339cf77834aa0dea91.tar.xz
spack-d59f7398a3cf89a1e55e4e339cf77834aa0dea91.zip
MODYLAS: New package (#16317)
-rwxr-xr-xvar/spack/repos/builtin/packages/modylas/gcc_format.patch13
-rwxr-xr-xvar/spack/repos/builtin/packages/modylas/makefile.patch418
-rw-r--r--var/spack/repos/builtin/packages/modylas/package.py46
3 files changed, 477 insertions, 0 deletions
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')