commit:     4d41973331898406b86f2a3f11da50b7a1812336
Author:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Sat Sep 26 15:43:58 2020 +0000
Commit:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Sat Sep 26 19:11:03 2020 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=4d419733

sys-cluster/modules: version bump + new maintainer

Closes: https://github.com/gentoo/sci/pull/952

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>

 sys-cluster/modules/files/createmodule.py          | 186 ---------------------
 sys-cluster/modules/files/createmodule.sh          | 166 ------------------
 .../modules/files/modules-3.2.10-avail.patch       |  12 --
 .../modules/files/modules-3.2.10-bindir.patch      |  11 --
 .../modules/files/modules-3.2.10-clear.patch       |  11 --
 .../modules/files/modules-3.2.10-defs.patch        |  20 ---
 .../modules/files/modules-3.2.10-errorline.patch   |  14 --
 .../modules/files/modules-3.2.10-versioning.patch  |  10 --
 .../modules/files/modules-3.2.9c-errorline.patch   |  14 --
 sys-cluster/modules/files/modules.sh.in            |   7 -
 sys-cluster/modules/metadata.xml                   |  23 +--
 sys-cluster/modules/modules-3.2.10-r2.ebuild       |  66 --------
 sys-cluster/modules/modules-3.2.9c-r1.ebuild       |  48 ------
 sys-cluster/modules/modules-4.6.0.ebuild           |  64 +++++++
 14 files changed, 77 insertions(+), 575 deletions(-)

