|
Packit |
eace71 |
# This Makefile will work only with GNU make.
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
ifeq ($(TOPDIR),)
|
|
Packit |
eace71 |
TOPDIR = ..
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
OSNAME=$(shell uname -s)
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
# allow users to override these
|
|
Packit |
eace71 |
# eg to compile for a kernel that you aren't currently running
|
|
Packit |
eace71 |
KERNELRELEASE ?= $(shell uname -r)
|
|
Packit |
eace71 |
KSRC ?= /lib/modules/$(KERNELRELEASE)/build
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
KSUBLEVEL=$(shell cat $(KSRC)/Makefile | awk -F= '/^SUBLEVEL =/ {print $$2}' | \
|
|
Packit |
eace71 |
sed 's/^[ \t]*//;s/[ \t]*$$//')
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
ifeq ($(OSNAME),Linux)
|
|
Packit |
eace71 |
ifeq ($(KSUBLEVEL),11)
|
|
Packit |
eace71 |
IPC_CFLAGS=-DNETLINK_ISCSI=12 -D_GNU_SOURCE
|
|
Packit |
eace71 |
else
|
|
Packit |
eace71 |
ifeq ($(KSUBLEVEL),12)
|
|
Packit |
eace71 |
IPC_CFLAGS=-DNETLINK_ISCSI=12 -D_GNU_SOURCE
|
|
Packit |
eace71 |
else
|
|
Packit |
eace71 |
IPC_CFLAGS=-DNETLINK_ISCSI=8 -D_GNU_SOURCE
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
IPC_OBJ=netlink.o
|
|
Packit |
eace71 |
else
|
|
Packit |
eace71 |
ifeq ($(OSNAME),FreeBSD)
|
|
Packit |
eace71 |
IPC_CFLAGS=
|
|
Packit |
eace71 |
IPC_OBJ=ioctl.o
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
PKG_CONFIG = /usr/bin/pkg-config
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
CFLAGS ?= -O2 -g
|
|
Packit |
eace71 |
WARNFLAGS ?= -Wall -Wstrict-prototypes
|
|
Packit |
eace71 |
CFLAGS += $(WARNFLAGS) -I../include -I. -D_GNU_SOURCE \
|
|
Packit Service |
83beb6 |
-I$(TOPDIR)/libopeniscsiusr
|
|
Packit |
eace71 |
CFLAGS += $(shell $(PKG_CONFIG) --cflags libkmod)
|
|
Packit |
eace71 |
ISCSI_LIB = -L$(TOPDIR)/libopeniscsiusr -lopeniscsiusr
|
|
Packit |
eace71 |
LDFLAGS += $(shell $(PKG_CONFIG) --libs libkmod)
|
|
Packit |
eace71 |
ifeq ($(NO_SYSTEMD),)
|
|
Packit |
eace71 |
LDFLAGS += $(shell $(PKG_CONFIG) --libs libsystemd)
|
|
Packit |
eace71 |
endif
|
|
Packit |
eace71 |
PROGRAMS = iscsid iscsiadm iscsistart
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
# libc compat files
|
|
Packit |
eace71 |
SYSDEPS_SRCS = $(sort $(wildcard ../utils/sysdeps/*.o))
|
|
Packit |
eace71 |
# sources shared between iscsid, iscsiadm and iscsistart
|
|
Packit |
eace71 |
ISCSI_LIB_SRCS = iscsi_util.o io.o auth.o iscsi_timer.o login.o log.o \
|
|
Packit |
eace71 |
iface.o idbm.o sysfs.o host.o session_info.o iscsi_sysfs.o \
|
|
Packit |
eace71 |
iscsi_net_util.o iscsid_req.o transport.o iser.o cxgbi.o be2iscsi.o \
|
|
Packit |
eace71 |
initiator_common.o iscsi_err.o flashnode.o uip_mgmt_ipc.o \
|
|
Packit |
eace71 |
netlink.o $(SYSDEPS_SRCS)
|
|
Packit |
eace71 |
# core initiator files
|
|
Packit |
eace71 |
INITIATOR_SRCS = initiator.o scsi.o actor.o event_poll.o mgmt_ipc.o kern_err_table.o
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
# fw boot files
|
|
Packit |
eace71 |
FW_BOOT_SRCS = $(sort $(wildcard ../utils/fwparam_ibft/*.o))
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
# core discovery files
|
|
Packit |
eace71 |
DISCOVERY_SRCS = $(FW_BOOT_SRCS) local_strings.o discovery.o
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
all: $(PROGRAMS)
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
iscsid: $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(DISCOVERY_SRCS) \
|
|
Packit |
eace71 |
iscsid.o session_mgmt.o discoveryd.o mntcheck.o
|
|
Packit |
eace71 |
$(CC) $(CFLAGS) $^ -o $@ -lisns -lcrypto -lrt -lmount $(LDFLAGS) $(ISCSI_LIB)
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
iscsiadm: $(ISCSI_LIB_SRCS) $(DISCOVERY_SRCS) iscsiadm.o session_mgmt.o mntcheck.o
|
|
Packit |
eace71 |
$(CC) $(CFLAGS) $^ -o $@ -lisns -lcrypto -lmount $(LDFLAGS) $(ISCSI_LIB)
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
iscsistart: $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(FW_BOOT_SRCS) \
|
|
Packit |
eace71 |
iscsistart.o statics.o
|
|
Packit |
eace71 |
$(CC) $(CFLAGS) $^ -o $@ -lcrypto -lrt $(LDFLAGS) $(ISCSI_LIB)
|
|
Packit |
eace71 |
clean:
|
|
Packit |
eace71 |
rm -f *.o $(PROGRAMS) .depend $(LIBSYS)
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
depend:
|
|
Packit |
eace71 |
gcc $(CFLAGS) -M `ls *.c` > .depend
|
|
Packit |
eace71 |
|
|
Packit |
eace71 |
-include .depend
|