diff options
Diffstat (limited to '')
l--------- | bu | 1 | ||||
-rw-r--r-- | build.conf | 38 |
2 files changed, 34 insertions, 5 deletions
@@ -0,0 +1 @@ | |||
src/bu/ \ No newline at end of file | |||
@@ -1,13 +1,20 @@ | |||
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 | #set "CXXFLAGS" += "-pg" | ||
10 | #set "LDFLAGS" += "-pg" | ||
11 | |||
12 | filesIn("src") filter regexp("^src/(.*)\\.h$", "src/bu/{re:1}.h"): | ||
13 | rule "hln", | ||
14 | group "lnhdrs", | ||
15 | target file, | ||
16 | input "src/{re:1}.h" | ||
17 | |||
11 | "libbu++.a": | 18 | "libbu++.a": |
12 | rule "lib", | 19 | rule "lib", |
13 | target file, | 20 | target file, |
@@ -17,6 +24,7 @@ set "CXXFLAGS" += "-ggdb -Wall" | |||
17 | directoriesIn("src/tests","tests/"): | 24 | directoriesIn("src/tests","tests/"): |
18 | rule "exe", | 25 | rule "exe", |
19 | target file, | 26 | target file, |
27 | group "tests", | ||
20 | requires "libbu++.a", | 28 | requires "libbu++.a", |
21 | set "CXXFLAGS" += "-Isrc", | 29 | set "CXXFLAGS" += "-Isrc", |
22 | set "LDFLAGS" += "-L. -lbu++", | 30 | set "LDFLAGS" += "-L. -lbu++", |
@@ -25,6 +33,18 @@ directoriesIn("src/tests","tests/"): | |||
25 | filesIn("src/tests") filter regexp("^src/tests/(.*)\\.cpp$", "tests/{re:1}"): | 33 | filesIn("src/tests") filter regexp("^src/tests/(.*)\\.cpp$", "tests/{re:1}"): |
26 | rule "exe", | 34 | rule "exe", |
27 | target file, | 35 | target file, |
36 | group "tests", | ||
37 | requires "libbu++.a", | ||
38 | set "CXXFLAGS" += "-Isrc", | ||
39 | set "LDFLAGS" += "-L. -lbu++", | ||
40 | input "src/{target}.cpp" | ||
41 | |||
42 | ["tests/itoqueue1", "tests/itoqueue2"]: set "LDFLAGS" += "-lpthread" | ||
43 | |||
44 | filesIn("src/unit") filter regexp("^src/unit/(.*)\\.cpp$", "unit/{re:1}"): | ||
45 | rule "exe", | ||
46 | target file, | ||
47 | group "tests", | ||
28 | requires "libbu++.a", | 48 | requires "libbu++.a", |
29 | set "CXXFLAGS" += "-Isrc", | 49 | set "CXXFLAGS" += "-Isrc", |
30 | set "LDFLAGS" += "-L. -lbu++", | 50 | set "LDFLAGS" += "-L. -lbu++", |
@@ -32,6 +52,8 @@ filesIn("src/tests") filter regexp("^src/tests/(.*)\\.cpp$", "tests/{re:1}"): | |||
32 | 52 | ||
33 | "tests/plugin": set "LDFLAGS" += "-ldl" | 53 | "tests/plugin": set "LDFLAGS" += "-ldl" |
34 | 54 | ||
55 | "tests/bzip2": set "LDFLAGS" += "-lbz2" | ||
56 | |||
35 | rule "exe": | 57 | rule "exe": |
36 | matches regexp("(.*)\\.o$"), | 58 | matches regexp("(.*)\\.o$"), |
37 | aggregate toString(" "), | 59 | aggregate toString(" "), |
@@ -47,3 +69,9 @@ rule "cpp": | |||
47 | produces "{re:1}.o", | 69 | produces "{re:1}.o", |
48 | requires commandToList("g++ -M {CXXFLAGS} {match}", "make"), | 70 | requires commandToList("g++ -M {CXXFLAGS} {match}", "make"), |
49 | perform command("g++ {CXXFLAGS} -c -o {target} {match}") | 71 | perform command("g++ {CXXFLAGS} -c -o {target} {match}") |
72 | |||
73 | rule "hln": | ||
74 | matches regexp("src/(.*)\\.h"), | ||
75 | produces "src/bu/{re:1}.h", | ||
76 | perform command("ln -s ../{re:1}.h {target}") | ||
77 | |||