da73926566
Define structures related to the depop set of commands (GET PHYSICAL ELEMENT STATUS, REMOVE ELEMENT AND TRUNCATE, and RESTORE ELEMENT AND REBUILD) as well as the CDB construction routines. Also create scsi_wrap.c. This will have convenience routines that will do all the elements of allocating the ccb, generating the CDB, sending the command (looping as necessary for cases where data is returned, but it's size isn't known up front), etc. As this functionality is fleshed out, calling many camcontrol commands programatically gets much easier. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D29017
56 lines
1.2 KiB
Makefile
56 lines
1.2 KiB
Makefile
# $FreeBSD$
|
|
|
|
PACKAGE= runtime
|
|
|
|
LIB= cam
|
|
SHLIBDIR?= /lib
|
|
SRCS= camlib.c scsi_cmdparse.c scsi_all.c scsi_da.c scsi_sa.c cam.c \
|
|
ata_all.c nvme_all.c smp_all.c scsi_wrap.c
|
|
INCS= camlib.h scsi_wrap.h
|
|
|
|
LIBADD= sbuf
|
|
|
|
MAN= cam.3 cam_cdbparse.3
|
|
|
|
WARNS?= 2
|
|
|
|
MLINKS+= cam.3 cam_open_device.3 \
|
|
cam.3 cam_open_spec_device.3 \
|
|
cam.3 cam_open_btl.3 \
|
|
cam.3 cam_open_pass.3 \
|
|
cam.3 cam_close_device.3 \
|
|
cam.3 cam_close_spec_device.3 \
|
|
cam.3 cam_getccb.3 \
|
|
cam.3 cam_send_ccb.3 \
|
|
cam.3 cam_freeccb.3 \
|
|
cam.3 cam_path_string.3 \
|
|
cam.3 cam_device_dup.3 \
|
|
cam.3 cam_device_copy.3 \
|
|
cam.3 cam_get_device.3 \
|
|
cam_cdbparse.3 csio_build.3 \
|
|
cam_cdbparse.3 csio_build_visit.3 \
|
|
cam_cdbparse.3 csio_decode.3 \
|
|
cam_cdbparse.3 csio_decode_visit.3 \
|
|
cam_cdbparse.3 buff_decode.3 \
|
|
cam_cdbparse.3 buff_decode_visit.3 \
|
|
cam_cdbparse.3 csio_encode.3 \
|
|
cam_cdbparse.3 csio_encode_visit.3 \
|
|
cam_cdbparse.3 buff_encode_visit.3
|
|
|
|
.PATH: ${SRCTOP}/sys/cam \
|
|
${SRCTOP}/sys/cam/ata \
|
|
${SRCTOP}/sys/cam/nvme \
|
|
${SRCTOP}/sys/cam/mmc \
|
|
${SRCTOP}/sys/cam/scsi
|
|
|
|
CFLAGS+= -I${.CURDIR} -I${SRCTOP}/sys
|
|
|
|
SHLIB_MAJOR= 7
|
|
|
|
.include <src.opts.mk>
|
|
|
|
HAS_TESTS=
|
|
SUBDIR.${MK_TESTS}+= tests
|
|
|
|
.include <bsd.lib.mk>
|