14e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius# makefile written for gnu make
24e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusCXX		= g++
34e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusSRC		= ./src
44e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusCPPFLAGS	= -I$(SRC)
54e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusDEBUG		= -g
64e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusOPTIMIZE	= -O2
74e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusGCCWARN		= -Wall -Wstrict-prototypes
84e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusCXXFLAGS	= $(DEBUG) $(GCCWARN) $(OPTIMIZE) $(INCLUDES)
94e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
104e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusLIB		= ./libXmlRpc.a
114e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
124e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius# Add your system-dependent network libs here. These are
134e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius# only used to build the tests (your application will need them too).
144e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius# Linux: none
154e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius# Solaris: -lsocket -lnsl
164e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius#SYSTEMLIBS	= -lsocket -lnsl
174e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusSYSTEMLIBS	=
184e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusLDLIBS		= $(LIB) $(SYSTEMLIBS)
194e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
204e2ea8184cc1f9609f1f1251394316629a108a78Roshan PiusOBJ		= $(SRC)/XmlRpcClient.o $(SRC)/XmlRpcDispatch.o \
214e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		$(SRC)/XmlRpcServer.o $(SRC)/XmlRpcServerConnection.o \
224e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		$(SRC)/XmlRpcServerMethod.o $(SRC)/XmlRpcSocket.o $(SRC)/XmlRpcSource.o \
234e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		$(SRC)/XmlRpcUtil.o $(SRC)/XmlRpcValue.o
244e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
254e2ea8184cc1f9609f1f1251394316629a108a78Roshan Piusall:		$(LIB) tests
264e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
274e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius$(LIB):		$(OBJ)
284e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		$(AR) $(ARFLAGS) $(LIB) $(OBJ)
294e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
304e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
314e2ea8184cc1f9609f1f1251394316629a108a78Roshan Piustests:		$(LIB)
324e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		cd test && $(MAKE) CXX=$(CXX) CXXFLAGS="$(CXXFLAGS)" SYSTEMLIBS="$(SYSTEMLIBS)"
334e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
344e2ea8184cc1f9609f1f1251394316629a108a78Roshan Piusdoc doxygen:
354e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		cd src && doxygen Doxyfile
364e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
374e2ea8184cc1f9609f1f1251394316629a108a78Roshan Piusclean:
384e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		rm -f $(SRC)/*.o
394e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		rm -f $(SRC)/*~
404e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		rm -f $(LIB)
414e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius		cd test && $(MAKE) clean
424e2ea8184cc1f9609f1f1251394316629a108a78Roshan Pius
43