sci-physics/lammps: Added new version.
authorNicolas Bock <nicolasbock@gentoo.org>
Sun, 12 Apr 2015 17:49:59 +0000 (17:49 +0000)
committerNicolas Bock <nicolasbock@gentoo.org>
Sun, 12 Apr 2015 17:49:59 +0000 (17:49 +0000)
Package-Manager: portage-2.2.14/cvs/Linux x86_64
Manifest-Sign-Key: 0xAC91CA52

sci-physics/lammps/ChangeLog
sci-physics/lammps/Manifest
sci-physics/lammps/lammps-20150406.ebuild [new file with mode: 0644]

index 3d6cf5e1b9ace6ed4dc96a9cfd82e4dd511fa220..a0859bb490bc27a98608547014d230ba192cca73 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for sci-physics/lammps
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/ChangeLog,v 1.92 2015/04/12 16:00:15 nicolasbock Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/ChangeLog,v 1.93 2015/04/12 17:49:55 nicolasbock Exp $
+
+*lammps-20150406 (12 Apr 2015)
+
+  12 Apr 2015; Nicolas Bock <nicolasbock@gentoo.org> +lammps-20150406.ebuild:
+  sci-physics/lammps: Added new version.
 
 *lammps-20150403 (12 Apr 2015)
 
index a6b5ca8a964a13e0f511391bb291f8943867c8ec..bfdd15f58cd50f6e4973ccd88394b94fbc97b75e 100644 (file)
@@ -23,6 +23,7 @@ DIST lammps-3Apr15.tar.gz 63845758 SHA256 5dff75416903e7d8d6ef02f8a5df2572950c41
 DIST lammps-3Feb15.tar.gz 62848209 SHA256 1520038071774fbe984d74e00d2e86ba778c65c28a99098dc5513230ef6c553f SHA512 4cdac7624e2fadf12a2db23f8f52eb4c31cf61b19e0ec53d9885ce24cb8fbfb9030dc66a468b99434aac569fa16b26010707956326ae7eaf91181cbcf7291134 WHIRLPOOL ff2843ac51359ecd3beb57fc60e98a3735901e489af32b8a6835e463878b26fd1c956ae9e90926d73730d60f103967b1d6517156e04dcfdc2d8b01775a0745a4
 DIST lammps-4Mar15.tar.gz 63497305 SHA256 80a5a18419c5e07c3c89f131edb1f5af59e3e7223b4f46346e48da3f42e3d40c SHA512 7932f1601aa22f43243c91d255e8c6a4ce6f401768ce2c78f22d82dd7d1f33025a1895e9a4436b2b5442f99dffbf1f746f284afe695cbf91f2529f42ec2e81fa WHIRLPOOL 55984c405853d3d8cd1bf73f33ffb0c4a5b6d342b682eb89975657b1e225addfc2d4a041891ce965135557ad771114967ae8756d7f18f93def1b6b2a4013225c
 DIST lammps-5Mar15.tar.gz 63506216 SHA256 19d7fdfa4fba34fb8fec8317e45d2daec0cd55290a4a576640c866acee4288ba SHA512 3d325cc3b451596fe87f15dbe640944752ab05687c86fa39e27a6eb3e990f6de772ea4d4d9abbd6cd6e9bd67965ad96c85e2469eeeac3258f5a29e1cdd48318a WHIRLPOOL 0e8de71e6544c12b83de7dae15a832481665e474c4f9231f23d49c71bb5c242b6411099bd05a0a16604384c6ca27533d56d442704bf4f45d4a1a99b9da40918c
