Print this page
8411 Build should warn when linking against libraries outside proto area
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/lib/libzfs/Makefile.com
+++ new/usr/src/lib/libzfs/Makefile.com
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 (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
23 23 # Copyright 2016 Igor Kozhukhov <ikozhukhov@gmail.com>
24 24 # Copyright (c) 2011, 2016 by Delphix. All rights reserved.
25 +# Copyright 2017 RackTop Systems.
25 26 #
26 27
27 28 LIBRARY= libzfs.a
28 29 VERS= .1
29 30
30 31 OBJS_SHARED= \
31 32 zfeature_common.o \
32 33 zfs_comutil.o \
33 34 zfs_deleg.o \
34 35 zfs_fletcher.o \
35 36 zfs_namecheck.o \
36 37 zfs_prop.o \
37 38 zpool_prop.o \
38 39 zprop_common.o
39 40
40 41 OBJS_COMMON= \
41 42 libzfs_changelist.o \
42 43 libzfs_config.o \
43 44 libzfs_dataset.o \
44 45 libzfs_diff.o \
45 46 libzfs_fru.o \
46 47 libzfs_import.o \
47 48 libzfs_iter.o \
48 49 libzfs_mount.o \
49 50 libzfs_pool.o \
50 51 libzfs_sendrecv.o \
51 52 libzfs_status.o \
52 53 libzfs_util.o
53 54
54 55 OBJECTS= $(OBJS_COMMON) $(OBJS_SHARED)
55 56
56 57 include ../../Makefile.lib
57 58
58 59 # libzfs must be installed in the root filesystem for mount(1M)
59 60 include ../../Makefile.rootfs
60 61
61 62 LIBS= $(DYNLIB) $(LINTLIB)
62 63
63 64 SRCDIR = ../common
64 65
65 66 INCS += -I$(SRCDIR)
66 67 INCS += -I../../../uts/common/fs/zfs
67 68 INCS += -I../../../common/zfs
68 69 INCS += -I../../libc/inc
69 70
↓ open down ↓ |
35 lines elided |
↑ open up ↑ |
70 71 C99MODE= -xc99=%all
71 72 C99LMODE= -Xc99=%all
72 73 LDLIBS += -lc -lm -ldevid -lgen -lnvpair -luutil -lavl -lefi \
73 74 -ladm -lidmap -ltsol -lmd -lumem -lzfs_core
74 75 CPPFLAGS += $(INCS) -D_LARGEFILE64_SOURCE=1 -D_REENTRANT
75 76 $(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
76 77
77 78 # There's no lint library for zlib, so only include this when building
78 79 $(DYNLIB) := LDLIBS += -lz
79 80
81 +# Allow zlib to be taken from outside the proto area.
82 +$(ADJUNCT_PROTO_NOT_SET)DYNFLAGS += $(ZASSERTDEFLIB)=libz.so
83 +
80 84 LINTFLAGS += -erroff=E_STATIC_UNUSED
81 85 LINTFLAGS64 += -erroff=E_STATIC_UNUSED
82 86
83 87 SRCS= $(OBJS_COMMON:%.o=$(SRCDIR)/%.c) \
84 88 $(OBJS_SHARED:%.o=$(SRC)/common/zfs/%.c)
85 89 $(LINTLIB) := SRCS= $(SRCDIR)/$(LINTSRC)
86 90
87 91 .KEEP_STATE:
88 92
89 93 all: $(LIBS)
90 94
91 95 lint: lintcheck
92 96
93 97 pics/%.o: ../../../common/zfs/%.c
94 98 $(COMPILE.c) -o $@ $<
95 99 $(POST_PROCESS_O)
96 100
97 101 include ../../Makefile.targ
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX