--- projects/cms/source/host/c++/Makefile 2001/01/24 19:32:56 1.1 +++ projects/cms/source/host/c++/Makefile 2001/06/13 20:13:49 1.10 @@ -1,8 +1,36 @@ -all: - g++ -c -o XMLFormatter.o XMLFormatter.cpp - g++ -c -o XMLTest.o XMLTest.cpp - g++ -o XMLTest XMLTest.o XMLFormatter.o +# config +OBJECTS = Host.o XMLFormatter.o SmallNet.o Config.o\ + SysMon.o SubNet.o SubPipe.o + +SOCKLIBDIR = socket++-1.10 +SOCKLIB = libsocket++.a + +HOST = Host + +# default +all: $(HOST) + +# target to compile the main binary +$(HOST): $(OBJECTS) $(SOCKLIB) + g++ -o $@ -L. -lsocket++ -lsocket -lnsl $(OBJECTS) $(SOCKLIB) + +# target to compile any object file +%.o : %.cpp + g++ -c -I$(SOCKLIBDIR) -o $@ $< + +# target to compile the socket library +$(SOCKLIB): + cd $(SOCKLIBDIR) && sh configure && make + cp $(SOCKLIBDIR)/$(SOCKLIB) . + cd $(SOCKLIBDIR) && make real-clean + +# cleanup target clean: - rm -f XMLFormatter.o XMLTest.o XMLTest + rm -f $(OBJECTS) $(SOCKLIB) $(HOST) + rm -f core + +# run target +run: $(HOST) + ./$(HOST)