# $Id$
#
+# Directorio con los .h
+INCLUDE_BASE_DIR=../include
+INCLUDE_DIR=$(INCLUDE_BASE_DIR)/plaqui/server
+
# Opciones para el compilador.
-CXXFLAGS=-ansi -pedantic -Wall `pkg-config --cflags glibmm-2.0` `pkg-config --cflags gthread-2.0`
+CXXFLAGS=-ansi -pedantic -Wall -I$(INCLUDE_BASE_DIR) \
+ `pkg-config --cflags glibmm-2.0 gthread-2.0`
CXXFLAGS+=-g -DDEBUG
#CXXFLAGS+=-g
#CXXFLAGS+=-O3
-LDFLAGS=-lsocket++ `pkg-config --libs glibmm-2.0` `pkg-config --libs gthread-2.0`
-
-TARGETS=connection.o controlclient.o controlserver.o receiver.o transmitter.o \
- server.o
+#LDFLAGS=-lsocket++ `pkg-config --libs glibmm-2.0 gthread-2.0`
-TESTS=server_test
+TARGETS=server.a
# Regla por defecto.
-all: $(TARGETS) $(TESTS)
+all: $(TARGETS)
+
+string_h=$(INCLUDE_DIR)/string.h
+objects+=string.o
+string.o: $(string_h) string.cpp
+
+httpheaders_h=$(string_h) $(INCLUDE_DIR)/httpheaders.h
+objects+=httpheaders.o
+httpheaders.o: $(httpheaders_h) httpheaders.cpp
+
+httpmessage_h=$(string_h) $(httpheaders_h) $(INCLUDE_DIR)/httpmessage.h
+objects+=httpmessage.o
+httpmessage.o: $(httpmessage_h) httpmessage.cpp
+
+httprequest_h=$(string_h) $(httpmessage_h) $(INCLUDE_DIR)/httprequest.h
+objects+=httprequest.o
+httprequest.o: $(httprequest_h) httprequest.cpp
-runnable_h=runnable.h
+command_h=$(string_h) $(httprequest_h) $(INCLUDE_DIR)/command.h
+objects+=command.o
+command.o: $(command_h) command.cpp
+
+httpresponse_h=$(string_h) $(httpmessage_h) $(INCLUDE_DIR)/httprequest.h
+objects+=httpresponse.o
+httpresponse.o: $(httpresponse_h) httpresponse.cpp
+
+runnable_h=$(INCLUDE_DIR)/runnable.h
objects+=runnable.o
runnable.o: $(runnable_h) runnable.cpp
-connection_h=$(runnable_h) connection.h
+connection_h=$(runnable_h) $(INCLUDE_DIR)/connection.h
objects+=connection.o
connection.o: $(connection_h) connection.cpp
-controlclient_h=$(connection_h) controlclient.h
+#serverconnection_h=$(connection_h) $(INCLUDE_DIR)/serverconnection.h
+#objects+=serverconnection.o
+#serverconnection.o: $(serverconnection_h) serverconnection.cpp
+
+controlclient_h=$(connection_h) $(command_h) $(INCLUDE_DIR)/controlclient.h
objects+=controlclient.o
controlclient.o: $(controlclient_h) controlclient.cpp
-controlserver_h=$(connection_h) controlserver.h
+controlserver_h=$(connection_h) $(httprequest_h) $(httpresponse_h) \
+ $(INCLUDE_DIR)/controlserver.h
objects+=controlserver.o
controlserver.o: $(controlserver_h) controlserver.cpp
-receiver_h=$(connection_h) receiver.h
+receiver_h=$(connection_h) $(INCLUDE_DIR)/receiver.h
objects+=receiver.o
receiver.o: $(receiver_h) receiver.cpp
-transmitter_h=$(connection_h) transmitter.h
+transmitter_h=$(connection_h) $(INCLUDE_DIR)/transmitter.h
objects+=transmitter.o
transmitter.o: $(transmitter_h) transmitter.cpp
-server_h=$(controlserver_h) $(transmitter_h) server.h
+tcpserver_h=$(connection_h) $(INCLUDE_DIR)/tcpserver.h
+objects+=tcpserver.o
+tcpserver.o: $(tcpserver_h) tcpserver.cpp
+
+server_h=$(tcpserver) $(controlserver_h) $(transmitter_h) \
+ $(INCLUDE_DIR)/server.h
objects+=server.o
server.o: $(server_h) server.cpp
-# Tests
-server_test: $(objects) server_test.cpp
+server.a: $(objects)
+ rm -f $@
+ $(AR) cq $@ $(objects)
clean:
- rm -f $(TARGETS) $(TESTS) *.o
+ rm -f $(TARGETS) *.o
+