+DIST lammps-6Apr15.tar.gz 63844408 SHA256 8e4aa62d2e212d15a5b52c16a8067897da592ebf1a3e353891ba4e14a392f9e5 SHA512 6ec61425451d034b5f83884273071c0d8e4301b803e4e8fe5e3ade85ff51ca64e637ef9294898e501a8b66ea699f26fdc782e19a3931e8b0b3a137c4de3899d4 WHIRLPOOL 468417a96d53d6cc71a7e0870aa76838980b50630e66817f01205f367b16f35ae26b19b192e141e7505d6cdeb7be94fea8edb7bcad960ccfb766b6d8850e846c
 DIST lammps-6Feb15.tar.gz 62909412 SHA256 3bc26f6d7eaf31c7846b83dd3020f95b2bad13d8acb0b4ea5ebc058849e98e86 SHA512 27e9d7dbacc90372a6ae85cc7a238883759417d09711fe223dfc9872e00e80e641e34bbcc5c924e3963a719e6c17e9cd890fa236c86265c7b734a1c26c66355a WHIRLPOOL 0391c69da9ca3f03281b109c20f981f8a85e63ce20a7afcb762cb2b3b2297016d3dab78a71ea5c4e6c0b98c6a5ce7cbec92c59daaf670686204a688299f7dd09
 DIST lammps-6Mar15.tar.gz 63537482 SHA256 b019cd6dda169874414f501e1b2bf3eaff4a21dd9dd0c18d55fadf50501810a9 SHA512 fdcbce8bf5abfda7d6f0dc26bb9fd0efd1ecabdd28197cb1a061505777c7b0acc936e71e1dc49683bc04b8cfa4f04124b28706bd3f082c17db2abae09b951be2 WHIRLPOOL 085e286be41616183b5dd569119254f8491a323844f5a94bac2f9e5d018f5ce2d1090fe23d51bec6d1777ae59cb1daeb363422f79e18917fa12f984f314428f8
 DIST lammps-9Dec14.tar.gz 61465046 SHA256 01724976608413e049d197a12b8608321220a9a15a7c3d7706babd1ab9e21de1 SHA512 30ae88f930bea43adbbe217cf6b4d9f257d16f707f95d60e6a07358b0633578dae767fd348f656061e10d9783fff2a59118bbf902569bd70bb77f682fd7fd666 WHIRLPOOL 5cccbe3da9e00316c660d721ece7fa0d208edbf3c94845c06d15d08f5e5852cc11919aae78fcb02f7f9109e5e478f2d52c299dc20be3877cb378e636701c0579
@@ -49,16 +50,17 @@ EBUILD lammps-20150328.ebuild 5521 SHA256 2d9f2bc4a92b0e4feac0841e4f399287d6a921
 EBUILD lammps-20150329.ebuild 5521 SHA256 df3a7f71ac4859491e06af4612e01de0e99593de35b46787b442b281381a6e68 SHA512 c0c1d2e173f5ee6251b57f49ea0a85eb0850bb8147635c2f6fdedc503df90c1b59f04bf1c3712737941e37c9c7ea273276809053d49af280a532f2a799804125 WHIRLPOOL 76eb92953a39c8759d7b1dcf237e9cbdced56d9a95388dc2dd56a74bf83100b5e39d56cbc1993e404e3f9c357104ae768481b4ec973a4f3ea8388d4bcd0d5837
 EBUILD lammps-20150402.ebuild 5521 SHA256 1de0818c7362674917a09b51cb7a4456194f49c0fb392b2f65dd9e5864248481 SHA512 b5e53c3a00af57556b8a9c9924c93265c09818dba89530ef73eb78716b96972f0c040ee987763de916c58bd07dd49df43618494e8b06ffdca965bb88cc9da72a WHIRLPOOL 2cb4e79ec1c04ae27ff4dfa2a7c215dae9235ba6577d95411d25bcc7cf7e47a98eab760bb3ef5462d0693b1f7f3ea0ef536c2a5cebae2296e791d1ccf5ab96de
 EBUILD lammps-20150403.ebuild 5639 SHA256 009c0165f643c9ff35da312848abd88081043e31b38ecfed47bd428421bdd58b SHA512 bdef1ebc0d38426960f2935a11a437ff18997e750d880b2d421616092df60512223d086aec67206a1c3ae6c0605e92bca1aab12ad81f049e03a2615c450c6ab1 WHIRLPOOL bbb10a5b797453c61a76dcc898457d07357c3fcc42abf02c21a0a45adf4bcf0645d7157666a4aecd30c5d670cc774623f06e94ef0a07a2123952a30b90587ec8
