xref: /illumos-gate/usr/src/cmd/halt/Makefile (revision 0afbf5395cf4f4b8d9381a23f852c72b01ec43a4)
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# Copyright 2016 Toomas Soome <tsoome@me.com>
22# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24# Copyright 2018 Joyent, Inc.
25#
26
27PROG = halt
28
29include ../Makefile.cmd
30
31#
32# Currently Fast Reboot is only supported on x86.
33# A new propery config/uadmin_boot_archive_sync is added to
34# boot-config service. Which needs a support on sparc also.
35#
36sparc_SUBDIRS = smf.sparc
37i386_SUBDIRS = smf.i386
38SUBDIRS = $($(MACH)_SUBDIRS)
39
40ROOTLINKS = $(ROOTUSRSBIN)/poweroff $(ROOTUSRSBIN)/reboot
41ROOTSYMLINKS= $(ROOTETC)/halt $(ROOTETC)/reboot
42
43FILEMODE = 0755
44
45.KEEP_STATE:
46
47CPPFLAGS += -I../../lib/libzpool/common
48CPPFLAGS += -I../../lib/libscf/inc
49CPPFLAGS += -I../../uts/common/fs/zfs
50
51CERRWARN += -_gcc=-Wno-unused-label
52
53LDLIBS += -lbsm -lscf -lzfs -lgen
54LDLIBS_i386 +=	-lbe
55LDLIBS +=	$(LDLIBS_$(MACH))
56
57CLOBBERFILES += $(ROOTLINKS) $(ROOTSYMLINKS)
58
59all     :=	TARGET = all
60install :=	TARGET = install
61clean   :=	TARGET = clean
62clobber :=	TARGET = clobber
63lint    :=	TARGET = lint
64lint	:=	LINTFLAGS += -u
65
66
67all: $(PROG)
68
69install: all $(ROOTUSRSBINPROG) $(ROOTLINKS) $(ROOTSYMLINKS) $(SUBDIRS)
70
71$(ROOTLINKS): $(ROOTUSRSBINPROG)
72	$(RM) $@
73	$(LN) $(ROOTUSRSBINPROG) $@
74
75$(ROOTSYMLINKS):
76	$(RM) $@
77	$(SYMLINK) ../usr/sbin/$(PROG) $@
78
79$(SUBDIRS):	FRC
80	@cd $@; pwd; $(MAKE) $(TARGET)
81
82clean:
83
84clobber: $(SUBDIRS)
85
86lint:	lint_PROG
87
88check: $(CHKMANIFEST)
89
90FRC:
91
92include ../Makefile.targ
93