aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Buland <eichlan@xagasoft.com>2006-09-29 19:44:04 +0000
committerMike Buland <eichlan@xagasoft.com>2006-09-29 19:44:04 +0000
commit21431a7d904b60a160c3bd1e94a20c512c6b54c6 (patch)
tree594e3cbde638afc01c964f70cde5e47994c90025
parent8e7a23415a7516058be4b18418db2eb9a57edb09 (diff)
downloadbuild-21431a7d904b60a160c3bd1e94a20c512c6b54c6.tar.gz
build-21431a7d904b60a160c3bd1e94a20c512c6b54c6.tar.bz2
build-21431a7d904b60a160c3bd1e94a20c512c6b54c6.tar.xz
build-21431a7d904b60a160c3bd1e94a20c512c6b54c6.zip
Fixed the makefile, this should only be used in clean checkouts when you have
nothing else. It will automatically wget the necesarry files from libbu++ and put them right in your src dir... make clean will delete them as well.
-rw-r--r--Makefile210
-rw-r--r--pymake.conf101
2 files changed, 21 insertions, 290 deletions
diff --git a/Makefile b/Makefile
index 261f3d4..87a4652 100644
--- a/Makefile
+++ b/Makefile
@@ -1,199 +1,31 @@
1.PHONY: all clean parser-header lexer-header build-header 1LIBBU:=$(foreach f,paramproc.h paramproc.cpp staticstring.h staticstring.cpp exceptions.h exceptions.cpp serializable.h serializable.cpp exceptionbase.h exceptionbase.cpp plugger.h plugger.cpp singleton.h hashtable.cpp hashtable.h hashfunction.h hashfunction.cpp hashfunctionint.cpp hashfunctionint.h hashfunctionstring.cpp hashfunctionstring.h serializerbinary.cpp serializerbinary.h serializer.cpp serializer.h stringrep.h stringrep.cpp,src/$f)
2SRC:=$(sort $(wildcard src/*.cpp) $(filter %.cpp,$(LIBBU)))
3OBJ:=$(patsubst %.cpp,%.o,$(SRC)) src/build.yy.o src/build.tab.o
2 4
3.SILENT: all clean parser-header src/build.tab.c src/build.tab.o parser lexer-header src/build.yy.c src/build.yy.o lexer build-header src/viewerpercent.o src/targetfile.o src/functioncommandtolist.o src/cache.o src/targetfactory.o src/performcommand.o src/target.o src/viewerfactory.o src/regexp.o src/rule.o src/functiontargets.o src/functiontostring.o src/viewermake.o src/stringprocbuild.o src/functionfilesin.o src/performfactory.o src/build.o src/functionfactory.o src/action.o src/function.o src/functiondirectoriesin.o src/main.o src/functionregexp.o src/parser.o src/stringproc.o src/buildparser.o src/perform.o src/viewerplain.o src/viewer.o build 5.PHONY: all extern clean
6# .SILENT:
4 7
5all: parser-header parser lexer-header lexer build-header build 8all: extern build
6 9
7parser-header: 10clean:
8 echo "--- parser ---" 11 -rm -Rf $(LIBBU) build $(OBJ)
9
10src/build.tab.c: src/build.y
11 echo " comp: src/build.tab.c"
12 cd src; bison ../src/build.y; cd ..
13
14src/build.tab.o: src/build.tab.c
15 echo " comp: src/build.tab.o"
16 g++ -c src/build.tab.c -ggdb -Ilibbu++/src -Isrc -o src/build.tab.o
17
18parser: src/build.tab.o
19 echo " stupid: parser"
20
21
22lexer-header:
23 echo
24 echo "--- lexer ---"
25
26src/build.yy.c: src/build.l
27 echo " comp: src/build.yy.c"
28 flex --bison-bridge --bison-locations -o src/build.yy.c src/build.l
29
30src/build.yy.o: src/build.yy.c
31 echo " comp: src/build.yy.o"
32 g++ -c src/build.yy.c -ggdb -Ilibbu++/src -Isrc -o src/build.yy.o
33
34lexer: src/build.yy.o
35 echo " stupid: lexer"
36
37
38build-header:
39 echo
40 echo "--- build ---"
41
42src/viewerpercent.o: src/viewerpercent.cpp
43 echo " comp: src/viewerpercent.o"
44 g++ -c src/viewerpercent.cpp -ggdb -Ilibbu++/src -Isrc -o src/viewerpercent.o
45
46src/targetfile.o: src/targetfile.cpp
47 echo " comp: src/targetfile.o"
48 g++ -c src/targetfile.cpp -ggdb -Ilibbu++/src -Isrc -o src/targetfile.o
49
50src/functioncommandtolist.o: src/functioncommandtolist.cpp
51 echo " comp: src/functioncommandtolist.o"
52 g++ -c src/functioncommandtolist.cpp -ggdb -Ilibbu++/src -Isrc -o src/functioncommandtolist.o
53
54src/cache.o: src/cache.cpp
55 echo " comp: src/cache.o"
56 g++ -c src/cache.cpp -ggdb -Ilibbu++/src -Isrc -o src/cache.o
57
58src/targetfactory.o: src/targetfactory.cpp
59 echo " comp: src/targetfactory.o"
60 g++ -c src/targetfactory.cpp -ggdb -Ilibbu++/src -Isrc -o src/targetfactory.o
61
62src/performcommand.o: src/performcommand.cpp
63 echo " comp: src/performcommand.o"
64 g++ -c src/performcommand.cpp -ggdb -Ilibbu++/src -Isrc -o src/performcommand.o
65
66src/target.o: src/target.cpp
67 echo " comp: src/target.o"
68 g++ -c src/target.cpp -ggdb -Ilibbu++/src -Isrc -o src/target.o
69
70src/viewerfactory.o: src/viewerfactory.cpp
71 echo " comp: src/viewerfactory.o"
72 g++ -c src/viewerfactory.cpp -ggdb -Ilibbu++/src -Isrc -o src/viewerfactory.o
73
74src/regexp.o: src/regexp.cpp
75 echo " comp: src/regexp.o"
76 g++ -c src/regexp.cpp -ggdb -Ilibbu++/src -Isrc -o src/regexp.o
77
78src/rule.o: src/rule.cpp
79 echo " comp: src/rule.o"
80 g++ -c src/rule.cpp -ggdb -Ilibbu++/src -Isrc -o src/rule.o
81
82src/functiontargets.o: src/functiontargets.cpp
83 echo " comp: src/functiontargets.o"
84 g++ -c src/functiontargets.cpp -ggdb -Ilibbu++/src -Isrc -o src/functiontargets.o
85
86src/functiontostring.o: src/functiontostring.cpp
87 echo " comp: src/functiontostring.o"
88 g++ -c src/functiontostring.cpp -ggdb -Ilibbu++/src -Isrc -o src/functiontostring.o
89
90src/viewermake.o: src/viewermake.cpp
91 echo " comp: src/viewermake.o"
92 g++ -c src/viewermake.cpp -ggdb -Ilibbu++/src -Isrc -o src/viewermake.o
93
94src/stringprocbuild.o: src/stringprocbuild.cpp
95 echo " comp: src/stringprocbuild.o"
96 g++ -c src/stringprocbuild.cpp -ggdb -Ilibbu++/src -Isrc -o src/stringprocbuild.o
97
98src/functionfilesin.o: src/functionfilesin.cpp
99 echo " comp: src/functionfilesin.o"
100 g++ -c src/functionfilesin.cpp -ggdb -Ilibbu++/src -Isrc -o src/functionfilesin.o
101
102src/performfactory.o: src/performfactory.cpp
103 echo " comp: src/performfactory.o"
104 g++ -c src/performfactory.cpp -ggdb -Ilibbu++/src -Isrc -o src/performfactory.o
105
106src/build.o: src/build.cpp
107 echo " comp: src/build.o"
108 g++ -c src/build.cpp -ggdb -Ilibbu++/src -Isrc -o src/build.o
109
110src/functionfactory.o: src/functionfactory.cpp
111 echo " comp: src/functionfactory.o"
112 g++ -c src/functionfactory.cpp -ggdb -Ilibbu++/src -Isrc -o src/functionfactory.o
113
114src/action.o: src/action.cpp
115 echo " comp: src/action.o"
116 g++ -c src/action.cpp -ggdb -Ilibbu++/src -Isrc -o src/action.o
117
118src/function.o: src/function.cpp
119 echo " comp: src/function.o"
120 g++ -c src/function.cpp -ggdb -Ilibbu++/src -Isrc -o src/function.o
121
122src/functiondirectoriesin.o: src/functiondirectoriesin.cpp
123 echo " comp: src/functiondirectoriesin.o"
124 g++ -c src/functiondirectoriesin.cpp -ggdb -Ilibbu++/src -Isrc -o src/functiondirectoriesin.o
125
126src/main.o: src/main.cpp
127 echo " comp: src/main.o"
128 g++ -c src/main.cpp -ggdb -Ilibbu++/src -Isrc -o src/main.o
129
130src/functionregexp.o: src/functionregexp.cpp
131 echo " comp: src/functionregexp.o"
132 g++ -c src/functionregexp.cpp -ggdb -Ilibbu++/src -Isrc -o src/functionregexp.o
133
134src/parser.o: src/parser.cpp
135 echo " comp: src/parser.o"
136 g++ -c src/parser.cpp -ggdb -Ilibbu++/src -Isrc -o src/parser.o
137
138src/stringproc.o: src/stringproc.cpp
139 echo " comp: src/stringproc.o"
140 g++ -c src/stringproc.cpp -ggdb -Ilibbu++/src -Isrc -o src/stringproc.o
141 12
142src/buildparser.o: src/buildparser.cpp 13extern: $(LIBBU)
143 echo " comp: src/buildparser.o"
144 g++ -c src/buildparser.cpp -ggdb -Ilibbu++/src -Isrc -o src/buildparser.o
145 14
146src/perform.o: src/perform.cpp 15$(LIBBU):
147 echo " comp: src/perform.o" 16 wget -nv -Psrc/ http://svn.xagasoft.com/libbu++/trunk/$@
148 g++ -c src/perform.cpp -ggdb -Ilibbu++/src -Isrc -o src/perform.o
149 17
150src/viewerplain.o: src/viewerplain.cpp 18build: $(OBJ)
151 echo " comp: src/viewerplain.o" 19 g++ -ggdb -ldl -o build $(OBJ)
152 g++ -c src/viewerplain.cpp -ggdb -Ilibbu++/src -Isrc -o src/viewerplain.o
153 20
154src/viewer.o: src/viewer.cpp 21%.o: %.cpp
155 echo " comp: src/viewer.o" 22 g++ -ggdb -Isrc -c -o $@ $<
156 g++ -c src/viewer.cpp -ggdb -Ilibbu++/src -Isrc -o src/viewer.o
157 23
158build: src/functionfactory.o src/regexp.o src/viewerpercent.o src/targetfactory.o src/buildparser.o src/functiontargets.o src/stringprocbuild.o src/rule.o src/functioncommandtolist.o src/functiontostring.o src/action.o src/viewer.o src/main.o src/viewerfactory.o src/target.o src/performfactory.o src/build.o src/parser.o src/perform.o src/functiondirectoriesin.o src/performcommand.o src/function.o src/build.yy.o src/build.tab.o src/cache.o src/viewermake.o src/functionregexp.o src/functionfilesin.o src/viewerplain.o src/stringproc.o src/targetfile.o 24%.o: %.c
159 echo " exe: build" 25 g++ -ggdb -Isrc -c -o $@ $<
160 g++ src/functionfactory.o src/regexp.o src/viewerpercent.o src/targetfactory.o src/buildparser.o src/functiontargets.o src/stringprocbuild.o src/rule.o src/functioncommandtolist.o src/functiontostring.o src/action.o src/viewer.o src/main.o src/viewerfactory.o src/target.o src/performfactory.o src/build.o src/parser.o src/perform.o src/functiondirectoriesin.o src/performcommand.o src/function.o src/build.yy.o src/build.tab.o src/cache.o src/viewermake.o src/functionregexp.o src/functionfilesin.o src/viewerplain.o src/stringproc.o src/targetfile.o -Llibbu++ -lbu++ -ldl -o build
161 26
162clean: 27%.yy.c: %.l
163 -if [ -f src/build.tab.c ] ; then echo " rm: src/build.tab.c" ; rm src/build.tab.c ; fi 28 flex --bison-bridge --bison-locations -o $@ $<
164 -if [ -f src/build.tab.o ] ; then echo " rm: src/build.tab.o" ; rm src/build.tab.o ; fi
165 -if [ -f parser ] ; then echo " rm: parser" ; rm parser ; fi
166 -if [ -f src/build.yy.c ] ; then echo " rm: src/build.yy.c" ; rm src/build.yy.c ; fi
167 -if [ -f src/build.yy.o ] ; then echo " rm: src/build.yy.o" ; rm src/build.yy.o ; fi
168 -if [ -f lexer ] ; then echo " rm: lexer" ; rm lexer ; fi
169 -if [ -f src/viewerpercent.o ] ; then echo " rm: src/viewerpercent.o" ; rm src/viewerpercent.o ; fi
170 -if [ -f src/targetfile.o ] ; then echo " rm: src/targetfile.o" ; rm src/targetfile.o ; fi
171 -if [ -f src/functioncommandtolist.o ] ; then echo " rm: src/functioncommandtolist.o" ; rm src/functioncommandtolist.o ; fi
172 -if [ -f src/cache.o ] ; then echo " rm: src/cache.o" ; rm src/cache.o ; fi
173 -if [ -f src/targetfactory.o ] ; then echo " rm: src/targetfactory.o" ; rm src/targetfactory.o ; fi
174 -if [ -f src/performcommand.o ] ; then echo " rm: src/performcommand.o" ; rm src/performcommand.o ; fi
175 -if [ -f src/target.o ] ; then echo " rm: src/target.o" ; rm src/target.o ; fi
176 -if [ -f src/viewerfactory.o ] ; then echo " rm: src/viewerfactory.o" ; rm src/viewerfactory.o ; fi
177 -if [ -f src/regexp.o ] ; then echo " rm: src/regexp.o" ; rm src/regexp.o ; fi
178 -if [ -f src/rule.o ] ; then echo " rm: src/rule.o" ; rm src/rule.o ; fi
179 -if [ -f src/functiontargets.o ] ; then echo " rm: src/functiontargets.o" ; rm src/functiontargets.o ; fi
180 -if [ -f src/functiontostring.o ] ; then echo " rm: src/functiontostring.o" ; rm src/functiontostring.o ; fi
181 -if [ -f src/viewermake.o ] ; then echo " rm: src/viewermake.o" ; rm src/viewermake.o ; fi
182 -if [ -f src/stringprocbuild.o ] ; then echo " rm: src/stringprocbuild.o" ; rm src/stringprocbuild.o ; fi
183 -if [ -f src/functionfilesin.o ] ; then echo " rm: src/functionfilesin.o" ; rm src/functionfilesin.o ; fi
184 -if [ -f src/performfactory.o ] ; then echo " rm: src/performfactory.o" ; rm src/performfactory.o ; fi
185 -if [ -f src/build.o ] ; then echo " rm: src/build.o" ; rm src/build.o ; fi
186 -if [ -f src/functionfactory.o ] ; then echo " rm: src/functionfactory.o" ; rm src/functionfactory.o ; fi
187 -if [ -f src/action.o ] ; then echo " rm: src/action.o" ; rm src/action.o ; fi
188 -if [ -f src/function.o ] ; then echo " rm: src/function.o" ; rm src/function.o ; fi
189 -if [ -f src/functiondirectoriesin.o ] ; then echo " rm: src/functiondirectoriesin.o" ; rm src/functiondirectoriesin.o ; fi
190 -if [ -f src/main.o ] ; then echo " rm: src/main.o" ; rm src/main.o ; fi
191 -if [ -f src/functionregexp.o ] ; then echo " rm: src/functionregexp.o" ; rm src/functionregexp.o ; fi
192 -if [ -f src/parser.o ] ; then echo " rm: src/parser.o" ; rm src/parser.o ; fi
193 -if [ -f src/stringproc.o ] ; then echo " rm: src/stringproc.o" ; rm src/stringproc.o ; fi
194 -if [ -f src/buildparser.o ] ; then echo " rm: src/buildparser.o" ; rm src/buildparser.o ; fi
195 -if [ -f src/perform.o ] ; then echo " rm: src/perform.o" ; rm src/perform.o ; fi
196 -if [ -f src/viewerplain.o ] ; then echo " rm: src/viewerplain.o" ; rm src/viewerplain.o ; fi
197 -if [ -f src/viewer.o ] ; then echo " rm: src/viewer.o" ; rm src/viewer.o ; fi
198 -if [ -f build ] ; then echo " rm: build" ; rm build ; fi
199 29
30%.tab.c: %.y
31 bison -v -b$(patsubst %.tab.c,%,$@) $<
diff --git a/pymake.conf b/pymake.conf
deleted file mode 100644
index 4141407..0000000
--- a/pymake.conf
+++ /dev/null
@@ -1,101 +0,0 @@
1### pymake by ~3o~ph()g (neonphog.com) ###
2## This skeleton file was generated by pymake... please edit for your project.
3
4## Global flag section, uncomment to set flags which will be applied to all
5CXXFLAGS: -ggdb -Ilibbu++/src
6LDFLAGS: -Llibbu++ -lbu++ -ldl
7
8[BUILD]
9FILE: src/build.y
10COMMAND: stupid
11OUTPUT: parser
12
13[BUILD]
14FILE: src/build.l
15COMMAND: stupid
16OUTPUT: lexer
17
18## A simple command to build everything in this directory, and output
19## an executable with the name 'main'
20[BUILD]
21DIR: src
22COMMAND: exe
23OUTPUT: build
24
25## To run a command, like a legacy 'make' command, issue the following:
26#[RUN]
27#COMMAND: make -C testsrc/legacy #this command will normally be run
28#CLEAN: make -C testsrc/legacy clean #this command will be run on '-c'
29
30## A more complicated build example
31#[BUILD]
32#COMMAND: exe
33#OUTPUT: the_one
34#DIR: testsrc/one
35#FILE: testsrc/share/test.cpp
36#CXXFLAGS: -Itestsrc/share
37#LDFLAGS: -lreadline
38
39## The [DIRBUILD] macro expands into many [BUILD] sections:
40#[DIRBUILD]
41#COMMAND: exe
42#OUTPUT: db{NAME}.so #{NAME} will be replaced with the directory name
43#ROOT: testsrc/db
44#CXXFLAGS -Itestsrc/share
45#LDFLAGS: -lreadline
46
47## The [OVERRIDE] directive allows you to append flags to specific targets
48#[OVERRIDE]
49#FILE: testsrc/db/mysql/main.o
50#CXXFLAGS: -I../..
51
52### The following are the build commands and triggers ###
53### These are the default gnu g++ build commands ###
54
55### Compile trigger ###
56## Takes c++ source code, builds an object file
57## Includes function for dependancy checking
58[TRIGGER]
59INPUT: .cpp #take input of *.cpp files
60OUTPUT: .o #output .o files
61COMMAND: g++ -c {INPUT} {CXXFLAGS} -I{DIR} -o {OUTPUT}
62CHECK: g++ -M {INPUT} {CXXFLAGS} -I{DIR}
63
64[TRIGGER]
65INPUT: .c #take input of *.cpp files
66OUTPUT: .o #output .o files
67COMMAND: g++ -c {INPUT} {CXXFLAGS} -I{DIR} -o {OUTPUT}
68CHECK: g++ -M {INPUT} {CXXFLAGS} -I{DIR}
69
70[TRIGGER]
71INPUT: .y
72OUTPUT: .tab.c
73COMMAND: cd src; bison ../{INPUT}; cd ..
74
75[TRIGGER]
76INPUT: .l
77OUTPUT: .yy.c
78COMMAND: flex --bison-bridge --bison-locations -o {OUTPUT} {INPUT}
79
80### Executable command ###
81## Use this command if you want a simple executable
82[COMMAND]
83NAME: exe
84COMMAND: g++ {INPUT} {LDFLAGS} -o {OUTPUT}
85
86### Library command ###
87## Use this command if you wish to create a library
88[COMMAND]
89NAME: lib
90COMMAND: ar cr{ARFLAGS} {OUTPUT} {INPUT}
91
92[COMMAND]
93NAME: stupid
94
95### Strange example ###
96## The following trigger will take all *.q files, strip all '&'s from them
97## and generate a .cpp file, which will then be compiled using the cpp trigger.
98#[TRIGGER]
99#INPUT: .q
100#OUTPUT: .cpp
101#COMMAND: sed -e "s/&//g" {INPUT} > {OUTPUT}