Print this page
10703 smatch unreachable code checking needs reworking
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/cmd/zonecfg/Makefile
+++ new/usr/src/cmd/zonecfg/Makefile
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
↓ open down ↓ |
14 lines elided |
↑ open up ↑ |
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 22 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 23 # Use is subject to license terms.
24 24 #
25 -# Copyright (c) 2018, Joyent, Inc.
25 +# Copyright 2019 Joyent, Inc.
26 +#
26 27
27 28 PROG= zonecfg
28 29 OBJS= zonecfg.o zonecfg_lex.o zonecfg_grammar.tab.o
29 30
30 31 include ../Makefile.cmd
31 32
32 33 # zonecfg has a name clash with main() and libl.so.1. However, zonecfg must
33 34 # still export a number of "yy*" (libl) interfaces. Reduce all other symbols
34 35 # to local scope.
35 36 MAPFILES += $(MAPFILE.LEX) $(MAPFILE.NGB)
36 37 MAPOPTS = $(MAPFILES:%=-M%)
37 38
38 39 LFLAGS = -t
39 40 YFLAGS = -d -b zonecfg_grammar
40 41 LDLIBS += -lzonecfg -ll -lnsl -ltecla -lzfs -lbrand -ldladm -linetutil
41 42 CPPFLAGS += -I.
↓ open down ↓ |
6 lines elided |
↑ open up ↑ |
42 43 LDFLAGS += $(MAPOPTS)
43 44 CLEANFILES += zonecfg_lex.c zonecfg_grammar.tab.c zonecfg_grammar.tab.h
44 45
45 46 CERRWARN += $(CNOWARN_UNINIT)
46 47 CERRWARN += -_gcc=-Wno-unused-label
47 48 CERRWARN += -_gcc=-Wno-unused-variable
48 49 CERRWARN += -_gcc=-Wno-implicit-function-declaration
49 50
50 51 SMOFF += all_func_returns
51 52
53 +# false positive
54 +zonecfg_lex.o := SMOFF += free
55 +
52 56 CLOBBERFILES += $(PROG).ln
53 57
54 58 .KEEP_STATE:
55 59
56 60 all: $(PROG)
57 61
58 62 $(PROG): $(OBJS) $(MAPFILES)
59 63 $(LINK.c) -o $@ $(OBJS) $(LDLIBS)
60 64 $(POST_PROCESS)
61 65
62 66 install: all $(ROOTUSRSBINPROG)
63 67
64 68 zonecfg_lex.c: zonecfg_lex.l zonecfg_grammar.tab.h zonecfg.h
65 69 $(LEX) $(LFLAGS) zonecfg_lex.l > $@
66 70
67 71 zonecfg_grammar.tab.h zonecfg_grammar.tab.c: zonecfg_grammar.y zonecfg.h
68 72 $(YACC) $(YFLAGS) zonecfg_grammar.y
69 73
70 74 zonecfg_lex.o zonecfg_grammar.tab.o := CCVERBOSE =
71 75
72 76 check: $(PROG).c $(PROG).h
73 77 $(CSTYLE) -pP $(PROG).c $(PROG).h
74 78 $(HDRCHK) $(PROG).h
75 79
76 80 clean:
77 81 $(RM) $(OBJS) $(CLEANFILES)
78 82
79 83 #
80 84 # We don't do lint of lex- and yacc- generated source files
81 85 #
82 86 lint:
83 87 $(LINT.c) -c $(PROG).c $(LDLIBS)
84 88
85 89 include ../Makefile.targ
↓ open down ↓ |
24 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX