1#****************************************************************************
2#
3# Makefil for TinyXml test.
4# Lee Thomason
5# www.grinninglizard.com
6#
7# This is a GNU make (gmake) makefile
8#****************************************************************************
9
10# DEBUG can be set to YES to include debugging info, or NO otherwise
11DEBUG          := YES
12
13# PROFILE can be set to YES to include profiling info, or NO otherwise
14PROFILE        := NO
15
16#****************************************************************************
17
18CC     := gcc
19CXX    := g++
20LD     := g++
21AR     := ar rc
22RANLIB := ranlib
23
24DEBUG_CFLAGS     := -Wall -Wno-unknown-pragmas -Wno-format -g -DDEBUG
25RELEASE_CFLAGS   := -Wall -Wno-unknown-pragmas -Wno-format -O2
26
27LIBS		 :=
28
29DEBUG_CXXFLAGS   := ${DEBUG_CFLAGS} 
30RELEASE_CXXFLAGS := ${RELEASE_CFLAGS}
31
32DEBUG_LDFLAGS    := -g
33RELEASE_LDFLAGS  :=
34
35ifeq (YES, ${DEBUG})
36   CFLAGS       := ${DEBUG_CFLAGS}
37   CXXFLAGS     := ${DEBUG_CXXFLAGS}
38   LDFLAGS      := ${DEBUG_LDFLAGS}
39else
40   CFLAGS       := ${RELEASE_CFLAGS}
41   CXXFLAGS     := ${RELEASE_CXXFLAGS}
42   LDFLAGS      := ${RELEASE_LDFLAGS}
43endif
44
45ifeq (YES, ${PROFILE})
46   CFLAGS   := ${CFLAGS} -pg
47   CXXFLAGS := ${CXXFLAGS} -pg
48   LDFLAGS  := ${LDFLAGS} -pg
49endif
50
51#****************************************************************************
52# Preprocessor directives
53#****************************************************************************
54
55ifeq (YES, ${PROFILE})
56  DEFS :=
57else
58  DEFS :=
59endif
60
61#****************************************************************************
62# Include paths
63#****************************************************************************
64
65#INCS := -I/usr/include/g++-2 -I/usr/local/include
66INCS :=
67
68
69#****************************************************************************
70# Makefile code common to all platforms
71#****************************************************************************
72
73CFLAGS   := ${CFLAGS}   ${DEFS}
74CXXFLAGS := ${CXXFLAGS} ${DEFS}
75
76#****************************************************************************
77# Targets of the build
78#****************************************************************************
79
80OUTPUT := xmltest
81
82all: ${OUTPUT}
83
84
85#****************************************************************************
86# Source files
87#****************************************************************************
88
89SRCS := tinyxml.cpp tinyxmlparser.cpp xmltest.cpp tinyxmlerror.cpp
90
91# Add on the sources for libraries
92SRCS := ${SRCS}
93
94OBJS := $(addsuffix .o,$(basename ${SRCS}))
95
96#****************************************************************************
97# Output
98#****************************************************************************
99
100${OUTPUT}: ${OBJS}
101	${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}
102
103#****************************************************************************
104# common rules
105#****************************************************************************
106
107# Rules for compiling source files to object files
108%.o : %.cpp
109	${CXX} -c ${CXXFLAGS} ${INCS} $< -o $@
110
111%.o : %.c
112	${CC} -c ${CFLAGS} ${INCS} $< -o $@
113
114clean:
115	-rm -f core ${OBJS} ${OUTPUT}
116
117depend:
118	makedepend ${INCS} ${SRCS}
119# DO NOT DELETE
120
121tinyxml.o: tinyxml.h /usr/include/stdio.h /usr/include/features.h
122tinyxml.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
123tinyxml.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
124tinyxml.o: /usr/include/bits/sched.h /usr/include/libio.h
125tinyxml.o: /usr/include/_G_config.h /usr/include/wchar.h
126tinyxml.o: /usr/include/bits/wchar.h /usr/include/gconv.h
127tinyxml.o: /usr/include/bits/stdio_lim.h /usr/include/assert.h
128tinyxmlparser.o: tinyxml.h /usr/include/stdio.h /usr/include/features.h
129tinyxmlparser.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
130tinyxmlparser.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
131tinyxmlparser.o: /usr/include/bits/sched.h /usr/include/libio.h
132tinyxmlparser.o: /usr/include/_G_config.h /usr/include/wchar.h
133tinyxmlparser.o: /usr/include/bits/wchar.h /usr/include/gconv.h
134tinyxmlparser.o: /usr/include/bits/stdio_lim.h /usr/include/assert.h
135tinyxmlparser.o: /usr/include/ctype.h /usr/include/endian.h
136tinyxmlparser.o: /usr/include/bits/endian.h
137xmltest.o: tinyxml.h /usr/include/stdio.h /usr/include/features.h
138xmltest.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
139xmltest.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
140xmltest.o: /usr/include/bits/sched.h /usr/include/libio.h
141xmltest.o: /usr/include/_G_config.h /usr/include/wchar.h
142xmltest.o: /usr/include/bits/wchar.h /usr/include/gconv.h
143xmltest.o: /usr/include/bits/stdio_lim.h /usr/include/assert.h
144tinyxmlerror.o: tinyxml.h /usr/include/stdio.h /usr/include/features.h
145tinyxmlerror.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
146tinyxmlerror.o: /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h
147tinyxmlerror.o: /usr/include/bits/sched.h /usr/include/libio.h
148tinyxmlerror.o: /usr/include/_G_config.h /usr/include/wchar.h
149tinyxmlerror.o: /usr/include/bits/wchar.h /usr/include/gconv.h
150tinyxmlerror.o: /usr/include/bits/stdio_lim.h /usr/include/assert.h
151