From 928e3f9188eeed7e6c1c640576869c038c9ed7a9 Mon Sep 17 00:00:00 2001 From: Alexey Zagarin Date: Thu, 15 Apr 2021 18:15:00 +0700 Subject: [PATCH] Allow overriding `gcc` with the `CC` env var in `const_generator.rb` and `struct_generator.rb` --- lib/ffi/tools/const_generator.rb | 3 ++- lib/ffi/tools/struct_generator.rb | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/ffi/tools/const_generator.rb b/lib/ffi/tools/const_generator.rb index fb34d949e..b681e4413 100644 --- a/lib/ffi/tools/const_generator.rb +++ b/lib/ffi/tools/const_generator.rb @@ -124,7 +124,8 @@ def calculate(options = {}) f.puts "\n\treturn 0;\n}" f.flush - output = `gcc #{options[:cppflags]} -D_DARWIN_USE_64_BIT_INODE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -x c -Wall -Werror #{f.path} -o #{binary} 2>&1` + cc = ENV['CC'] || 'gcc' + output = `#{cc} #{options[:cppflags]} -D_DARWIN_USE_64_BIT_INODE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -x c -Wall -Werror #{f.path} -o #{binary} 2>&1` unless $?.success? then output = output.split("\n").map { |l| "\t#{l}" }.join "\n" diff --git a/lib/ffi/tools/struct_generator.rb b/lib/ffi/tools/struct_generator.rb index 7d2a6e529..3a951c380 100644 --- a/lib/ffi/tools/struct_generator.rb +++ b/lib/ffi/tools/struct_generator.rb @@ -82,7 +82,8 @@ def calculate(options = {}) f.puts "\n return 0;\n}" f.flush - output = `gcc #{options[:cppflags]} #{options[:cflags]} -D_DARWIN_USE_64_BIT_INODE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -x c -Wall -Werror #{f.path} -o #{binary} 2>&1` + cc = ENV['CC'] || 'gcc' + output = `#{cc} #{options[:cppflags]} #{options[:cflags]} -D_DARWIN_USE_64_BIT_INODE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -x c -Wall -Werror #{f.path} -o #{binary} 2>&1` unless $?.success? then @found = false