xref: /illumos-gate/usr/src/cmd/zpool/Makefile (revision 04ef060b033401fddca13239f85a32bfc9f9dfe1)
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 2020 Joyent, Inc.
26# Copyright 2025 Hans Rosenfeld
27#
28
29PROG= zpool
30OBJS= zpool_main.o zpool_vdev.o zpool_iter.o zpool_util.o
31SRCS= $(OBJS:%.o=%.c)
32POFILES=$(OBJS:%.o=%.po)
33POFILE= zpool.po
34
35include ../Makefile.cmd
36include ../Makefile.cmd.64
37include ../Makefile.ctf
38include ../stat/Makefile.stat
39
40LDLIBS += -lzfs -lnvpair -ldevid -lefi -ldiskmgt -luutil -lumem -lzutil \
41	-lm -lzpool
42
43INCS += -I../../common/zfs -I../../uts/common/fs/zfs
44INCS += -I../../lib/libzutil/common
45
46CSTD=	$(CSTD_GNU99)
47
48CPPFLAGS += $(INCS)
49$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
50
51ROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%)
52
53.KEEP_STATE:
54
55all: $(PROG)
56
57$(PROG): $(OBJS)
58	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
59	$(POST_PROCESS)
60
61install: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS)
62
63$(POFILE): $(POFILES)
64	$(RM) $@
65	$(CAT) $(POFILES) > $@
66
67clean:
68	$(RM) $(OBJS)
69
70# Links from /usr/sbin to /sbin
71$(ROOTUSRSBINLINKS):
72	-$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@
73
74include ../Makefile.targ
75