--- ../tinyxml/Makefile 2011-05-15 02:24:57.000000000 +0000 +++ ./Makefile 2022-09-24 20:28:17.224889551 +0000 @@ -15,15 +15,15 @@ # 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 +TINYXML_USE_STL :=YES #**************************************************************************** -CC := gcc -CXX := g++ -LD := g++ -AR := ar rc -RANLIB := ranlib +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 @@ -41,9 +41,9 @@ CXXFLAGS := ${DEBUG_CXXFLAGS} LDFLAGS := ${DEBUG_LDFLAGS} else - CFLAGS := ${RELEASE_CFLAGS} - CXXFLAGS := ${RELEASE_CXXFLAGS} - LDFLAGS := ${RELEASE_LDFLAGS} + CFLAGS += ${RELEASE_CFLAGS} + CXXFLAGS += ${RELEASE_CXXFLAGS} + LDFLAGS += ${RELEASE_LDFLAGS} endif ifeq (YES, ${PROFILE}) @@ -83,7 +83,7 @@ OUTPUT := xmltest -all: ${OUTPUT} +all: ${OUTPUT} libtinyxml.so #**************************************************************************** @@ -102,7 +102,10 @@ #**************************************************************************** ${OUTPUT}: ${OBJS} - ${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS} + ${CXX} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS} + +libtinyxml.so: ${OBJS} + ${CXX} -shared -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS} #**************************************************************************** # common rules @@ -110,10 +113,10 @@ # Rules for compiling source files to object files %.o : %.cpp - ${CXX} -c ${CXXFLAGS} ${INCS} $< -o $@ + ${CXX} -fPIC -c ${CXXFLAGS} ${INCS} $< -o $@ %.o : %.c - ${CC} -c ${CFLAGS} ${INCS} $< -o $@ + ${CC} -fPIC -c ${CFLAGS} ${INCS} $< -o $@ dist: bash makedistlinux