1a066f
Name:           environment-modules
1a066f
Version:        3.2.10
5352b7
Release:        10%{?dist}
1a066f
Summary:        Provides dynamic modification of a user's environment
1a066f
1a066f
Group:          System Environment/Base
1a066f
License:        GPLv2+
1a066f
URL:            http://modules.sourceforge.net/
1a066f
Source0:        http://downloads.sourceforge.net/modules/modules-%{version}.tar.bz2
1a066f
Source1:        modules.sh
1a066f
Source2:        createmodule.sh
1a066f
Source3:        createmodule.py
1a066f
Patch0:         environment-modules-3.2.7-bindir.patch
1a066f
# Comment out stray module use in modules file when not using versioning
1a066f
# https://bugzilla.redhat.com/show_bug.cgi?id=895555
1a066f
Patch1:         environment-modules-versioning.patch
1a066f
# Fix module clear command
1a066f
# https://bugzilla.redhat.com/show_bug.cgi?id=895551
1a066f
Patch2:         environment-modules-clear.patch
1a066f
# Patch from modules list to add completion to avail command
1a066f
Patch3:         environment-modules-avail.patch
1a066f
Patch4:         environment-modules-3.2.9-call-test-by-full-path-in-csh.patch
5352b7
Patch5:         environment-modules-3.2.10-ignore-nested-dirs.patch
5352b7
Patch6:         environment-modules-3.2.10-unload-from-module.patch
1a066f
1a066f
BuildRequires:  tcl-devel, tclx-devel, libX11-devel
1a066f
BuildRequires:  dejagnu
1a066f
BuildRequires:  man
1a066f
#For ps in startup script
1a066f
Requires:       procps
1a066f
1a066f
%description
1a066f
The Environment Modules package provides for the dynamic modification of
1a066f
a user's environment via modulefiles.
1a066f
1a066f
Each modulefile contains the information needed to configure the shell
1a066f
for an application. Once the Modules package is initialized, the
1a066f
environment can be modified on a per-module basis using the module
1a066f
command which interprets modulefiles. Typically modulefiles instruct
1a066f
the module command to alter or set shell environment variables such as
1a066f
PATH, MANPATH, etc. modulefiles may be shared by many users on a system
1a066f
and users may have their own collection to supplement or replace the
1a066f
shared modulefiles.
1a066f
1a066f
Modules can be loaded and unloaded dynamically and atomically, in an
1a066f
clean fashion. All popular shells are supported, including bash, ksh,
1a066f
zsh, sh, csh, tcsh, as well as some scripting languages such as perl.
1a066f
1a066f
Modules are useful in managing different versions of applications.
1a066f
Modules can also be bundled into metamodules that will load an entire
1a066f
suite of different applications.
1a066f
1a066f
NOTE: You will need to get a new shell after installing this package to
1a066f
have access to the module alias.
1a066f
1a066f
1a066f
%prep
1a066f
%setup -q -n modules-%{version}
1a066f
%patch0 -p1 -b .bindir
1a066f
%patch1 -p1 -b .versioning
1a066f
%patch2 -p1 -b .clear
1a066f
%patch3 -p1 -b .avail
1a066f
%patch4 -p1 -b .call-test-by-full-path-in-csh
5352b7
%patch5 -p1 -b .ignore-nested-dirs
5352b7
%patch6 -p1 -b .unload-from-module
1a066f
1a066f
1a066f
%build
1a066f
%configure --disable-versioning \
1a066f
           --prefix=%{_datadir} \
1a066f
           --exec-prefix=%{_datadir}/Modules \
1a066f
           --with-man-path=$(manpath) \
1a066f
           --with-module-path=%{_sysconfdir}/modulefiles
