1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 23# Copyright 2016 Igor Kozhukhov <ikozhukhov@gmail.com>. 24# Copyright (c) 2015 by Delphix. All rights reserved. 25# Copyright 2019 Joyent, Inc. 26# 27 28PROG= zpool 29OBJS= zpool_main.o zpool_vdev.o zpool_iter.o zpool_util.o 30SRCS= $(OBJS:%.o=%.c) 31POFILES=$(OBJS:%.o=%.po) 32POFILE= zpool.po 33 34include ../Makefile.cmd 35include ../Makefile.ctf 36 37STATCOMMONDIR = $(SRC)/cmd/stat/common 38 39STAT_COMMON_OBJS = timestamp.o 40STAT_COMMON_SRCS = $(STAT_COMMON_OBJS:%.o=$(STATCOMMONDIR)/%.c) 41SRCS += $(STAT_COMMON_SRCS) 42 43LDLIBS += -lzfs -lnvpair -ldevid -lefi -ldiskmgt -luutil -lumem 44 45INCS += -I../../common/zfs -I$(STATCOMMONDIR) 46 47CSTD= $(CSTD_GNU99) 48C99LMODE= -Xc99=%all 49 50CPPFLAGS += -D_LARGEFILE64_SOURCE=1 -D_REENTRANT $(INCS) 51$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 52 53# lint complains about unused _umem_* functions 54LINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 55LINTFLAGS64 += -xerroff=E_NAME_DEF_NOT_USED2 56 57ROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%) 58 59.KEEP_STATE: 60 61all: $(PROG) 62 63$(PROG): $(OBJS) $(STAT_COMMON_OBJS) 64 $(LINK.c) -o $@ $(OBJS) $(STAT_COMMON_OBJS) $(LDLIBS) 65 $(POST_PROCESS) 66 67%.o: $(STATCOMMONDIR)/%.c 68 $(COMPILE.c) $< 69 $(POST_PROCESS_O) 70 71install: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS) 72 73$(POFILE): $(POFILES) 74 $(RM) $@ 75 $(CAT) $(POFILES) > $@ 76 77clean: 78 $(RM) $(OBJS) $(STAT_COMMON_OBJS) 79 80lint: lint_SRCS 81 82# Links from /usr/sbin to /sbin 83$(ROOTUSRSBINLINKS): 84 -$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@ 85 86include ../Makefile.targ 87