diff options
Diffstat (limited to 'build.conf')
-rw-r--r-- | build.conf | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -1,38 +1,40 @@ | |||
1 | # build.conf for build, kind of whacky, eh? | ||
2 | |||
1 | default action: check "build", check "cleanup" | 3 | default action: check "build", check "cleanup" |
2 | 4 | ||
3 | ["build", "cleanup"]: | 5 | ["build", "cleanup"]: |
4 | rule "exe", | 6 | rule "exe", |
5 | target file, | 7 | target file, |
6 | set "CXXFLAGS" = "-lBob", | 8 | set "CXXFLAGS" = "-lBob", |
7 | input [files("src/{target}" ), files("src/shared")] | 9 | input [filesIn("src/{target}"), filesIn("src/shared")] |
8 | 10 | ||
9 | [directoryName("src/tests")] filter /src\/tests/(.*)/tests\/{re:1}/: | 11 | [directoriesIn("src/tests")] filter regexp("src/tests/(.*)", "tests/{re:1}"): |
10 | rule "exe", | 12 | rule "exe", |
11 | target prefix "tests/", | 13 | target prefix "tests/", |
12 | target file, | 14 | target file, |
13 | input files("src/tests/{target}") | 15 | input filesIn("src/tests/{target}") |
14 | 16 | ||
15 | [directories("src/tests"), aoeua]: | 17 | [directoriesIn("src/tests"), "aoeua"]: |
16 | rule "exe", | 18 | rule "exe", |
17 | target file, | 19 | target file, |
18 | input files("src/{target}") | 20 | input filesIn("src/{target}") |
19 | 21 | ||
20 | "build": | 22 | "build": |
21 | input [files("src"), "boy.cpp"] filter /.*\.cpp$/, | 23 | input [filesIn("src"), "boy.cpp"] filter regexp(".*\\.cpp$"), |
22 | input filter /.*\.cpp$/, | 24 | input filter regexp(".*\\.cpp$"), |
23 | requires ["bob.cpp", "libbuild.a", "libbu++/libbu++.a"] | 25 | requires ["bob.cpp", "libbuild.a", "libbu++/libbu++.a"] |
24 | 26 | ||
25 | "bob.cpp": set "aoeu" = "food", requires "bob.bastard" | 27 | "bob.cpp": set "aoeu" = "food", requires "bob.bastard" |
26 | 28 | ||
27 | rule "exe" | 29 | rule "exe": |
28 | matches /(.*)\.o$/, | 30 | matches regexp("(.*)\\.o$"), |
29 | input filter toSpaces(), | 31 | input filter toString(), |
30 | perform command("stuff") | 32 | perform command("stuff") |
31 | 33 | ||
32 | rule "cpp": | 34 | rule "cpp": |
33 | matches /(.*)\.cpp$/, | 35 | matches regexp("(.*)\\.cpp$"), |
34 | produces "{re:1}.o", | 36 | produces "{re:1}.o", |
35 | requires commandToList( make, "g++ -M {match}"), | 37 | requires commandToList("make", "g++ -M {match}"), |
36 | perform command("stuff") | 38 | perform command("stuff") |
37 | 39 | ||
38 | 40 | ||