Sha256: 4f9f8da679d0fd49479a8b45511911904b0c935a81c56479d4e0edfa3985f0d6

Contents?: true

Size: 1.17 KB

Versions: 3

Compression:

Stored size: 1.17 KB

Contents

require 'kde-build/configuration.rb'

require 'yaml'
require 'singleton'

module BuildTool

    class MakeConfiguration

        include Singleton

        include MJ::Configuration::Configurable

        option( "executable", "Full path for to the executable" ).
            required
        option( "options", "TODO" )
        option( "cxxflags", "TODO" )

        def initialize
            self.executable = "make"
        end

    end


    class Make

        include MJ::Tools::SubProcess

        def make( command, wd = build_directory )
            self.class.execute "#{executable} #{cxxflags} #{options} #{command}", wd
        end

        def options
            MakeConfiguration.instance.options
        end

        def cxxflags
            MakeConfiguration.instance.cxxflags
        end

        def executable
            MakeConfiguration.instance.executable
        end
    end


    YAML.add_domain_type(
        "michael-jansen.biz,2009", "MakeConfiguration" ) {
            |type, val|
            mc = MakeConfiguration.instance
            MJ::Configuration::flatten_values val do
                |k, v|
                mc.set( k, v )
            end
        }

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
build-tool-0.0.3 lib/kde-build/tools/make.rb
build-tool-0.0.1 lib/kde-build/tools/make.rb
build-tool-0.0.2 lib/kde-build/tools/make.rb