Sha256: 6e5f4d4570ffdb192bb96b32d46fcea6b5045a4549f385eef1d92a054f8b553d

Contents?: true

Size: 849 Bytes

Versions: 9

Compression:

Stored size: 849 Bytes

Contents

import "autoclean", "package/tgz"

cpp_dirs = sys["c++/problem_*"]
c_dirs = sys["c/problem_*"]
all_dirs = cpp_dirs + c_dirs

cpp_rf_template = "c++/template.rf"
c_rf_template = "c/template.rf"

desc "Run all C and C++ tests."
task :run => all_dirs.map{ |f| "#{f}/run" }
desc "Build all."
task :build => all_dirs.map{ |f| "#{f}/test" }

desc "Remove all autogenerated files."
gen AutoClean

source "rule.rf"

desc "Create source package."
gen Package::Tgz, "pkg/c_cpp_exercises",
    :files => sys["Rantfile", "**/*.{c,cpp,h,rf}"]

gen Action do
    cpp_dirs.each { |dir|
        make "#{dir}/Rantfile" => cpp_rf_template do |t|
            sys.cp t.source, t.name
        end
    }
    c_dirs.each { |dir|
        make "#{dir}/Rantfile" => c_rf_template do |t|
            sys.cp t.source, t.name
        end
    }
    subdirs cpp_dirs, c_dirs
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
rant-0.5.6 doc/examples/c_cpp_examples/Rantfile
rant-0.4.4 doc/examples/c_cpp_examples/Rantfile
rant-0.4.8 doc/examples/c_cpp_examples/Rantfile
rant-0.5.2 doc/examples/c_cpp_examples/Rantfile
rant-0.5.4 doc/examples/c_cpp_examples/Rantfile
rant-0.4.2 doc/examples/c_cpp_examples/Rantfile
rant-0.4.6 doc/examples/c_cpp_examples/Rantfile
rant-0.5.0 doc/examples/c_cpp_examples/Rantfile
rant-0.5.7 doc/examples/c_cpp_examples/Rantfile