Cygwin: Fix testsuite tmpdir creation with non-default cygdrive prefix

This commit is contained in:
Jon Turney 2020-11-09 13:48:38 +00:00
parent f505e7a032
commit 140b0a6484
No known key found for this signature in database
GPG Key ID: C7C86F0370285C81
2 changed files with 7 additions and 5 deletions

View File

@ -124,10 +124,11 @@ $(RUNTIME) : $(cygwin_build)/Makefile
# Set to $(target_alias)/ for cross.
target_subdir = @target_subdir@
# temporary directory to be used for files created by tests (as an absolute,
# /cygdrive path, so it can be understood by the test DLL, which will have
# different mount table)
tmpdir = $(shell cygpath -ma $(objdir)/testsuite/tmp/ | sed -e 's#^\([A-Z]\):#/cygdrive/\L\1#')
# a temporary directory, to be used for files created by tests
tmpdir = $(abspath $(objdir)/testsuite/tmp/)
# the same temporary directory, as an absolute, /cygdrive path (so it can be
# understood by the test DLL, which will have a different mount table)
testdll_tmpdir = $(shell cygpath -ma $(tmpdir) | sed -e 's#^\([A-Z]\):#/cygdrive/\L\1#')
site.exp: ./config.status Makefile
@echo "Making a new config file..."
@ -149,6 +150,7 @@ site.exp: ./config.status Makefile
@echo "set CFLAGS \"$(ALL_CFLAGS)\"" >> ./tmp0
@echo "set MINGW_CXX \"$(MINGW_CXX)\"" >> ./tmp0
@echo "set tmpdir $(tmpdir)" >> ./tmp0
@echo "set testdll_tmpdir $(testdll_tmpdir)" >> ./tmp0
@echo "set ltp_includes \"$(realpath $(libltp_srcdir))/include\"" >> ./tmp0
@echo "## All variables above are generated by configure. Do Not Edit ##" >> ./tmp0
@cat ./tmp0 > site.exp

View File

@ -69,7 +69,7 @@ foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.c $srcdir/$subdir/*/*.{cc
set redirect_output /dev/null
}
file mkdir $tmpdir/$base
ws_spawn "$rootme/cygrun ./$base.exe $tmpdir/$base > $redirect_output"
ws_spawn "$rootme/cygrun ./$base.exe $testdll_tmpdir/$base > $redirect_output"
file delete -force $tmpdir/$base
if { $rv } {
fail "$testcase (execute)"