1a066f
#           --with-debug=42 --with-log-facility-debug=stderr
1a066f
make %{?_smp_mflags}
1a066f
1a066f
1a066f
%install
1a066f
make install DESTDIR=$RPM_BUILD_ROOT
1a066f
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
1a066f
cp -p %SOURCE1 $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/modules.sh
1a066f
cp -p %SOURCE2 %SOURCE3 $RPM_BUILD_ROOT%{_datadir}/Modules/bin
1a066f
ln -s %{_datadir}/Modules/init/csh $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/modules.csh
1a066f
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/modulefiles
1a066f
1a066f
1a066f
%check
1a066f
make test
1a066f
1a066f
1a066f
%files
1a066f
%doc LICENSE.GPL README TODO
1a066f
%{_sysconfdir}/modulefiles
1a066f
%config(noreplace) %{_sysconfdir}/profile.d/*
1a066f
%{_bindir}/modulecmd
1a066f
%dir %{_datadir}/Modules
1a066f
%{_datadir}/Modules/bin/
1a066f
%dir %{_datadir}/Modules/init
1a066f
%config(noreplace) %{_datadir}/Modules/init/*
1a066f
%config(noreplace) %{_datadir}/Modules/init/.modulespath
1a066f
%{_datadir}/Modules/modulefiles
1a066f
%{_mandir}/man1/module.1.gz
1a066f
%{_mandir}/man4/modulefile.4.gz
1a066f
1a066f
1a066f
%changelog
5352b7
* Mon Jun 22 2015 Jan Synáček <jsynacek@redhat.com> - 3.2.10-10
5352b7
- fix: createmodule scripts incorrectly handles env vars prefixed/suffixed without colon (#1233223)
5352b7
5352b7
* Wed Apr 29 2015 Jan Synáček <jsynacek@redhat.com> - 3.2.10-9
5352b7
- fix: SourceVers wrongly sets version in nested directory (#1180652)
5352b7
- fix: unload from loaded modulefile broken (#1117327)
5352b7
f37db1
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 3.2.10-8
f37db1
- Mass rebuild 2014-01-24
f37db1
f37db1
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.2.10-7
f37db1
- Mass rebuild 2013-12-27
f37db1
1a066f
* Thu Aug  8 2013 Jan Synáček <jsynacek@redhat.com> - 3.2.10-6
1a066f
- Call test command in csh alias by its full path (bug #977331)
1a066f
1a066f
* Tue May 14 2013 Orion Poplawski <orion@cora.nwra.com> - 3.2.10-5
1a066f
- Really do not replace modified profile.d scripts (bug #962762)
1a066f
- Specfile cleanup
1a066f
1a066f
* Wed Apr 17 2013 Orion Poplawski <orion@cora.nwra.com> - 3.2.10-4
1a066f
- Do not replace modified profile.d scripts (bug #953199)
1a066f
1a066f
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.10-3
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
1a066f
1a066f
* Tue Jan 15 2013 Orion Poplawski <orion@cora.nwra.com> - 3.2.10-2
1a066f
- Add patch to comment out stray module use in modules file when not using
1a066f
  versioning (bug #895555)
1a066f
- Add patch to fix module clear command (bug #895551)
1a066f
- Add patch from modules list to add completion to avail command
1a066f
1a066f
* Fri Dec 21 2012 Orion Poplawski <orion@cora.nwra.com> - 3.2.10-1
1a066f
- Update to 3.2.10
1a066f
- Drop regex patch
1a066f
1a066f
* Wed Oct 31 2012 Orion Poplawski <orion@cora.nwra.com> - 3.2.9c-5
1a066f
- Updated createmodule.sh, added createmodule.py, can handle path prefixes
1a066f
1a066f
* Fri Aug 24 2012 Orion Poplawski <orion@cora.nwra.com> - 3.2.9c-4
1a066f
- Add patch to fix segfault from Tcl RexExp handling (bug 834580)
1a066f
1a066f
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.9c-3
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
1a066f
1a066f
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.9c-2
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
1a066f
1a066f
* Tue Nov 29 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.9c-1
1a066f
- Update to 3.2.9c (fixes bug 753760)
1a066f
1a066f
* Tue Nov 22 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.9b-2
1a066f
- Make .modulespath a config file
1a066f
1a066f
* Tue Nov 15 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.9b-1
1a066f
- Update to 3.2.9b
1a066f
1a066f
* Fri Nov 11 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.9a-2
1a066f
- Add %%check section
1a066f
1a066f
* Fri Nov 11 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.9a-1
1a066f
- Update to 3.2.9a
1a066f
- Drop strcpy patch
1a066f
1a066f
* Thu Sep 22 2011 Orion Poplawski <orion@cora.nwra.com> - 3.2.8a-3
1a066f
- Add patch to fix overlapping strcpy() in Remove_Path, hopefully fixes
1a066f
  bug 737043
1a066f
1a066f
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.8a-2
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
1a066f
1a066f
* Mon Oct 4 2010 Orion Poplawski <orion@cora.nwra.com> - 3.2.8a-1
1a066f
- Update to 3.2.8a, changes --with-def-man-path to --with-man-path
1a066f
1a066f
* Mon Oct 4 2010 Orion Poplawski <orion@cora.nwra.com> - 3.2.8-1
1a066f
- Update to 3.2.8
1a066f
- Drop mandir patch, use --with-def-man-path
1a066f
1a066f
* Thu Jan 7 2010 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-7
1a066f
- Add patch to set a sane default MANPATH
1a066f
- Add createmodule.sh utility script for creating modulefiles
1a066f
 
1a066f
* Mon Nov 30 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-6
1a066f
- Add Requires: propcs (bug #54272)
1a066f
1a066f
* Mon Oct 26 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-5
1a066f
- Don't assume different shell init scripts exist (bug #530770)
1a066f
1a066f
* Fri Oct 23 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-4
1a066f
- Don't load bash init script when bash is running as "sh" (bug #529745)
1a066f
1a066f
* Mon Oct 19 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-3
1a066f
- Support different flavors of "sh" (bug #529493)
1a066f
1a066f
* Wed Sep 23 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-2
1a066f
- Add patch to fix modulecmd path in init files
1a066f
1a066f
* Wed Sep 23 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7b-1
1a066f
- Update to 3.2.7b
1a066f
1a066f
* Mon Sep 21 2009 Orion Poplawski <orion@cora.nwra.com> - 3.2.7-1
1a066f
- Update to 3.2.7, fixes bug #524475
1a066f
- Drop versioning patch fixed upstream
1a066f
1a066f
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.6-8
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
1a066f
1a066f
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.6-7
1a066f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
1a066f
1a066f
* Wed Sep 3 2008 - Orion Poplawski <orion@cora.nwra.com> - 3.2.6-6
1a066f
- Change %%patch -> %%patch0
1a066f
1a066f
* Fri Mar 14 2008 - Orion Poplawski <orion@cora.nwra.com> - 3.2.6-5
1a066f
- Add BR libX11-devel so modulecmd can handle X resources
1a066f
1a066f
* Wed Mar  5 2008 - Orion Poplawski <orion@cora.nwra.com> - 3.2.6-4
1a066f
- Add patch to fix extraneous version path entry properly
1a066f
- Use --with-module-path to point to /etc/modulefiles for local modules,
1a066f
  this also fixes bug #436041
1a066f
1a066f
* Sat Feb  9 2008 - Orion Poplawski <orion@cora.nwra.com> - 3.2.6-3
1a066f
- Rebuild for gcc 3.4
1a066f
1a066f
* Thu Jan 03 2008 - Alex Lancaster <alexlan at fedoraproject.org> - 3.2.6-2
1a066f
- Rebuild for new Tcl (8.5).
1a066f
1a066f
* Fri Nov  2 2007 - Orion Poplawski <orion@cora.nwra.com> - 3.2.6-1
1a066f
- Update to 3.2.6
1a066f
1a066f
* Tue Aug 21 2007 - Orion Poplawski <orion@cora.nwra.com> - 3.2.5-2
1a066f
- Update license tag to GPLv2
1a066f
1a066f
* Fri Feb 16 2007 - Orion Poplawski <orion@cora.nwra.com> - 3.2.5-1
1a066f
- Update to 3.2.5
1a066f
1a066f
* Wed Feb 14 2007 - Orion Poplawski <orion@cora.nwra.com> - 3.2.4-2
1a066f
- Rebuild for Tcl downgrade
1a066f
1a066f
* Fri Feb 09 2007 - Orion Poplawski <orion@cora.nwra.com> - 3.2.4-1
1a066f
- Update to 3.2.4
1a066f
1a066f
* Wed Dec 20 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.3-3
1a066f
- Add --with-version-path to set VERSIONPATH (bug 220260)
1a066f
5352b7
* Tue Aug 29 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.3-2
1a066f
- Rebuild for FC6
1a066f
1a066f
* Fri Jun  2 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.3-1
1a066f
- Update to 3.2.3
1a066f
1a066f
* Fri May  5 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.2-1
1a066f
- Update to 3.2.2
1a066f
1a066f
* Fri Mar 24 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.1-1
1a066f
- Update to 3.2.1
1a066f
1a066f
* Thu Feb  9 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.0p1-1
1a066f
- Update to 3.2.0p1
1a066f
1a066f
* Fri Jan 27 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.0-2
1a066f
- Add profile.d links
1a066f
1a066f
* Tue Jan 24 2006 - Orion Poplawski <orion@cora.nwra.com> - 3.2.0-1
1a066f
- Fedora Extras packaging