diff --git a/sys-cluster/modules/files/createmodule.py 
b/sys-cluster/modules/files/createmodule.py
deleted file mode 100644
index 60c6ba7fa..000000000
--- a/sys-cluster/modules/files/createmodule.py
+++ /dev/null
@@ -1,186 +0,0 @@
-#!/usr/bin/python
-#
-# createmodule.py - Takes the name of a environment init script and 
-# produces a modulefile that duplicates the changes made by the init script
-#
-# Copyright (C) 2012 by Orion E. Poplawski <[email protected]>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from optparse import OptionParser
-import os,sys
-from subprocess import *
-
-# Handle options
-usage = "Usage: %prog [-p prefix] <initscript> [args]"
-parser = OptionParser()
-parser.set_usage(usage)
-parser.add_option('-p', '--prefix', dest='prefix', help='Specify path prefix')
-(options, args) = parser.parse_args()
-
-# Need a script name
-if not args:
-    parser.print_usage()
-    exit(1)
-
-# Return environment after a command
-def getenv(cmd = ':'):
-    env = {}
-    p = Popen(cmd + ";env", shell=True, stdout=PIPE, stderr=PIPE)
-    (stdout, stderr) = p.communicate()
-    if p.returncode != 0:
-        print "EROR: Could not execute initscript:"
-        print "%s returned exit code %d" % (cmd, p.returncode)
-        print stderr
-        exit(1)
-    if stderr != '':
-        print "WARNING: initscript sent the following to stderr:"
-        print stderr
-    # Parse the output key=value pairs
-    for line in stdout.splitlines():
-        try:
-            (var,value) = line.split('=',1)
-        except ValueError:
-            print "ERROR: Could not parse output:"
-            print stdout
-            exit(1)
-        env[var] = value
-    return env
-
-#Record initial environment
-env1=getenv()
-
-#Record environment after sourcing the initscript
-env2=getenv(". " + " ".join(args))
-
-# Initialize our variables for storing modifications
-chdir = None
-appendpath = {}
-prependpath = {}
-setenv = {}
-unsetenv = []
-pathnames = []
-
-# Function to nomalize all paths in a list of paths and remove duplicate items
-def normpaths(paths):
-    newpaths = []
-    for path in paths:
-        normpath = os.path.normpath(path)
-        if normpath not in newpaths:
-             newpaths.append(os.path.normpath(path))
-    return newpaths
-
-# Start with existing keys and look for changes
-for key in env1.keys():
-    # Test for delete
-    if key not in env2:
-        unsetenv.append(key)
-        continue
-    # No change
-    if env1[key] == env2[key]:
-        del env2[key]
-        continue
-    #Working directory change
-    if key == 'PWD':
-       chdir=os.path.normpath(env2[key])
-        pathnames.append(chdir)
-        del env2[key]
-        continue
-    # Determine modifcations to beginning and end of the string
-    (prepend,append) = env2[key].split(env1[key])
-    if prepend:
-        prependpaths = prepend.strip(':').split(':')
-        # LICENSE variables often include paths outside install directory
-        if 'LICENSE' not in key:
-            pathnames += prependpaths
-        prependpath[key] = ':'.join(normpaths(prependpaths))
-    if append:
-        appendpaths = append.strip(':').split(':')
-        # LICENSE variables often include paths outside install directory
-        if 'LICENSE' not in key:
-            pathnames += appendpaths
-        appendpath[key] = ':'.join(normpaths(appendpaths))
-    del env2[key]
-      
-# We're left with new keys in env2
-for key in env2.keys():
-    # Use prepend-path for new paths
-    if ('PATH' in key) or (':' in env2[key]):
-        prependpaths = env2[key].strip(':').split(':')
-        # MANPATH can have system defaults added it it wasn't previously set
-        # LICENSE variables often include paths outside install directory
-        if key != 'MANPATH' and 'LICENSE' not in key:
-            pathnames += prependpaths
-        prependpath[key] = ':'.join(normpaths(prependpaths))
-        continue
-    # Set new variables
-    setenv[key] = os.path.normpath(env2[key])
-    if 'LICENSE' not in key:
-        pathnames.append(setenv[key])
-
-# Determine a prefix
-prefix = None
-if options.prefix:
-    prefix = options.prefix
-else:
-    prefix = os.path.commonprefix(pathnames).rstrip('/')
-    if prefix == '':
-          prefix = None
-
-# Print out the modulefile
-print "#%Module 1.0"
-
-# Prefix
-if prefix is not None:
-    print "\nset prefix " + prefix + "\n"
-
-# Chdir
-if chdir is not None:
-    print "chdir\t" + chdir
-
-# Function to format output line with tabs and substituting prefix
-def formatline(item, key, value=None):
-    print item,
-    print "\t"*(2-(len(item)+1)/8),
-    print key,
-    if value is not None:
-        print "\t"*(3-(len(key)+1)/8),
-        if prefix is not None:
-            print value.replace(prefix,'$prefix')
-        else:
-            print value
-
-# Paths first, grouped by variable name
-pathkeys = appendpath.keys() + prependpath.keys()
-pathkeys.sort()
-for key in pathkeys:
-    if key in prependpath:
-        formatline("prepend-path",key,prependpath[key])
-    if key in appendpath:
-        formatline("append-path",key,appendpath[key])
-
-# Setenv
-setenvkeys = setenv.keys()
-setenvkeys.sort()
-if setenvkeys:
-    print
-for key in setenvkeys:
-    formatline("setenv",key,setenv[key])
-
-# Unsetenv
-unsetenv.sort()
-if unsetenv:
-    print
-for key in unsetenv:
-    formatline("unsetenv",key)

