commit:     ec853626b72f671a8a201bb5472680a9801b3f89
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 19 13:58:05 2022 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sat Feb 19 13:59:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec853626

sci-chemistry/molden: add version 6.9

Bug: https://bugs.gentoo.org/831519
Bug: https://bugs.gentoo.org/822510
Bug: https://bugs.gentoo.org/775626
Bug: https://bugs.gentoo.org/610968
Bug: https://bugs.gentoo.org/534712
Closes: https://bugs.gentoo.org/721290
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 sci-chemistry/molden/Manifest                      |  1 +
 .../molden/files/molden-6.9-ldflags.patch          | 87 ++++++++++++++++++++++
 sci-chemistry/molden/molden-6.9.ebuild             | 81 ++++++++++++++++++++
 3 files changed, 169 insertions(+)

diff --git a/sci-chemistry/molden/Manifest b/sci-chemistry/molden/Manifest
index 40b345e4497e..7a87ae783800 100644
--- a/sci-chemistry/molden/Manifest
+++ b/sci-chemistry/molden/Manifest
@@ -1 +1,2 @@
 DIST molden5.5.tar.gz 4934764 BLAKE2B 
6ce71f928ed9aacf8fe9830c4c36a675f81d63e97d08e96519ff74d172540ae0a9af25ca966d6c02cdcbbc43633a0ef80be9d31ef98a80d59a8e1a13374c2f51
 SHA512 
45269d2c7a52b3b2bf4fdb5f4ca3912637b3414ff9dfcd0d4f23815b3dcf7a53ffee717420d4fbf286b71c972539e756a440f5e37b7b7325ab312c25fc6c47b0
+DIST molden6.9.tar.gz 8536291 BLAKE2B 
f50fd9c6303d215f3b1ea73136a8ecada07102a33cfc5831c412341731d00bd166f59bc260615d4a96c59d50a6a308087f02b637f8a8d36bf19f256ac407ba72
 SHA512 
dbb4a602f2957d0b1d5afb8748fb8ad012a41fb0dfa816b78e4d2748ea78ee39251846a549fce4b276641d4838a336ecd9cf02b92fcf9739adeb25bb550656ec

diff --git a/sci-chemistry/molden/files/molden-6.9-ldflags.patch 
b/sci-chemistry/molden/files/molden-6.9-ldflags.patch
new file mode 100644
index 000000000000..9e8258aeacd7
--- /dev/null
+++ b/sci-chemistry/molden/files/molden-6.9-ldflags.patch
@@ -0,0 +1,87 @@
+diff --git a/makefile b/makefile
+index f71a20df..564f9f4e 100644
+--- a/makefile
++++ b/makefile
+@@ -299,11 +299,11 @@ src/xwin.o:      src/xwin.c src/rots.h
+ src/xwingl.o: src/xwin.c src/rots.h
+ 
+ molden:       $(OBJS) src/mpdum.o src/xwin.o 
+-      $(LDR) -o molden $(OBJS) src/mpdum.o src/xwin.o $(LIBS)
++      $(LDR) $(LDFLAGS) -o molden $(OBJS) src/mpdum.o src/xwin.o $(LIBS)
+       mv molden bin/molden
+ 
+ gmolden:      $(OBJS) src/mpdum.o src/xwingl.o 
+-      $(LDR) -fno-builtin -o gmolden $(OBJS) src/mpdum.o src/xwingl.o $(LIBSG)
++      $(LDR) $(LDFLAGS) -fno-builtin -o gmolden $(OBJS) src/mpdum.o 
src/xwingl.o $(LIBSG)
+       mv gmolden bin/gmolden
+ 
+ ambfor/ambfor:        src/ambfor/*.f src/ambfor/*.c
+@@ -322,14 +322,14 @@ surf/surf:       src/surf/*.h src/surf/*.c
+ # noxwin will not work as long as the old ocglbck calls arent in dummys
+ 
+ noxwin:       $(OBJS) $(DOBJ) src/mpdum.o
+-      $(LDR) -o molden $(OBJS) $(DOBJ) src/mpdum.o -lm
++      $(LDR) $(LDFLAGS) -o molden $(OBJS) $(DOBJ) src/mpdum.o -lm
+       mv molden bin/molden.noxwin
+ 
+ # This version allows the fitting of multipole moments to the electrostatic
+ # pontential
+ 
+ molden.mpfit: $(OBJS) src/mpolefit.o src/xwinmp.o
+-      $(LDR) -o molden $(OBJS) src/mpolefit.o src/xwinmp.o $(LIBS)
++      $(LDR) $(LDFLAGS) -o molden $(OBJS) src/mpolefit.o src/xwinmp.o $(LIBS)
+       mv molden bin/molden.mpfit
+ 
+ src/xwinmp.o: src/xwin.c
+@@ -340,18 +340,18 @@ src/xwingl.o:    src/xwin.c
+       $(CC) $(CFLAGS) -DDOGL -c src/xwin.c -o src/xwingl.o
+ 
+ unmullik:     src/unmullik.o
+-      $(LDR) -o bin/unmullik src/unmullik.o
++      $(LDR) $(LDFLAGS) -o bin/unmullik src/unmullik.o
+ 
+ # short_wrl removes redundant vertices from molden's VRML2 files
+ # with the courtesy of Andreas Klamt of COSMOSlogic
+ #
+ short_wrl:    src/short_wrl.o
+-      $(LDR) -o bin/short_wrl src/short_wrl.o
++      $(LDR) $(LDFLAGS) -o bin/short_wrl src/short_wrl.o
+ 
+ # conversion of CADPAC output to molden format
+ 
+ cad2mol:      src/cad2mol.o
+-      $(LDR) -o bin/cad2mol src/cad2mol.o
++      $(LDR) $(LDFLAGS) -o bin/cad2mol src/cad2mol.o
+ 
+ clean:
+       rm -f src/$(OBJS) src/mpdum.o src/xwin.o src/xwingl.o bin/molden 
bin/gmolden bin/ambfor bin/ambmd bin/surf src/ambfor/*.o src/surf/*.o
+diff --git a/src/ambfor/makefile b/src/ambfor/makefile
+index 9938527e..5de7c65e 100644
+--- a/src/ambfor/makefile
++++ b/src/ambfor/makefile
+@@ -50,10 +50,10 @@ mpi:       FFLAGS = -c -g -ffast-math -funroll-loops -O3
+ mpi:  ambfor.mpi ambmd.mpi
+ 
+ ambfor:       ambfor.o qvdw.o alloc.o optimise.o lbfgs.o $(OBJS)
+-      $(LDR) -o ambfor ambfor.o qvdw.o alloc.o optimise.o lbfgs.o $(OBJS) 
$(LIBS)
++      $(LDR) $(LDFLAGS) -o ambfor ambfor.o qvdw.o alloc.o optimise.o lbfgs.o 
$(OBJS) $(LIBS)
+ 
+ ambmd:        md.o verlet.o qvdw.o allocmd.o $(OBJS)
+-      $(LDR) -o ambmd md.o verlet.o qvdw.o allocmd.o $(OBJS) $(LIBS)
++      $(LDR) $(LDFLAGS) -o ambmd md.o verlet.o qvdw.o allocmd.o $(OBJS) 
$(LIBS)
+ 
+ ambfor.o:     ambfor.f
+       ${FC} -c -g -ffast-math -funroll-loops -o ambfor.o ambfor.f
+diff --git a/src/surf/Makefile b/src/surf/Makefile
+index 54b7af8e..f216c9eb 100644
+--- a/src/surf/Makefile
++++ b/src/surf/Makefile
+@@ -25,7 +25,7 @@ OBJS        = surf.o io.o compute.o dual.o utils.o lp.o 
chull.o tessel_cases.o \
+ 
+ # make objects
+ surf: $(OBJS) Makefile 
+-      $(CC) $(CFLAGS) $(OBJS) -o surf $(LINCLUDE)
++      $(CC) $(CFLAGS) $(OBJS) -o surf $(LINCLUDE) $(LDFLAGS)
+ 
+ lint:
+       lint $(INCLUDE) $(SRCS)

diff --git a/sci-chemistry/molden/molden-6.9.ebuild 
b/sci-chemistry/molden/molden-6.9.ebuild
new file mode 100644
index 000000000000..df6e76dbfe75
--- /dev/null
+++ b/sci-chemistry/molden/molden-6.9.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop fortran-2 flag-o-matic toolchain-funcs
+
+MY_P="${PN}${PV}"
+
+DESCRIPTION="Display molecular density from GAMESS-UK, GAMESS-US, GAUSSIAN and 
Mopac/Ampac"
+HOMEPAGE="https://www.theochem.ru.nl/molden/";
+SRC_URI="ftp://ftp.science.ru.nl/pub/Molden/${MY_P}.tar.gz";
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MOLDEN"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="opengl"
+
+RDEPEND="
+       x11-libs/libXmu
+       opengl? (
+               media-libs/freeglut
+               virtual/opengl
+               virtual/glu
+       )
+"
+DEPEND="${RDEPEND}
+       x11-misc/gccmakedep
+       app-editors/vim"
+       # vim provides ex, which the build system uses (surf/Makefile, at least)
+
+PATCHES=(
+       "${FILESDIR}/${P}-ldflags.patch"
+)
+
+src_prepare() {
+       default
+       sed \
+               -e 's:makedepend:gccmakedep:g' \
+               -i src/surf/Makefile || die
+       sed 's:shell g77:shell $(FC):g' -i makefile || die
+}
+
+src_compile() {
+       local args=()
+
+       # Use -mieee on alpha, according to the Makefile
+       use alpha && append-flags -mieee
+
+       # GCC 10 workaround
+       # bug #724556
+       append-fflags $(test-flags-FC -fallow-argument-mismatch)
+
+       args=(
+               CC="$(tc-getCC) ${CFLAGS}"
+               FC="$(tc-getFC)"
+               LDR="$(tc-getFC)"
+               FFLAGS="${FFLAGS}"
+       )
+
+       einfo "Building Molden..."
+       emake -j1 molden ambfor/ambfor ambfor/ambmd surf/surf "${args[@]}"
+       if use opengl ; then
+               einfo "Building Molden OpenGL helper..."
+               emake -j1 "${args[@]}" gmolden
+       fi
+}
+
+src_install() {
+       dobin bin/molden bin/ambfor bin/ambmd bin/surf
+       if use opengl; then
+               dobin bin/gmolden
+               doicon -s 64 haux/gmolden.png
+               make_desktop_entry gmolden MOLDEN gmolden
+       fi
+
+       dodoc HISTORY README REGISTER
+       cd doc || die
+       uncompress * && dodoc *
+}

Reply via email to