Add exceptions to the system.
[tairon.git] / Jamrules
blob04bf901b75f98ef6d2dcdda51243e6c93f9b8b07
1 LIBDIR = $(LIBDIR)/tairon ;
3 AR = "ar cr" ;
4 C++ = g++ ;
5 CC = $(C++) ;
6 LINK = g++ ;
7 PYTHON = python ;
9 C++FLAGS = -Wall -pipe -g -fPIC ;
10 DEFINES = TIXML_USE_STL ;
11 HDRS = ;
12 OPTIM = ;
13 SHAREDFLAG = -shared ;
16 rule BuildLibrary
18         BuildLibraryObjects $(<) : $(>:S=$(SUFOBJ)) ;
19         Objects $(>) ;
22 rule BuildLibraryObjects
24         local s ;
25         s = [ FGristFiles $(>) ] ;
26         l = $(<:S=$(SUFLIB)) ;
28         Depends $(l) : $(s) ;
30         if ! $(l:D) {
31                 MakeLocate $(l) $(l)$($(s:BS)) : $(LOCATE_TARGET) ;
32         }
34         Clean clean : $(l) ;
36         Archive $(l) : $(s) ;
38         if $(RANLIB) {
39                 Ranlib $(l) ;
40         }
43 rule C++
45         Depends $(<) : $(>) ;
47         if $(RELOCATE)
48         {
49                 CcMv $(<) : $(>) ;
50         }
52         C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) $(OPTIM) ;
54         # commented out because we don't want to add -I. to the parameters of the
55         # compiler
56         # CCHDRS on $(<) += [ on $(<) FIncludes $(HDRS) ] ;
57         CCDEFS on $(<) += [ on $(<) FDefines $(DEFINES) ] ;
60 rule Python
62         Clean clean : $(<) ;
64         SEARCH on $(>) = $(SEARCH_SOURCE) ;
65         MakeLocate $(<) : $(LOCATE_TARGET) ;
66         Depends $(<) : $(>) ;
69 rule Shared
71         LINKFLAGS on $(<) += $(SHAREDFLAG) [ on $(<) FLibraries $(SHAREDLIBS) ] ;
72         Main $(<) : $(>) ;
75 rule FLibraries
77         return -l$(<) ;
80 actions Python
82         $(PYTHON) $(>) $(<)
85 # vim: syntax=jam ai sw=4 ts=4 noet fdm=marker