diff --git a/sys-cluster/modules/files/createmodule.sh 
b/sys-cluster/modules/files/createmodule.sh
deleted file mode 100644
index b44cf0512..000000000
--- a/sys-cluster/modules/files/createmodule.sh
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/bin/bash
-#
-# createmodule.sh - Takes the name of a environment init script and 
-# produces a modulefile that duplicates the changes made by the init script
-#
-# Copyright (C) 2010-2012 by Orion E. Poplawski <[email protected]>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-usage="Usage: $0 [-p prefix] <initscript> [args]"
-
-usage() {
-  echo $usage 1>&2
-  exit 1
-}
-
-while getopts "p:" opt
-do
-  case $opt in
-    p) prefix=$OPTARG; shift 2;;
-    *) usage;;
-  esac
-done
-
-# Need a script name
-[ -z "$1" ] && usage
-
-# Need to be a readable script
-if [ ! -r "$1" ]
-then
-  echo "ERROR: Cannot read $1" 1>&2
-  exit 1 
-fi
-
-#Will print out array assignment list
-printenvarray () {
-  env | while read x
-  do
-    key=${x%%=*}
-    value=${x#*=}
-    echo [$key]="'$value'"
-  done
-}
-
-#Apparently we need to declare the associative arrays
-declare -A env1 env2
-
-#Record starting environment
-eval env1=(`printenvarray`)
-
-#Source the environment script
-. "$@"
-
-#Record ending environment
-eval env2=(`printenvarray`)
-
-#Print out the modulefile
-echo "#%Module 1.0"
-
-#Prefix
-[ -n "$prefix" ] && echo -e "\nset prefix $prefix\n"
-
-#Subshell so we can sort the output
-(
-dedup() {
-  list=`mktemp`
-  echo $1 | sed -r -e 's,[^/]+/\.\./,,g' -e 's,[^/]+/\.\./,,g' -e 's/:/\n/g' |
-    while read x
-    do
-      grep -Fx ${x} $list && continue
-      if [ -n "$prefix" ]
-      then
-        echo $x | sed -e s,$prefix,\$prefix,
-      else
-        echo $x
-      fi
-      echo $x >> $list
-    done | tr '\n' : | sed -e 's/:$//'
-  rm $list
-} 
-    
-#Keys that changed
-for key in "${!env1[@]}"
-do
-  if [ "${env1[$key]}" != "${env2[$key]}" ]
-  then
-    #Working directory change
-    if [ "$key" = PWD ]
-    then
-      if [ -n "$prefix" ]
-      then
-        echo -e "chdir\t\t${env2[PWD]}" | sed -e s,$prefix,\$prefix,g
-      else
-        echo -e "chdir\t\t${env2[PWD]}"
-      fi
-    #Test for delete
-    elif [ -z "${env2[$key]}" ]
-    then
-      echo -e "unsetenv\t${key}\t${env2[$key]}"
-    #Test for prepend
-    elif [ "${env2[$key]%${env1[$key]}}" != "${env2[$key]}" ]
-    then
-      added=$(dedup ${env2[$key]%:${env1[$key]}})
-      echo -e "prepend-path\t$key\t${added}"
-    #Test for prepend plus : added at end (MANPATH)
-    elif [ "${env2[$key]%${env1[$key]}:}" != "${env2[$key]}" ]
-    then
-      added=$(dedup ${env2[$key]%${env1[$key]}:})
-      echo -e "prepend-path\t$key\t${added}"
-    #Test for append
-    elif [ "${env2[$key]#${env1[$key]}}" != "${env2[$key]}" ]
-    then
-      added=$(dedup ${env2[$key]#:${env1[$key]}})
-      echo -e "append-path\t$key\t${added}"
-    #Test for prepend plus append
-    elif [ "${env2[$key]%${env1[$key]}:*}" != "${env2[$key]}" ]
-    then
-      added=$(dedup ${env2[$key]%:${env1[$key]}*})
-      echo -e "prepend-path\t$key\t${added}"
-      added=$(dedup ${env2[$key]#*${env1[$key]}:})
-      echo -e "append-path\t$key\t${added}"
-    else
-      #Unhandled
-      echo "Unhandled change of $key" 1>&2
-      echo "Before <${env1[$key]}>" 1>&2
-      echo "After  <${env2[$key]}>" 1>&2
-    fi
-  fi
-  #Delete keys we've handled
-  unset env1[$key]
-  unset env2[$key]
-done
-
-#New keys
-for key in "${!env2[@]}"
-do
-  if [ "$key" = OLDPWD ]
-  then
-    continue
-  fi
-  #Use prepend-path for new paths
-  if [ "${key/PATH/}" != "$key" ]
-  then
-    # TODO - Need to handle stripping of default MANPATH
-    echo -e "prepend-path\t${key}\t"$(dedup ${env2[$key]})
-  else
-    if [ -n "$prefix" ]
-    then
-      echo -e "setenv\t\t${key}\t${env2[$key]}" | sed -e s,$prefix,\$prefix,g
-    else
-      echo -e "setenv\t\t${key}\t${env2[$key]}"
-    fi
-  fi
-done
-) | sort

diff --git a/sys-cluster/modules/files/modules-3.2.10-avail.patch 
b/sys-cluster/modules/files/modules-3.2.10-avail.patch
deleted file mode 100644
index 8d6f52b92..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-avail.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up modules-3.2.10/init/bash_completion.in.avail 
modules-3.2.10/init/bash_completion.in
---- modules-3.2.10/init/bash_completion.in.avail       2012-10-25 
13:33:34.000000000 -0600
-+++ modules-3.2.10/init/bash_completion.in     2013-01-15 12:05:37.247309733 
-0700
-@@ -56,7 +56,7 @@ _module() {
-       unuse)          COMPREPLY=( $(IFS=: compgen -W "${MODULEPATH}" -- 
"$cur") );;
-       use|*-a*)       ;;                      # let readline handle the 
completion
-       -u|--userlvl)   COMPREPLY=( $(compgen -W "novice expert advanced" -- 
"$cur") );;
--      display|help|show|whatis)
-+      av*|disp*|help|show|whatis)
-                       COMPREPLY=( $(compgen -W "$(_module_avail)" -- "$cur") 
);;
-       *) if test $COMP_CWORD -gt 2
-          then

