12 #
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 #
19 # CDDL HEADER END
20 #
21 #
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
24 #
25 # This makefile drives the production of the zfs file system
26 # kernel module.
27 #
28 # Copyright 2013 Saso Kiselkov. All rights reserved.
29 #
30 # Copyright (c) 2016 by Delphix. All rights reserved.
31 #
32 # Copyright (c) 2018, Joyent, Inc.
33
34 #
35 # Path to the base of the uts directory tree (usually /usr/src/uts).
36 #
37 UTSBASE = ../..
38
39 ARCHDIR:sh = cd ..; basename `pwd`
40
41 #
42 # Define the module and object file sets.
43 #
44 MODULE = zfs
45 OBJECTS = $(ZFS_OBJS:%=$(OBJS_DIR)/%) $(LUA_OBJS:%=$(OBJS_DIR)/%)
46 # LUA_OBJS are intentionally omitted from LINTS
47 LINTS = $(ZFS_OBJS:%.o=$(LINTS_DIR)/%.ln)
48 ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
49 ROOTLINK = $(ROOT_FS_DIR)/$(MODULE)
50 CONF_SRCDIR = $(UTSBASE)/common/fs/zfs
51
52 #
56
57 #
58 # Define targets
59 #
60 ALL_TARGET = $(BINARY) $(SRC_CONFILE)
61 LINT_TARGET = $(MODULE).lint
62 INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) $(ROOT_CONFFILE)
63
64 #
65 # Overrides and depends_on
66 #
67 MODSTUBS_DIR = $(OBJS_DIR)
68 LDFLAGS += -dy -Nfs/specfs -Ncrypto/swrand -Nmisc/idmap -Nmisc/sha2 \
69 -Nmisc/skein -Nmisc/edonr
70
71 INC_PATH += -I$(UTSBASE)/common/fs/zfs
72 INC_PATH += -I$(UTSBASE)/common/fs/zfs/lua
73 INC_PATH += -I$(SRC)/common
74 INC_PATH += -I$(COMMONBASE)/zfs
75
76 C99LMODE= -Xc99=%all
77
78 #
79 # For now, disable these lint checks; maintainers should endeavor
80 # to investigate and remove these for maximum lint coverage.
81 # Please do not carry these forward to new Makefiles.
82 #
83 LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
84 LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
85 LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
86 LINTTAGS += -erroff=E_STATIC_UNUSED
87 LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
88 LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
89
90 CERRWARN += -_gcc=-Wno-type-limits
91 CERRWARN += -_gcc=-Wno-switch
92 CERRWARN += -_gcc=-Wno-parentheses
93 CERRWARN += -_gcc=-Wno-unused-variable
94 CERRWARN += -_gcc=-Wno-unused-function
95 CERRWARN += -_gcc=-Wno-unused-label
|
12 #
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 #
19 # CDDL HEADER END
20 #
21 #
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
24 #
25 # This makefile drives the production of the zfs file system
26 # kernel module.
27 #
28 # Copyright 2013 Saso Kiselkov. All rights reserved.
29 #
30 # Copyright (c) 2016 by Delphix. All rights reserved.
31 #
32 # Copyright 2018 Joyent, Inc.
33
34 #
35 # Path to the base of the uts directory tree (usually /usr/src/uts).
36 #
37 UTSBASE = ../..
38
39 ARCHDIR:sh = cd ..; basename `pwd`
40
41 #
42 # Define the module and object file sets.
43 #
44 MODULE = zfs
45 OBJECTS = $(ZFS_OBJS:%=$(OBJS_DIR)/%) $(LUA_OBJS:%=$(OBJS_DIR)/%)
46 # LUA_OBJS are intentionally omitted from LINTS
47 LINTS = $(ZFS_OBJS:%.o=$(LINTS_DIR)/%.ln)
48 ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
49 ROOTLINK = $(ROOT_FS_DIR)/$(MODULE)
50 CONF_SRCDIR = $(UTSBASE)/common/fs/zfs
51
52 #
56
57 #
58 # Define targets
59 #
60 ALL_TARGET = $(BINARY) $(SRC_CONFILE)
61 LINT_TARGET = $(MODULE).lint
62 INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) $(ROOT_CONFFILE)
63
64 #
65 # Overrides and depends_on
66 #
67 MODSTUBS_DIR = $(OBJS_DIR)
68 LDFLAGS += -dy -Nfs/specfs -Ncrypto/swrand -Nmisc/idmap -Nmisc/sha2 \
69 -Nmisc/skein -Nmisc/edonr
70
71 INC_PATH += -I$(UTSBASE)/common/fs/zfs
72 INC_PATH += -I$(UTSBASE)/common/fs/zfs/lua
73 INC_PATH += -I$(SRC)/common
74 INC_PATH += -I$(COMMONBASE)/zfs
75
76 CPPFLAGS += -I$(UTSBASE)/i86pc
77 C99LMODE= -Xc99=%all
78
79 #
80 # For now, disable these lint checks; maintainers should endeavor
81 # to investigate and remove these for maximum lint coverage.
82 # Please do not carry these forward to new Makefiles.
83 #
84 LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
85 LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
86 LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
87 LINTTAGS += -erroff=E_STATIC_UNUSED
88 LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
89 LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
90
91 CERRWARN += -_gcc=-Wno-type-limits
92 CERRWARN += -_gcc=-Wno-switch
93 CERRWARN += -_gcc=-Wno-parentheses
94 CERRWARN += -_gcc=-Wno-unused-variable
95 CERRWARN += -_gcc=-Wno-unused-function
96 CERRWARN += -_gcc=-Wno-unused-label
|