xref: /titanic_52/usr/src/cmd/savecore/Makefile.com (revision d583b39bfb4e2571d3e41097c5c357ffe353ad45)
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) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
23#
24
25PROG= savecore
26SRCS= ../savecore.c ../../../uts/common/os/compress.c
27OBJS= savecore.o compress.o
28
29include ../../Makefile.cmd
30
31C99MODE = $(C99_ENABLE)
32
33CFLAGS += $(CCVERBOSE)
34CFLAGS64 += $(CCVERBOSE)
35CERRWARN += -_gcc=-Wno-uninitialized
36CPPFLAGS += -D_LARGEFILE64_SOURCE=1 -DBZ_NO_STDIO -I$(SRC)/uts/common
37
38#
39# savecore is compiled with bits from $(SRC)/common/bzip2 and some function
40# symbols there are defined as weak; if you leave them out of
41# savecore.c it will compile, but trying to call that function
42# will jump to 0.  So we use -ztext to avoid that.
43#
44LDFLAGS += -ztext
45
46BZIP2OBJS =	bz2blocksort.o	\
47		bz2compress.o	\
48		bz2decompress.o	\
49		bz2randtable.o	\
50		bz2bzlib.o	\
51		bz2crctable.o	\
52		bz2huffman.o
53
54.KEEP_STATE:
55
56all: $(PROG)
57
58$(PROG): $(OBJS) $(BZIP2OBJS)
59	$(LINK.c) -o $(PROG) $(OBJS) $(BZIP2OBJS) $(LDLIBS)
60	$(POST_PROCESS)
61
62clean:
63	$(RM) $(OBJS) $(BZIP2OBJS)
64
65lint := CPPFLAGS += -I$(SRC)/common
66
67#
68# Linting the usr/src/common/bzip2 source produces reams of complaints.
69# So we only lint regular SRCS, but we need to excuse two complaints
70# related to bz_internal_error.
71#
72
73lint := BZ2LINTCOPOUTS = -erroff=E_NAME_USED_NOT_DEF2
74lint := BZ2LINTCOPOUTS += -erroff=E_NAME_DEF_NOT_USED2
75
76lint := LINTFLAGS += $(BZ2LINTCOPOUTS)
77lint := LINTFLAGS64 += $(BZ2LINTCOPOUTS)
78
79lint:	$(LINTSRCS)
80	$(LINT.c) $(SRCS) $(LDLIBS)
81
82include ../../Makefile.targ
83
84%.o: ../%.c
85	$(COMPILE.c) -I$(SRC)/common $<
86	$(POST_PROCESS_O)
87
88%.o: ../../../uts/common/os/%.c
89	$(COMPILE.c) $<
90	$(POST_PROCESS_O)
91
92bz2%.o: ../../../common/bzip2/%.c
93	$(COMPILE.c) -o $@ -I$(SRC)/common -I$(SRC)/common/bzip2 $<
94	$(POST_PROCESS_O)
95