xref: /illumos-gate/usr/src/lib/libnvme/Makefile (revision 533affcbc7fc4d0c8132976ea454aaa715fe2307)
1*533affcbSRobert Mustacchi#
2*533affcbSRobert Mustacchi# This file and its contents are supplied under the terms of the
3*533affcbSRobert Mustacchi# Common Development and Distribution License ("CDDL"), version 1.0.
4*533affcbSRobert Mustacchi# You may only use this file in accordance with the terms of version
5*533affcbSRobert Mustacchi# 1.0 of the CDDL.
6*533affcbSRobert Mustacchi#
7*533affcbSRobert Mustacchi# A full copy of the text of the CDDL should have accompanied this
8*533affcbSRobert Mustacchi# source.  A copy of the CDDL is also available via the Internet at
9*533affcbSRobert Mustacchi# http://www.illumos.org/license/CDDL.
10*533affcbSRobert Mustacchi#
11*533affcbSRobert Mustacchi
12*533affcbSRobert Mustacchi#
13*533affcbSRobert Mustacchi# Copyright 2024 Oxide Computer Company
14*533affcbSRobert Mustacchi#
15*533affcbSRobert Mustacchi
16*533affcbSRobert Mustacchiinclude ../Makefile.lib
17*533affcbSRobert Mustacchi
18*533affcbSRobert MustacchiHDRS = libnvme.h
19*533affcbSRobert MustacchiHDRDIR = common
20*533affcbSRobert Mustacchi
21*533affcbSRobert Mustacchi#
22*533affcbSRobert Mustacchi# Most of the types that we use to talk to the kernel have embedded pointers or
23*533affcbSRobert Mustacchi# sizes in them. For the ones that should be agnostic, verify that here.
24*533affcbSRobert Mustacchi#
25*533affcbSRobert MustacchiTYPECHECK_LIB =	libnvme.so.1
26*533affcbSRobert MustacchiTYPELIST = \
27*533affcbSRobert Mustacchi	nvme_ioctl_ctrl_info_t	\
28*533affcbSRobert Mustacchi	nvme_ioctl_common_t	\
29*533affcbSRobert Mustacchi	nvme_ioctl_format_t	\
30*533affcbSRobert Mustacchi	nvme_ioctl_fw_commit_t	\
31*533affcbSRobert Mustacchi	nvme_ioctl_lock_t	\
32*533affcbSRobert Mustacchi	nvme_ioctl_unlock_t
33*533affcbSRobert Mustacchi
34*533affcbSRobert MustacchiSUBDIRS = $(MACH)
35*533affcbSRobert Mustacchi$(BUILD64)SUBDIRS += $(MACH64)
36*533affcbSRobert Mustacchi
37*533affcbSRobert Mustacchiall := TARGET = all
38*533affcbSRobert Mustacchiclean := TARGET = clean
39*533affcbSRobert Mustacchiclobber := TARGET = clobber
40*533affcbSRobert Mustacchiinstall := TARGET = install
41*533affcbSRobert Mustacchi
42*533affcbSRobert Mustacchi.KEEP_STATE:
43*533affcbSRobert Mustacchi
44*533affcbSRobert Mustacchiall clean clobber install: $(SUBDIRS)
45*533affcbSRobert Mustacchi
46*533affcbSRobert Mustacchiinstall: install_h $(SUBDIRS)
47*533affcbSRobert Mustacchi
48*533affcbSRobert Mustacchiinstall_h: $(ROOTHDRS)
49*533affcbSRobert Mustacchi
50*533affcbSRobert Mustacchicheck: $(CHECKHDRS) $(TYPECHECK)
51*533affcbSRobert Mustacchi
52*533affcbSRobert Mustacchi$(SUBDIRS): FRC
53*533affcbSRobert Mustacchi	@cd $@; pwd; $(MAKE) $(TARGET)
54*533affcbSRobert Mustacchi
55*533affcbSRobert MustacchiFRC:
56*533affcbSRobert Mustacchi
57*533affcbSRobert Mustacchiinclude ../Makefile.targ
58