Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ build_script:

test_script:
- path %CMD_DIR%;%PATH%
- bash -c "contrib/mt"
- if "%BUILD_PLATFORM%" == "msys" (bash -c "contrib/mt install")
- bash -c "script/mt"
- if "%BUILD_PLATFORM%" == "msys" (bash -c "script/mt install")
# must add /usr/lib/lapack to PATH for /usr/lib/R/library/stats/libs/stats.dll
- if "%BUILD_PLATFORM%" == "cygwin" (bash -c "PATH=/usr/lib/lapack:$PATH contrib/mt install")
- if "%BUILD_PLATFORM%" == "cygwin" (bash -c "PATH=/usr/lib/lapack:$PATH script/mt install")

after_test:
- path %CMD_DIR%;%PATH%
Expand Down
4 changes: 2 additions & 2 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ task:
install_script: pkg install -y bash wget gmake dejagnu py37-sphinx tcl86 autoconf automake gettext ksh93 zsh fish perl5 python37 ruby cmake R readline openmp
build_script: ./configure --without-tclx --with-tcl-ver=8.6 && gmake && gmake install
test_script:
- contrib/mt
- contrib/mt install
- script/mt
- script/mt install
uninstall_script: gmake uninstall

# vim:set tabstop=2 shiftwidth=2 expandtab autoindent:
9 changes: 3 additions & 6 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
# no export for git-specific stuff
# no export of git-specific stuff
README.md export-ignore
INSTALL.rst export-ignore
MIGRATING.rst export-ignore
NEWS.rst export-ignore
CONTRIBUTING.rst export-ignore
contrib/gitlog2changelog.py export-ignore
contrib/pre-commit export-ignore
script/gitlog2changelog.py export-ignore
contrib/rpm/environment-modules.spec.in export-ignore
version.inc.in export-ignore
.gitignore export-ignore
Expand All @@ -14,7 +13,5 @@ init/.gitignore export-ignore
.appveyor.yml export-ignore
.cirrus.yml export-ignore
.travis.yml export-ignore
# no export for website-specific content
contrib/doc2www export-ignore
# no export of website-specific content
doc/talk export-ignore
www export-ignore
10 changes: 2 additions & 8 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,9 @@
/modulecmd-test.tcl_m
/coverage
/site.exp
/contrib/mtreview
/contrib/mb
/contrib/mlprof
/contrib/playdemo
/contrib/rpm/environment-modules.spec
/contrib/scripts/add.modules
/contrib/scripts/modulecmd
/script/add.modules
/script/modulecmd
/contrib/modulefiles/modules
/contrib/modulefiles/version
/testsuite/example/.modulespath
Expand All @@ -37,8 +33,6 @@
/doc/build
/doc/source/version.py
/doc/demo/*/*.svg
/www/tcl
/www/docs
/modules-*.tar
/modules-*.tar.gz
/modules-*.tar.bz2
Expand Down
8 changes: 4 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ matrix:
# compatibility version-specific build requirements
- automake
- autopoint
- env: CONFIGURE_OPTS='--with-tclsh=tclsh8.6 --prefix=/tmp/modules --enable-compat-version --with-tcl=/usr/lib/tcl8.6 --enable-append-manpath --enable-append-binpath --with-bin-search-path=/usr/bin:/bin --disable-silent-shell-debug-support --with-loadedmodules=null:dot --with-quarantine-vars=LD_LIBRARY_PATH --enable-color --with-dark-background-colors=hi=1:se=2:er=91:wa=93:mp=1;94:di=94:al=96:sy=95'
- env: CONFIGURE_OPTS='--with-tclsh=tclsh8.6 --prefix=/tmp/modules --enable-compat-version --with-tcl=/usr/lib/tcl8.6 --enable-append-manpath --enable-append-binpath --with-bin-search-path=/usr/bin:/bin --disable-silent-shell-debug-support --enable-windows-support --with-loadedmodules=null:dot --with-quarantine-vars=LD_LIBRARY_PATH --enable-color --with-dark-background-colors=hi=1:se=2:er=91:wa=93:mp=1;94:di=94:al=96:sy=95'
EXTRA_SCRIPT_CD='modules-1.2.3+branch_name-91-g6dd3db49'
addons:
apt:
Expand Down Expand Up @@ -336,17 +336,17 @@ script:
- $CMD_PREFIX ./configure $CONFIGURE_OPTS
- $CMD_PREFIX make
- if [ -n "$EXTRA_SCRIPT_PRETEST" ]; then $CMD_PREFIX eval $EXTRA_SCRIPT_PRETEST; fi
- travis_wait 18 unbuffer $CMD_PREFIX contrib/mt
- travis_wait 25 unbuffer $CMD_PREFIX script/mt
- if [ -n "$EXTRA_SCRIPT_POSTTEST" ]; then $CMD_PREFIX eval $EXTRA_SCRIPT_POSTTEST; fi
- $CMD_PREFIX make install
- $CMD_PREFIX contrib/mt install
- $CMD_PREFIX script/mt install
- $CMD_PREFIX make uninstall
- if [ "$OS_NAME" = 'centos' ]; then $CMD_PREFIX make srpm; fi

# report code coverage results
after_success: |
[ "$COVERAGE" = 'y' ] &&
contrib/nglfar2ccov modulecmd-test.tcl &&
script/nglfar2ccov modulecmd-test.tcl &&
bash <(curl -s https://codecov.io/bash)

after_script: |
Expand Down
4 changes: 4 additions & 0 deletions INSTALL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,10 @@ instance ``--disable-set-manpath``):
module alias definition. Note that enabling this
workaround solves Tcsh history issue but weakens
shell evaluation of the code produced by modulefiles.
--enable-windows-support
Install all required files for Windows platform
(``module`` command batch file and ``cmd.cmd``
initialization script). (default=no)

Optional Packages (the default for each option is displayed within
parenthesis, to disable an option replace ``with`` by ``without`` for
Expand Down
61 changes: 24 additions & 37 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@

# definitions for code coverage
NAGELFAR_DLSRC1 := http://downloads.sourceforge.net/nagelfar/
NAGELFAR_DLSRC2 := https://ftp.openbsd.org/pub/OpenBSD/distfiles/
NAGELFAR_RELEASE := nagelfar125
NAGELFAR_DLSRC2 := https://osdn.net/projects/sfnet_nagelfar/downloads/Rel_131/
NAGELFAR_RELEASE := nagelfar131
NAGELFAR_DIST := $(NAGELFAR_RELEASE).tar.gz
NAGELFAR_DISTSUM := 707e3c305437dce1f14103f0bd058fc9
NAGELFAR_DISTSUM := fbf79ab1a1d85349600f2502a3353bf4
NAGELFAR := $(NAGELFAR_RELEASE)/nagelfar.tcl

# definition for old Tcl interpreter for coverage testing
Expand All @@ -23,8 +23,8 @@ TCLSH83 := $(TCL_RELEASE83)/unix/tclsh
MODULECMDTEST := modulecmd-test.tcl

# definitions for enhanced diff tool (to review test results)
ICDIFF_DLSRC := https://raw.githubusercontent.com/jeffkaufman/icdiff/release-1.9.2/
ICDIFF_CHECKSUM := 2bf052d9dfb0a46af581fc390c47774a
ICDIFF_DLSRC := https://raw.githubusercontent.com/jeffkaufman/icdiff/release-1.9.5/
ICDIFF_CHECKSUM := fd5825ede4c2853ba1747a8931b077c1

# compatibility version-related files
COMPAT_DIR := compat
Expand All @@ -35,8 +35,8 @@ ifneq ($(wildcard Makefile.inc),Makefile.inc)
endif
include Makefile.inc

INSTALL_PREREQ := modulecmd.tcl ChangeLog README contrib/scripts/add.modules \
contrib/scripts/modulecmd
INSTALL_PREREQ := modulecmd.tcl ChangeLog README script/add.modules \
script/modulecmd
TEST_PREREQ := $(MODULECMDTEST)

ifeq ($(compatversion),y)
Expand Down Expand Up @@ -277,31 +277,15 @@ modulecmd.tcl: modulecmd.tcl.in version.inc
chmod +x $@

ChangeLog:
contrib/gitlog2changelog.py
script/gitlog2changelog.py

README:
sed -e '/^\[\!\[.*\].*/d' $@.md > $@

contrib/mtreview: contrib/mtreview.in version.inc
script/add.modules: script/add.modules.in
$(translate-in-script)
chmod +x $@

contrib/mb: contrib/mb.in version.inc contrib/mlprof
$(translate-in-script)
chmod +x $@

contrib/mlprof: contrib/mlprof.in version.inc
$(translate-in-script)
chmod +x $@

contrib/playdemo: contrib/playdemo.in version.inc
$(translate-in-script)
chmod +x $@

contrib/scripts/add.modules: contrib/scripts/add.modules.in
$(translate-in-script)

contrib/scripts/modulecmd: contrib/scripts/modulecmd.in
script/modulecmd: script/modulecmd.in
$(translate-in-script)

# compatibility version-related rules
Expand Down Expand Up @@ -382,14 +366,18 @@ ifeq ($(libtclenvmodules),y)
cp lib/libtclenvmodules$(SHLIB_SUFFIX) $(DESTDIR)$(libdir)/libtclenvmodules$(SHLIB_SUFFIX)
chmod +x $(DESTDIR)$(libdir)/libtclenvmodules$(SHLIB_SUFFIX)
endif
cp contrib/envml $(DESTDIR)$(bindir)/
cp script/envml $(DESTDIR)$(bindir)/
chmod +x $(DESTDIR)$(bindir)/envml
cp contrib/scripts/add.modules $(DESTDIR)$(bindir)/
cp script/add.modules $(DESTDIR)$(bindir)/
chmod +x $(DESTDIR)$(bindir)/add.modules
cp contrib/scripts/modulecmd $(DESTDIR)$(bindir)/
cp script/modulecmd $(DESTDIR)$(bindir)/
chmod +x $(DESTDIR)$(bindir)/modulecmd
cp contrib/scripts/mkroot $(DESTDIR)$(bindir)/
cp script/mkroot $(DESTDIR)$(bindir)/
chmod +x $(DESTDIR)$(bindir)/mkroot
ifeq ($(windowssupport),y)
cp script/module.cmd $(DESTDIR)$(bindir)/
chmod +x $(DESTDIR)$(bindir)/module.cmd
endif
ifneq ($(wildcard $(DESTDIR)$(etcdir)/siteconfig.tcl),$(DESTDIR)$(etcdir)/siteconfig.tcl)
cp siteconfig.tcl $(DESTDIR)$(etcdir)/siteconfig.tcl
endif
Expand Down Expand Up @@ -436,6 +424,9 @@ endif
rm -f $(DESTDIR)$(bindir)/add.modules
rm -f $(DESTDIR)$(bindir)/modulecmd
rm -f $(DESTDIR)$(bindir)/mkroot
ifeq ($(windowssupport),y)
rm -f $(DESTDIR)$(bindir)/module.cmd
endif
ifeq ($(vimaddons),y)
rm -f $(DESTDIR)$(vimdatadir)/ftdetect/modulefile.vim
rm -f $(DESTDIR)$(vimdatadir)/ftplugin/modulefile.vim
Expand Down Expand Up @@ -503,7 +494,7 @@ clean:
rm -f *.log *.sum
rm -f $(MODULECMDTEST)_i $(MODULECMDTEST)_log $(MODULECMDTEST)_m
rm -rf coverage
ifeq ($(wildcard .git) $(wildcard contrib/gitlog2changelog.py),.git contrib/gitlog2changelog.py)
ifeq ($(wildcard .git) $(wildcard script/gitlog2changelog.py),.git script/gitlog2changelog.py)
rm -f ChangeLog
endif
ifeq ($(wildcard .git) $(wildcard README.md),.git README.md)
Expand All @@ -522,13 +513,9 @@ ifeq ($(wildcard .git) $(wildcard CONTRIBUTING.rst),.git CONTRIBUTING.rst)
rm -f CONTRIBUTING.txt
endif
rm -f modulecmd.tcl
rm -f contrib/mtreview
rm -f contrib/mb
rm -f contrib/mlprof
rm -f contrib/playdemo
rm -f $(MODULECMDTEST)
rm -f contrib/scripts/add.modules
rm -f contrib/scripts/modulecmd
rm -f script/add.modules
rm -f script/modulecmd
rm -f testsuite/example/.modulespath testsuite/example/modulerc testsuite/example/modulerc-1 testsuite/example/initrc
rm -f modules-*.tar modules-*.tar.gz modules-*.tar.bz2
rm -f modules-*.srpm
Expand Down
3 changes: 3 additions & 0 deletions Makefile.inc.in
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,9 @@ icase := @icase@
# ml command enablement
ml := @ml@

# install Windows-specific files
windowssupport := @windowssupport@

# command location
TCLSH := @TCLSH@
SPHINXBUILD := @SPHINXBUILD@
Expand Down
10 changes: 10 additions & 0 deletions NEWS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,16 @@ Modules 4.5.0 (2020-XX-XX)
* Add the ``-j``/``--json`` command line switches to the ``avail``, ``list``,
``savelist``, ``whatis`` and ``search`` module sub-commands to render their
output in `JSON`_ format. (fix issue #303)
* Script: remove need to build project management-specific tools
(``mtreview``, ``mb``, ``mlprof`` and ``playdemo``) prior using them.
* Script: gather all distributed and maintained scripts in a ``script``
directory at the root of the project repository tree.
* Install: provide Windows-specific batch files when ``./configure`` option
``--enable-windows-support`` is set. module command wrapper ``module.cmd``
is installed in ``bindir`` and initialization script ``cmd.cmd`` in
``initdir``. Those batch files are relocatable and expect ``modulecmd.tcl``
in ``..\libexec`` directory. (fix issue #272 with contribution from Jacques
Raphanel)

.. _JSON: https://tools.ietf.org/html/rfc8259

Expand Down
7 changes: 6 additions & 1 deletion configure
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ SHLIB_SUFFIX versioning silentshdbgsupport setshellstartup quarantinesupport \
autohandling availindepth implicitdefault extendeddefault moduleshome \
initconfin pager pageropts verbosity color darkbgcolors lightbgcolors termbg \
lockedconfigs icase unloadmatchorder searchmatch modulepath loadedmodules \
quarantinevars wa277 advversspec ml"
quarantinevars wa277 advversspec ml windowssupport"
compatarglist=
libarglist=

Expand Down Expand Up @@ -110,6 +110,7 @@ vimdatadir=
modulefilesdir=
moduleshome=
modulepath=
windowssupport=n

# git branch to use to build compat version
compatbranch='c-3.2'
Expand Down Expand Up @@ -222,6 +223,8 @@ Optional Features:
color mode. \`no' equals to the \`never' color mode
[no]
--enable-wa-277 activate workaround for Tcsh history issue [no]
--enable-windows-support
install all required files for Windows platform [no]

Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
Expand Down Expand Up @@ -461,6 +464,8 @@ for arg in "$@"; do
ml=$(get_feature_value "$arg") ;;
--enable-wa-277*|--disable-wa-277)
wa277=$(get_feature_value "$arg") ;;
--enable-windows-support*|--disable-windows-support)
windowssupport=$(get_feature_value "$arg") ;;
--with-bin-search-path=*|--without-bin-search-path)
binsearchpath=$(get_package_value "$arg") ;;
--with-moduleshome=*|--without-moduleshome)
Expand Down
41 changes: 0 additions & 41 deletions contrib/pre-commit

This file was deleted.

4 changes: 0 additions & 4 deletions contrib/readme.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@ Brief overview of whats here:
you started.

scripts:
createmodule.sh A utliity to help in generating a module file.
It attempts to take a .file and duplicate what it does
in modules own language.

resetenv A utility we use to reset a users environment
to match our template user.

Expand Down
4 changes: 2 additions & 2 deletions contrib/rpm/environment-modules.spec.in
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,8 @@ mv %{buildroot}%{_datadir}/Modules/bin/envml %{buildroot}%{_bindir}/
mv compat/ChangeLog ChangeLog-compat
mv compat/NEWS NEWS-compat

cp -p contrib/scripts/createmodule.sh %{buildroot}%{_datadir}/Modules/bin
cp -p contrib/scripts/createmodule.py %{buildroot}%{_datadir}/Modules/bin
cp -p script/createmodule.sh %{buildroot}%{_datadir}/Modules/bin
cp -p script/createmodule.py %{buildroot}%{_datadir}/Modules/bin
%if 0%{?fedora} >= 22 || 0%{?rhel} >= 8
sed -i -e 1s,/usr/bin/python,/usr/bin/python3, \
%{buildroot}%{_datadir}/Modules/bin/createmodule.py
Expand Down
6 changes: 6 additions & 0 deletions init/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,9 @@ install: all
mkdir -p $(DESTDIR)$(initdir)/ksh-functions
mkdir -p $(DESTDIR)$(modulefilesdir)
cp $(ALL_SHELLS) $(DESTDIR)$(initdir)/
ifeq ($(windowssupport),y)
cp cmd.cmd $(DESTDIR)$(initdir)/
endif
cp fish_completion $(DESTDIR)$(initdir)/
cp -r zsh-functions $(DESTDIR)$(initdir)/
cp ksh $(DESTDIR)$(initdir)/ksh-functions/module
Expand All @@ -241,6 +244,9 @@ endif

uninstall:
rm -f $(addprefix $(DESTDIR)$(initdir)/,$(ALL_SHELLS) fish_completion)
ifeq ($(windowssupport),y)
rm -f $(DESTDIR)$(initdir)/cmd.cmd
endif
rm -f $(DESTDIR)$(initdir)/ksh-functions/module
rm -f $(DESTDIR)$(initdir)/ksh-functions/ml
ifeq ($(compatversion),y)
Expand Down
Loading