Print this page
8411 Build should warn when linking against libraries outside proto area
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/cmd/isns/isnsd/Makefile
+++ new/usr/src/cmd/isns/isnsd/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.
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]
↓ open down ↓ |
17 lines elided |
↑ open up ↑ |
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 23 # Use is subject to license terms.
24 24 #
25 25
26 26 #
27 27 # Copyright (c) 2012 by Delphix. All rights reserved.
28 +# Copyright 2017 RackTop Systems.
28 29 #
29 30
30 31 PROG = isns
31 32
32 33 DSRC = isns_provider.d
33 34 DTRACE_HEADER = $(DSRC:%.d=%.h)
34 35
35 36 COBJS = main.o qry.o admintf.o dsapi.o log.o sched.o dseng.o scn.o cache.o
36 37 COBJS += dump.o msgq.o server.o config.o esi.o obj.o utils.o dd.o func.o
37 38 COBJS += pdu.o door.o htable.o
38 39 OBJS = $(COBJS) $(DSRC:%.d=%.o)
39 40 SRCS = $(COBJS:%.o=%.c)
40 41 POFILE= isns.po
41 42 POFILES = $(COBJS:%.o=%.po)
42 43
43 44 include ../../Makefile.cmd
44 45
45 46 DATA_STORE = xml
46 47 XML_DIR = xml_def
47 48 ISNS_SVC = $(XML_DIR)/isns_server.xml
48 49
49 50 MANIFEST = isns_server.xml
50 51 ROOTMANIFESTDIR = $(ROOTSVCNETWORK)
51 52 $(ROOTSVCNETWORK)/isns_server.xml := FILEMODE = 0444
52 53
53 54 CFLAGS += $(CCVERBOSE)
54 55 CPPFLAGS += -I./ -I$(ADJUNCT_PROTO)/usr/include/libxml2
55 56 CPPFLAGS += -DTARGET_DATA_STORE=$(DATA_STORE)
56 57 CPPFLAGS += -D_POSIX_PTHREAD_SEMANTICS
57 58 LINTFLAGS += -xerroff=E_BAD_PTR_CAST_ALIGN
58 59 LINTFLAGS += -xerroff=E_NAME_USED_NOT_DEF2
59 60 LINTFLAGS += -xerroff=E_CASE_FALLTHRU
60 61
61 62 CERRWARN += -_gcc=-Wno-char-subscripts
62 63 CERRWARN += -_gcc=-Wno-ignored-qualifiers
↓ open down ↓ |
25 lines elided |
↑ open up ↑ |
63 64 CERRWARN += -_gcc=-Wno-uninitialized
64 65 CERRWARN += -_gcc=-Wno-implicit-function-declaration
65 66
66 67 CLOBBERFILES += $(DTRACE_HEADER)
67 68
68 69 obj.o := CERRWARN += -erroff=E_CONST_OBJ_SHOULD_HAVE_INITIZR
69 70 obj.o := CERRWARN += -erroff=E_IMPLICIT_DECL_FUNC_RETURN_INT
70 71
71 72 LDLIBS += -lsecdb -lsocket -lnsl -lscf -lxml2
72 73
74 +# Allow libxml2 to be taken from outside the proto area.
75 +$(ADJUNCT_PROTO_NOT_SET)LDFLAGS += $(ZASSERTDEFLIB)=libxml2.so
76 +
73 77 .KEEP_STATE:
74 78
75 79 all: $(PROG)
76 80
77 81 $(PROG): $(OBJS)
78 82 $(LINK.c) -o $@ $(OBJS) $(LDLIBS)
79 83 $(POST_PROCESS)
80 84
81 85 %.h: %.d
82 86 $(DTRACE) -h -s $< -o $@
83 87
84 88 %.o: %.c $(DTRACE_HEADER)
85 89 $(COMPILE.c) $<
86 90 $(POST_PROCESS_O)
87 91
88 92 %.o: %.d $(COBJS)
89 93 $(COMPILE.d) -s $< $(COBJS)
90 94 $(POST_PROCESS_O)
91 95
92 96 clean:
93 97 $(RM) $(OBJS)
94 98
95 99 lint: lint_SRCS
96 100
97 101 $(POFILE): $(POFILES)
98 102 $(RM) $@
99 103 $(CAT) $(POFILES) > $@
100 104
101 105 check: $(CHKMANIFEST)
102 106
103 107 include ../../Makefile.targ
104 108
105 109 install: all .WAIT $(ROOTUSRSBINPROG) $(ROOTMANIFEST)
↓ open down ↓ |
23 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX