diff --git a/.appveyor.yml b/.appveyor.yml index e63fdaf26..948d5186d 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -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% diff --git a/.cirrus.yml b/.cirrus.yml index 26fe15af2..92d637f6d 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -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: diff --git a/.gitattributes b/.gitattributes index d269bc232..9ccdc1117 100644 --- a/.gitattributes +++ b/.gitattributes @@ -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 @@ -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 diff --git a/.gitignore b/.gitignore index 9eb545a1a..d559237d4 100644 --- a/.gitignore +++ b/.gitignore @@ -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 @@ -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 diff --git a/.travis.yml b/.travis.yml index b514d0b2b..ea8ce82b4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -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: @@ -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: | diff --git a/INSTALL.rst b/INSTALL.rst index 755b4ee75..984e8dc7c 100644 --- a/INSTALL.rst +++ b/INSTALL.rst @@ -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 diff --git a/Makefile b/Makefile index c7859a84e..980e05011 100644 --- a/Makefile +++ b/Makefile @@ -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 @@ -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 @@ -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) @@ -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 @@ -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 @@ -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 @@ -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) @@ -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 diff --git a/Makefile.inc.in b/Makefile.inc.in index aab3ec3ac..595c0d7da 100644 --- a/Makefile.inc.in +++ b/Makefile.inc.in @@ -108,6 +108,9 @@ icase := @icase@ # ml command enablement ml := @ml@ +# install Windows-specific files +windowssupport := @windowssupport@ + # command location TCLSH := @TCLSH@ SPHINXBUILD := @SPHINXBUILD@ diff --git a/NEWS.rst b/NEWS.rst index e59a3dcd7..2376cae03 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -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 diff --git a/configure b/configure index 32fd694c3..d8c83d19f 100755 --- a/configure +++ b/configure @@ -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= @@ -110,6 +110,7 @@ vimdatadir= modulefilesdir= moduleshome= modulepath= +windowssupport=n # git branch to use to build compat version compatbranch='c-3.2' @@ -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] @@ -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) diff --git a/contrib/pre-commit b/contrib/pre-commit deleted file mode 100755 index 8d351bafe..000000000 --- a/contrib/pre-commit +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/perl -# This file is a pre-commit git hook to automatically update the -# MODULES_CURRENT_VERSION in modulecmd.tcl -# Put this in modules/.git/hooks/pre-commit and make it executable. - -use strict; -use warnings; -use Cwd 'abs_path'; - -my ($ROOT, $OUTFILE, $INFILE, $line, $value); - -$ROOT = abs_path($0); -print "ROOT BASE = $ROOT\n"; -$ROOT =~ /(.*)\.git\/hooks\/pre-commit/; -$ROOT = $1; - -print "ROOT = $ROOT\n"; - -$value = `cd $ROOT;git rev-list HEAD --count`; -$value ++; -$value ++; - -system("cp $ROOT/modulecmd.tcl $ROOT/modulecmd.tmp"); -unlink("$ROOT/modulecmd.tcl"); -open($OUTFILE, ">","$ROOT/modulecmd.tcl") or die - "Unable to open $ROOT/modulecmd.tcl"; -open($INFILE, "<","$ROOT/modulecmd.tmp") or die - "Unable to open $ROOT/modulecmd.tmp"; - -while(<$INFILE>) { - $line = $_; - if ($line =~ /set MODULES_CURRENT_VERSION (.*)/) { - print $OUTFILE "set MODULES_CURRENT_VERSION 1.$value\n"; - } else { - print $OUTFILE $line; - } -} -close $OUTFILE; -unlink("$ROOT/modulecmd.tmp"); -system("chmod 755 $ROOT/modulecmd.tcl"); - diff --git a/contrib/readme.txt b/contrib/readme.txt index c8b581666..85313a53f 100644 --- a/contrib/readme.txt +++ b/contrib/readme.txt @@ -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. diff --git a/contrib/rpm/environment-modules.spec.in b/contrib/rpm/environment-modules.spec.in index ed78ab45b..525a77eaa 100644 --- a/contrib/rpm/environment-modules.spec.in +++ b/contrib/rpm/environment-modules.spec.in @@ -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 diff --git a/init/Makefile b/init/Makefile index b4cf3fc05..ffcad9512 100644 --- a/init/Makefile +++ b/init/Makefile @@ -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 @@ -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) diff --git a/init/cmd.cmd b/init/cmd.cmd new file mode 100644 index 000000000..bdc54bed2 --- /dev/null +++ b/init/cmd.cmd @@ -0,0 +1,15 @@ +@echo off + +:: define Modules-specific environment variables +for %%i in (%~dp0..) do set MODULESHOME=%%~dpni +set MODULES_CMD=%MODULESHOME%\libexec\modulecmd.tcl + +:: ensure module.cmd batch file can be found in PATH +for %%i in (module.cmd) do ( + if "x%%~$PATH:i" EQU "x" ( + set PATH=%MODULESHOME%\bin;%PATH% + ) +) + +:: enable a default modulepath directory +call module use %MODULESHOME%\modulefiles diff --git a/contrib/scripts/add.modules.in b/script/add.modules.in similarity index 100% rename from contrib/scripts/add.modules.in rename to script/add.modules.in diff --git a/contrib/scripts/createmodule.py b/script/createmodule.py similarity index 100% rename from contrib/scripts/createmodule.py rename to script/createmodule.py diff --git a/contrib/scripts/createmodule.sh b/script/createmodule.sh similarity index 100% rename from contrib/scripts/createmodule.sh rename to script/createmodule.sh diff --git a/contrib/envml b/script/envml similarity index 100% rename from contrib/envml rename to script/envml diff --git a/contrib/gitlog2changelog.py b/script/gitlog2changelog.py similarity index 100% rename from contrib/gitlog2changelog.py rename to script/gitlog2changelog.py diff --git a/contrib/mb.in b/script/mb old mode 100644 new mode 100755 similarity index 98% rename from contrib/mb.in rename to script/mb index 2b3ab6a74..6c480b0ae --- a/contrib/mb.in +++ b/script/mb @@ -1,7 +1,7 @@ -#!@TCLSHDIR@/tclsh +#!/usr/bin/env tclsh # # MB, make bench between modulecmd versions -# Copyright (C) 2019 Xavier Delaruelle +# Copyright (C) 2019-2020 Xavier Delaruelle # # 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 @@ -30,7 +30,7 @@ proc bench {tag args} { # profile given modulecmd version test run proc profile {tag args} { - return [eval exec contrib/mlprof report$::profprocnb $tag $args] + return [eval exec script/mlprof report$::profprocnb $tag $args] } # run test for each modulecmd version diff --git a/contrib/scripts/mkroot b/script/mkroot similarity index 100% rename from contrib/scripts/mkroot rename to script/mkroot diff --git a/contrib/mlprof.in b/script/mlprof old mode 100644 new mode 100755 similarity index 99% rename from contrib/mlprof.in rename to script/mlprof index 94d4dab7e..152542cc0 --- a/contrib/mlprof.in +++ b/script/mlprof @@ -1,4 +1,4 @@ -#!@TCLSHDIR@/tclsh +#!/usr/bin/env tclsh # # MLPROF, profile a given modulecmd execution # Copyright (C) 2019-2020 Xavier Delaruelle diff --git a/script/module.cmd b/script/module.cmd new file mode 100644 index 000000000..c63679964 --- /dev/null +++ b/script/module.cmd @@ -0,0 +1,11 @@ +@echo off + +:: initialize Modules if not already done +if not defined MODULES_CMD ( + call %~dp0..\init\cmd.cmd +) + +set OUTPUT= +set MODCMD="call tclsh %MODULES_CMD% cmd %*" +:: execute each output line in cmd shell +for /f "tokens=*" %%I in ('%MODCMD%') do %%I diff --git a/contrib/scripts/modulecmd.in b/script/modulecmd.in similarity index 100% rename from contrib/scripts/modulecmd.in rename to script/modulecmd.in diff --git a/contrib/mt b/script/mt similarity index 97% rename from contrib/mt rename to script/mt index 34482e9ab..9b8e7f656 100755 --- a/contrib/mt +++ b/script/mt @@ -1,7 +1,7 @@ #!/usr/bin/env bash # # MT, run specific part of the test suite -# Copyright (C) 2018-2019 Xavier Delaruelle +# Copyright (C) 2018-2020 Xavier Delaruelle # # 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 @@ -87,7 +87,6 @@ if [ $# -gt 0 ]; then export RUNTESTFILES="${testfnames[*]}" fi -$make contrib/mtreview $make icdiff export RUNTESTFLAGS='-v -v >/dev/null 2>&1' $make $target @@ -97,7 +96,7 @@ ret=$? retreview=0 for log in compat/$testserie.log $testserie.log; do if [ -e $log ]; then - contrib/mtreview $log + script/mtreview $log retreview+=$? fi done diff --git a/contrib/mtreview.in b/script/mtreview similarity index 99% rename from contrib/mtreview.in rename to script/mtreview index 0e032174e..9e0025947 100755 --- a/contrib/mtreview.in +++ b/script/mtreview @@ -1,4 +1,4 @@ -#!@TCLSHDIR@/tclsh +#!/usr/bin/env tclsh # # MTREVIEW, review test suite log file # Copyright (C) 2019 Xavier Delaruelle diff --git a/contrib/nglfar2ccov b/script/nglfar2ccov similarity index 100% rename from contrib/nglfar2ccov rename to script/nglfar2ccov diff --git a/contrib/playdemo.in b/script/playdemo old mode 100644 new mode 100755 similarity index 99% rename from contrib/playdemo.in rename to script/playdemo index 00e1e0639..cd4e649ec --- a/contrib/playdemo.in +++ b/script/playdemo @@ -1,4 +1,4 @@ -#!@TCLSHDIR@/tclsh +#!/usr/bin/env tclsh # # PLAYDEMO, play demos recorded with asciinema # Copyright (C) 2019 Xavier Delaruelle diff --git a/site.exp.in b/site.exp.in index 958d353b9..f209bb429 100644 --- a/site.exp.in +++ b/site.exp.in @@ -70,5 +70,7 @@ set install_icase "@icase@" set install_ml "@ml@" +set install_windowssupport "@windowssupport@" + # command location set install_tclsh "@TCLSH@" diff --git a/testsuite/install.00-init/030-options.exp b/testsuite/install.00-init/030-options.exp index 587a954ce..2491d2df2 100644 --- a/testsuite/install.00-init/030-options.exp +++ b/testsuite/install.00-init/030-options.exp @@ -278,6 +278,13 @@ unset env(MODULES_SILENT_SHELL_DEBUG) send_user "\tSkipping silent shell debug checks\n" } +# test Windows-specific install +if {$verbose > 0} { + send_user "\tChecking Windows-specific files availability\n" +} +testall_cmd_re "sh" "test -e $install_initdir/cmd.cmd" "" "" [expr {$install_windowssupport ne {y}}] +testall_cmd_re "sh" "test -e $install_bindir/module.cmd" "" "" [expr {$install_windowssupport ne {y}}] + # # Clean up variables used in this test case diff --git a/windows/module.cmd b/windows/module.cmd deleted file mode 100644 index b3325ba99..000000000 --- a/windows/module.cmd +++ /dev/null @@ -1,5 +0,0 @@ -@echo off -set OUTPUT= -set MODCMD="call tclsh %MODULESHOME%\modulecmd.tcl cmd %*" -REM -- Each output line needs to be executed in cmd shell -for /f "tokens=*" %%I in ('%MODCMD%') do %%I diff --git a/windows/moduleinit.cmd b/windows/moduleinit.cmd deleted file mode 100644 index bd4bf5833..000000000 --- a/windows/moduleinit.cmd +++ /dev/null @@ -1,7 +0,0 @@ -@echo off -REM ----------------------------------------------- -REM Script to customize module-tcl for "cmd" shell -REM Load the modulepaths with "module use" -REM ----------------------------------------------- -call module use %MODULESHOME%\modulefiles -call module avail