Skip to content

Commit edd09d2

Browse files
authored
Use RUBYARCHDIR for library location if present
1 parent 5f304a7 commit edd09d2

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

ext/Rakefile

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,25 @@ task :default => :clean do
2828
from_extension = 'so.1'
2929
to_extension = 'so'
3030
end
31+
32+
# Get path to the compiled library
3133
lib_path = File.join(File.dirname(__FILE__), "ports/#{recipe.host}/librdkafka/#{Rdkafka::LIBRDKAFKA_VERSION}/lib/librdkafka.#{from_extension}")
32-
FileUtils.mv(lib_path, File.join(File.dirname(__FILE__), "librdkafka.#{to_extension}"))
34+
35+
# Get target dir
36+
target_dir = ENV["RUBYARCHDIR"] || File.dirname(__FILE__)
37+
38+
# Move the compliled library there
39+
FileUtils.mv(lib_path, File.join(target_dir, "librdkafka.#{to_extension}"))
40+
3341
# Cleanup files created by miniportile we don't need in the gem
34-
FileUtils.rm_rf File.join(File.dirname(__FILE__), "tmp")
35-
FileUtils.rm_rf File.join(File.dirname(__FILE__), "ports")
42+
FileUtils.rm_rf File.join(target_dir, "tmp")
43+
FileUtils.rm_rf File.join(target_dir, "ports")
3644
end
3745

3846
task :clean do
39-
FileUtils.rm_f File.join(File.dirname(__FILE__), "librdkafka.dylib")
40-
FileUtils.rm_f File.join(File.dirname(__FILE__), "librdkafka.so")
47+
target_dir = ENV["RUBYARCHDIR"] || File.dirname(__FILE__)
48+
FileUtils.rm_f File.join(target_dir, "librdkafka.dylib")
49+
FileUtils.rm_f File.join(target_dir, "librdkafka.so")
4150
FileUtils.rm_rf File.join(File.dirname(__FILE__), "ports")
4251
FileUtils.rm_rf File.join(File.dirname(__FILE__), "tmp")
4352
end

0 commit comments

Comments
 (0)