diff --git a/sys-cluster/modules/files/modules-3.2.10-bindir.patch 
b/sys-cluster/modules/files/modules-3.2.10-bindir.patch
deleted file mode 100644
index 2066d7f13..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-bindir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- modules-3.2.10.orig/init/Makefile.in       2009-09-22 12:13:52.000000000 
-0600
-+++ modules-3.2.10/init/Makefile.in    2009-09-23 12:19:50.797470155 -0600
-@@ -404,7 +404,7 @@
-       sed -e "/@$(if $(subst 0,,$(WANTS_VERSIONING)),NOT,)VERSIONING\@/d; \
-       s,@$(if $(subst 0,,$(WANTS_VERSIONING)),,NOT)VERSIONING\@,,g; \
-       s,@prefix\@,${prefix},g; \
--      s,@bindir\@,${exec_prefix}/bin,g; \
-+      s,@bindir\@,${bindir},g; \
-       s,@VERSION\@,@VERSION@,g; \
-       s,@BASEPREFIX\@,@BASEPREFIX@,g;" < $< > $@
- 

diff --git a/sys-cluster/modules/files/modules-3.2.10-clear.patch 
b/sys-cluster/modules/files/modules-3.2.10-clear.patch
deleted file mode 100644
index 0817db5c2..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-clear.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- modules-3.2.9/utility.c    2011-11-28 22:27:13.000000000 +0100
-+++ modules-3.2.9-new/utility.c        2012-06-13 15:17:41.570629148 +0200
-@@ -727,7 +727,7 @@ int Output_Modulefile_Changes(     Tcl_Inter
-                       output_unset_variable( (char*) key);
-               } else {
-                       val = EMGetEnv(interp, key);
--                      if(val && *val)
-+                      if(val)
-                               output_set_variable(interp, (char*) key, val);
-                       null_free((void *)&val);
-               }

