# # Compiler Flags. Warning: -O causes problems w/ pthread # SHELL= /bin/sh srcdir=@srcdir@ VPATH=@srcdir@ prefix=@prefix@ exec_prefix=@exec_prefix@ BINDIR=$(exec_prefix)/bin LIBDIR=$(exec_prefix)/lib INCDIR=$(prefix)/include MANDIR=$(prefix)/man SYSCONFDIR=@sysconfdir@ CC= @CC@ PTHREAD_FLAGS= -pthread PTHREAD_LDFLAGS= -pthread PTHREAD_LIBS= -lpthread GCC_CFLAGS= -Wall -Wstrict-prototypes -fno-strict-aliasing -fno-common -Wno-trigraphs COMMON_CFLAGS += -DCONFIG_ISCSI_DEBUG -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE COMMON_CFLAGS += -DHAVE_CONFIG_H COMMON_CFLAGS += -I${INCDIR} CFLAGS= @CFLAGS@ ${GCC_CFLAGS} ${COMMON_CFLAGS} -I${INCLUDE} ${PTHREAD_FLAGS} LIBS= @LIBS@ INSTALL= @INSTALL@ PREFIX= @prefix@ INCLUDE = ../include # # Compilation Targets # TARGETS = iscsi-target # osd INITIATORS= iscsifs all: $(TARGETS) all-initiator: ${INITIATORS} # # User-level Targets # COMPATOBJS= strlcpy.o snprintf.o strtoll.o uuid.o USER_TARGET_OBJS = target.o iscsi.o util.o parameters.o netmask.o conffile.o storage.o md5c.o md5hl.c ${COMPATOBJS} iscsi-target: iscsi-target.c disk.c $(USER_TARGET_OBJS) $(CC) $(CFLAGS) iscsi-target.c disk.c $(USER_TARGET_OBJS) ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} ${LIBS} -o iscsi-target osd: osd-target.c osd.c $(USER_TARGET_OBJS) $(CC) $(CFLAGS) osd-target.c osd.c $(USER_TARGET_OBJS) ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} ${LIBS} -o osd # # Test harness (initiators) # iscsifs: iscsifs.o iscsi.o util.o initiator.o parameters.o conffile.o virtdir.o md5c.o md5hl.o $(CC) iscsifs.o iscsi.o util.o initiator.o parameters.o md5c.o md5hl.o conffile.o virtdir.o -o iscsifs ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} -L${LIBDIR} -Wl,-R${LIBDIR} ${LIBS} -lfuse # # Dependencies # osd_ops.o: $(INCLUDE)/iscsiutil.h $(INCLUDE)/osd.h $(INCLUDE)/osd_ops.h osd_ops.c util.o: util.c $(INCLUDE)/iscsiutil.h parameters.o: parameters.c $(INCLUDE)/parameters.h $(INCLUDE)/iscsiutil.h md5c.o md5hl.o usocktest.o: usocktest.c $(INCLUDE)/iscsiutil.h disk.o: disk.c $(INCLUDE)/device.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/iscsi.h osd.o: osd.c $(INCLUDE)/osd.h $(INCLUDE)/device.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/iscsi.h iscsi.o: iscsi.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h iscsi-harness.o: iscsi-harness.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/osd.h $(INCLUDE)/initiator.h $(INCLUDE)/tests.h $(INCLUDE)/parameters.h $(INCLUDE)/osd_ops.h utarget.o: utarget.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/target.h $(INCLUDE)/device.h tests.o: tests.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/initiator.h $(INCLUDE)/tests.h target.o: target.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/target.h $(INCLUDE)/parameters.h initiator.o: initiator.c $(INCLUDE)/iscsi.h $(INCLUDE)/iscsiutil.h $(INCLUDE)/initiator.h $(INCLUDE)/parameters.h # # Util # clean: rm -f $(INITIATORS) $(TARGETS) *.o *.core