diff --git a/client/lib/Makefile b/client/lib/Makefile
index aca1f02fb0ea673d3e81ef1215864664f00d369f..432b3866a286e5ca8460f74b46981c6d8c19744f 100644
--- a/client/lib/Makefile
+++ b/client/lib/Makefile
@@ -16,14 +16,22 @@ win:
 	@tar xzf $(LIBGSOAP)_$(LIBGSOAPVER).$(LIBGSOAPSVER).tar.gz
 
 soap:
-	@wget -nc "$(GSOAPDOWNLOADLINK)" -O "$(LIBGSOAP)_$(LIBGSOAPVER).$(LIBGSOAPSVER).tar.gz"
-	@tar xzf $(LIBGSOAP)_$(LIBGSOAPVER).$(LIBGSOAPSVER).tar.gz
-	@echo "Installing gSOAP library, wait..."
-	@cp -f stdsoap2.? $(LIBDIR)/$(LIBGSOAPDIR)/${LIBGSOAP}/
-	@cd $(LIBDIR)/$(LIBGSOAPDIR) && ./configure -q --prefix=$(PWD)/$(LIBGSOAP) && make
+	@if ! test -d "$(LIBDIR)/$(LIBGSOAPDIR)"; then\
+		wget -nc "$(GSOAPDOWNLOADLINK)" -O "$(LIBGSOAP)_$(LIBGSOAPVER).$(LIBGSOAPSVER).tar.gz";\
+		tar xzf $(LIBGSOAP)_$(LIBGSOAPVER).$(LIBGSOAPSVER).tar.gz;\
+		echo "Installing gSOAP library, wait...";\
+		cp -f stdsoap2.? $(LIBDIR)/$(LIBGSOAPDIR)/${LIBGSOAP}/;\
+		cd $(LIBDIR)/$(LIBGSOAPDIR) && ./configure -q --prefix=$(PWD)/$(LIBGSOAP) && make;\
+	elif test -d "$(LIBDIR)/$(LIBGSOAPDIR)"; then\
+		echo "Packages already downloaded";\
+	fi
 
 install:
-	@cd $(LIBDIR)/$(LIBGSOAPDIR) && make install
+	@if ! test -d $(LIBGSOAP); then\
+		cd $(LIBDIR)/$(LIBGSOAPDIR) && make install;\
+	elif test -d $(LIBGSOAP); then\
+		echo "Packages already installed";\
+	fi
 
 clean:
 	@cd $(LIBDIR)/$(LIBGSOAPDIR) && make clean