diff --git a/sys-cluster/modules/files/modules-3.2.10-defs.patch 
b/sys-cluster/modules/files/modules-3.2.10-defs.patch
deleted file mode 100644
index 412abebd7..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-defs.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- modules-3.2.10/modules_def.h.orig  2017-04-21 19:33:52.698720482 +0300
-+++ modules-3.2.10/modules_def.h       2017-04-21 19:35:19.506727343 +0300
-@@ -616,6 +616,9 @@
- /**  ModuleCmd_Purge.c  **/
- extern        int       ModuleCmd_Purge( Tcl_Interp*, int, char*[]);
- 
-+/**  ModuleCmd_Refresh.c **/
-+extern        int       ModuleCmd_Refresh( Tcl_Interp*,       int     argc, 
char*[]);
-+
- /**  ModuleCmd_Switch.c  **/
- extern        int       ModuleCmd_Switch( Tcl_Interp*, int, char*[]);
- 
-@@ -753,6 +756,7 @@
- extern        char     *EMGetEnv(Tcl_Interp *, char const *);
- extern        char     *EMSetEnv(Tcl_Interp *, char const *, char const *);
- extern        int       is_interactive(void);
-+extern        void     regex_quote(const char *, char *, int len);
- 
- #ifndef HAVE_STRDUP
- #  undef strdup

diff --git a/sys-cluster/modules/files/modules-3.2.10-errorline.patch 
b/sys-cluster/modules/files/modules-3.2.10-errorline.patch
deleted file mode 100644
index b2962f104..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-errorline.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ru modules-3.2.9-old/cmdModule.c modules-3.2.9/cmdModule.c
---- modules-3.2.9-old/cmdModule.c      2013-06-02 22:46:09.196302980 +0200
-+++ modules-3.2.9/cmdModule.c  2013-06-02 22:53:36.706298800 +0200
-@@ -640,8 +640,8 @@
-             case TCL_OK:      gotPartial = 0;
-                               continue;       /** while **/
-           
--            case TCL_ERROR:   interp->errorLine = ((linenum-1)-gotPartial) +
--                                  interp->errorLine;
-+              case TCL_ERROR: Tcl_SetErrorLine(interp, 
((linenum-1)-gotPartial) +
-+                                                                              
 Tcl_GetErrorLine(interp));
-                               /* FALLTHROUGH */
- 
-             case TCL_LEVEL0_RETURN:

diff --git a/sys-cluster/modules/files/modules-3.2.10-versioning.patch 
b/sys-cluster/modules/files/modules-3.2.10-versioning.patch
deleted file mode 100644
index 7bda92023..000000000
--- a/sys-cluster/modules/files/modules-3.2.10-versioning.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -up modules-3.2.10/modulefiles/modules.in.versioning 
modules-3.2.10/modulefiles/modules.in
---- modules-3.2.10/modulefiles/modules.in.versioning   2012-10-25 
13:33:34.000000000 -0600
-+++ modules-3.2.10/modulefiles/modules.in      2013-01-15 11:30:22.046031158 
-0700
-@@ -26,5 +26,5 @@ setenv               MODULESHOME     $prefix
- prepend-path    PATH                  @bindir@
- prepend-path    MANPATH               @mandir@
- 
--module                use             @VERSIONPATH@
-+@VERSIONING@module            use             @VERSIONPATH@
- 

diff --git a/sys-cluster/modules/files/modules-3.2.9c-errorline.patch 
b/sys-cluster/modules/files/modules-3.2.9c-errorline.patch
deleted file mode 100644
index b2962f104..000000000
--- a/sys-cluster/modules/files/modules-3.2.9c-errorline.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ru modules-3.2.9-old/cmdModule.c modules-3.2.9/cmdModule.c
---- modules-3.2.9-old/cmdModule.c      2013-06-02 22:46:09.196302980 +0200
-+++ modules-3.2.9/cmdModule.c  2013-06-02 22:53:36.706298800 +0200
-@@ -640,8 +640,8 @@
-             case TCL_OK:      gotPartial = 0;
-                               continue;       /** while **/
-           
--            case TCL_ERROR:   interp->errorLine = ((linenum-1)-gotPartial) +
--                                  interp->errorLine;
-+              case TCL_ERROR: Tcl_SetErrorLine(interp, 
((linenum-1)-gotPartial) +
-+                                                                              
 Tcl_GetErrorLine(interp));
-                               /* FALLTHROUGH */
- 
-             case TCL_LEVEL0_RETURN:

