From ddabe5b38df96b49c5ee94c2edf9e2bedbd96e55 Mon Sep 17 00:00:00 2001 From: miyucy Date: Tue, 23 Sep 2014 12:50:51 +0900 Subject: [PATCH] use vendor sources to compile --- ext/extconf.rb | 53 +++++++++++++++++++++----------------------------- 1 file changed, 22 insertions(+), 31 deletions(-) diff --git a/ext/extconf.rb b/ext/extconf.rb index bb84dd4..e878ae8 100644 --- a/ext/extconf.rb +++ b/ext/extconf.rb @@ -1,39 +1,30 @@ require 'mkmf' require 'fileutils' -unless have_library 'snappy_ext' - dst = File.dirname File.expand_path __FILE__ - - tar = 'tar' - tar = 'gnutar' if find_executable 'gnutar' - - ver = "1.1.1" - src = "snappy-#{ver}" - - FileUtils.rm_rf File.join dst, src - system "curl -s http://snappy.googlecode.com/files/#{src}.tar.gz | #{tar} xz" - - src = File.join dst, src - - Dir.chdir src do - system "./configure --disable-option-checking --disable-dependency-tracking --disable-gtest --without-gflags" +unless have_library 'snappy' + # build vendor/snappy + pwd = File.dirname File.expand_path __FILE__ + dir = File.join pwd, '..', 'vendor', 'snappy' + + Dir.chdir dir do + system './autogen.sh' + system './configure --disable-option-checking --disable-dependency-tracking --disable-gtest --without-gflags' end - %w( -config.h -snappy-c.cc -snappy-c.h -snappy-internal.h -snappy-sinksource.cc -snappy-sinksource.h -snappy-stubs-internal.cc -snappy-stubs-internal.h -snappy-stubs-public.h -snappy.cc -snappy.h - ).each do |file| - FileUtils.copy File.join(src, file), File.join(dst, file) if FileTest.exist? File.join(src, file) - end + src = %w( + config.h + snappy-c.cc + snappy-c.h + snappy-internal.h + snappy-sinksource.cc + snappy-sinksource.h + snappy-stubs-internal.cc + snappy-stubs-internal.h + snappy-stubs-public.h + snappy.cc + snappy.h + ).map { |e| File.join dir, e } + FileUtils.cp src, pwd, :verbose => true end create_makefile 'snappy_ext'