diff options
author | 2014-12-16 20:36:08 +0000 | |
---|---|---|
committer | 2014-12-16 20:36:08 +0000 | |
commit | b5194436a0b65957eee5d7b7544d3a9b0ef2f465 (patch) | |
tree | 1f661485deb9f17aaa17cf7e6cb91f8a16b83256 /sci-physics | |
parent | arm stable, bug #530110 (diff) | |
download | historical-b5194436a0b65957eee5d7b7544d3a9b0ef2f465.tar.gz historical-b5194436a0b65957eee5d7b7544d3a9b0ef2f465.tar.bz2 historical-b5194436a0b65957eee5d7b7544d3a9b0ef2f465.zip |
sci-physics/lammps: Adding new versions.
Package-Manager: portage-2.2.14/cvs/Linux x86_64
Manifest-Sign-Key: 0xAC91CA52
Diffstat (limited to 'sci-physics')
-rw-r--r-- | sci-physics/lammps/ChangeLog | 9 | ||||
-rw-r--r-- | sci-physics/lammps/Manifest | 12 | ||||
-rw-r--r-- | sci-physics/lammps/lammps-20141124.ebuild | 206 | ||||
-rw-r--r-- | sci-physics/lammps/lammps-20141126.ebuild | 206 |
4 files changed, 428 insertions, 5 deletions
diff --git a/sci-physics/lammps/ChangeLog b/sci-physics/lammps/ChangeLog index 01ad2b118ed3..528b124b42b7 100644 --- a/sci-physics/lammps/ChangeLog +++ b/sci-physics/lammps/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sci-physics/lammps # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/ChangeLog,v 1.50 2014/12/15 21:25:45 nicolasbock Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/ChangeLog,v 1.51 2014/12/16 20:36:04 nicolasbock Exp $ + +*lammps-20141124 (16 Dec 2014) +*lammps-20141126 (16 Dec 2014) + + 16 Dec 2014; Nicolas Bock <nicolasbock@gentoo.org> +lammps-20141124.ebuild, + +lammps-20141126.ebuild: + sci-physics/lammps: Adding new versions. *lammps-20141209 (15 Dec 2014) diff --git a/sci-physics/lammps/Manifest b/sci-physics/lammps/Manifest index 2e67d31eeffb..27d8bbe48522 100644 --- a/sci-physics/lammps/Manifest +++ b/sci-physics/lammps/Manifest @@ -11,7 +11,9 @@ DIST lammps-1Feb14.tar.gz 57811478 SHA256 2d01ca4f2c52c18a9a95866f558b3f3857b226 DIST lammps-20Mar14.tar.gz 58582788 SHA256 cb2fce0cfb0066833bfe2ff5d9a3b55e83bf171b794abadd8eb755f14d05e302 SHA512 bbb5d92bfd8357137f8b85a4fe459c1fe0c8fbd84d3d4267b2109e56673c651e37b92b672762a91c9b535115810fbd542a9d8c4288e45328e23e4b5001258549 WHIRLPOOL b9600147aac14d8b0ad5437f70da042acc0895e116cbd819bc3031c26b7a8f2de34298d6ef8b49a169c475799537c3e7604f9b9788bb2f65f271dc46c56a7c7b DIST lammps-21Oct14.tar.gz 58596371 SHA256 58ed8d560246a5bf48a681c156113d7746c654cac85e9aa9e10fff6bf38fa99e SHA512 0a10267089292530cc1c9895b0b9e1a2cba403a1b1f7e8ff20dea7a2921739c7d5042bae28bca5f1312b9dc1ab03170b1d5dd9141a3ff7d98507aa0e22d42b3c WHIRLPOOL 711376ca17e4cf6ae6a9a98d386a5970777b9b03dfac60087cd7c10d92a0c6e05996709a253f72936c5e14b465ccec2dedaa1aa6bcb07930be75213700e531f0 DIST lammps-23Nov14.tar.gz 59427460 SHA256 1b106ac3d679f1441dbba6fedd71e3740142a2845eb55b368e903b23c25801eb SHA512 5745576d64cde0a1fe42c3d79f36d708d46eae88ee6ab34601291845d4cce073460d4b68f617b32bfd099406fcbff31e7c25e6825b5efa9f08d051b23742714e WHIRLPOOL 20ed10717fa0590367dc6a01ddc63a48202376ca452d6235c49e617e127bbef456dc00cff960567ff90b5a0e32993a38ce6c0a218e516bbdcdf923050e2b5fd6 +DIST lammps-24Nov14.tar.gz 60502342 SHA256 e50384847ce1a4cfe217157f59e34f66c44b988d5d4dbabac5d2afeaea3bdb35 SHA512 13e64fa8f954fdf5c8167a4b74ee4086747426a2969c6d31ff9b853f24b67eb5810943cb9bc5f9f8bb4aebdffa12485697b2818f404529743d63e6f876d6d339 WHIRLPOOL fb885311beac1fc731f72117936b9a64a8c8ab0f89dc38a2462ff970a52ee7c897c66da71c30aa7e25e7f2b007e79d7ebb0175c934ade0a76eb6e56a5374e925 DIST lammps-25Sep14.tar.gz 65394390 SHA256 bb1fecc9f66f2cd2ca235058edaff135250a5468d945572d4f21744fa6b88df8 SHA512 b23ecc8cd5c33f19ea5cc0227f627b785f68fa1df9419276ae1a94dd9eb758ab8505e5413a59549e4923205231f5aa539d18626343d3d1e726b401654a6bd4be WHIRLPOOL 0b382266f5096e70410971174ed3bdf1b18d0d858d18f5997dea8a66d9f3de069f630d0802f27b2ab1ca20fbe8ea0fe529362d169cb0cca823869fba3a73357f +DIST lammps-26Nov14.tar.gz 61445197 SHA256 c3d577ec0be132a0f4b3f22f51bcefe6184d42e1ad4e12983d15528fde4298f9 SHA512 78d6ae2d241931dcc8aa6f268f7fdf105361565f9d5d64234ba8505dc8a4f465ef5ba91cb5145448b1aec7820a5fc884de62145e1b2ae99caf81bd148f009902 WHIRLPOOL c9ca16efe1ad1f892e8d92cd74b51e25c666590e4f4f6d48a87a1626e8ad5f2f01a30584bff74c74e2415cd7a7fade059438319514b05f0098784d23fb362afb DIST lammps-28Jun14.tar.gz 64598325 SHA256 3dc8f415f076c5b1563e25c06ddf360a7234c0b3428c561764a13618f80fb233 SHA512 568a00249dd88d0ad94714d2b388855376d020a34b546f9f54142b761e95515c1fce44bbbc9db2538a5a9b8335b8ac9e2905b875e954da18831087a3021df0e2 WHIRLPOOL 9d283de197c6e7216c60ed3f34bcd0a55baab925ab4d025717f1bee8a7e8b668c67bf008a9a9a807361c8f5ade36e362afdf7ac9ef6c3ed6d856389591483354 DIST lammps-30Oct14.tar.gz 59386701 SHA256 b99522370cb2ea3e55c63f401b2bafb0c98f6b28b9af76fb8339e9bd4a3ae205 SHA512 9b9952ec098c17abd9af085d546869a60ba421a380abcd0be3c425e3c1495394417bfee8d8097c99f54131e286a325d736e766e1ae7239bf45ca44c737611c2c WHIRLPOOL b8ad0078b883455cd7e8f06c0ad8f43eefe7d1c158af58baa42ad179154f09f68077d8fb31c22abccedf06daa344e4abb7f3edcc16d9e69e9d2c458f4fda1085 DIST lammps-4Mar14.tar.gz 58554657 SHA256 963a486c9d0dc798d4986bd8d603d27f27042d5080320b584006c767cf3d787e SHA512 c2c2e2fe60d44ee8676753dac60166a935c3f40a3f89dc322b058090d9193c33e1682296d78add5dfc5f5b3d0796155a025c6855818ca4735960fbf2c8922ca2 WHIRLPOOL 2970c824008baa745d79b4e2f6c8d6d2ca96dbbde2be7df577cd97eef86276cd2573ab91345c64fde84aed5a6e1dc9abc6bbe7a869d5a54197c9e3fe53d19775 @@ -39,13 +41,15 @@ EBUILD lammps-20141021.ebuild 4783 SHA256 204a6d23edb40f52f363536b109d6d7f097a35 EBUILD lammps-20141030.ebuild 4955 SHA256 05e4eaa92e2553398410e0ac058d92e5ee0ae03d03c1b7fa5af05a3e10badfce SHA512 e9363a8486b176edbd7109ff9a8914e4db8c5c5e5bd60cf801ab919670750dee0a0d5fca104f1079ee6c05c4376db600d651bee0845dbdd1213f073938bdafe8 WHIRLPOOL 57b142f7fd6716c93e39233cff5199983e17a048821626a270acba53f9a55cded724998831540d1816d4612673fb31c56b053f061fd8c328a355dd1485c52dac EBUILD lammps-20141105.ebuild 4955 SHA256 561fcc549538eb5487994a665a9f2da0f4b9fc374760da9a66ac9775ab88073b SHA512 f8bd9f07421058c557f880f0a41c49db2bd249452434a57e818b657cb9d4a94e4831e4ae6006b7101b694d1dafca3b73a83d5ff4ff45ebb77c56f07a64311080 WHIRLPOOL 944c7d902ff79d2c0aa95c013ed9ae9ca65306dcb583058b5aa1844d65ac5230767f3baf0d37b562fab9cab3cdca30234b6f9d42a07bb67d2cdcd69158c9e319 EBUILD lammps-20141123.ebuild 4955 SHA256 3ee3615deb34393976b299b7a70ba4e00ad10b1b67d9386e2029f61672e32c0c SHA512 1f515b2949f0f5a1491bc1b300ce9fafa08d179ad3fc87e11bf3d5d60bf63d135f08cae654fda43727b02f14cefb694e0257c2970a5bdaa62bf153ed2f092846 WHIRLPOOL 6302bfc7c3034e793a61da6f9feba39dbecb249e135b2c2768c9773e2e9261824f137a22c941f7cf2453e5e7b3fb101de8ae19acb277fc355cd2142c7b91a4b4 +EBUILD lammps-20141124.ebuild 4955 SHA256 4272a898598387dcb3692701e51bc709133f2324da3b3789b9c11ea6015aa782 SHA512 1804e6962ac798d4ef5c69dbf56c8e40bc348c48ca56cc77aa84ef585fe6577bfbc6534fc3e22a810f8dbd9287bc58248f90de392135a86a7ea57bd788488465 WHIRLPOOL c96805021841b8308f2113664eefb159180b49d9fc6118a39c3f447cf9b1cfc962ef9d49c6ab043b04aad58d96add6cb37b6c74363c33039dd92da48e738462a +EBUILD lammps-20141126.ebuild 4955 SHA256 9d47f94b18c5c1c464b4b97cae6d0dfc5d16559abb2bf7de26038fd3a32ccfba SHA512 f19decfc3e9d9cbd050e7275f4f60a657b950417743b4bffb8cfb182e4b3d2c89576f3c787c0b9663e0ad07da828de89855d88a12c9d8c92bc5f8560f72c21ba WHIRLPOOL 85d23f5e3356824ec520d9fe6bcc38620a5f92632cb6eaf6aa8094d5d558aa495c4881962cce176353b93c80b63cb61874170afc71f5d00d8efe04f460db0725 EBUILD lammps-20141209.ebuild 4955 SHA256 adc05bc66b73d56f83e0778c37055fce2f1eec537f48fa234337df7ffa7acd77 SHA512 f69c66c7bcaddd49b74e682eb160e2ac75a192593694415fe3bda01fbc4649c706a8b47f9ee36251ad0e71d1e75bd109f846047fc9f6ff76fabfdfc76a39d1a2 WHIRLPOOL 7402b164d3ce9e7be1a111d6c4f096b0c55dee5da3c8a7bb03a4beee3df6b11199fbce1ebb102e9a99321343bc3ae6dcd976f0dc5bf511795a010bfcb0536f4a -MISC ChangeLog 8697 SHA256 c69afb0942c4f56c1b657fa0c71834ec42a1a9b837581f0eb78ffa45cc0b94a3 SHA512 3ff8892a4254ee4dcae3f5c710e61298833d78469ec13d8c790e96cd21ca5c4f9d71d1a5c0ac7fbc1fa7d1dcbb11662e695952f19bc09ad16c326517e43b01a9 WHIRLPOOL c7daf9c9ad348a5f6b924c0e9caefdc3876ba670e01f35b00be622f6fb35c66fd7127fe55bd81196718abae4f9fbde46f9e83fcc336057291959f85225e46d03 +MISC ChangeLog 8909 SHA256 dbc7a76053cff60d41ab08aaae16d44daa549c719252f558adc1ca23158bc20f SHA512 a7ba56fb5b8757d703833d826aa5533b95ea2c68a8ccc66887d42bf55711bf5149618c5c68e8c7b6358a2cf48a8c63ae2497d692decc06f468e8a1f98f804a7c WHIRLPOOL e78176245aa727d19ac09697093fe3bb8022e0934d671d63c60fc7e1e101dd2078a4c6e423bd78d1368635784af325d490de94870cda1d7eac5c878b78be5c7b MISC metadata.xml 1337 SHA256 c49d3c9030c88c7cd0b079b4ffe0c8b1251de0c334da7a7059f7fbc68a4ac9b1 SHA512 a5f7e2193663f88104c258f9bdd8e7ab581c1584bad57aea14dab7499fac076db6db26299cad8f273d1fabb7fcf22c1c25461b8cb6f229e489b6bce8195a3782 WHIRLPOOL 2b47343be9bffc283319c0bc96b5a481ad99391bbb8771a9431ac38bb7f1d210470f96d96a4b430251cfb6b424801cbcf5fac0ba04f4a7824323e27e2926842d -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iEYEAREIAAYFAlSPUd0ACgkQf15tZKyRylJXXwCfVUNhLC0b4NN9xDQiQZWI+T2X -N5AAoLFN3b+g/2M+I6y75Mgte4HKX0oJ -=LWX9 +iEYEAREIAAYFAlSQl7cACgkQf15tZKyRylKTvQCglwOlqPFx4hxrtRRY8kNJvEbS +SbIAn3V1ZwWVey+AvNsyTidp+mLO2sjE +=N/3Z -----END PGP SIGNATURE----- diff --git a/sci-physics/lammps/lammps-20141124.ebuild b/sci-physics/lammps/lammps-20141124.ebuild new file mode 100644 index 000000000000..ed502364222d --- /dev/null +++ b/sci-physics/lammps/lammps-20141124.ebuild @@ -0,0 +1,206 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/lammps-20141124.ebuild,v 1.1 2014/12/16 20:36:04 nicolasbock Exp $ + +EAPI=5 + +inherit eutils flag-o-matic fortran-2 multilib + +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 static-libs" + +DEPEND=" + mpi? ( + virtual/blas + virtual/lapack + virtual/mpi + ) + sci-libs/voro++ + " +RDEPEND="${DEPEND}" + +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)" '')"\ + "$@" +} + +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 =:' \ + src/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 +} + +src_compile() { + # Prepare compiler flags. + append-cxxflags -fPIC -I../../src + append-fflags -fPIC + + # Compile stubs for serial version. + use mpi || lmp_emake -C src 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-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-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 + + 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 + + if use mpi; then + emake -C src yes-user-atc + lmp_emake -C lib/atc -f Makefile.g++ + fi + + if use static-libs; then + # Build static library. + lmp_emake -C src makelib + lmp_emake -C src -f Makefile.lib serial + fi + + # Build shared library. + lmp_emake -C src makeshlib + lmp_emake -C src -f Makefile.shlib serial + + # Compile main executable. + lmp_emake -C src serial + + # Compile tools. + emake -C tools binary2txt chain micelle2d data2xmovie +} + +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 + # 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 + + 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 +} diff --git a/sci-physics/lammps/lammps-20141126.ebuild b/sci-physics/lammps/lammps-20141126.ebuild new file mode 100644 index 000000000000..9aa717270d78 --- /dev/null +++ b/sci-physics/lammps/lammps-20141126.ebuild @@ -0,0 +1,206 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-physics/lammps/lammps-20141126.ebuild,v 1.1 2014/12/16 20:36:04 nicolasbock Exp $ + +EAPI=5 + +inherit eutils flag-o-matic fortran-2 multilib + +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 static-libs" + +DEPEND=" + mpi? ( + virtual/blas + virtual/lapack + virtual/mpi + ) + sci-libs/voro++ + " +RDEPEND="${DEPEND}" + +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)" '')"\ + "$@" +} + +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 =:' \ + src/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 +} + +src_compile() { + # Prepare compiler flags. + append-cxxflags -fPIC -I../../src + append-fflags -fPIC + + # Compile stubs for serial version. + use mpi || lmp_emake -C src 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-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-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 + + 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 + + if use mpi; then + emake -C src yes-user-atc + lmp_emake -C lib/atc -f Makefile.g++ + fi + + if use static-libs; then + # Build static library. + lmp_emake -C src makelib + lmp_emake -C src -f Makefile.lib serial + fi + + # Build shared library. + lmp_emake -C src makeshlib + lmp_emake -C src -f Makefile.shlib serial + + # Compile main executable. + lmp_emake -C src serial + + # Compile tools. + emake -C tools binary2txt chain micelle2d data2xmovie +} + +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 + # 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 + + 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 +} |