blob: 1dcfa48526d7d70b2a4c447e9c41037dd5f28dce [file] [log] [blame]
SHELL = /bin/sh
PREFIX=/usr/local
INSTDIR=$(DESTDIR)/$(PREFIX)/bin
MANDIR=$(DESTDIR)/$(PREFIX)/man
ifndef CC
CC = gcc
endif
LD = $(CC)
EXECS = sg_dd sgp_dd sgm_dd sg_read sg_map sg_scan sg_rbuf \
sginfo sg_readcap sg_turs sg_inq sg_test_rwbuf \
sg_start sg_reset sg_modes sg_logs sg_senddiag sg_opcodes \
sg_persist sg_write_long sg_read_long sg_requests sg_ses \
sg_verify sg_emc_trespass sg_luns sg_sync sg_prevent \
sg_get_config sg_wr_mode sg_rtpg sg_reassign sg_format \
sg_rmsn
MAN_PGS = sg_dd.8 sgp_dd.8 sgm_dd.8 sg_read.8 sg_map.8 sg_scan.8 sg_rbuf.8 \
sginfo.8 sg_readcap.8 sg_turs.8 sg_inq.8 sg_test_rwbuf.8 \
sg_start.8 sg_reset.8 sg_modes.8 sg_logs.8 sg_senddiag.8 \
sg_opcodes.8 sg_persist.8 sg_write_long.8 sg_read_long.8 \
sg_requests.8 sg_ses.8 sg_verify.8 sg_emc_trespass.8 \
sg_luns.8 sg_sync.8 sg_prevent.8 sg_get_config.8 sg_wr_mode.8 \
sg_rtpg.8 sg_reassign.8 sg_format.8 sg_rmsn.8
MAN_PREF = man8
LARGE_FILE_FLAGS = -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
# CFLAGS = -O2 -Wall -W $(LARGE_FILE_FLAGS)
CFLAGS = -g -O2 -Wall -W $(LARGE_FILE_FLAGS)
# CFLAGS = -g -O2 -W -DSG_KERNEL_INCLUDES $(LARGE_FILE_FLAGS)
# CFLAGS = -g -O2 -Wall -W -pedantic -std=c99 $(LARGE_FILE_FLAGS)
CFLAGS_PTHREADS = -D_REENTRANT
LDFLAGS =
# LDFLAGS = -v -lm
all: $(EXECS)
depend dep:
for i in *.c; do $(CC) $(INCLUDES) $(CFLAGS) -M $$i; \
done > .depend
clean:
/bin/rm -f *.o $(EXECS) core* .depend *.a *.la *.lo
/bin/rm -rf .libs
sg_dd: sg_dd.o sg_lib.o sg_cmds.o llseek.o
$(LD) -o $@ $(LDFLAGS) $^
sg_scan: sg_scan.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sginfo: sginfo.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_start: sg_start.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_rbuf: sg_rbuf.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_readcap: sg_readcap.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sgp_dd.o: sgp_dd.c
$(CC) $(INCLUDES) $(CFLAGS) $(CFLAGS_PTHREADS) -o $@ -c $^
sgp_dd: sgp_dd.o sg_lib.o sg_cmds.o llseek.o
$(LD) -o $@ $(LDFLAGS) $^ -lpthread
sgm_dd: sgm_dd.o sg_lib.o sg_cmds.o llseek.o
$(LD) -o $@ $(LDFLAGS) $^
sg_map: sg_map.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_turs: sg_turs.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_test_rwbuf: sg_test_rwbuf.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_inq: sg_inq.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_read: sg_read.o sg_lib.o llseek.o
$(LD) -o $@ $(LDFLAGS) $^
sg_reset: sg_reset.o
$(LD) -o $@ $(LDFLAGS) $^
sg_modes: sg_modes.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_logs: sg_logs.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_senddiag: sg_senddiag.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_opcodes: sg_opcodes.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_persist: sg_persist.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_write_long: sg_write_long.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_read_long: sg_read_long.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_requests: sg_requests.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_ses: sg_ses.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_verify: sg_verify.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_emc_trespass: sg_emc_trespass.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_luns: sg_luns.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_sync: sg_sync.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_prevent: sg_prevent.o sg_lib.o
$(LD) -o $@ $(LDFLAGS) $^
sg_get_config: sg_get_config.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_wr_mode: sg_wr_mode.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_rtpg: sg_rtpg.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_reassign: sg_reassign.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_format: sg_format.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
sg_rmsn: sg_rmsn.o sg_lib.o sg_cmds.o
$(LD) -o $@ $(LDFLAGS) $^
install: $(EXECS)
install -d $(INSTDIR)
for name in $^; \
do install -s -o root -g root -m 755 $$name $(INSTDIR); \
done
install -d $(MANDIR)/$(MAN_PREF)
for mp in $(MAN_PGS); \
do install -o root -g root -m 644 $$mp $(MANDIR)/$(MAN_PREF); \
gzip -9f $(MANDIR)/$(MAN_PREF)/$$mp; \
done
uninstall:
dists="$(EXECS)"; \
for name in $$dists; do \
rm -f $(INSTDIR)/$$name; \
done
for mp in $(MAN_PGS); do \
rm -f $(MANDIR)/$(MAN_PREF)/$$mp.gz; \
done
ifeq (.depend,$(wildcard .depend))
include .depend
endif