diff --git a/sys-cluster/modules/files/modules.sh.in 
b/sys-cluster/modules/files/modules.sh.in
deleted file mode 100644
index e3d6d43b2..000000000
--- a/sys-cluster/modules/files/modules.sh.in
+++ /dev/null
@@ -1,7 +0,0 @@
-shell=$(basename $(ps -p $$ -ocomm=))
-if [ -f @EPREFIX@/usr/share/Modules/init/${shell} ]
-then
-  . @EPREFIX@/usr/share/Modules/init/${shell}
-else
-  . @EPREFIX@/usr/share/Modules/init/sh
-fi

diff --git a/sys-cluster/modules/metadata.xml b/sys-cluster/modules/metadata.xml
index 60ab20673..a67a56343 100644
--- a/sys-cluster/modules/metadata.xml
+++ b/sys-cluster/modules/metadata.xml
@@ -2,21 +2,24 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
        <maintainer type="person">
-               <email>[email protected]</email>
-               <name>Nicolas Bock</name>
+               <email>[email protected]</email>
+               <name>Timo Rothenpieler</name>
        </maintainer>
        <maintainer type="project">
-               <email>[email protected]</email>
-               <name>Gentoo Cluster Project</name>
+               <email>[email protected]</email>
+               <name>Gentoo Science Project</name>
        </maintainer>
        <longdescription lang="en">
-The environment modules package provides for an easy dynamic
-modification of a user's environment via modulefiles. which
-typically instruct the module command to alter or set shell
-environment variables such as PATH, MANPATH, etc. as well as define
-aliases over a variety of shells.
-</longdescription>
+               The environment modules package provides for an easy dynamic
+               modification of a user's environment via modulefiles. which
+               typically instruct the module command to alter or set shell
+               environment variables such as PATH, MANPATH, etc. as well as 
define
+               aliases over a variety of shells.
+       </longdescription>
        <upstream>
                <remote-id type="sourceforge">modules</remote-id>
        </upstream>
+       <use>
+               <flag name="compat">Build Modules version 3 compat 
support</flag>
+       </use>
 </pkgmetadata>

diff --git a/sys-cluster/modules/modules-3.2.10-r2.ebuild 
b/sys-cluster/modules/modules-3.2.10-r2.ebuild
deleted file mode 100644
index 33ff8a591..000000000
--- a/sys-cluster/modules/modules-3.2.10-r2.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="Dynamic modification of a user's environment via modulefiles"
-HOMEPAGE="http://modules.sourceforge.net/";
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="test X"
-
-RDEPEND="
-       dev-lang/tcl:0=
-       dev-tcltk/tclx
-       X? ( x11-libs/libX11 )"
-DEPEND="${RDEPEND}
-       test? ( dev-util/dejagnu )"
-
-S="${WORKDIR}/${P%[a-z]}"
-
-PATCHES=(
-       "${FILESDIR}"/${P}-bindir.patch
-       "${FILESDIR}"/${P}-versioning.patch
-       "${FILESDIR}"/${P}-clear.patch
-       "${FILESDIR}"/${P}-avail.patch
-       "${FILESDIR}"/${P}-defs.patch
-)
-
-DOCS=(ChangeLog README NEWS TODO)
-
-src_prepare() {
-       has_version ">=dev-lang/tcl-8.6.0" &&
-               eapply "${FILESDIR}"/${P}-errorline.patch
-       default
-       sed -e "s:@EPREFIX@:${EPREFIX}:g" \
-               "${FILESDIR}"/modules.sh.in > modules.sh || die
-
-       eautoreconf
-}
-
-src_configure() {
-       local myconf=(
-               --disable-versioning
-               --prefix="${EPREFIX}/usr/share"
-               --exec-prefix="${EPREFIX}/usr/share/Modules"
-               --with-module-path="${EPREFIX}/etc/modulefiles"
-               --with-tcl="${EPREFIX}/usr/$(get_libdir)"
-               $(use_with X x)
-       )
-       econf ${myconf[@]}
-}
-
-src_install() {
-       default
-       insinto /etc/profile.d
-       doins modules.sh
-       exeinto /usr/share/Modules/bin
-       doexe "${FILESDIR}"/createmodule.{sh,py}
-       dosym ../../../usr/share/Modules/init/csh /etc/profile.d/modules.csh
-       dodir /etc/modulefiles
-}

