6 # You may not use this file except in compliance with the License.
7 #
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
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 #
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26 # Copyright (c) 2018, Joyent, Inc.
27
28 #
29 # Paths to the base of the uts directory trees
30 #
31 UTSBASE = ../..
32
33 #
34 # Define the module and object file sets.
35 #
36 MODULE = xge
37 OBJECTS = $(XGE_HAL_OBJS:%=$(OBJS_DIR)/%) $(XGE_OBJS:%=$(OBJS_DIR)/%)
38 LINTS = $(XGE_HAL_OBJS:%.o=$(LINTS_DIR)/%.ln) $(XGE_OBJS:%.o=$(LINTS_DIR)/%.ln)
39 ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
40
41 #
42 # Include common rules.
43 #
44 include $(UTSBASE)/intel/Makefile.intel
45
46 #
47 # Define targets
48 #
49 ALL_TARGET = $(BINARY)
50 LINT_TARGET = $(MODULE).lint
51 INSTALL_TARGET = $(BINARY) $(ROOTMODULE)
52
53 #
54 # GENERAL PURPOUSE HAL FLAGS: Tuning HAL for Solaris specific modes
55 #
56 HAL_CFLAGS = -DXGE_HAL_USE_MGMT_AUX
57
58 #
59 # TRACE SECTION: Possible values for MODULE, TRACE and ERR masks:
60 #
61 # XGE_COMPONENT_HAL_CONFIG 0x1
62 # XGE_COMPONENT_HAL_FIFO 0x2
63 # XGE_COMPONENT_HAL_RING 0x4
64 # XGE_COMPONENT_HAL_CHANNEL 0x8
65 # XGE_COMPONENT_HAL_DEVICE 0x10
66 # XGE_COMPONENT_HAL_MM 0x20
67 # XGE_COMPONENT_HAL_QUEUE 0x40
68 # XGE_COMPONENT_HAL_STATS 0x100
69 # XGE_COMPONENT_OSDEP 0x1000
70 # XGE_COMPONENT_LL 0x2000
74 #TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0xffffffff \
75 # -DXGE_DEBUG_TRACE_MASK=0xffffffff \
76 # -DXGE_DEBUG_ERR_MASK=0xffffffff
77 TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0x00003010 \
78 -DXGE_DEBUG_TRACE_MASK=0x00000000 \
79 -DXGE_DEBUG_ERR_MASK=0x00003010
80
81 XGE_CFLAGS = $(HAL_CFLAGS) $(TRACE_CFLAGS) $(CCVERBOSE) \
82 -I$(UTSBASE)/common/io/xge/hal/include \
83 -I$(UTSBASE)/common/io/xge/hal/xgehal \
84 -I$(UTSBASE)/common/io/xge/drv -DSOLARIS
85
86 CFLAGS += $(XGE_CFLAGS) -xO4 -xcrossfile
87 CFLAGS64 += $(XGE_CFLAGS) -xO4 -xcrossfile
88
89 #
90 # Driver depends on MAC & IP
91 #
92 LDFLAGS += -dy -N misc/mac -N drv/ip
93
94 # Lint flag
95 #
96 LINTFLAGS += $(XGE_CFLAGS) -Xc99=%all
97
98 #
99 # For now, disable these lint checks; maintainers should endeavor
100 # to investigate and remove these for maximum lint coverage.
101 # Please do not carry these forward to new Makefiles.
102 #
103 LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
104 LINTTAGS += -erroff=E_STATIC_UNUSED
105 LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
106
107 CERRWARN += -_gcc=-Wno-parentheses
108 CERRWARN += -_gcc=-Wno-unused-variable
109 CERRWARN += -_gcc=-Wno-unused-label
110 CERRWARN += -_gcc=-Wno-empty-body
111 CERRWARN += -_gcc=-Wno-uninitialized
112
113 # needs work
114 SMOFF += indenting,all_func_returns,no_if_block
115
116 #
117 #
118 # Default build targets.
119 #
120 .KEEP_STATE:
121
122 def: $(DEF_DEPS)
123
124 all: $(ALL_DEPS)
125
126 clean: $(CLEAN_DEPS)
127
128 clobber: $(CLOBBER_DEPS)
129
130 lint: $(LINT_DEPS)
131
132 modlintlib: $(MODLINTLIB_DEPS)
133
134 clean.lint: $(CLEAN_LINT_DEPS)
135
136 install: $(INSTALL_DEPS)
137
138 #
139 # Include common targets.
140 #
141 include $(UTSBASE)/intel/Makefile.targ
|
6 # You may not use this file except in compliance with the License.
7 #
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
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 #
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26 # Copyright 2019 Joyent, Inc.
27 #
28
29 #
30 # Paths to the base of the uts directory trees
31 #
32 UTSBASE = ../..
33
34 #
35 # Define the module and object file sets.
36 #
37 MODULE = xge
38 OBJECTS = $(XGE_HAL_OBJS:%=$(OBJS_DIR)/%) $(XGE_OBJS:%=$(OBJS_DIR)/%)
39 ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
40
41 #
42 # Include common rules.
43 #
44 include $(UTSBASE)/intel/Makefile.intel
45
46 #
47 # Define targets
48 #
49 ALL_TARGET = $(BINARY)
50 INSTALL_TARGET = $(BINARY) $(ROOTMODULE)
51
52 #
53 # GENERAL PURPOUSE HAL FLAGS: Tuning HAL for Solaris specific modes
54 #
55 HAL_CFLAGS = -DXGE_HAL_USE_MGMT_AUX
56
57 #
58 # TRACE SECTION: Possible values for MODULE, TRACE and ERR masks:
59 #
60 # XGE_COMPONENT_HAL_CONFIG 0x1
61 # XGE_COMPONENT_HAL_FIFO 0x2
62 # XGE_COMPONENT_HAL_RING 0x4
63 # XGE_COMPONENT_HAL_CHANNEL 0x8
64 # XGE_COMPONENT_HAL_DEVICE 0x10
65 # XGE_COMPONENT_HAL_MM 0x20
66 # XGE_COMPONENT_HAL_QUEUE 0x40
67 # XGE_COMPONENT_HAL_STATS 0x100
68 # XGE_COMPONENT_OSDEP 0x1000
69 # XGE_COMPONENT_LL 0x2000
73 #TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0xffffffff \
74 # -DXGE_DEBUG_TRACE_MASK=0xffffffff \
75 # -DXGE_DEBUG_ERR_MASK=0xffffffff
76 TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0x00003010 \
77 -DXGE_DEBUG_TRACE_MASK=0x00000000 \
78 -DXGE_DEBUG_ERR_MASK=0x00003010
79
80 XGE_CFLAGS = $(HAL_CFLAGS) $(TRACE_CFLAGS) $(CCVERBOSE) \
81 -I$(UTSBASE)/common/io/xge/hal/include \
82 -I$(UTSBASE)/common/io/xge/hal/xgehal \
83 -I$(UTSBASE)/common/io/xge/drv -DSOLARIS
84
85 CFLAGS += $(XGE_CFLAGS) -xO4 -xcrossfile
86 CFLAGS64 += $(XGE_CFLAGS) -xO4 -xcrossfile
87
88 #
89 # Driver depends on MAC & IP
90 #
91 LDFLAGS += -dy -N misc/mac -N drv/ip
92
93 CERRWARN += -_gcc=-Wno-parentheses
94 CERRWARN += -_gcc=-Wno-unused-variable
95 CERRWARN += -_gcc=-Wno-unused-label
96 CERRWARN += -_gcc=-Wno-empty-body
97 CERRWARN += -_gcc=-Wno-uninitialized
98
99 # needs work
100 SMOFF += indenting
101 SMOFF += all_func_returns
102 SMOFF += no_if_block
103 SMOFF += allocating_enough_data
104
105 #
106 #
107 # Default build targets.
108 #
109 .KEEP_STATE:
110
111 def: $(DEF_DEPS)
112
113 all: $(ALL_DEPS)
114
115 clean: $(CLEAN_DEPS)
116
117 clobber: $(CLOBBER_DEPS)
118
119 install: $(INSTALL_DEPS)
120
121 #
122 # Include common targets.
123 #
124 include $(UTSBASE)/intel/Makefile.targ
|