aboutsummaryrefslogtreecommitdiff
path: root/congo
diff options
context:
space:
mode:
Diffstat (limited to 'congo')
-rw-r--r--congo86
1 files changed, 0 insertions, 86 deletions
diff --git a/congo b/congo
deleted file mode 100644
index f64cd9b..0000000
--- a/congo
+++ /dev/null
@@ -1,86 +0,0 @@
1#
2# Simple build.conf test file
3#
4# you can have as many actions as you'd like, the one that's run by default is
5# called "default action", you need a default action.
6#
7# Actions are filled with a comma-seperated list of commands, like "check xxx"
8# to check to see if a target needs to be rebuilt
9#
10default action: check congo, check congod
11
12#
13# This action will only build the server program
14#
15server action: check congod
16
17#
18# After that, it helps to define some targets, things that commands usually
19# refer to and interact with.
20#
21
22#
23# "create file" will do just what it says, create a file based on some
24# information and a rule.
25#
26# "from files in" tells us that a list of directories follows, and the input
27# list for the rule should be built from these files.
28#
29# "using rule" tells us which rule to use to actuall create the file
30#
31create file congod from files in src/congod, src/shared using rule exe
32create file congo from files in src/congo, src/shared using rule exe
33
34create files "modules/db{name}.so" from directories in src/congod/db ...
35 from files in "src/congod/db/{name}" using rule lib
36
37#
38# After all of that, some targets or list items may have their own additional
39# dependancies, depending on the rule that built them. You can define these
40# extra dependancies using "xxx requires yyy" which will force the system to
41# attempt to create yyy before xxx.
42#
43congod requires libcongo.a
44congo requires libcongo.a
45
46#
47# There are a number of variables that the rules can use, including any in the
48# environment. Sometimes you want to modify these, to do that you can use "set"
49# and the name of the variable, along with what to do to it.
50#
51# You can use '=' to set the value, destroying what was there, or '+=' to add
52# the new text to the variable, this will assume that the text you provide is
53# made up of space-delimited tokens, and will ensure spaces surround them when
54# they are added.
55#
56set CXXFLAGS += "-Ilibbu++/src"
57set LDFLAGS += "-Llibbu++ -lbu++"
58
59#
60# Sometimes individual targets or list items require special settings, this is
61# easy since build maintians a seperate set of variables for any items that need
62# special support.
63#
64# Currently you can only set, for an item, later you may be able to do more.
65#
66for congo set LDFLAGS += "-lreadline"
67
68#
69# Finally, no file is complete without some rules. Rules determine how to
70# fulfill target checking based on some input data. Generally this is going to
71# be creating an executable from a list of source files.
72#
73#
74# First specify the rule name, then you can filter the input list, if desired,
75# in two ways. You can use items that match a regular expression, and execute
76# the rule once for the whole list collectively, or once for each element that
77# made it through the filter.
78#
79# Within the perform, there are several things that could go there, for now,
80# just command, which takes a string, you can use {} for variable substitution.
81#
82rule exe matches all /(.*)\.o/ perform command ...
83 "g++ {matches} {LDFLAGS} -o {target}"
84
85rule cpp matches one /(.*)\.cpp/ produces {1}.o perform command ...
86 "g++ {CXXFLAGS} -o {target} {match}"