Home | History | Annotate | Download | only in zpool
      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 2009 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 
     26 PROG= zpool
     27 OBJS= zpool_main.o zpool_vdev.o zpool_iter.o zpool_util.o
     28 SRCS= $(OBJS:%.o=%.c)
     29 POFILES=$(OBJS:%.o=%.po)
     30 POFILE= zpool.po
     31 
     32 include ../Makefile.cmd
     33 include ../Makefile.ctf
     34 
     35 STATCOMMONDIR = $(SRC)/cmd/stat/common
     36 
     37 STAT_COMMON_OBJS = timestamp.o
     38 STAT_COMMON_SRCS = $(STAT_COMMON_OBJS:%.o=$(STATCOMMONDIR)/%.c)
     39 SRCS += $(STAT_COMMON_SRCS)
     40 
     41 LDLIBS += -lzfs -lnvpair -ldevid -lefi -ldiskmgt -luutil -lumem
     42 
     43 INCS += -I../../common/zfs -I$(STATCOMMONDIR)
     44 
     45 CPPFLAGS += -D_LARGEFILE64_SOURCE=1 -D_REENTRANT $(INCS)
     46 $(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
     47 
     48 # lint complains about unused _umem_* functions
     49 LINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 
     50 LINTFLAGS64 += -xerroff=E_NAME_DEF_NOT_USED2  
     51 
     52 ROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%)
     53 
     54 .KEEP_STATE:
     55 
     56 all: $(PROG)
     57 
     58 $(PROG): $(OBJS) $(STAT_COMMON_OBJS)
     59 	$(LINK.c) -o $@ $(OBJS) $(STAT_COMMON_OBJS) $(LDLIBS)
     60 	$(POST_PROCESS)
     61 
     62 %.o:    $(STATCOMMONDIR)/%.c
     63 	$(COMPILE.c) $<
     64 	$(POST_PROCESS_O)
     65 
     66 install: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS)
     67 
     68 $(POFILE): $(POFILES)
     69 	$(RM) $@
     70 	$(CAT) $(POFILES) > $@
     71 
     72 clean:
     73 	$(RM) $(OBJS) $(STAT_COMMON_OBJS)
     74 
     75 lint:	lint_SRCS
     76 
     77 # Links from /usr/sbin to /sbin
     78 $(ROOTUSRSBINLINKS):
     79 	-$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@
     80 
     81 include ../Makefile.targ
     82