|
root / base / usr / src / cmd / nvmeadm / Makefile
Makefile Makefile 86 lines 1.8 KB
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#

#
# Copyright (c) 2018, Joyent, Inc.
# Copyright 2026 Oxide Computer Company
# Copyright 2022 Tintri by DDN, Inc. All rights reserved.
#


PROG= nvmeadm

OBJS=	nvme_version.o	\
	nvmeadm.o	\
	nvmeadm_extsmart.o \
	nvmeadm_field.o \
	nvmeadm_field_suplog.o \
	nvmeadm_micron.o \
	nvmeadm_nsmgmt.o \
	nvmeadm_ocp.o \
	nvmeadm_ofmt.o	\
	nvmeadm_phyeye.o \
	nvmeadm_print.o	\
	nvmeadm_sandisk.o \
	nvmeadm_solidigm.o \
	nvmeadm_telemetry.o \
	nvmeadm_vuc.o \
	nvmeadm_wdc.o	\
	bitext.o \
	$(HEXDUMP_OBJS)

include ../Makefile.cmd
include ../Makefile.cmd.64
include ../Makefile.ctf
include $(SRC)/common/hexdump/Makefile.com

.KEEP_STATE:

CPPFLAGS +=	-I$(SRC)/uts/common/io/nvme -I$(SRC)/common/nvme
LDLIBS +=	-ldevinfo -lofmt -lcmdutils -lnvme
LDLIBS +=	-L$(ROOT)/usr/lib/fm/64 -R/usr/lib/fm/64 -ltopo
CSTD=	$(CSTD_GNU99)
CTF_MODE= link

#
# nvme_print_uint128() uses VLAs which understandably confuses smatch.
# It should probably be rewritten so we can smatch the file.
#
nvmeadm_print.o := SMATCH=off

all: $(PROG)

$(PROG): $(OBJS)
	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
	$(POST_PROCESS)

%.o: %.c
	$(COMPILE.c) $<
	$(POST_PROCESS_O)

%.o: $(SRC)/common/nvme/%.c
	$(COMPILE.c) $<
	$(POST_PROCESS_O)

%.o: $(SRC)/common/bitext/%.c
	$(COMPILE.c) $<
	$(POST_PROCESS_O)

install: all $(ROOTUSRSBINPROG)

clean:
	$(RM) $(OBJS) $(PROG)

lint:	lint_SRCS

include $(SRC)/common/hexdump/Makefile.targ
include ../Makefile.targ