xref: /illumos-gate/usr/src/cmd/fs.d/ufs/fsck/Makefile (revision 948f2876)
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#ident	"%Z%%M%	%I%	%E% SMI"
23#
24# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
25# Use is subject to license terms.
26#
27# cmd/fs.d/ufs/fsck/Makefile
28
29FSTYPE=		ufs
30LIBPROG=	fsck
31ATTMK=		$(LIBPROG)
32
33include		../../Makefile.fstype
34include		../Makefile.roll
35
36FSCKOBJS=	main.o dir.o dup_avl.o inode.o pass1.o pass1b.o \
37		pass2.o \
38		pass3.o pass3b.o pass4.o pass5.o setup.o \
39		utilities.o
40FSCKSRCS=	$(FSCKOBJS:%.o=%.c)
41
42UFSDIR=		../../../../uts/common/fs/ufs
43UFSOBJS=	ufs_subr.o ufs_tables.o
44UFSSRCS=	$(UFSOBJS:%.o=$(UFSDIR)/%.c)
45ROLLDIR=	../roll_log
46
47OBJS=		$(FSCKOBJS) $(UFSOBJS) $(ROLLOBJS) $(FSLIB)
48SRCS=		$(FSCKSRCS) $(UFSSRCS) $(ROLLSRCS) $(FSLIBSRC)
49
50CPPFLAGS +=	-D_LARGEFILE64_SOURCE -I../../ -I../../../../lib/libadm/inc
51LDLIBS +=	-lefi -lavl
52
53$(LIBPROG):	$(OBJS)
54		$(LINK.c) -o $@ $(OBJS) $(LDLIBS) $(CTFMERGE_HOOK)
55		$(POST_PROCESS)
56
57%.o:	$(UFSDIR)/%.c
58	$(COMPILE.c) $< $(CTFCONVERT_HOOK)
59
60# Use DEVLINTFLAGS and the definition of LINT.c below for development
61# checking.  Prior to putback, increase Nlevel to 4 for extra sanity.
62# Nlevel=2 is the default applied by lint.
63#
64# Remember to comment LINT.c out before doing the putback, as we shouldn't
65# be overriding the top-level settings under normal circumstances.
66#
67# Note that you have to have a proto area with populated usr/include and
68# usr/include/sys (or the parent workspace needs it).  Otherwise lint gets
69# very confused.  Unfortunately, we also have to tell it where its own
70# include directory is, or it gets the wrong version of note.h.
71
72SECLEVEL=core
73DEVLINTFLAGS =	-errtags=yes -U__PRAGMA_REDEFINE_EXTNAME \
74		$(C99LMODE) -errsecurity=$(SECLEVEL) \
75		-x -Nlevel=2 \
76		-I/net/tools-sparc/export/tools.sparc/on10-tools/SUNWspro/SOS8/prod/include/lint
77
78#LINT.c=		$(LINT) $(DEVLINTFLAGS) $(CPPFLAGS)
79
80lint:	lint_SRCS
81
82clean:
83	$(RM) $(FSCKOBJS) $(UFSOBJS)
84
85cscope.out tags: FRC
86	$(XREF) -f -x $@
87
88FRC:
89