Issue #13441 has been updated by MSP-Greg (Greg L).


As long as we're discussing git and the build system, do you believe the following would help (or not break) builds on *nix systems?

place after [line 7 of tools/vcs.rb](https://github.com/ruby/ruby/blob/trunk/tool/vcs.rb#L7)

```ruby
if (t = ENV['GIT']) && File.exist?(t)
  ENV['PATH'] = "#{File.dirname(t)}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
end
```

Allows the build system to create revision.h, etc.

----------------------------------------
Bug #13441: building - GIT variable, ruby, rubygems tests
https://bugs.ruby-lang.org/issues/13441#change-64254

* Author: MSP-Greg (Greg L)
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.5.0dev (2017-04-15 trunk 58363) [x64-mingw32]
* Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN
----------------------------------------
As I've mentioned before, I've been building and using MinGW trunk builds for several months.  I've needed a few patches to stop segv issues, but recent builds have had approx ten combined failures and errors.

I've never had issues with `test` and `test-rubyspec`, so I only run `test-all`.  I also set `--show-skip`.

RubyGems uses `git` in its testing, and can read an environment variable for its location.  I assume many windows users have a git install from https://git-scm.com/ (not the GitHub UI) installed, which defaults to an install location with a space in the path.  Also, the MinGW / msys2 build environment does not reliably read the native `PATH` variable (could be a spaces issue).

The RubyGems tests allow one to set a `GIT` environment variable for the location of the git executable.  I added a 'non-space' symlink to git in my build system, and added it as an environment variable.  Without it, several of the RubyGems tests skip with the following message -

```
cannot find git executable, use GIT environment variable to set
```

I haven't looked thru all the code, but it appears there have been several  recent commits that may address refereshing the [ruby / spec](https://github.com/ruby/spec) repo.  These seem to conflict with the RubyGems tests use of the variable.

FYI, a while ago I patched [`test/runner.rb`](https://github.com/ruby/ruby/blob/trunk/test/runner.rb) to output the evironment variables before the tests run.  Before these commits, `ENV['GIT']` was showing the git command file correctly.  After them, it's set to the string `git`.

Is there any way to work around this issue?

[Ruby, Rails, etc Docs](https://msp-greg.github.io/)




-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>