Print this page
3748 zfs headers should be C++ compatible
Submitted by: Justin Gibbs <justing@spectralogic.com>
Submitted by: Will Andrews <willa@spectralogic.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/lib/libzpool/Makefile.com
+++ new/usr/src/lib/libzpool/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.
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 (c) 2013 by Delphix. All rights reserved.
24 24 #
25 25
26 26 LIBRARY= libzpool.a
27 27 VERS= .1
28 28
29 29 # include the list of ZFS sources
30 30 include ../../../uts/common/Makefile.files
31 31 KERNEL_OBJS = kernel.o taskq.o util.o
32 32 DTRACE_OBJS = zfs.o
33 33
34 34 OBJECTS=$(ZFS_COMMON_OBJS) $(ZFS_SHARED_OBJS) $(KERNEL_OBJS)
35 35
36 36 # include library definitions
37 37 include ../../Makefile.lib
38 38
39 39 ZFS_COMMON_SRCS= $(ZFS_COMMON_OBJS:%.o=../../../uts/common/fs/zfs/%.c)
40 40 ZFS_SHARED_SRCS= $(ZFS_SHARED_OBJS:%.o=../../../common/zfs/%.c)
41 41 KERNEL_SRCS= $(KERNEL_OBJS:%.o=../common/%.c)
42 42
43 43 SRCS=$(ZFS_COMMON_SRCS) $(ZFS_SHARED_SRCS) $(KERNEL_SRCS)
44 44 SRCDIR= ../common
45 45
46 46 # There should be a mapfile here
47 47 MAPFILES =
48 48
49 49 LIBS += $(LINTLIB)
50 50
51 51 INCS += -I../common
52 52 INCS += -I../../../uts/common/fs/zfs
53 53 INCS += -I../../../common/zfs
54 54 INCS += -I../../../common
55 55
56 56 CLEANFILES += ../common/zfs.h
57 57
58 58 $(LINTLIB) := SRCS= $(SRCDIR)/$(LINTSRC)
59 59 $(LINTLIB): ../common/zfs.h
60 60
61 61 C99MODE= -xc99=%all
62 62 C99LMODE= -Xc99=%all
63 63
64 64 CFLAGS += -g $(CCVERBOSE) $(CNOGLOBAL)
65 65 CFLAGS64 += -g $(CCVERBOSE) $(CNOGLOBAL)
66 66 LDLIBS += -lcmdutils -lumem -lavl -lnvpair -lz -lc -lsysevent -lmd
67 67 CPPFLAGS += $(INCS) -DDEBUG
68 68
69 69 CERRWARN += -_gcc=-Wno-parentheses
70 70 CERRWARN += -_gcc=-Wno-switch
71 71 CERRWARN += -_gcc=-Wno-type-limits
↓ open down ↓ |
71 lines elided |
↑ open up ↑ |
72 72 CERRWARN += -_gcc=-Wno-unused-variable
73 73 CERRWARN += -_gcc=-Wno-uninitialized
74 74 CERRWARN += -_gcc=-Wno-empty-body
75 75 CERRWARN += -_gcc=-Wno-unused-function
76 76 CERRWARN += -_gcc=-Wno-unused-label
77 77
78 78 .KEEP_STATE:
79 79
80 80 all: $(LIBS)
81 81
82 +$(LIBS): libzpool_hdrck.o
83 +
82 84 lint: $(LINTLIB)
83 85
84 86 include ../../Makefile.targ
85 87
86 88 EXTPICS= $(DTRACE_OBJS:%=pics/%)
87 89
90 +libzpool_hdrck.o: libzpool_hdrck.cpp
91 + $(COMPILE.cc) -DB_FALSE=_B_FALSE -DB_TRUE=_B_TRUE -o $@ $^
92 +
93 +libzpool_hdrck.cpp:
94 + find .. -name '*.[ch]' | xargs grep -h '^#include <' > $@
95 +
88 96 pics/%.o: ../../../uts/common/fs/zfs/%.c ../common/zfs.h
89 97 $(COMPILE.c) -o $@ $<
90 98 $(POST_PROCESS_O)
91 99
92 100 pics/%.o: ../../../common/zfs/%.c ../common/zfs.h
93 101 $(COMPILE.c) -o $@ $<
94 102 $(POST_PROCESS_O)
95 103
96 104 pics/%.o: ../common/%.d $(PICS)
97 105 $(COMPILE.d) -C -s $< -o $@ $(PICS)
98 106 $(POST_PROCESS_O)
99 107
100 108 ../common/%.h: ../common/%.d
101 109 $(DTRACE) -xnolibs -h -s $< -o $@
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX