mirror of
https://github.com/ivabus/pantry
synced 2024-11-26 18:25:08 +03:00
make our ruby tolerant of different shebangs (#191)
This commit is contained in:
parent
cf07590f11
commit
a2cb71e1d4
2 changed files with 24 additions and 0 deletions
|
@ -18,7 +18,9 @@ build:
|
|||
gnu.org/gettext: ^0.21
|
||||
tea.xyz/gx/cc: c99
|
||||
tea.xyz/gx/make: '*'
|
||||
git-scm.org: 2
|
||||
script: |
|
||||
git apply props/tolerant-shebang.diff
|
||||
./configure --prefix="{{prefix}}"
|
||||
make --jobs {{hw.concurrency}} install
|
||||
|
||||
|
|
22
projects/ruby-lang.org/tolerant-shebang.diff
Normal file
22
projects/ruby-lang.org/tolerant-shebang.diff
Normal file
|
@ -0,0 +1,22 @@
|
|||
diff --git a/ruby.c b/ruby.c
|
||||
index d7ba181..e2a80df 100644
|
||||
--- a/ruby.c
|
||||
+++ b/ruby.c
|
||||
@@ -2281,7 +2281,7 @@ load_file_internal(VALUE argp_v)
|
||||
RSTRING_GETMEM(line, str, len);
|
||||
if (len > 2 && str[0] == '#' && str[1] == '!') {
|
||||
if (line_start == 1) warn_cr_in_shebang(str, len);
|
||||
- if ((p = strstr(str+2, ruby_engine)) != 0) {
|
||||
+ if ((p = strstr(str+2, ruby_engine)) != 0 && !getenv("TEA_PREFIX")) {
|
||||
goto start_read;
|
||||
}
|
||||
}
|
||||
@@ -2295,7 +2295,7 @@ load_file_internal(VALUE argp_v)
|
||||
if (c == INT2FIX('!') && !NIL_P(line = rb_io_gets(f))) {
|
||||
RSTRING_GETMEM(line, str, len);
|
||||
warn_cr_in_shebang(str, len);
|
||||
- if ((p = strstr(str, ruby_engine)) == 0) {
|
||||
+ if ((p = strstr(str, ruby_engine)) == 0 && !getenv("TEA_PREFIX")) {
|
||||
/* not ruby script, assume -x flag */
|
||||
goto search_shebang;
|
||||
}
|
Loading…
Reference in a new issue