-MISC ChangeLog 15712 SHA256 52116b2b859164696822d72f5e3df7cc08bdb971a518d4248dcec4a0f1a1de2d SHA512 05beaa9e60e1e4af80f982022895f5205693ca7109ce9019283d2c168a4307034d65c3a10feb622b289df82d9f8ce7957489135484cbf7d33a6a8c70f0ff00c1 WHIRLPOOL 9b35272fb2554a51d46801064ceb348944f6bed381d8262a3f13dafc1e39ace326882a5208085114d53d2b9204e1641113479110ac9442fa17ffbaba1ae51aac
+EBUILD lammps-20150406.ebuild 5639 SHA256 2803a644d843d77f4896d4af5c94e18c72c797ce4783271242da44d1024449b8 SHA512 b6c6ae44df6ee0be857141a0e0da094b8936d8dc03a907c182dcc5834c8d0895d5eef2224266b89580e7d58df4d15035cbb4bac35976edfef2beaa3ca52213fb WHIRLPOOL a4422314ec7109a1f2f983861beb0a1b7d6228f2b5bcece83f73087c890e4ffa1cf06149005724f289332a20ee4088d04e560f6a031c36d6b10068b89d25ae06
+MISC ChangeLog 15864 SHA256 2432a6f395968acdba5c412af61a8c3f2bb02880f37f1de690ddcfb8415bcaff SHA512 7ce6edde270a63a4c596ffd53fc521c64926b88e8dc049ccc761927f1b49863303c9582b078632afe0f247a7a9ee2744748866e4b78d5cc8511feca3e0666b6e WHIRLPOOL c53f85cd7f248fefeea8b14ea2e18ae1f5632307e162fa6e964c952ca6c22e4b69e0d593777d3a3bf884e686695f3d097fe2f25266c864e5d8d8f00b8dc56d10
 MISC metadata.xml 1104 SHA256 cd019e3b907b935374e9818167b4a9c406d938cf132b6656a7aed15fb8070d4c SHA512 9fa9919de32eb24c720fecbb449112b997e331b4ecb37aba8cdfcf90bc832e00ff8deef570f8eb92341f8c82b90787d65befa9ebeacb904abb467b8f3e1c5054 WHIRLPOOL 88fbd760afe74c12310ed3417e8c6d242b282bc78fee612b1c0c1dd1532ec9253f7b5134a9fb8f463f9fe469ce1d5fada43b97b348c221c84869907cfc0dd37e
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQEcBAEBCAAGBQJVKpaXAAoJEF1ww0n44d9NMI4H/2XsVNlJjZWtrCrkXgo5bjLn
-IGZY/i6YHViNvFQF4fz1rLOrUVgePPOiVm3sitTmTeus4W/ag35GITvUE418Qp4B
-an3rUReMHnfd+lCKKVpMMS9LxYIP0G+gLREcrFzHE1p164yX+PRwnib3aANp8Tcp
-jajxxwbN8jGIFr5UP05obZJRpWuRDIMBGfMJLIenKFiNzfRrJiNhb2Jm/hprmEri
-Uw6SuZqewE1SpQgYej706GOidL+HnrhjVDecvFKm4K+QQdThDRYISikOHcQkV1Wg
-A0h3BFZRRRczlrI6gBDWrz6dQdoDMMGK9UrHjpVKJYtMMJXYGXwPty0llEXxTzk=
-=Gs/9
+iQEcBAEBCAAGBQJVKrBGAAoJEF1ww0n44d9N2MYH/AsAwR1vJrdZ9T0yr85DxXmI
+IdRGFEsJz/zwHd4Gjjv9lX4n+QgnPnLi/zPCjYY2QngBj4AgrZU2EfXdtxaUdJ/k
+WR0hj/L3OUK/3pI5xvgc3IrdVrUulvRovSczcqpTH39zWRA3L7EBXCg1bsqV1fbI
+G6jvrGg4mVRLotrnEMqZ8jXxnxqgHamRww/zwt8Hmfj9zqpxeWGm/J/fwdhwB6UQ
+fLfVUKXxpOMHoeN8rgxk4JSgJoSaV6KAmwG6bULYoCayAPAroDXAp+mri9x63ERu
+5TPQhEtXe6dNHUki9js9JIK3zmTiI0yIGyf33E9di2tXl+m4ADrjH1i/pRArlOA=
+=LesG
 -----END PGP SIGNATURE-----
