diff options
Diffstat (limited to 'build.conf')
-rw-r--r-- | build.conf | 26 |
1 files changed, 21 insertions, 5 deletions
@@ -1,13 +1,17 @@ | |||
1 | # This is a build file for libbu++ | 1 | # This is a build file for libbu++ |
2 | 2 | ||
3 | default action: check "libbu++.a" | 3 | default action: check group "lnhdrs", check "libbu++.a" |
4 | "clean" action: clean targets() | 4 | "tests" action: check group "lnhdrs", check group "tests" |
5 | "tests" action: check targets() filter regexp("^tests/.*$") | 5 | "all" action: check group "lnhdrs", check targets() |
6 | "all" action: check targets() | ||
7 | "fstring" action: check "tests/fstring" | ||
8 | 6 | ||
9 | set "CXXFLAGS" += "-ggdb -Wall" | 7 | set "CXXFLAGS" += "-ggdb -Wall" |
10 | 8 | ||
9 | filesIn("src") filter regexp("^src/(.*)\\.h$", "src/bu/{re:1}.h"): | ||
10 | rule "hln", | ||
11 | group "lnhdrs", | ||
12 | target file, | ||
13 | input "src/{re:1}.h" | ||
14 | |||
11 | "libbu++.a": | 15 | "libbu++.a": |
12 | rule "lib", | 16 | rule "lib", |
13 | target file, | 17 | target file, |
@@ -17,6 +21,7 @@ set "CXXFLAGS" += "-ggdb -Wall" | |||
17 | directoriesIn("src/tests","tests/"): | 21 | directoriesIn("src/tests","tests/"): |
18 | rule "exe", | 22 | rule "exe", |
19 | target file, | 23 | target file, |
24 | group "tests", | ||
20 | requires "libbu++.a", | 25 | requires "libbu++.a", |
21 | set "CXXFLAGS" += "-Isrc", | 26 | set "CXXFLAGS" += "-Isrc", |
22 | set "LDFLAGS" += "-L. -lbu++", | 27 | set "LDFLAGS" += "-L. -lbu++", |
@@ -25,14 +30,18 @@ directoriesIn("src/tests","tests/"): | |||
25 | filesIn("src/tests") filter regexp("^src/tests/(.*)\\.cpp$", "tests/{re:1}"): | 30 | filesIn("src/tests") filter regexp("^src/tests/(.*)\\.cpp$", "tests/{re:1}"): |
26 | rule "exe", | 31 | rule "exe", |
27 | target file, | 32 | target file, |
33 | group "tests", | ||
28 | requires "libbu++.a", | 34 | requires "libbu++.a", |
29 | set "CXXFLAGS" += "-Isrc", | 35 | set "CXXFLAGS" += "-Isrc", |
30 | set "LDFLAGS" += "-L. -lbu++", | 36 | set "LDFLAGS" += "-L. -lbu++", |
31 | input "src/{target}.cpp" | 37 | input "src/{target}.cpp" |
32 | 38 | ||
39 | ["tests/itoqueue1", "tests/itoqueue2"]: set "LDFLAGS" += "-lpthread" | ||
40 | |||
33 | directoriesIn("src/unit","unit/"): | 41 | directoriesIn("src/unit","unit/"): |
34 | rule "exe", | 42 | rule "exe", |
35 | target file, | 43 | target file, |
44 | group "tests", | ||
36 | requires "libbu++.a", | 45 | requires "libbu++.a", |
37 | set "CXXFLAGS" += "-Isrc", | 46 | set "CXXFLAGS" += "-Isrc", |
38 | set "LDFLAGS" += "-L. -lbu++", | 47 | set "LDFLAGS" += "-L. -lbu++", |
@@ -41,6 +50,7 @@ directoriesIn("src/unit","unit/"): | |||
41 | filesIn("src/unit") filter regexp("^src/unit/(.*)\\.cpp$", "unit/{re:1}"): | 50 | filesIn("src/unit") filter regexp("^src/unit/(.*)\\.cpp$", "unit/{re:1}"): |
42 | rule "exe", | 51 | rule "exe", |
43 | target file, | 52 | target file, |
53 | group "tests", | ||
44 | requires "libbu++.a", | 54 | requires "libbu++.a", |
45 | set "CXXFLAGS" += "-Isrc", | 55 | set "CXXFLAGS" += "-Isrc", |
46 | set "LDFLAGS" += "-L. -lbu++", | 56 | set "LDFLAGS" += "-L. -lbu++", |
@@ -63,3 +73,9 @@ rule "cpp": | |||
63 | produces "{re:1}.o", | 73 | produces "{re:1}.o", |
64 | requires commandToList("g++ -M {CXXFLAGS} {match}", "make"), | 74 | requires commandToList("g++ -M {CXXFLAGS} {match}", "make"), |
65 | perform command("g++ {CXXFLAGS} -c -o {target} {match}") | 75 | perform command("g++ {CXXFLAGS} -c -o {target} {match}") |
76 | |||
77 | rule "hln": | ||
78 | matches regexp("src/(.*)\\.h"), | ||
79 | produces "src/bu/{re:1}.h", | ||
80 | perform command("ln -s ../{re:1}.h {target}") | ||
81 | |||