diff --git a/sys-cluster/modules/modules-3.2.9c-r1.ebuild 
b/sys-cluster/modules/modules-3.2.9c-r1.ebuild
deleted file mode 100644
index 43f0ab91d..000000000
--- a/sys-cluster/modules/modules-3.2.9c-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools-utils
-
-DESCRIPTION="Dynamic modification of a user's environment via modulefiles"
-HOMEPAGE="http://modules.sourceforge.net/";
-SRC_URI="http://sourceforge.net/projects/modules/files/Modules/${P%[a-z]}/${P}.tar.bz2/download
 -> ${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="X"
-
-DEPEND="
-       dev-lang/tcl:0=
-       dev-tcltk/tclx
-       X? ( x11-libs/libX11 )
-       "
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${P%[a-z]}"
-
-DOCS=(ChangeLog README NEWS TODO)
-
-src_prepare() {
-       has_version ">=dev-lang/tcl-8.6.0" && epatch 
"${FILESDIR}/${P}-errorline.patch"
-}
-
-src_configure() {
-       local myeconfargs=(
-               $(use_with X x)
-               --prefix=/opt
-       )
-       autotools-utils_src_configure
-}
-
-src_install() {
-       autotools-utils_src_install
-       dosym ${PV%[a-z]} /opt/Modules/default
-}
-
-pkg_postinst() {
-       elog "Add this line at the end of your bashrc:"
-       elog "[ -f /opt/Modules/default/init/bash ] && source 
/opt/Modules/default/init/bash"
-}

diff --git a/sys-cluster/modules/modules-4.6.0.ebuild 
b/sys-cluster/modules/modules-4.6.0.ebuild
new file mode 100644
index 000000000..d4053b39c
--- /dev/null
+++ b/sys-cluster/modules/modules-4.6.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit autotools python-single-r1
+
+DESCRIPTION="Dynamic modification of a user's environment via modulefiles"
+HOMEPAGE="http://modules.sourceforge.net/";
+SRC_URI="https://github.com/cea-hpc/modules/releases/download/v${PV}/${P}.tar.bz2";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="compat test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+       ${PYTHON_DEPS}
+       dev-lang/tcl:0=
+       dev-tcltk/tclx
+       compat? ( x11-libs/libX11 )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       test? ( dev-util/dejagnu )
+"
+
+src_prepare() {
+       default
+
+       cd "${S}/lib" || die
+       eautoreconf
+
+       if use compat; then
+               cd "${S}/compat" || die
+               eautoreconf
+       fi
+}
+
+src_configure() {
+       local myconf=(
+               --disable-versioning
+               --prefix="${EPREFIX}/usr/share/Modules"
+               --mandir="${EPREFIX}/usr/share/man"
+               --docdir="${EPREFIX}/usr/share/doc/${P}"
+               --libdir="${EPREFIX}/usr/share/Modules/$(get_libdir)"
+               --datarootdir="${EPREFIX}/usr/share"
+               --modulefilesdir="${EPREFIX}/etc/modulefiles"
+               --with-tcl="${EPREFIX}/usr/$(get_libdir)"
+               --with-python="${PYTHON}"
+               $(use_enable compat compat-version)
+       )
+       ./configure "${myconf[@]}" ${EXTRA_ECONF[@]} || die "configure failed"
+}
+
+src_install() {
+       default
+       dosym ../../usr/share/Modules/init/profile.sh /etc/profile.d/modules.sh
+       dosym ../../usr/share/Modules/init/profile.csh 
/etc/profile.d/modules.csh
+       dodir /etc/modulefiles
+}

Reply via email to