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 2010 Sun Microsystems, Inc. All rights reserved. 23# Copyright 2010 Nexenta Systems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26 27PROG= zfs 28OBJS= zfs_main.o zfs_iter.o 29SRCS= $(OBJS:%.o=%.c) 30POFILES= zfs_main.po zfs_iter.po 31POFILE= zfs.po 32 33include ../Makefile.cmd 34include ../Makefile.ctf 35 36FSTYPE= zfs 37LINKPROGS= mount umount 38ROOTETCFSTYPE= $(ROOTETC)/fs/$(FSTYPE) 39USRLIBFSTYPE= $(ROOTLIB)/fs/$(FSTYPE) 40 41LDLIBS += -lzfs -luutil -lumem -lnvpair -lsec -lidmap 42 43INCS += -I../../common/zfs 44 45C99MODE= -xc99=%all 46C99LMODE= -Xc99=%all 47 48CPPFLAGS += -D_LARGEFILE64_SOURCE=1 -D_REENTRANT $(INCS) 49$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 50 51# lint complains about unused _umem_* functions 52LINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 53LINTFLAGS64 += -xerroff=E_NAME_DEF_NOT_USED2 54 55ROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%) 56USRLIBFSTYPELINKS = $(LINKPROGS:%=$(USRLIBFSTYPE)/%) 57ROOTETCFSTYPELINKS = $(LINKPROGS:%=$(ROOTETCFSTYPE)/%) 58 59.KEEP_STATE: 60 61.PARALLEL: 62 63all: $(PROG) 64 65$(PROG): $(OBJS) 66 $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 67 $(POST_PROCESS) 68 69install: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS) $(USRLIBFSTYPELINKS) \ 70 $(ROOTETCFSTYPELINKS) 71 72$(POFILE): $(POFILES) 73 $(RM) $@ 74 cat $(POFILES) > $@ 75 76clean: 77 $(RM) $(OBJS) 78 79lint: lint_SRCS 80 81# Links from /usr/sbin to /sbin 82$(ROOTUSRSBINLINKS): 83 -$(RM) $@; $(SYMLINK) ../../sbin/$(PROG) $@ 84 85# Links from /usr/lib/fs/zfs to /sbin 86$(USRLIBFSTYPELINKS): 87 -$(RM) $@; $(SYMLINK) ../../../../sbin/$(PROG) $@ 88 89# Links from /etc/fs/zfs to /sbin 90$(ROOTETCFSTYPELINKS): 91 -$(RM) $@; $(SYMLINK) ../../../sbin/$(PROG) $@ 92 93FRC: 94 95include ../Makefile.targ 96