diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
commit | 2018227e9344edb9da15fc6a4a8298086cc2aa77 (patch) | |
tree | c18e1c09e605e94e2a1e93345ad25746cc9e14b9 /sci-chemistry/vmd | |
parent | 6f8038813c460b4f0572d5ef595cdfa94af3a94d (diff) |
gentoo resync : 02.06.2019
Diffstat (limited to 'sci-chemistry/vmd')
-rw-r--r-- | sci-chemistry/vmd/Manifest | 4 | ||||
-rw-r--r-- | sci-chemistry/vmd/files/vmd-1.9.1-cuda-device_ptr.patch | 8 | ||||
-rw-r--r-- | sci-chemistry/vmd/files/vmd-1.9.3-configure-libtachyon.patch | 13 | ||||
-rw-r--r-- | sci-chemistry/vmd/vmd-1.9.3-r1.ebuild | 262 |
4 files changed, 282 insertions, 5 deletions
diff --git a/sci-chemistry/vmd/Manifest b/sci-chemistry/vmd/Manifest index 72040c83b5ce..e170171ba4f4 100644 --- a/sci-chemistry/vmd/Manifest +++ b/sci-chemistry/vmd/Manifest @@ -1,9 +1,11 @@ -AUX vmd-1.9.1-cuda-device_ptr.patch 934 BLAKE2B c0a6f938df4f9ac8d85bc147d83904deb5c3e93d7912a11a75e31a91029d7319228b0cffc09b9e154957e9d8d148089628de262e8d30d7acab5637951d5d25b0 SHA512 274756fe17fdcc39ce471c3187f3076407d34b64e49b0006ee30525a952277b2b5c713fffa8786162dc542eef2b021f2bf7339736cf9e81b673d5146114829ed +AUX vmd-1.9.1-cuda-device_ptr.patch 894 BLAKE2B 96aeab7c2b9d29e5cd3558e69d1365d6b7dc2d78284bb1185d63a57300a83a4c7c0b8f1c1718027ff33333d34bba116d6898fbee74ab23dfd1a77c560160d659 SHA512 9a561773562873dad077f0f2903299952cb935c69ae4bd1463a5f79d6f27ae3845ac5a24ee295ff3569d9c65ae00a9fe3974f4ead003109246f97d130c2c48bf AUX vmd-1.9.2-format-security.patch 550 BLAKE2B d50d05d8697c345f5888b1344c827be1282c5b2e06cfddac022d562688550a728a91a943f9b31c4247f683dcd062ab8fe8ed360aa97a202f20af0467a3148cd3 SHA512 81a71ee4c4c438d18f3a393ebad5c9a08f1a7bb95fa58b78a8798955a34ae2494f80fa074b973a1b595862080e9103d21e509443742cfe2bc3cf77f10c0e3c9d +AUX vmd-1.9.3-configure-libtachyon.patch 613 BLAKE2B 5717e941102c4d759d6985087f74724df21312a61313d397da1bbac1969b76590117c70bc3b7fac6c7a84483df433d03613b245a05db8bb10bf7b8807369f415 SHA512 1eafa38022588e9b9bba3a15394a432f66693e64ba62c27e7aebf759d279cb04326f76bcc6545ef34cbcbd7446aead1a05a18072e99aa7df0940f11173ab3c00 DIST vmd-1.9.2-gentoo-patches.tar.xz 14896 BLAKE2B eb7c7fb982602f37bd8374bf8458a0a2ea2202161248caffd0d4e0f8124d627755304bb778976e1cf5598b6bfbbe5d8c8e6016c9ec562204d6782aaaf179b185 SHA512 0516b9e57b256ce822a64df420ebf3ab7391722757caeaa7e615526242043e9375fee8f4ee86fb4eb8de7a50d5cfc8f8d973ace5fa082e6f9010eb692cd6ee51 DIST vmd-1.9.2.src.tar.gz 34903084 BLAKE2B f7f7048ef7bb72a8b0dcae955c7f90691085158c38a59229d5b929a4b52d3148bdb2f40084cf8c4544f01cb8bcb57de1d98a90bd17568a07c4ebb8f6985cec9b SHA512 b232b743d4ea97dcf76e3005e1c8716d7138602edc078c4846026ab67759c8559af956182cb1acf3c85890db10b6f658ac9c269d432f2595612cf376d6d505ef DIST vmd-1.9.3-gentoo-patches.tar.xz 14804 BLAKE2B 64e5df40ed88c23c924d32636495f0383590f91dbb714e64c73551072bb50d72b4e5f188fb2da58d32e84b4bc96ff0297d7ff1bf02b0481198901c4e12e4ee59 SHA512 5d506d4df5ca4a3edb33d77aeeb440fcb4750a250c77103b99f385f356eb9d71d954173b981d3a50f7a714cfc872587e5040868904e50fa1f6fd69d7e4d9f1b1 DIST vmd-1.9.3.src.tar 129566720 BLAKE2B 848f3280d51765dcd18722dd233e0cdee3b7c0ac3dd48324260ebe1604ba781ca0a1fe4cae6652501d23d5d41712020e17dbb6bc21a1856eb3289a4aab6b774b SHA512 0502df1e8b60c570ca88b779b4153acfaa599a78df53fa96fca36301bab902864118332b5524ae7d170d3a9e429cf1e13d69e1197268b5e841afc0bb56a737ba EBUILD vmd-1.9.2.ebuild 7155 BLAKE2B 734137c1a02d76da109d35faf11f29138a8e48dda6d84b7151f93f2095481127f136a5f8954a80912c85ae7031a01c3374783a042bf5461fd9d1049b577a082b SHA512 3f9fc1f4cc8f6f5031de74a8211db2a9e11d07de110689832d408c343a307ba25efa354f5862d4e6d8d06d3d18b567820401fc9fcdc8818f65a33ea24a3c657b +EBUILD vmd-1.9.3-r1.ebuild 7512 BLAKE2B cfd3259efcf3457e520f8f9ebf809373a99b6d6d5d3ab36192bf7ddd694835d7dd5c113957591d9041b583e58ac419f6cb8649f24ded0e62c89cabf056d45020 SHA512 cb0fc6cbc37c39351d51a3535569adaa69f4aee81942c0eeb83fbd7f1ca5aa3005bc8c87a74002869cc4fd81fb917601ae1bfd0a3dfd474fcf345f696cfd7d21 EBUILD vmd-1.9.3.ebuild 7110 BLAKE2B d8ad6f495aaacdc4727e2c0e5d950a9670478aba7b55e62ed7074f06ad26151468f0f55a0786ce9dba80a181e7c36e912eaeaaa9ad7ae660739c65f482337c97 SHA512 c0eba398b6a815a59c9d8708dc796273ad3211ddc8e02aee8333f00f42f095c4d8999aaa246665ceb9282d2053c0631dc3c8ed7b60981d88ff9f8a2badf6b89a MISC metadata.xml 778 BLAKE2B 6c4202950f57a4d7a3004e966c761325a0a31ab19fe06a6bd69882bd685e41424953104ff653c03d6cbbcb60bb9aba45fbcec43cd228c4bb57fcb1c63a2bd881 SHA512 b967b71fb9f1b47a9d3b69e6958dfb0314a9f071dade7ed1876e91dfa73188748faf11ef832d240a71745b36a30422bde79de2e9ff8e5ec6b6da4b11b40d19c9 diff --git a/sci-chemistry/vmd/files/vmd-1.9.1-cuda-device_ptr.patch b/sci-chemistry/vmd/files/vmd-1.9.1-cuda-device_ptr.patch index ce842448decf..67eb11bbd36b 100644 --- a/sci-chemistry/vmd/files/vmd-1.9.1-cuda-device_ptr.patch +++ b/sci-chemistry/vmd/files/vmd-1.9.1-cuda-device_ptr.patch @@ -4,8 +4,8 @@ diff --git a/vmd-1.9.1/src/CUDAMarchingCubes.cu b/vmd-1.9.1/src/CUDAMarchingCubes.cu index 5bfe7bf..36faaf0 100755 ---- a/vmd-1.9.1/src/CUDAMarchingCubes.cu -+++ b/vmd-1.9.1/src/CUDAMarchingCubes.cu +--- a/src/CUDAMarchingCubes.cu ++++ b/src/CUDAMarchingCubes.cu @@ -45,6 +45,7 @@ #include "CUDAMarchingCubes.h" #include <thrust/scan.h> @@ -16,8 +16,8 @@ index 5bfe7bf..36faaf0 100755 // (limited by shared memory size) diff --git a/vmd-1.9.1/src/CUDAQuickSurf.cu b/vmd-1.9.1/src/CUDAQuickSurf.cu index a21ebde..56a42c8 100755 ---- a/vmd-1.9.1/src/CUDAQuickSurf.cu -+++ b/vmd-1.9.1/src/CUDAQuickSurf.cu +--- a/src/CUDAQuickSurf.cu ++++ b/src/CUDAQuickSurf.cu @@ -22,6 +22,7 @@ #include <stdlib.h> #include <string.h> diff --git a/sci-chemistry/vmd/files/vmd-1.9.3-configure-libtachyon.patch b/sci-chemistry/vmd/files/vmd-1.9.3-configure-libtachyon.patch new file mode 100644 index 000000000000..b71cd97210a8 --- /dev/null +++ b/sci-chemistry/vmd/files/vmd-1.9.3-configure-libtachyon.patch @@ -0,0 +1,13 @@ +--- a/configure.old 2019-05-16 17:26:05.347560700 +0200 ++++ b/configure 2019-05-16 17:30:25.478455770 +0200 +@@ -1105,8 +1105,8 @@ + # This may be commented out if not required. + $libtachyon_defines = "-DVMDLIBTACHYON"; + $libtachyon_dir = "$vmd_library_dir/tachyon"; +-$libtachyon_include = "-I$libtachyon_dir/include"; +-$libtachyon_library = "-L$libtachyon_dir/lib_$config_arch"; ++$libtachyon_include = "-Igentoo-libtachyon-include"; ++$libtachyon_library = "-Lgentoo-libtachyon-libs"; + $libtachyon_libs = "-ltachyon"; + @libtachyon_cc = (); + @libtachyon_cu = (); diff --git a/sci-chemistry/vmd/vmd-1.9.3-r1.ebuild b/sci-chemistry/vmd/vmd-1.9.3-r1.ebuild new file mode 100644 index 000000000000..3f24f85d6273 --- /dev/null +++ b/sci-chemistry/vmd/vmd-1.9.3-r1.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python2_7 ) + +inherit cuda desktop flag-o-matic prefix python-single-r1 toolchain-funcs + +DESCRIPTION="Visual Molecular Dynamics" +HOMEPAGE="http://www.ks.uiuc.edu/Research/vmd/" +SRC_URI=" + https://dev.gentoo.org/~jlec/distfiles/${P}-gentoo-patches.tar.xz + ${P}.src.tar +" + +SLOT="0" +LICENSE="vmd" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="cuda gromacs msms povray sqlite tachyon xinerama" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RESTRICT="fetch" + +# currently, tk-8.5* with USE=truetype breaks some +# tk apps such as Sequence Viewer or Timeline. +CDEPEND=" + >=dev-lang/tk-8.6.1:0= + dev-lang/perl + dev-libs/expat + dev-python/numpy[${PYTHON_USEDEP}] + sci-libs/netcdf:0= + virtual/opengl + >=x11-libs/fltk-1.1.10-r2:1 + x11-libs/libXft + x11-libs/libXi + ${PYTHON_DEPS} + cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1:= ) + gromacs? ( >=sci-chemistry/gromacs-5.0.4-r1:0=[tng] ) + sqlite? ( dev-db/sqlite:3= ) + tachyon? ( >=media-gfx/tachyon-0.99_beta6 ) + xinerama? ( x11-libs/libXinerama ) +" +DEPEND="${CDEPEND}" +BDEPEND=" + virtual/pkgconfig + dev-lang/swig +" +RDEPEND="${CDEPEND} + sci-biology/stride + sci-chemistry/surf + x11-terms/xterm + msms? ( sci-chemistry/msms-bin ) + povray? ( media-gfx/povray ) +" + +VMD_DOWNLOAD="http://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=VMD" +# Binary only plugin!! +QA_PREBUILT="usr/lib*/vmd/plugins/LINUX/tcl/intersurf1.1/bin/intersurf.so" +QA_FLAGS_IGNORED_amd64=" usr/lib64/vmd/plugins/LINUX/tcl/volutil1.3/volutil" +QA_FLAGS_IGNORED_x86=" usr/lib/vmd/plugins/LINUX/tcl/volutil1.3/volutil" + +pkg_nofetch() { + elog "Please download ${P}.src.tar from" + elog "${VMD_DOWNLOAD}" + elog "after agreeing to the license and get" + elog "https://dev.gentoo.org/~jlec/distfiles/${P}-gentoo-patches.tar.xz" + elog "Place both into your DISTDIR directory" + elog + elog "Due to an upstream bug (https://bugs.gentoo.org/640440) sources" + elog "file may get downloaded as a compressed tarball or not. In that case" + elog "you will need to ensure you uncompress the file and rename it" + elog "as ${P}.src.tar" +} + +src_prepare() { + default + + use cuda && cuda_sanitize + + eapply "${FILESDIR}"/${PN}-1.9.1-cuda-device_ptr.patch + + cd "${WORKDIR}"/plugins || die + + eapply -p2 "${WORKDIR}"/${P}-gentoo-plugins.patch + + [[ ${SILENT} == yes ]] || sed '/^.SILENT/d' -i $(find -name Makefile) + + sed \ + -e "s:CC = gcc:CC = $(tc-getCC):" \ + -e "s:CXX = g++:CXX = $(tc-getCXX):" \ + -e "s:COPTO =.*\":COPTO = -fPIC -o \":" \ + -e "s:LOPTO = .*\":LOPTO = ${LDFLAGS} -fPIC -o \":" \ + -e "s:CCFLAGS =.*\":CCFLAGS = ${CFLAGS}\":" \ + -e "s:CXXFLAGS =.*\":CXXFLAGS = ${CXXFLAGS}\":" \ + -e "s:SHLD = gcc:SHLD = $(tc-getCC) -shared:" \ + -e "s:SHXXLD = g++:SHXXLD = $(tc-getCXX) -shared:" \ + -e "s:-ltcl8.5:-ltcl:" \ + -i Make-arch || die "Failed to set up plugins Makefile" + + sed \ + -e '/^AR /s:=:?=:g' \ + -e '/^RANLIB /s:=:?=:g' \ + -i ../plugins/*/Makefile || die + + tc-export AR RANLIB + + sed \ + -e "s:\$(CXXFLAGS)::g" \ + -i hesstrans/Makefile || die + + # prepare vmd itself + cd "${S}" || die + + eapply -p2 "${WORKDIR}"/${P}-gentoo-base.patch + eapply "${FILESDIR}"/${P}-configure-libtachyon.patch + + # PREFIX + sed \ + -e "s:/usr/include/:${EPREFIX}/usr/include:g" \ + -i configure || die + + sed \ + -e "s:gentoo-bindir:${ED}/usr/bin:g" \ + -e "s:gentoo-libdir:${ED}/usr/$(get_libdir):g" \ + -e "s:gentoo-opengl-include:${EPREFIX}/usr/include/GL:g" \ + -e "s:gentoo-opengl-libs:${EPREFIX}/usr/$(get_libdir):g" \ + -e "s:gentoo-gcc:$(tc-getCC):g" \ + -e "s:gentoo-g++:$(tc-getCXX):g" \ + -e "s:gentoo-nvcc:${EPREFIX}/opt/cuda/bin/nvcc:g" \ + -e "s:gentoo-cflags:${CFLAGS}:g" \ + -e "s:gentoo-cxxflags:${CXXFLAGS}:g" \ + -e "s:gentoo-nvflags::g" \ + -e "s:gentoo-ldflags:${LDFLAGS}:g" \ + -e "s:gentoo-plugindir:${WORKDIR}/plugins:g" \ + -e "s:gentoo-fltk-include:$(fltk-config --includedir):g" \ + -e "s:gentoo-fltk-libs:$(dirname $(fltk-config --libs)) -Wl,-rpath,$(dirname $(fltk-config --libs)):g" \ + -e "s:gentoo-libtachyon-include:${EPREFIX}/usr/include/tachyon:g" \ + -e "s:gentoo-libtachyon-libs:${EPREFIX}/usr/$(get_libdir):g" \ + -e "s:gentoo-netcdf-include:${EPREFIX}/usr/include:g" \ + -e "s:gentoo-netcdf-libs:${EPREFIX}/usr/$(get_libdir):g" \ + -i configure || die + + if use cuda; then + sed \ + -e "s:gentoo-cuda-lib:${EPREFIX}/opt/cuda/$(get_libdir):g" \ + -e "/NVCCFLAGS/s:=:= ${NVCCFLAGS}:g" \ + -i configure src/Makefile || die + sed \ + -e '/compute_/d' \ + -i configure || die + sed \ + -e 's:-gencode .*code=sm_..::' \ + -i src/Makefile || die + fi + + sed \ + -e "s:LINUXPPC:LINUX:g" \ + -e "s:LINUXALPHA:LINUX:g" \ + -e "s:LINUXAMD64:LINUX:g" \ + -e "s:gentoo-stride:${EPREFIX}/usr/bin/stride:g" \ + -e "s:gentoo-surf:${EPREFIX}/usr/bin/surf:g" \ + -e "s:gentoo-tachyon:${EPREFIX}/usr/bin/tachyon:g" \ + -i "${S}"/bin/vmd.sh || die "failed setting up vmd wrapper script" + + EMAKEOPTS=( + TCLINC="-I${EPREFIX}/usr/include" + TCLLIB="-L${EPREFIX}/usr/$(get_libdir)" + TCLLDFLAGS="-shared" + NETCDFLIB="$($(tc-getPKG_CONFIG) --libs-only-L netcdf)${EPREFIX}/usr/$(get_libdir)/libnetcdf.so" + NETCDFINC="$($(tc-getPKG_CONFIG) --cflags-only-I netcdf)${EPREFIX}/usr/include" + NETCDFLDFLAGS="$($(tc-getPKG_CONFIG) --libs netcdf)" + NETCDFDYNAMIC=1 + EXPATINC="-I${EPREFIX}/usr/include" + EXPATLIB="$($(tc-getPKG_CONFIG) --libs expat)" + EXPATLDFLAGS="-shared" + EXPATDYNAMIC=1 + ) + if use gromacs; then + EMAKEOPTS+=( + TNGLIB="$($(tc-getPKG_CONFIG) --libs libgromacs)" + TNGINC="-I${EPREFIX}/usr/include" + TNGLDFLAGS="-shared" + TNGDYNAMIC=1 + ) + fi + if use sqlite; then + EMAKEOPTS+=( + SQLITELIB="$($(tc-getPKG_CONFIG) --libs sqlite3)" + SQLITEINC="-I${EPREFIX}/usr/include" + SQLITELDFLAGS="-shared" + SQLITEDYNAMIC=1 + ) + fi +} + +src_configure() { + local myconf="OPENGL OPENGLPBUFFER COLVARS FLTK TK TCL PTHREADS PYTHON IMD NETCDF NUMPY NOSILENT XINPUT" + rm -f configure.options && echo $myconf >> configure.options + + use cuda && myconf+=" CUDA" +# use mpi && myconf+=" MPI" + use tachyon && myconf+=" LIBTACHYON" + use xinerama && myconf+=" XINERAMA" + + export \ + PYTHON_INCLUDE_DIR="$(python_get_includedir)" \ + PYTHON_LIBRARY_DIR="$(python_get_library_path)" \ + PYTHON_LIBRARY="$(python_get_LIBS)" \ + NUMPY_INCLUDE_DIR="$(python_get_sitedir)/numpy/core/include" \ + NUMPY_LIBRARY_DIR="$(python_get_sitedir)/numpy/core/include" + + perl ./configure LINUX \ + ${myconf} || die +} + +src_compile() { + # build plugins + cd "${WORKDIR}"/plugins || die + + emake \ + ${EMAKEOPTS[@]} \ + LINUX + + # build vmd + cd "${S}"/src || die + emake +} + +src_install() { + # install plugins + cd "${WORKDIR}"/plugins || die + emake \ + PLUGINDIR="${ED}/usr/$(get_libdir)/${PN}/plugins" \ + distrib + + # install vmd + cd "${S}"/src || die + emake install + + # install docs + cd "${S}" || die + dodoc Announcement README doc/ig.pdf doc/ug.pdf + + # remove some of the things we don't want and need in + # /usr/lib + cd "${ED}"/usr/$(get_libdir)/vmd || die + rm -fr doc README Announcement LICENSE || \ + die "failed to clean up /usr/lib/vmd directory" + + # adjust path in vmd wrapper + sed \ + -e "s:${ED}::" -i "${ED}"/usr/bin/${PN} \ + -e "/^defaultvmddir/s:^.*$:defaultvmddir=\"${EPREFIX}/usr/$(get_libdir)/${PN}\":g" \ + || die "failed to set up vmd wrapper script" + + # install icon and generate desktop entry + insinto /usr/share/pixmaps + doins "${WORKDIR}"/vmd.png + eprefixify "${WORKDIR}"/vmd.desktop + sed -i '/^Path/d' "${WORKDIR}"/vmd.desktop || die + domenu "${WORKDIR}"/vmd.desktop +} |