diff options
author | Honza Macháček <Hloupy.Honza@centrum.cz> | 2016-03-30 16:34:09 +0200 |
---|---|---|
committer | Honza Macháček <Hloupy.Honza@centrum.cz> | 2016-03-30 16:34:09 +0200 |
commit | 94a06710354314bfd07d9a8b124079193ddd1d4a (patch) | |
tree | d23c8bc4b467135d5504282ba5989b45ec7bf9f1 /sci-chemistry | |
parent | sci-biology/scaffold_builder: clarify description (diff) | |
download | sci-94a06710354314bfd07d9a8b124079193ddd1d4a.tar.gz sci-94a06710354314bfd07d9a8b124079193ddd1d4a.tar.bz2 sci-94a06710354314bfd07d9a8b124079193ddd1d4a.zip |
sci-chemistry/nwchem version bumped to 6.6 with minor ebuild improvements; Infiniband support should compile, source patched to allow unique names for all atoms
Package-Manager: portage-2.2.27
Diffstat (limited to 'sci-chemistry')
-rw-r--r-- | sci-chemistry/nwchem/Manifest | 14 | ||||
-rw-r--r-- | sci-chemistry/nwchem/files/nwchem-6.6-unique_tags.patch | 12 | ||||
-rw-r--r-- | sci-chemistry/nwchem/nwchem-6.6_p27746-r2.ebuild | 279 |
3 files changed, 305 insertions, 0 deletions
diff --git a/sci-chemistry/nwchem/Manifest b/sci-chemistry/nwchem/Manifest index b86a88dd1..7a6b4dc0f 100644 --- a/sci-chemistry/nwchem/Manifest +++ b/sci-chemistry/nwchem/Manifest @@ -1,6 +1,13 @@ DIST Bcast_ccsd.patch.gz 591 SHA256 03e0d06033a02be4f1eb659212744c822041d4619b38b48c44284bc80df4ebaf SHA512 04e08e5fee5e2b3c3d89553ad36998e180e79a59f692b1cb6848df561319c92747a307596164e86fb5b244f61df432b2b5c3170e26bc25bccdf426ba268a39d3 WHIRLPOOL 94a0dca3f6c2650362babdf465b325d2830a5dddf0a7bc74c3f31caefda142be3e1160e8499011528ac4eb4fc2e0f877dbb67ecd26ec0c490c3c5643c7763b45 +DIST Config_libs66.patch.gz 682 SHA256 aa17f03cbb22ad7d883e799e0fddad1b5957f5f30b09f14a1a2caeeb9663cc07 SHA512 50924c169e3086a419840e7593dc3126297854fac14f8e5ca9c3c47d9478bbd66d79c1e5f9f114cbe6f2a81d0197cbbf1b4085f59ac399fe076e7b96066a1946 WHIRLPOOL 142990bfa133d3356544b1814e4a11f4136804ce438f86f857c14039039ab0767df572b49cc2dd7c6b66c411b87bb938bbe704b7452b80b7214b5dedf31c4899 +DIST Cosmo_dftprint.patch.gz 424 SHA256 d3b73431a68d6733eb7b669d471e18a83e03fa8e40c48e536fe8edecd99250ff SHA512 f0930c0130bd779f7704ce8b59c1af01062ffede00102b880d1ade534fdd4867e194f5d4a9a9834f557b5708504ddceec5f3320c4ebfb5af47989261dd523920 WHIRLPOOL f4894582ab64e665dc397f03f15709d84ace4108100ef1f7cc30bb1c911142ec23b08fa4069e29341bd2af1375f16c0271d2882a1058cb575a3ab4917e9bbf20 +DIST Cosmo_meminit.patch.gz 1659 SHA256 569c5ee528f3922ee60ca831eb20ec6591633a36f80efa76cbbe41cabeb9b624 SHA512 51a7fba5a8bc3d70254bdb3d8f3ed2c538b680c3074813906cb3d068c42e7972151f9ca24ffbefc44a8b8f8478cd085feea080c6c8dae9358d62d1823b398ccd WHIRLPOOL c7311d416fb610ed87bd19ca61864786ac40ef34f47252348d5b1d6699567f349fa291ecf1e563762c1111224e3cffe519f1e139d4b90687fa250cc5ce700beb DIST Dmapp_inc.patch.gz 234 SHA256 58e25a87d9a2844eaaae542ffa244c55c1075b040b7206771167e6458d9ca756 SHA512 ac4ea8a65316a172ec29fa8f98d03a999fae5a18aff883f20b1fb26b13867e852097d4cf5d43fa730d9ed27b81ab2ff88c92365d9429f9e67bba720603282ccc WHIRLPOOL 7a84a32c59a6a5f9a74d47686abfc75c73bc9f2e7ef8d274b9e4b90b4c9e24ca4dd46098acdb278eb7273f527e5c037557c993e263f6c4ae9999b6cdf07afd99 +DIST Dplot_tolrho.patch.gz 572 SHA256 2ebb1a5575c44eef4139da91f0e1e60057b2eccdba7f57a8fb577e840c326cbb SHA512 331754cf765e21a0236497b2a346215b7d1c985896653de70afc2e6ec8e3cec9ca2795baf3ee29d661686501eb1710944cd48966f3f5be9cf71f01d7838a1873 WHIRLPOOL c8015faa4c7543f9b1b0f02ba4792b95337ec629d993e21f6cd55906eadce9b0a3ee825aaed6f5f562becfd9e74562110c19f91fa351c5f9a337166f5c66841c +DIST Driver_smalleig.patch.gz 255 SHA256 dd65bfbae6b472b94c8ee81d74f6c3ece37c8fc8766ff7a3551d8005d44815b8 SHA512 ae9b80e3c962404f5e41b6fd151c7b0b5758a34795be06590b5105c1ac959ee0a01c5aed9f1c6bb01765a8ecc9e5f6e24a0b80f6d80bd0612521d6dcfce4b87d WHIRLPOOL 941b1c1ad1ccdfbdbf91cc95ec140afe85963361c650bead4f60368f96eebc8ce5a52a6e9ba1e5eb2e6b89be06f88440f750c54f9c8b2b37052813af95034e5a DIST Elpa_syncs.patch.gz 554 SHA256 ce5c45cf83d84e0a95266e667808e6e40df82e649db3b9faeb556f1e3724b8df SHA512 c6b6a11dbd40ec4ccd8e230cfd33f2667122c05572deb693ee5c516f0a7dfdefcca0bae8aef518b9cd88ce0a1aec413d3518cf29d14c0f91afdd3024ef9fd506 WHIRLPOOL 21c78a2041f5bd25475b4589c9bbef47aa98a18e7a313cea127530f21cff9f54bdecdd2b53e02e4fd991bb6f19a3399df527af2d289284070dde133aab2ca952 +DIST Ga_argv.patch.gz 244 SHA256 8a78cb2af14314b92be9d241b801e9b9fed5527b9cb47a083134c7becdfa7cf1 SHA512 63acab29c96fe2063c452d97a86bedfa9abf1b62bcb99303b13c24d40301af5f5f7427e38c8dd25e0c8225665c0412c36aa99890d5dc902e81bc65ea8b0e79e3 WHIRLPOOL bf44c14d537b050051a8c2475d2873df1c7ce7071a2b21fe82938e88121fc991485b38a9eaca49a8e1fac7de33cd82eaac8b963cb8219a822a87489283dd3812 +DIST Ga_defs.patch.gz 321 SHA256 c6f1a48338d196e1db22bcfc6087e2b2e6eea50a34d3a2b2d3e90cccf43742a9 SHA512 fb71dd6544659f8ee8d6a26efc33e335da2522759dbc380ab044ec1e827315ae1e93ad57c0cee502bb7d74584e4ca2b9d97bffcf65e3554ddc82dda42518cd44 WHIRLPOOL 9cfbdce430fc46389a0222fe6072b6670defc91011703392bab72b81f90ab0416caa8f96f1e5ef872d7d1d96754184d10475959da7384367f8c9b736181f041c DIST Hbar.patch.gz 458 SHA256 6058010a77bc7d0bf7468dde49d7905863f2550b282abee4cceef901481272a7 SHA512 595d5250dd3d462e9d2e0b385a3b41ac828da0792e19606b0365f27b47c839e81ff16cdae590f91f48fa0ac52a4dfcee1c4929bd9054651ee27f9e7c3bf54dbc WHIRLPOOL 691ecac56d8ef8bfd377df40429e484d232b82ee28c0b546bb379d6120e00b54c408f55ccc3340e612759d1e4d72f2933f0ec40d3655ae94be03f9db3e925124 DIST Hnd_giaxyz_noinline.patch.gz 368 SHA256 4e89a383ebd0cc87b3de03133f4a0537de799e1ae938f82a6460632e324aeeb1 SHA512 a798412821e35fb3be28ff2df59ce578506635532b08f0f247bae39c85f1c0c912e5205f201f94407d9e3360e66bfb98119596bacc693165fc2b6924800c283c WHIRLPOOL f424a9773dfc45f8f6597dd5162bb10283e3b1e38b12b557089b925fa45aae02c0e988eb0785a1c7cbb5f6883df8767042e195037cc50f6a29e6cb033e5ff342 DIST Hnd_rys.patch.gz 1585 SHA256 e52eee4df9149cce039b4b1d8047d51a5f47373fe03b57c6d0f44ca23b33c06e SHA512 5e95ec72e1b1e17b324d43f3cc68003b5724295e3cad03a9ab8c58636d43ad62ab1cc42e90a5f386854bfeb02b8327ee0f6632c5bd532320e3f34080628b8d84 WHIRLPOOL 6e8eaadb3c9312e247e5c06a34848311f5921622b448c32de67e1ee2d258fcc82eff75434d8392c0fe794e6261b08736a4bea7c569a00f969575c0d87e16f7ae @@ -8,10 +15,17 @@ DIST Ifort15_fpp_offload.patch.gz 1326 SHA256 907d86049b085bc4c2b9cb2e2554fba94e DIST Makefile_gcc4x.patch.gz 1493 SHA256 c548c64eab196ef7aabd473379ec56c879c5a6e9e9a4d31c6503279a72094839 SHA512 35d46f78da48519ccf21b8853bfc32b958419a600ef7897135f52bc8f7dcfe733883f6600cfd88e75a8c68c3fe9fb0f6302493889df7fbc84f1dd7be29929136 WHIRLPOOL 70b7431fb11f8da971de52a4cba985548da1fa388859cf784016fc646e49d00cedf2918c9a7c47f29239b514220f47837bddff6aaa3762c5afd2c69a68bb18cb DIST Nwchem-6.3.revision2-src.2013-10-17.tar.gz 112262489 SHA256 6a6adf068d559be1ab1bf0addc6b8aa65dbb746b8716a913f5f1bb2eb16f1718 SHA512 28b812b62bba464e6a9c76ccae17145b42ab92c460cc4372bfb6e5d48db0b618d06e778bd2f4787ffcb2d95e60e869af60739181b2f334430592764b41e5f988 WHIRLPOOL 75d4053711fcd1f69c9b3813ed00fe492aa918e75c11c60a7fb67b202bd0dfe410e80d4c7f5423ef76f4a8472db809bd91c4218159087255b495908b4be32b4b DIST Nwchem-6.5.revision26243-src.2014-09-10.tar.gz 131069464 SHA256 9af6d7d7424809785f5a833b49d526cb3e8b5703a9e061a52e426532c48f8c75 SHA512 d4e22819bc40b3bda915dd64c68434f162ad1abccf854a480feb083858a6c8c6b9ef3347e1c5c247149347ecbb2c6dc8d4e70127b90e3b18c08d2cbf16c90843 WHIRLPOOL 9e4f7c624dc62a3e38bdac83197ca8f5d63a4625516e194211aef44f253711e1b095b5f5cbb09b3ea13448714ef2aaafd3ac1edd65f61c71dc2a3513ccc00916 +DIST Nwchem-6.6.revision27746-src.2015-10-20.tar.bz2 98351363 SHA256 7b9b324883500c412476420d3591c283c1a68068b2ab6ce185d869d82497f798 SHA512 4159cd8bcde1a703ecf221df2e0778dab4cd2239260b648d44ad7d245b8ff0b0042ec2b542892ac2b5d6a2ef86aab40f72a2db2b82d1a88a77d9872b0a42be1d WHIRLPOOL af7e6367561f071eb6585265cb8a020a6ce464f483de6b93ed63bd696beed6e1a8cc391a6b563862c8fbaef27eda0f3297ede2fd4b7f0854756a77f14d8bd6af DIST Parallelmpi.patch.gz 216 SHA256 d30de8a7027bd5ea7672ad1fa63711a3cfc5cb118f878bc5308a142319d31420 SHA512 21d9020f77814056d3690dca71783e635a4eb951785cf12addc1ff4082b582c82399eb3c3f4f01892d5249fc30a8de1a9a18c1bf37841957bfc924d579f8f7ea WHIRLPOOL 12ac85104503ad5a14b2b67cf727ac8cd16d19311a1100e8aee612bdf1dcacc8e606b3be10c464daaf3681f22b141fd31019cfc5ed84ed5e89e33b2985c89554 DIST Print1e.patch.gz 463 SHA256 59c4d96c9da4b7fb08dee2a89afcbc6ac603c141d48cf3a16e41a92dc2a539e5 SHA512 c53105fb01bb307f7483e55adcd920a4c538cb8634af2c3fa0a13ae1899060603d67fc19392c53ae7499bef48434d667ce690ce66a50dd084bc0583fbe1d95d9 WHIRLPOOL b7562de186a0211ff97c3d378319580578fc7faa7e72ece190c852673a10101207ff779a29781559de2ac5bb373c87639c97ae4465e4a3c84e504958148d231f +DIST Raman_displ.patch.gz 3024 SHA256 6a16f0f589a5cbb8d316f68bd2e6a0d46cd47f1c699a4b256a3973130061f6c3 SHA512 8804e2ca36a6e9724ed37bc8a3c71687ce8c560e9afeba89e6c3a51ef7818d0b5481aeb43d918dab9da9dbfb1318a86a6321980be33d2d08758f08abd1ef5e15 WHIRLPOOL ee44771d3b6430d1945337e5a38c8c97ca9ba5a0a87c5b597a3210049be537d36988c6a4773da521cd9594f53020488d342ec676157d73bff799384b53557645 +DIST Sym_abelian.patch.gz 281 SHA256 aa693e645a98dbafbb990e26145d65b100d6075254933f36326cf00bac3c29e0 SHA512 4a0728a2730ab6c7f5bfbc2ffa1f18ee83f12e287dc4a10568f10ebfadd5a6b9be281860553e5c144ae24600bb7e2549c5c8b55b5b14064e6720b14b2ab75c56 WHIRLPOOL 09d89307101c0ff7e8ac964c74e23c2fa03f5c5778a95e63999a2942713dd1a8313870fbebe4692e4fb6113ce6b9409e44709519dacb093d8fa2e5e05d2fcd14 DIST Tcenxtask.patch.gz 1556 SHA256 6b3f713024fec9a41bd7738e3cd6d31731d17a3b59a02d9a484e0a2408fcb9ca SHA512 9e11a2566c20b07a458cbd0ebe58e006b3ef04831625f3b88e38d20570945ff5138c18f148491bf890f8431699af3c180d948fe6677acf82d557c44e9a7384b5 WHIRLPOOL 8d0923a1789845be126e569a4a17703e2fda4aed9a9d2e9472d62968c9c40c38af8c40f35033bd4d644077da5ae8218c38d8ddfa82ef6313d67bfd6a5888f249 DIST Tddft_grad.patch.gz 1301 SHA256 73028f7e1d5cae1f3b1e31d30accbaec519a073696d96110ebba02cb6735ba9f SHA512 5b047f9bbd42cf5b02e651a43b65a4be95208139a75fe959267a9445fd84c8a47667d7dde24a7c02aa380a9d0d40b7dd74a4ad1051657f8bf582aa1345d45632 WHIRLPOOL 425a804dd0d3f3533a456206188a86b3ae4296508379cd6cb75938050022fd5a728a26da2c3beb20087ed7c5ebe55e8cf0eb48cdba982954806737f88aa0ec80 +DIST Tddft_mxvec20.patch.gz 55611 SHA256 cdfa8a5ae7d6ee09999407573b171beb91e37e1558a3bfb2d651982a85f0bc8f SHA512 c86299e11db3924d78c553be178ba14ccff3d2375a22b08d369908e3616ee2d890c4b4a87891a0ba7f629cd43e07e42caffa9eb1b5f06a48b3c907c91a9f9cae WHIRLPOOL 1df52d9e9d164a0eaf3692f8a14c8b5a37d1fb3e6d41a49717af6aa7d5ae1d76b01582e2e9dcfd14ed7c724b1db2fce364372e781368862a07be72ad0c1175e0 DIST Texas_iorb.patch.gz 378 SHA256 0caab84a2b9628a65232c24364c45ab29dd8637b0b29b15e1d089005eda20745 SHA512 9dc89172999606245e899a884aac073ebd40a102ba6e4164b0e548ad6cc3b37d5744b70896309c2e53871694aeb63b231b90b12e32c019ec84547b2b12e9c2f2 WHIRLPOOL 50ae525f445b4091174171fd69152a967ac48ed9ad1d0a70a9e034de27bed78ca5c7f83d9ef042ad2d19ec3b8c342cb18ee0c9d931a9d34878aa5f7779ed9702 +DIST Tools_lib64.patch.gz 286 SHA256 76b8d3e1b77829b683234c8307fde55bc9249b87410914b605a76586c8f32dae SHA512 ded09149db5074306d590dc3dfa8e8286570207bdef228831e69a4cb4189886859f10b3ebeffe99f2c8820778a864ade85f09cef624a3eddeb42b9dfa4aee260 WHIRLPOOL ba8bb0e37230150d1c8c0063e2e4bb948363339ec7ff1e86c8a4e0de7edb670c9626eb7acff030128e5e6bc739a417f338d8dc148c5b7f7411978bb30c8b37ca DIST Util_md_sockets.patch.gz 324 SHA256 843d0d9152a3d3735557a8710ae8c6a260732a2b8e0d9ed823bbd430efff44ee SHA512 743ae8d7cdbe6612a26a10ce845003abab08c1704956940bccf249d00c1d07cf169cfb3cf648c209d5c1dc564abfeddeb8d216259f463c0d564f617c099f5e82 WHIRLPOOL cedf1d8253fb085bb6851effe25e230965cc6690441c865344f10d01e2966687753375fa3e69475378ec495c3ba85d4539417e07f2e61597060730e9f63b8f0d +DIST Xccvs98.patch.gz 669 SHA256 1c0b0f1293e3b9b05e9e51e7d5b99977ccf1edb4b072872c8316452f6cea6f13 SHA512 e14c85ee22bf696d9e8e9f090c9c8b30b23659da28dafd020eeb18be8ab44ec66a6d4550295505b43e3428f0771e47b8c61c3ad60a0b3778b3b4e87280065d60 WHIRLPOOL 3bd212b751c4dc47165ce51ae593a69b891df74b0f60739e723945244820ac089e69e9fb106e4be44869ce53d727622365e245a4c9d88e162acafee7cee14fcb DIST Xlmpoles_ifort15.patch.gz 256 SHA256 ae957064165afe8abcfeb580146b59b8ca680a7a5f528402047b3f8672c1e131 SHA512 f770263a22d5f680c92d52a521ddbd748633dcdf125fe75f353d70d4557fe4c8f0c25ad07e05d8452124f78523552bb87446bff10532cfccc5bc2ce941aac855 WHIRLPOOL f97940620e05d8439119e78c2ba46ea5ebae33c16b69e6bb334cf19156573a21cf0a2c8271bc76ebf3c3e27b9b0d43239d5884fccac004b7ce4a80ac5a6f5e42 +DIST Zgesvd.patch.gz 714 SHA256 4af592c047dc3e0bc4962376ae2c6ca868eb7a0b40a347ed9b88e887016ad9ed SHA512 4d057169c23fe7d109f92d1c63412c0d640f4a275c10467bce609488e54c70977af83af5afbfc4971d083ac0128652153c7af4728bb98cb3aa2b63a28c9f2cff WHIRLPOOL d994996b55835408bab306ca5a5ab7c90590d55c9c5efc649079a65ab56df6ea6ab1ea869f6a0cfe3557c4cf0b418ebbfe14f6381cb48123e1754a6959240750 diff --git a/sci-chemistry/nwchem/files/nwchem-6.6-unique_tags.patch b/sci-chemistry/nwchem/files/nwchem-6.6-unique_tags.patch new file mode 100644 index 000000000..e129406e1 --- /dev/null +++ b/sci-chemistry/nwchem/files/nwchem-6.6-unique_tags.patch @@ -0,0 +1,12 @@ +diff -Naurp nwchem-6.6.orig/src/util/nwc_const.fh nwchem-6.6/src/util/nwc_const.fh +--- nwchem-6.6.orig/src/util/nwc_const.fh 2015-10-01 17:33:14.000000000 +0000 ++++ nwchem-6.6/src/util/nwc_const.fh 2015-11-26 10:53:46.386110924 +0000 +@@ -62,7 +62,7 @@ + * Maximum number of unique tags + * + integer nw_max_unq_tags +- parameter (nw_max_unq_tags = 40) ++ parameter (nw_max_unq_tags = nw_max_atom) + *------------------------------------------------------------------------------ + * Maximum number of general contractions in a shell + * diff --git a/sci-chemistry/nwchem/nwchem-6.6_p27746-r2.ebuild b/sci-chemistry/nwchem/nwchem-6.6_p27746-r2.ebuild new file mode 100644 index 000000000..4c10fe832 --- /dev/null +++ b/sci-chemistry/nwchem/nwchem-6.6_p27746-r2.ebuild @@ -0,0 +1,279 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit eutils flag-o-matic fortran-2 multilib python-single-r1 toolchain-funcs + +DATE="2015-10-20" + +DESCRIPTION="Delivering High-Performance Computational Chemistry to Science" +HOMEPAGE="http://www.nwchem-sw.org/index.php/Main_Page" +PATCH_REPO="http://www.nwchem-sw.org/images" +PATCH_LIST="Tddft_mxvec20 Tools_lib64 Config_libs66 Cosmo_meminit Sym_abelian +Xccvs98 Dplot_tolrho Driver_smalleig Ga_argv Raman_displ Ga_defs Zgesvd Cosmo_dftprint" +SRC_URI="http://www.nwchem-sw.org/images/Nwchem-${PV%_p*}.revision${PV#*_p}-src.${DATE}.tar.bz2 + $(for p in ${PATCH_LIST[@]}; do echo ${PATCH_REPO}/${p}.patch.gz; done)" + +LICENSE="ECL-2.0" +SLOT="0" +KEYWORDS="~x86 ~amd64" +IUSE="blas cuda doc examples infiniband int64 lapack mrcc nwchem-tests openmp python scalapack" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) + scalapack? ( !int64 ) + lapack? ( blas ) + scalapack? ( blas )" + +RDEPEND=" + sys-fs/sysfsutils + blas? ( virtual/blas ) + lapack? ( virtual/lapack ) + scalapack? ( virtual/scalapack ) + cuda? ( dev-util/nvidia-cuda-sdk ) + int64? ( + blas? ( virtual/blas[int64] ) + lapack? ( virtual/lapack[int64] ) + ) + python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND} + virtual/pkgconfig + app-shells/tcsh + virtual/mpi[fortran] + infiniband? ( || ( + sys-cluster/openmpi[fortran,openmpi_fabrics_ofed] + sys-cluster/mvapich2[fortran] + ) ) + doc? ( + dev-texlive/texlive-latex + dev-tex/latex2html )" + +LONG_S="${WORKDIR}/Nwchem-${PV%_p*}.revision${PV#*_p}-src.${DATE}" +S="${WORKDIR}/${PN}-${PV%_p*}" + +pkg_setup() { + # fortran-2.eclass does not handle mpi wrappers + export FC="mpif90" + export F77="mpif77" + export CC="mpicc" + export CXX="mpic++" + + use openmp && FORTRAN_NEED_OPENMP=1 + + fortran-2_pkg_setup + + if use openmp; then + # based on _fortran-has-openmp() of fortran-2.eclass + local openmp="" + local fcode=ebuild-openmp-flags.f + local _fc=$(tc-getFC) + + pushd "${T}" + cat <<- EOF > "${fcode}" + 1 call omp_get_num_threads + 2 end + EOF + + for openmp in -fopenmp -xopenmp -openmp -mp -omp -qsmp=omp; do + "${_fc}" "${openmp}" "${fcode}" -o "${fcode}.x" && break + done + + rm -f "${fcode}.*" + popd + + export FC="${FC} ${openmp}" + export F77="${F77} ${openmp}" + export CC="${CC} ${openmp}" + export CXX="${CXX} ${openmp}" + fi + + use python && python-single-r1_pkg_setup +} + +src_unpack() { + unpack ${A} + mv "${LONG_S}" "${S}" +} + +src_prepare() { + for p in ${PATCH_LIST[@]} + do epatch "${WORKDIR}"/"${p}.patch" + done + epatch "${FILESDIR}"/nwchem-6.1.1-nwchemrc.patch + epatch "${FILESDIR}"/nwchem-6.5-icosahedron_zcoord.patch + epatch "${FILESDIR}"/nwchem-6.6-unique_tags.patch + use python && epatch "${FILESDIR}"/nwchem-6.5-python_makefile.patch + use doc && epatch "${FILESDIR}"/nwchem-6.3-r1-html_doc.patch + + sed \ + -e "s:DBASIS_LIBRARY=\"'\$(SRCDIR)'\":DBASIS_LIBRARY=\"'${EPREFIX}/usr/share/NWChem'\":g" \ + -i src/basis/MakeFile src/basis/GNUmakefile || die + sed \ + -e "s:DNWPW_LIBRARY=\"'\$(SRCDIR)'\":DNWPW_LIBRARY=\"'${EPREFIX}/usr/share/NWChem'\":g" \ + -i src/nwpw/libraryps/GNUmakefile || die + sed \ + -e "s:-DCOMPILATION_DIR=\"'\$(TOPDIR)'\":-DCOMPILATION_DIR=\"''\":g" \ + -i src/GNUmakefile src/MakeFile || die + + if [[ $(tc-getFC) == *-*-*-*-gfortran ]]; then + sed \ + -e "s:ifneq (\$(FC),gfortran):ifneq (\$(FC),$(tc-getFC)):g" \ + -e "s:ifeq (\$(FC),gfortran):ifeq (\$(FC),$(tc-getFC)):g" \ + -i src/config/makefile.h || die + fi +} + +src_compile() { + export NWCHEM_LONG_PATHS=Y + use openmp && export USE_OPENMP=1 + export USE_MPI=y + export USE_MPIF=y + export USE_MPIF4=y + export MPI_LOC="${EPREFIX}"/usr + export MPI_INCLUDE=$MPI_LOC/include + export MPI_LIB=$MPI_LOC/$(get_libdir) + export LIBMPI="$(mpif90 -showme:link)" + if use infiniband; then + export ARMCI_NETWORK=OPENIB + export MSG_COMMS=MPI + export IB_INCLUDE="-I${MPI_INCLUDE}" + export IB_LIB="-L${MPI_LIB}" + else + unset ARMCI_NETWORK + fi + if [ "$ARCH" = "amd64" ]; then + export NWCHEM_TARGET=LINUX64 + elif [ "$ARCH" = "ia64" ]; then + export NWCHEM_TARGET=LINUX64 + elif [ "$ARCH" = "x86" ]; then + export NWCHEM_TARGET=LINUX + elif [ "$ARCH" = "ppc" ]; then + export NWCHEM_TARGET=LINUX + else + die "Unknown architecture" + fi + if use python ; then + if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "ia64" ]; then + export USE_PYTHON64=yes + fi + export PYTHONHOME=/usr + export PYTHONVERSION=$(eselect python show --python2 |awk -Fpython '{ print $2 }') + export PYTHONPATH="./:${S}/contrib/python/" + export NWCHEM_MODULES="all python" + else + export NWCHEM_MODULES="all" + fi + use mrcc && export MRCC_METHODS="TRUE" # Multi Reference Coupled Clusters + export CCSDTQ="TRUE" # Coupled Clusters Singlets + Dublets + Triplets + Quadruplets + export CCSDTLR="TRUE" # CCSDT (and CCSDTQ?) Linear Response + export EACCSD="TRUE" # Electron Affinities at the CCSD level + export IPCCSD="TRUE" # Ionisation Potentials at the CCSD level + unset BLASOPT + local blaspkg="blas" + local lapackpkg="lapack" + if use int64; then + blaspkg="blas-int64" + lapackpkg="lapack-int64" + fi + use blas && export BLASOPT="$($(tc-getPKG_CONFIG) --libs ${blaspkg})" + use lapack && export BLASOPT+=" $($(tc-getPKG_CONFIG) --libs ${lapackpkg})" + use scalapack && export BLASOPT+=" $($(tc-getPKG_CONFIG) --libs scalapack)" + if use cuda; then + export TCE_CUDA=Y + export CUDA_PATH=/opt/cuda + export CUDA=${CUDA_PATH}/bin/nvcc + export CUDA_FLAGS="-arch=compute_20 -code=sm_20,compute_20" + export CUDA_INCLUDE="-I${CUDA_PATH}/include" + export CUDA_LIBS="-L${CUDA_PATH}/$(get_libdir) -lcublas -lcufft -lcudart -lcuda -lstdc++" + fi + export LARGE_FILES="TRUE" + + cd src + if use blas && [ "$NWCHEM_TARGET" = "LINUX64" ]; then + if use int64; then + export BLAS_SIZE=8 + export LAPACK_SIZE=8 + export SCALAPACK_SIZE=8 + else + emake \ + DIAG=PAR \ + FC="$(tc-getFC)" \ + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + NWCHEM_TOP="${S}" \ + clean + emake \ + DIAG=PAR \ + FC="$(tc-getFC)" \ + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + NWCHEM_TOP="${S}" \ + 64_to_32 + export BLAS_SIZE=4 + export LAPACK_SIZE=4 + export SCALAPACK_SIZE=4 + export USE_64TO32=y + fi + fi + emake \ + DIAG=PAR \ + FC="$(tc-getFC)" \ + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + NWCHEM_TOP="${S}" \ + NWCHEM_EXECUTABLE="${S}/bin/${NWCHEM_TARGET}/nwchem" \ + nwchem_config + emake \ + DIAG=PAR \ + FC="$(tc-getFC)" \ + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + NWCHEM_TOP="${S}" \ + NWCHEM_EXECUTABLE="${S}/bin/${NWCHEM_TARGET}/nwchem" + + if use doc; then + cd "${S}"/doc + export VARTEXFONTS="${T}/fonts" + emake \ + DIAG=PAR \ + NWCHEM_TOP="${S}" \ + pdf html + fi +} + +src_install() { + dobin bin/${NWCHEM_TARGET}/nwchem + + insinto /usr/share/NWChem/basis/ + doins -r src/basis/libraries src/data + insinto /usr/share/NWChem/nwpw + doins -r src/nwpw/libraryps + + insinto /etc + doins nwchemrc + + use examples && \ + insinto /usr/share/NWChem/ && \ + doins -r examples + + use nwchem-tests && \ + insinto /usr/share/NWChem && \ + doins -r QA/tests + + use doc && \ + insinto /usr/share/doc/"${P}" && \ + doins -r doc/nwahtml && \ + doins -r web + +} + +pkg_postinst() { + echo + elog "The user will need to link \$HOME/.nwchemrc to /etc/nwchemrc" + elog "or copy it in order to tell NWChem the right position of the" + elog "basis library and other necessary data." + echo +} |