rscons 0.0.14 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -1
- data/README.md +128 -11
- data/{Rakefile → Rakefile.rb} +8 -3
- data/build_tests/d/main.d +6 -0
- data/lib/rscons/builders/library.rb +2 -2
- data/lib/rscons/builders/object.rb +27 -28
- data/lib/rscons/builders/program.rb +17 -19
- data/lib/rscons/cache.rb +9 -9
- data/lib/rscons/environment.rb +52 -65
- data/lib/rscons/varset.rb +7 -11
- data/lib/rscons/version.rb +1 -1
- data/spec/build_tests_spec.rb +153 -52
- data/spec/rscons/cache_spec.rb +204 -0
- data/spec/rscons/environment_spec.rb +257 -6
- data/spec/rscons/varset_spec.rb +16 -11
- data/spec/rscons_spec.rb +26 -0
- data/spec/spec_helper.rb +3 -1
- metadata +10 -14
- data/build_tests/build_dir/build.rb +0 -5
- data/build_tests/build_dir/tweaker_build.rb +0 -12
- data/build_tests/clone_env/build.rb +0 -11
- data/build_tests/custom_builder/build.rb +0 -15
- data/build_tests/header/build.rb +0 -3
- data/build_tests/library/build.rb +0 -4
- data/build_tests/simple/build.rb +0 -4
- data/build_tests/simple_cc/build.rb +0 -4
- data/build_tests/two_sources/build.rb +0 -4
@@ -1,12 +0,0 @@
|
|
1
|
-
Rscons::Environment.new do |env|
|
2
|
-
env.append('CPPPATH' => Dir['src/**/*/'])
|
3
|
-
env.build_dir(%r{^src/([^/]+)/}, 'build_\\1/')
|
4
|
-
env.add_tweaker do |build_op|
|
5
|
-
if build_op[:target] =~ %r{build_one/.*\.o}
|
6
|
-
build_op[:vars]["CFLAGS"] << "-O1"
|
7
|
-
elsif build_op[:target] =~ %r{build_two/.*\.o}
|
8
|
-
build_op[:vars]["CFLAGS"] << "-O2"
|
9
|
-
end
|
10
|
-
end
|
11
|
-
env.Program('tweaker', Dir['src/**/*.c'])
|
12
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
debug = Rscons::Environment.new do |env|
|
2
|
-
env.build_dir('src', 'debug')
|
3
|
-
env['CFLAGS'] = '-O2'
|
4
|
-
env['CPPFLAGS'] = '-DSTRING="Debug Version"'
|
5
|
-
env.Program('program-debug', Dir['src/*.c'])
|
6
|
-
end
|
7
|
-
|
8
|
-
release = debug.clone('CPPFLAGS' => '-DSTRING="Release Version"') do |env|
|
9
|
-
env.build_dir('src', 'release')
|
10
|
-
env.Program('program-release', Dir['src/*.c'])
|
11
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
class MySource < Rscons::Builder
|
2
|
-
def run(target, sources, cache, env, vars = {})
|
3
|
-
File.open(target, 'w') do |fh|
|
4
|
-
fh.puts <<EOF
|
5
|
-
#define THE_VALUE 5678
|
6
|
-
EOF
|
7
|
-
end
|
8
|
-
target
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
Rscons::Environment.new(echo: :short, builders: [MySource.new]) do |env|
|
13
|
-
env.MySource('inc.h', [])
|
14
|
-
env.Program('program', Dir['*.c'])
|
15
|
-
end
|
data/build_tests/header/build.rb
DELETED
data/build_tests/simple/build.rb
DELETED