summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Kanis <lars@greiz-reinsdorf.de>2025-08-03 09:18:13 +0200
committernagachika <nagachika@ruby-lang.org>2025-11-08 14:38:09 +0900
commitbc6f57ac15a99caaaadf1ca45a2c7a7cef85870d (patch)
tree7b951e72865837c2b6d7e79520c7c08de1357606
parentdd9163d468fc2997f2ef69f05d620f2649d23cbd (diff)
Revert to shell execution when invoking nm tool
This reverts a change of commit b3598cf2a355497693bb66097edc156af3152e9b . On Windows on ARM64 with LLVM the "NM" tool is called with a parameter like so: ``` RbConfig::CONFIG["NM"] # => "llvm-nm --no-llvm-bc" ``` Therefore the command must be called with a shell string.
-rwxr-xr-xwin32/mkexports.rb4
1 files changed, 1 insertions, 3 deletions
diff --git a/win32/mkexports.rb b/win32/mkexports.rb
index 97939cdd09..1a9f474be2 100755
--- a/win32/mkexports.rb
+++ b/win32/mkexports.rb
@@ -146,9 +146,7 @@ class Exports::Cygwin < Exports
end
def each_line(objs, &block)
- IO.popen(%W[#{self.class.nm} --extern-only --defined-only] + objs) do |f|
- f.each(&block)
- end
+ IO.foreach("|#{self.class.nm} --extern-only --defined-only #{objs.join(' ')}", &block)
end
def each_export(objs)