123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- --- Makefile.orig 2010-08-21 20:52:22.923386908 +0000
- +++ Makefile 2010-08-21 14:29:13.000000000 +0000
- @@ -1,130 +1,33 @@
- -#****************************************************************************
- -#
- -# Makefile for TinyXml test.
- -# Lee Thomason
- -# www.grinninglizard.com
- -#
- -# This is a GNU make (gmake) makefile
- -#****************************************************************************
- -
- -# DEBUG can be set to YES to include debugging info, or NO otherwise
- -DEBUG := NO
- -
- -# PROFILE can be set to YES to include profiling info, or NO otherwise
- -PROFILE := NO
- -
- -# TINYXML_USE_STL can be used to turn on STL support. NO, then STL
- -# will not be used. YES will include the STL files.
- -TINYXML_USE_STL := NO
- -
- -#****************************************************************************
- -
- -CC := gcc
- -CXX := g++
- -LD := g++
- -AR := ar rc
- -RANLIB := ranlib
- -
- -DEBUG_CFLAGS := -Wall -Wno-format -g -DDEBUG
- -RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3
- -
- -LIBS :=
- -
- -DEBUG_CXXFLAGS := ${DEBUG_CFLAGS}
- -RELEASE_CXXFLAGS := ${RELEASE_CFLAGS}
- -
- -DEBUG_LDFLAGS := -g
- -RELEASE_LDFLAGS :=
- -
- -ifeq (YES, ${DEBUG})
- - CFLAGS := ${DEBUG_CFLAGS}
- - CXXFLAGS := ${DEBUG_CXXFLAGS}
- - LDFLAGS := ${DEBUG_LDFLAGS}
- -else
- - CFLAGS := ${RELEASE_CFLAGS}
- - CXXFLAGS := ${RELEASE_CXXFLAGS}
- - LDFLAGS := ${RELEASE_LDFLAGS}
- -endif
- -
- -ifeq (YES, ${PROFILE})
- - CFLAGS := ${CFLAGS} -pg -O3
- - CXXFLAGS := ${CXXFLAGS} -pg -O3
- - LDFLAGS := ${LDFLAGS} -pg
- -endif
- -
- -#****************************************************************************
- -# Preprocessor directives
- -#****************************************************************************
- -
- -ifeq (YES, ${TINYXML_USE_STL})
- - DEFS := -DTIXML_USE_STL
- -else
- - DEFS :=
- -endif
- -
- -#****************************************************************************
- -# Include paths
- -#****************************************************************************
- -
- -#INCS := -I/usr/include/g++-2 -I/usr/local/include
- -INCS :=
- -
- -
- -#****************************************************************************
- -# Makefile code common to all platforms
- -#****************************************************************************
- -
- -CFLAGS := ${CFLAGS} ${DEFS}
- -CXXFLAGS := ${CXXFLAGS} ${DEFS}
- -
- -#****************************************************************************
- -# Targets of the build
- -#****************************************************************************
- -
- -OUTPUT := xmltest
- -
- -all: ${OUTPUT}
- -
- -
- -#****************************************************************************
- -# Source files
- -#****************************************************************************
- -
- -SRCS := tinyxml.cpp tinyxmlparser.cpp xmltest.cpp tinyxmlerror.cpp tinystr.cpp
- -
- -# Add on the sources for libraries
- -SRCS := ${SRCS}
- -
- -OBJS := $(addsuffix .o,$(basename ${SRCS}))
- -
- -#****************************************************************************
- -# Output
- -#****************************************************************************
- -
- -${OUTPUT}: ${OBJS}
- - ${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}
- -
- -#****************************************************************************
- -# common rules
- -#****************************************************************************
- -
- -# Rules for compiling source files to object files
- -%.o : %.cpp
- - ${CXX} -c ${CXXFLAGS} ${INCS} $< -o $@
- -
- -%.o : %.c
- - ${CC} -c ${CFLAGS} ${INCS} $< -o $@
- -
- -dist:
- - bash makedistlinux
- +AR ?= ar
- +CXX ?= g++
- +CXXFLAGS += -Wall
- +RANLIB ?= ranlib
- +
- +name = libtinyxml
- +major = @MAJOR_V@
- +minor = @MINOR_V@
- +version = $(major).$(minor)
- +
- +src = tinyxml.cpp tinyxmlparser.cpp tinyxmlerror.cpp tinystr.cpp
- +lo = $(addsuffix .lo,$(basename ${src}))
- +o = $(addsuffix .o,$(basename ${src}))
- +
- +all: $(name).a $(name).so
- +
- +%.o: %.cpp
- + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) $< -o $@
- +
- +$(name).a: $(o)
- + $(AR) rc $(name).a $(o)
- + $(RANLIB) $(name).a
- +
- +%.lo: %.cpp
- + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -fPIC $< -o $@
- +
- +$(name).so: $(lo)
- + $(CXX) $(LDFLAGS) -fPIC -shared $(lo) -Wl,-soname,$(name).so.$(major) -o $(name).so.$(version)
- + ln -s $(name).so.$(version) $(name).so.$(major)
- + ln -s $(name).so.$(version) $(name).so
-
- clean:
- - -rm -f core ${OBJS} ${OUTPUT}
- -
- -depend:
- - #makedepend ${INCS} ${SRCS}
- -
- -tinyxml.o: tinyxml.h tinystr.h
- -tinyxmlparser.o: tinyxml.h tinystr.h
- -xmltest.o: tinyxml.h tinystr.h
- -tinyxmlerror.o: tinyxml.h tinystr.h
- + -rm -f *.o *.lo *.so* *.a
|