xref: /titanic_52/usr/src/lib/libzfs/Makefile.com (revision fc30d4661fdf50c4c69dacbc572af35439c28cd8)
1fa9e4066Sahrens#
2fa9e4066Sahrens# CDDL HEADER START
3fa9e4066Sahrens#
4fa9e4066Sahrens# The contents of this file are subject to the terms of the
5f808c858Sraf# Common Development and Distribution License (the "License").
6f808c858Sraf# You may not use this file except in compliance with the License.
7fa9e4066Sahrens#
8fa9e4066Sahrens# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9fa9e4066Sahrens# or http://www.opensolaris.org/os/licensing.
10fa9e4066Sahrens# See the License for the specific language governing permissions
11fa9e4066Sahrens# and limitations under the License.
12fa9e4066Sahrens#
13fa9e4066Sahrens# When distributing Covered Code, include this CDDL HEADER in each
14fa9e4066Sahrens# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15fa9e4066Sahrens# If applicable, add the following below this CDDL HEADER, with the
16fa9e4066Sahrens# fields enclosed by brackets "[]" replaced with your own identifying
17fa9e4066Sahrens# information: Portions Copyright [yyyy] [name of copyright owner]
18fa9e4066Sahrens#
19fa9e4066Sahrens# CDDL HEADER END
20fa9e4066Sahrens#
21fa9e4066Sahrens#
2299d5e173STim Haley# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
239c3fd121SMatthew Ahrens# Copyright (c) 2011, 2014 by Delphix. All rights reserved.
24fa9e4066Sahrens#
25fa9e4066Sahrens
26fa9e4066SahrensLIBRARY= libzfs.a
27fa9e4066SahrensVERS= .1
28fa9e4066Sahrens
29069f55e2SEric SchrockOBJS_SHARED=			\
30ad135b5dSChristopher Siden	zfeature_common.o	\
31069f55e2SEric Schrock	zfs_comutil.o		\
32069f55e2SEric Schrock	zfs_deleg.o		\
33069f55e2SEric Schrock	zfs_fletcher.o		\
34069f55e2SEric Schrock	zfs_namecheck.o		\
35069f55e2SEric Schrock	zfs_prop.o		\
36069f55e2SEric Schrock	zpool_prop.o		\
37069f55e2SEric Schrock	zprop_common.o
38069f55e2SEric Schrock
39069f55e2SEric SchrockOBJS_COMMON=			\
40069f55e2SEric Schrock	libzfs_changelist.o	\
41069f55e2SEric Schrock	libzfs_config.o		\
42069f55e2SEric Schrock	libzfs_dataset.o	\
4399d5e173STim Haley	libzfs_diff.o		\
44069f55e2SEric Schrock	libzfs_fru.o		\
45069f55e2SEric Schrock	libzfs_import.o		\
4619b94df9SMatthew Ahrens	libzfs_iter.o		\
47069f55e2SEric Schrock	libzfs_mount.o		\
48069f55e2SEric Schrock	libzfs_pool.o		\
49069f55e2SEric Schrock	libzfs_sendrecv.o	\
50069f55e2SEric Schrock	libzfs_status.o		\
51069f55e2SEric Schrock	libzfs_util.o
52069f55e2SEric Schrock
53fa9e4066SahrensOBJECTS= $(OBJS_COMMON) $(OBJS_SHARED)
54fa9e4066Sahrens
55fa9e4066Sahrensinclude ../../Makefile.lib
56fa9e4066Sahrens
5764dbca9eSeschrock# libzfs must be installed in the root filesystem for mount(1M)
5864dbca9eSeschrockinclude ../../Makefile.rootfs
5964dbca9eSeschrock
60fa9e4066SahrensLIBS=	$(DYNLIB) $(LINTLIB)
61fa9e4066Sahrens
62f808c858SrafSRCDIR =	../common
63f808c858Sraf
64fa9e4066SahrensINCS += -I$(SRCDIR)
65fa9e4066SahrensINCS += -I../../../uts/common/fs/zfs
66fa9e4066SahrensINCS += -I../../../common/zfs
674f67d755SEric TaylorINCS += -I../../libc/inc
68fa9e4066Sahrens
69fa9e4066SahrensC99MODE=	-xc99=%all
70fa9e4066SahrensC99LMODE=	-Xc99=%all
71681d9761SEric TaylorLDLIBS +=	-lc -lm -ldevid -lgen -lnvpair -luutil -lavl -lefi \
72*fc30d466SJason King	-ladm -lidmap -ltsol -lmd -lumem -lzfs_core -lcmdutils
7399d5e173STim HaleyCPPFLAGS +=	$(INCS) -D_LARGEFILE64_SOURCE=1 -D_REENTRANT
74fa9e4066Sahrens
759c3fd121SMatthew Ahrens# There's no lint library for zlib, so only include this when building
769c3fd121SMatthew Ahrens$(DYNLIB) := LDLIBS +=	-lz
779c3fd121SMatthew Ahrens
787014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-switch
797014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-parentheses
807014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-uninitialized
817014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-unused-function
827014882cSRichard Lowe
83fa9e4066SahrensSRCS=	$(OBJS_COMMON:%.o=$(SRCDIR)/%.c)	\
84fa9e4066Sahrens	$(OBJS_SHARED:%.o=$(SRC)/common/zfs/%.c)
85fa9e4066Sahrens$(LINTLIB) := SRCS=	$(SRCDIR)/$(LINTSRC)
86fa9e4066Sahrens
87fa9e4066Sahrens.KEEP_STATE:
88fa9e4066Sahrens
89fa9e4066Sahrensall: $(LIBS)
90fa9e4066Sahrens
91fa9e4066Sahrenslint: lintcheck
92fa9e4066Sahrens
93fa9e4066Sahrenspics/%.o: ../../../common/zfs/%.c
94fa9e4066Sahrens	$(COMPILE.c) -o $@ $<
95fa9e4066Sahrens	$(POST_PROCESS_O)
96fa9e4066Sahrens
97fa9e4066Sahrensinclude ../../Makefile.targ
98