Sha256: 82bafa0bc6b51fe5a507f47434c81b862e71efe7c8b3511f322ea90f2fb770c4

Contents?: true

Size: 949 Bytes

Versions: 1

Compression:

Stored size: 949 Bytes

Contents

require 'rake'
require 'rake/tasklib'
require 'rake/clean'
require 'leaves/version'


module Rake
module Leaves

  class QmakeTask < TaskLib
    attr_accessor :spec
    attr_accessor :makefile
    
    def initialize
      @makefile = "Makefile"
      
      yield self if block_given?
      define
    end
    
    def define
      define_build
      task :compile => [:qmake]
      
      file_create @makefile do
        cmd = "qmake"
        cmd << " -spec #{@spec}" if @spec
        sh cmd
      end
      task :qmake => [@makefile]
      
      self
    end
    
    private
      def define_build
        if (/darwin/.match(RUBY_PLATFORM) && (@spec.nil? || @spec == 'macx-xcode'))
          require 'leaves/xcode'
          Rake::Leaves::XcodeTask.new
        else
          require 'leaves/gnu'
          Rake::Leaves::MakeTask.new do |make|
            make.do_not_configure = true
          end
        end
      end
    
  end
  
end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
leaves-0.1.0 lib/leaves/qt.rb