CC = gcc CFLAGS = -g -DRPC_SVC_FG RPCGEN_FLAG = -C all: add_client add_server # the executables: add_client and add_server add_client: add_client.o add_clnt.o add_xdr.o $(CC) -o add_client add_client.o add_clnt.o add_xdr.o -lnsl add_server: add_server.o add_svc.o add_xdr.o $(CC) -o add_server add_server.o add_svc.o add_xdr.o -lnsl # object files for the executables add_server.o: add_server.c add.h $(CC) $(CFLAGS) -c add_server.c add_client.o: add_client.c add.h $(CC) $(CFLAGS) -c add_client.c # compile files generated by rpcgen add_svc.o: add_svc.c add.h $(CC) $(CFLAGS) -c add_svc.c add_clnt.o: add_clnt.c add.h $(CC) $(CFLAGS) -c add_clnt.c add_xdr.o: add_xdr.c add.h $(CC) $(CFLAGS) -c add_xdr.c # add.x produces add.h, add_clnt.c, add_svc.c, and add_xdr.c # make sure we regenerate them if our interface (add.x) changes add.h add_clnt.c add_svc.c add_xdr.c: add.x rpcgen $(RPCGEN_FLAG) add.x clean: rm -f add_client add_client.o add_server add_server.o add_clnt.* add_svc.* add.h