6253 F_GETLK doesn't always return lock owner
[illumos-gate.git] / usr / src / cmd / fs.d / Makefile.fstype
blob2233045727d8a064b874c4fd6c311feacd0c9c13
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
23 # Use is subject to license terms.
25 #       cmd/fs.d/Makefile.fstype
26 #       Definitions and targets common to "simple" file system types.
29 # FSTYPE is name of filesystem type subdirectory to build
30 # PROG is a list of filesystem type programs to be installed BOTH in
31 #       ../etc/fs/$(FSTYPE) and ../usr/lib/fs/$(FSTYPE)
32 #       Those installed under etc/fs must be statically linked, while
33 #       those installed under usr/lib/fs must be dynamically linked.
34 # ETCPROG is a list of filesystem type programs to be installed ONLY in
35 #       ../etc/fs/$(FSTYPE)
36 # LIBPROG is a list of filesystem type programs to be installed ONLY in
37 #       ../usr/lib/fs/$(FSTYPE)
38 # TYPEPROG is a list of filesystem type programs to be installed ONLY in
39 #       ../usr/lib/$(FSTYPE)    [as with nfs daemons]
41 # include global command definitions; SRC should be defined in the shell.
42 # SRC is needed until RFE 1026993 is implemented.
43 include         $(SRC)/cmd/Makefile.cmd
45 FSCOMMONDIR=    $(SRC)/cmd/fs.d
46 FSLIB=          $(FSCOMMONDIR)/fslib.o
47 FSLIBSRC=       $(FSLIB:%.o=%.c)
49 ROOTETCFS=      $(ROOTETC)/fs
50 ROOTLIBFS=      $(ROOTLIB)/fs
51 FSDIRS=         $(ROOTETCFS) $(ROOTLIBFS)
52 ROOTETCFSTYPE=  $(ROOTETCFS)/$(FSTYPE)
53 ROOTLIBFSTYPE=  $(ROOTLIBFS)/$(FSTYPE)
54 ROOTETCTYPE=    $(ROOTETC)/$(FSTYPE)
55 ROOTLIBTYPE=    $(ROOTLIB)/$(FSTYPE)
56 ROOTETCFSPROG=  $(PROG:%=$(ROOTETCFSTYPE)/%) $(ETCPROG:%=$(ROOTETCFSTYPE)/%)
57 ROOTLIBFSPROG=  $(PROG:%=$(ROOTLIBFSTYPE)/%) $(LIBPROG:%=$(ROOTLIBFSTYPE)/%)
58 ROOTTYPEPROG=   $(TYPEPROG:%=$(ROOTLIBTYPE)/%)
59 FSTYPEDIRS=     $(FSDIRS:%=%/$(FSTYPE)) $(ROOTETCTYPE) $(ROOTLIBTYPE)
60 FSTYPEPROG=     $(ROOTETCFSPROG) $(ROOTLIBFSPROG) $(ROOTTYPEPROG)
62 CLOBBERFILES += $(ETCPROG) $(LIBPROG) $(TYPEPROG)
64 .KEEP_STATE:
66 all:            $(PROG) $(ETCPROG) $(LIBPROG) $(TYPEPROG)
68 # FSDIRS are made by $(SRC)/Targetdirs via rootdirs in $(SRC)/Makefile
69 # Some FSTYPE directories are made there also and should not be made here,
70 # but it is easier to handle them as a class.  "install" will not remake
71 # a directory that already exists.
73 $(FSTYPEDIRS): 
74                 $(INS.dir)
76 $(ROOTETCFSTYPE)/%:     $(ROOTETCFSTYPE) %
77                 $(INS.file)
79 $(ROOTLIBFSTYPE)/%:     $(ROOTLIBFSTYPE) %
80                 $(INS.file)
82 $(ROOTLIBTYPE)/%:       $(ROOTLIBTYPE) %
83                 $(INS.file)
85 $(ROOTETCTYPE)/%:       $(ROOTETCTYPE) %
86                 $(INS.file)
88 # Prevent fslib.o from being build in the sub makefiles.
89 $(FSLIB):
90         @:
92 include         $(SRC)/cmd/Makefile.targ
94 install:        all $(FSTYPEPROG) $(OTHERINSTALL)
96 clean: