Use shorter path as SPEC_TEMP_DIR
The temporary directory under the build directory may be too long as a UNIX socket path. On macOS, the default `TMPDIR` per user is also very long.
This commit is contained in:
parent
e956052fa9
commit
de5cd5a635
Notes:
git
2023-04-21 15:08:41 +00:00
@ -873,7 +873,8 @@ test-spec: $(TEST_RUNNABLE)-test-spec
|
||||
yes-test-spec: test-spec-precheck
|
||||
$(ACTIONS_GROUP)
|
||||
$(gnumake_recursive)$(Q) \
|
||||
$(RUNRUBY) -r./$(arch)-fake $(srcdir)/spec/mspec/bin/mspec run -B $(srcdir)/spec/default.mspec $(MSPECOPT) $(SPECOPTS)
|
||||
$(RUNRUBY) -r./$(arch)-fake -r$(tooldir)/rubyspec_temp \
|
||||
$(srcdir)/spec/mspec/bin/mspec run -B $(srcdir)/spec/default.mspec $(MSPECOPT) $(SPECOPTS)
|
||||
$(ACTIONS_ENDGROUP)
|
||||
no-test-spec:
|
||||
|
||||
|
13
tool/rubyspec_temp.rb
Normal file
13
tool/rubyspec_temp.rb
Normal file
@ -0,0 +1,13 @@
|
||||
require "tmpdir"
|
||||
require "fileutils"
|
||||
|
||||
if (tmpdir = Dir.mktmpdir("rubyspec_temp.")).size > 80
|
||||
# On macOS, the default TMPDIR is very long, inspite of UNIX socket
|
||||
# path length is limited.
|
||||
Dir.rmdir(tmpdir)
|
||||
tmpdir = Dir.mktmpdir("rubyspec_temp.", "/tmp")
|
||||
end
|
||||
# warn "tmpdir(#{tmpdir.size}) = #{tmpdir}"
|
||||
END {FileUtils.rm_rf(tmpdir)}
|
||||
|
||||
ENV["TMPDIR"] = ENV["SPEC_TEMP_DIR"] = tmpdir
|
Loading…
x
Reference in New Issue
Block a user