diff --git a/sci-physics/lammps/lammps-20150406.ebuild b/sci-physics/lammps/lammps-20150406.ebuild
new file mode 100644 (file)
index 0000000..3e2ac0a
--- /dev/null
@@ -0,0 +1,228 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/lammps-20150406.ebuild,v 1.1 2015/04/12 17:49:55 nicolasbock Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 multilib python-r1
+
+convert_month() {
+       case $1 in
+               01) echo Jan
+                       ;;
+               02) echo Feb
+                       ;;
+               03) echo Mar
+                       ;;
+               04) echo Apr
+                       ;;
+               05) echo May
+                       ;;
+               06) echo Jun
+                       ;;
+               07) echo Jul
+                       ;;
+               08) echo Aug
+                       ;;
+               09) echo Sep
+                       ;;
+               10) echo Oct
+                       ;;
+               11) echo Nov
+                       ;;
+               12) echo Dec
+                       ;;
+               *)  echo unknown
+                       ;;
+       esac
+}
+
+MY_P=${PN}-$((10#${PV:6:2}))$(convert_month ${PV:4:2})${PV:2:2}
+
+DESCRIPTION="Large-scale Atomic/Molecular Massively Parallel Simulator"
+HOMEPAGE="http://lammps.sandia.gov/"
+SRC_URI="http://lammps.sandia.gov/tars/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc examples gzip lammps-memalign mpi python static-libs"
+
+DEPEND="
+       mpi? (
+               virtual/blas
+               virtual/lapack
+               virtual/mpi
+       )
+       gzip? ( app-arch/gzip )
+       sci-libs/voro++
+       python? ( ${PYTHON_DEPS} )
+       "
+RDEPEND="${DEPEND}"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S="${WORKDIR}/${MY_P}"
+
+lmp_emake() {
+       local LAMMPS_INCLUDEFLAGS
+       LAMMPS_INCLUDEFLAGS="$(usex gzip '-DLAMMPS_GZIP' '')"
+       LAMMPS_INCLUDEFLAGS+="$(usex lammps-memalign ' -DLAMMPS_MEMALIGN' '')"
+
+       # The lammps makefile uses CC to indicate the C++ compiler.
+       emake \
+               ARCHIVE=$(tc-getAR) \
+               CC=$(usex mpi "mpic++" "$(tc-getCXX)") \
+               F90=$(usex mpi "mpif90" "$(tc-getFC)") \
+               LINK=$(usex mpi "mpic++" "$(tc-getCXX)") \
+               CCFLAGS="${CXXFLAGS}" \
+               F90FLAGS="${FCFLAGS}" \
+               LINKFLAGS="${LDFLAGS}" \
+               LMP_INC="${LAMMPS_INCLUDEFLAGS}" \
+               MPI_INC=$(usex mpi "" "-I../STUBS") \
+               MPI_PATH=$(usex mpi "" "-L../STUBS") \
+               MPI_LIB=$(usex mpi "" "-lmpi_stubs") \
+               user-atc_SYSLIB="$(usex mpi "$($(tc-getPKG_CONFIG) --libs blas) $($(tc-getPKG_CONFIG) --libs lapack)" '')"\
+               "$@"
+}
+
+lmp_configure() {
+       # Compile stubs for serial version.
+       use mpi || lmp_emake -C src mpi-stubs
+
+       # Build packages
+       emake -C src yes-asphere
+       emake -C src yes-body
+       emake -C src yes-class2
+       emake -C src yes-colloid
+       emake -C src yes-coreshell
+       emake -C src yes-dipole
+       emake -C src yes-fld
+       #emake -C src yes-gpu
+       emake -C src yes-granular
+       # Need OpenKIM external dependency.
+       #emake -C src yes-kim
+       # Need Kokkos external dependency.
+       #emake -C src yes-kokkos
+       emake -C src yes-kspace
+       emake -C src yes-manybody
+       emake -C src yes-mc
+       lmp_emake -C src yes-meam
+       lmp_emake -j1 -C lib/meam -f Makefile.gfortran
+       emake -C src yes-misc
+       emake -C src yes-molecule
+       #emake -C src yes-mpiio
+       emake -C src yes-opt
+       emake -C src yes-peri
+       emake -C src yes-poems
+       lmp_emake -C lib/poems -f Makefile.g++
+       emake -C src yes-qeq
+       emake -C src yes-reax
+       lmp_emake -j1 -C lib/reax -f Makefile.gfortran
+       emake -C src yes-replica
+       emake -C src yes-rigid
+       emake -C src yes-shock
+       emake -C src yes-snap
+       emake -C src yes-srd
+       emake -C src yes-voronoi
+       emake -C src yes-xtc
+
+       if use mpi; then
+               emake -C src yes-user-atc
+               lmp_emake -C lib/atc -f Makefile.g++
+       fi
+       emake -C src yes-user-eff
+       emake -C src yes-user-fep
+       use mpi && emake -C src yes-user-lb
+       emake -C src yes-user-phonon
+       emake -C src yes-user-sph
+}
+
+src_prepare() {
+       # Fix inconsistent use of SHFLAGS.
+       sed -i \
+               -e 's:voronoi_SYSINC\s\+=.*$:voronoi_SYSINC = -I/usr/include/voro++:' \
+               -e 's:voronoi_SYSPATH\s\+=.*$:voronoi_SYSPATH =:' \
+               lib/voronoi/Makefile.lammps || die
+
+       # Fix missing .so name.
+       sed -i \
+               -e 's:SHLIBFLAGS\s\+=\s\+:SHLIBFLAGS = -Wl,-soname,liblammps.so.0 :' \
+               src/MAKE/Makefile.serial || die
+
+       # Fix makefile in tools.
+       sed -i \
+               -e 's:g++:$(CXX) $(CXXFLAGS):' \
+               -e 's:gcc:$(CC) $(CCFLAGS):' \
+               -e 's:ifort:$(FC) $(FCFLAGS):' \
+               tools/Makefile || die
+
+       # Add a python shebang.
+       epatch "${FILESDIR}/python-shebang.patch"
+}
+
+src_compile() {
+       # The build system does not rebuild the packages with -fPIC.
+       append-cxxflags -fPIC -I../../src
+       append-fflags -fPIC
+
+       # Acticate packages.
+       lmp_configure
+
+       if use static-libs; then
+               # Build static library.
+               lmp_emake -C src mode=lib serial
+       fi
+
+       # Build shared library.
+       lmp_emake -C src mode=shlib serial
+
+       # Compile main executable. The shared library is always built, and
+       # mode=shexe is simply a way to re-use the object files built in the
+       # "shlib" step when linking the executable. The executable is not actually
+       # using the shared library.
+       lmp_emake -C src mode=shexe serial
+
+       # Compile tools.
+       emake -C tools binary2txt chain data2xmovie micelle2d
+}
+
+src_install() {
+       use static-libs && newlib.a src/liblammps_serial.a liblammps.a
+       newlib.so src/liblammps_serial.so liblammps.so.0.0.0
+       dosym liblammps.so.0.0.0 /usr/$(get_libdir)/liblammps.so
+       dosym liblammps.so.0.0.0 /usr/$(get_libdir)/liblammps.so.0
+       newbin src/lmp_serial lmp
+       dobin tools/binary2txt
+       dobin tools/chain
+       dobin tools/data2xmovie
+       dobin tools/micelle2d
+       # Don't forget to add header files of optional packages as they are added
+       # to this ebuild. There may also be .mod files from Fortran based
+       # packages.
+       insinto "/usr/include/${PN}"
+       doins -r src/*.h lib/meam/*.mod
+
+       local LAMMPS_POTENTIALS="usr/share/${PN}/potentials"
+       insinto "/${LAMMPS_POTENTIALS}"
+       doins potentials/*
+       echo "LAMMPS_POTENTIALS=${EROOT}${LAMMPS_POTENTIALS}" > 99lammps
+       doenvd 99lammps
+
+       # Install python script.
+       use python && python_foreach_impl python_domodule python/lammps.py
+
+       if use examples; then
+               local LAMMPS_EXAMPLES="/usr/share/${PN}/examples"
+               insinto "${LAMMPS_EXAMPLES}"
+               doins -r examples/*
+       fi
+
+       dodoc README
+       if use doc; then
+               dodoc doc/Manual.pdf
+               dohtml -r doc/*
+       fi
+}