Sha256: 875bd3b5ec2b29197c9bc31caa441437a969dd79324095c552ba97c15f160981

Contents?: true

Size: 1.05 KB

Versions: 4

Compression:

Stored size: 1.05 KB

Contents

# frozen_string_literal: true, encoding: ASCII-8BIT

require 'fileutils'
require 'mt-libuv'

module FFI::Platform
    def self.ia32?
        ARCH == "i386"
    end

    def self.x64?
        ARCH == "x86_64"
    end
end

# Ensure the submodule is cloned
file 'ext/libcouchbase/include' do
    system 'git', 'submodule', 'update', '--init'
end

file 'ext/libcouchbase/build' => 'ext/libcouchbase/include' do
    FileUtils.mkdir('ext/libcouchbase/build')
end

file 'ext/libcouchbase/build/makefile' => 'ext/libcouchbase/build' do
    result = nil
    Dir.chdir("ext/libcouchbase") do |path|
        result = system './cmake/configure', '-disable-couchbasemock', '-with-libuv', ::File.expand_path('../../', ::MTLibuv::Ext.path_to_internal_libuv)
    end
    raise 'could not find cmake on path' unless result
end

file "ext/libcouchbase/build/lib/libcouchbase_libuv.#{FFI::Platform::LIBSUFFIX}" => 'ext/libcouchbase/build/makefile' do
    result = nil
    Dir.chdir('ext/libcouchbase/build') do |path|
        result = system 'make'
    end
    raise 'make failed' unless result
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mt-libcouchbase-1.4.03 lib/mt-libcouchbase/ext/tasks.rb
mt-libcouchbase-1.4.02 lib/mt-libcouchbase/ext/tasks.rb
mt-libcouchbase-1.4.01 lib/mt-libcouchbase/ext/tasks.rb
mt-libcouchbase-1.4.0 lib/mt-libcouchbase/ext/tasks.rb