makefile.dox 1.31 KB
/** @file
\author Imanol Barba Sabariego
\date 13/06/2013
\page makefile Makefile
\brief Ejemplo de Makefile

\code
CXXFLAGS = -I../cryptopp -Isrc/include/
LDFLAGS = -Llib/
LIBS = -lcryptopp -lpthread
TARGETS = bin/client bin/server bin/socket.conf


.PHONY: all clean
	ifndef $(CXX)
		CXX = g++
	endif

bin/client: bin/client.o bin/Socket.o lib/libcryptopp.so
	$(CXX) -o bin/client bin/client.o bin/Socket.o $(LDFLAGS) $(LIBS)
	strip bin/client

bin/client.o: src/client.cpp
	$(CXX) -o bin/client.o -c src/client.cpp $(CXXFLAGS)

bin/server.o: src/server.cpp src/include/server.h
	$(CXX) -o bin/server.o -c src/server.cpp $(CXXFLAGS)

bin/main_server.o: src/main_server.cpp
	$(CXX) -o bin/main_server.o -c src/main_server.cpp $(CXXFLAGS)

bin/server: bin/server.o bin/Socket.o bin/main_server.o lib/libcryptopp.so src/include/server.h
	$(CXX) -o bin/server bin/server.o bin/Socket.o bin/main_server.o $(LDFLAGS) $(LIBS)
	strip bin/server

bin/Socket.o: src/Socket.cpp src/include/Socket.h src/include/SocketException.h
	(CXX) -o bin/Socket.o -c src/Socket.cpp $(CXXFLAGS)

lib/libcryptopp.so:
	cd ../cryptopp;	make clean; make dynamic; mv libcryptopp.so ../Socket/lib/libcryptopp.so 

bin/socket.conf:
	cp socket.conf bin/socket.conf

clean:
	rm -rf bin/*

docs:
	cd doc/doxygen;doxygen Doxyfile
	cd doc/latex; make	

all: $(TARGETS) 
\endcode