missing project/build files
[client-tools.git] / src / external / 3rd / library / tinyxml / build / linux / Makefile
blobfb8982a2dec13e77011de1887eb7db5d3d370081
1 #****************************************************************************
3 # Makefile for TinyXml test.
4 # Lee Thomason
5 # www.grinninglizard.com
7 # This is a GNU make (gmake) makefile
8 #****************************************************************************
10 # DEBUG can be set to YES to include debugging info, or NO otherwise
11 DEBUG := YES
13 # PROFILE can be set to YES to include profiling info, or NO otherwise
14 PROFILE := NO
16 # TINYXML_USE_STL can be used to turn on STL support. NO, then STL
17 # will not be used. YES will include the STL files.
18 TINYXML_USE_STL := YES
20 #****************************************************************************
22 CC := gcc
23 CXX := g++
24 LD := g++
25 AR := ar rc
26 RANLIB := ranlib
28 DEBUG_CFLAGS := -Wall -Wno-format -g -DDEBUG
29 RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3
31 LIBS :=
33 DEBUG_CXXFLAGS := ${DEBUG_CFLAGS}
34 RELEASE_CXXFLAGS := ${RELEASE_CFLAGS}
36 DEBUG_LDFLAGS := -g
37 RELEASE_LDFLAGS :=
39 ifeq (YES, ${DEBUG})
40 CFLAGS := ${DEBUG_CFLAGS}
41 CXXFLAGS := ${DEBUG_CXXFLAGS}
42 LDFLAGS := ${DEBUG_LDFLAGS}
43 else
44 CFLAGS := ${RELEASE_CFLAGS}
45 CXXFLAGS := ${RELEASE_CXXFLAGS}
46 LDFLAGS := ${RELEASE_LDFLAGS}
47 endif
49 ifeq (YES, ${PROFILE})
50 CFLAGS := ${CFLAGS} -pg -O3
51 CXXFLAGS := ${CXXFLAGS} -pg -O3
52 LDFLAGS := ${LDFLAGS} -pg
53 endif
55 #****************************************************************************
56 # Preprocessor directives
57 #****************************************************************************
59 ifeq (YES, ${TINYXML_USE_STL})
60 DEFS := -DTIXML_USE_STL
61 else
62 DEFS :=
63 endif
65 #****************************************************************************
66 # Include paths
67 #****************************************************************************
69 #INCS := -I/usr/include/g++-2 -I/usr/local/include
70 INCS :=
73 #****************************************************************************
74 # Makefile code common to all platforms
75 #****************************************************************************
77 CFLAGS := ${CFLAGS} ${DEFS}
78 CXXFLAGS := ${CXXFLAGS} ${DEFS}
80 #****************************************************************************
81 # Targets of the build
82 #****************************************************************************
84 OUTPUT := xmltest
86 all: ${OUTPUT}
89 #****************************************************************************
90 # Source files
91 #****************************************************************************
93 SRCS := tinyxml.cpp tinyxmlparser.cpp xmltest.cpp tinyxmlerror.cpp tinystr.cpp
95 # Add on the sources for libraries
96 SRCS := ${SRCS}
98 OBJS := $(addsuffix .o,$(basename ${SRCS}))
100 #****************************************************************************
101 # Output
102 #****************************************************************************
104 ${OUTPUT}: ${OBJS}
105 ${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}
107 #****************************************************************************
108 # common rules
109 #****************************************************************************
111 # Rules for compiling source files to object files
112 %.o : %.cpp
113 ${CXX} -c ${CXXFLAGS} ${INCS} $< -o $@
115 %.o : %.c
116 ${CC} -c ${CFLAGS} ${INCS} $< -o $@
118 dist:
119 bash makedistlinux
121 clean:
122 -rm -f core ${OBJS} ${OUTPUT}
124 depend:
125 #makedepend ${INCS} ${SRCS}
127 tinyxml.o: tinyxml.h tinystr.h
128 tinyxmlparser.o: tinyxml.h tinystr.h
129 xmltest.o: tinyxml.h tinystr.h
130 tinyxmlerror.o: tinyxml.h tinystr.h