aboutsummaryrefslogtreecommitdiff
path: root/build.conf
diff options
context:
space:
mode:
Diffstat (limited to 'build.conf')
-rw-r--r--build.conf26
1 files changed, 14 insertions, 12 deletions
diff --git a/build.conf b/build.conf
index 2115fb0..47bbba5 100644
--- a/build.conf
+++ b/build.conf
@@ -1,38 +1,40 @@
1# build.conf for build, kind of whacky, eh?
2
1default action: check "build", check "cleanup" 3default 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
27rule "exe" 29rule "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
32rule "cpp": 34rule "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