Makefile revision 24fe0b3bf671e123467ce1df0b67cadd3614c8e4
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# CDDL HEADER START
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# The contents of this file are subject to the terms of the
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# Common Development and Distribution License (the "License").
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# You may not use this file except in compliance with the License.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# or http://www.opensolaris.org/os/licensing.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# See the License for the specific language governing permissions
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# and limitations under the License.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# When distributing Covered Code, include this CDDL HEADER in each
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# If applicable, add the following below this CDDL HEADER, with the
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# fields enclosed by brackets "[]" replaced with your own identifying
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# CDDL HEADER END
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# Use is subject to license terms.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# cmd/power/Makefile
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncDAEMON_SRCS = powerd.c sysstat.c
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncDAEMON_OBJS = $(DAEMON_SRCS:%.c=%.o)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncDAEMON = powerd
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPMCFG_SRCS = conf.c parse.c handlers.c
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPMCFG_OBJS = $(PMCFG_SRCS:%.c=%.o)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPMCFG = pmconfig
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSUSPEND_SRCS = sys-suspend.c pm_pam_conv.c
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSUSPEND_OBJS = $(SUSPEND_SRCS:%.c=%.o)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSUSPEND = sys-suspend
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSRCS = $(DAEMON_SRCS) $(PMCFG_SRCS) $(SUSPEND_SRCS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncOBJS = $(SRCS:%.c=%.o)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSCRIPTS = sysidpm.sh
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSYSIDPM = sysidpm
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPROG = $(DAEMON) $(PMCFG) $(SYSIDPM) $(SUSPEND)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPOWERCONF= power.conf
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncETCFILES = $(POWERCONF)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPOWERPERM = power
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncDEFAULTFILES = power.dfl
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncMANIFEST= power.xml
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSVCMETHOD= svc-power
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncinclude ../Makefile.cmd
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTMANIFESTDIR = $(ROOTSVCSYSTEM)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncTEXT_DOMAIN= SUNW_OST_OSCMD
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncXGETFLAGS += -a -x power_all.xcl
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPOFILE= power_all.po
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPOFILES= $(PMCFG_SRCS:%.c=%.po) $(SUSPEND_SRCS:%.c=%.po)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# needed because POFILES is deleted by clobber, but it's under
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# SCCS control here.
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncOPOFILES= sysidpm.po
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# pmconfig only needs libdevinfo on sparc
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncsparc_LDEVINFO= -ldevinfo -lefi -ladm -lzfs -lnvpair
b9a21c3c91c47e090316e28d759194e46628ed49vboxsynci386_LDEVINFO=
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncLDEVINFO= -ldevinfo
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncDAEMON_LDLIBS = $(LDLIBS.cmd) -lkstat $(LDEVINFO)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncPMCFG_LDLIBS = $(LDLIBS.cmd) -lcmd -lsmbios -lkstat $($(MACH)_LDEVINFO)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncSUSPEND_LDLIBS = $(LDLIBS.cmd) -lbsm -lpam -lsecdb
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTUSRSBINPMCFG= $(PMCFG:%=$(ROOTUSRSBIN)/%)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTUSRSBINPMCFG) := FILEMODE= 4555
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTUSRBINSUSPEND= $(SUSPEND:%=$(ROOTBIN)/%)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTUSRBINSUSPEND) := FILEMODE= 4555
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTLIBPOWER= $(ROOTLIB)/power
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTLIBPOWERDAEMON= $(DAEMON:%=$(ROOTLIBPOWER)/%)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTLIBPOWER) := FILEMODE= 755
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTLIBPOWERDAEMON) := FILEMODE= 555
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTETCFILES= $(ETCFILES:%=$(ROOTETC)/%)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTETCFILES) := FILEMODE= 644
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncROOTUSRSBINSYSIDPM= $(SYSIDPM:%=$(ROOTUSRSBIN)/%)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(ROOTUSRSBINSYSIDPM) := FILEMODE= 755
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync# lint pass one enforcement
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync#
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncCFLAGS += $(CCVERBOSE)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync.PARALLEL: $(OBJS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync.KEEP_STATE:
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncall: $(PROG) $(POWERPERM).dfl $(ETCFILES) $(SCRIPTS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsyncinstall clean:
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(POWERCONF): $(POWERCONF).$(MACH)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(DAEMON_OBJS): $(DAEMON_SRCS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync $(CC) $(CFLAGS) -D_REENTRANT $(CPPFLAGS) -o $@ -c $<
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync $(PROCESS_COMMENT) $@
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync$(DAEMON): $(DAEMON_OBJS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync $(CC) -o $@ $(DAEMON_OBJS) $(LDFLAGS) $(DAEMON_LDLIBS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync $(POST_PROCESS)
b9a21c3c91c47e090316e28d759194e46628ed49vboxsync
$(PMCFG_OBJS): pmconfig.h
$(PMCFG): $(PMCFG_OBJS)
$(LINK.c) -o $@ $(PMCFG_OBJS) $(PMCFG_LDLIBS)
$(POST_PROCESS)
$(SUSPEND): $(SUSPEND_OBJS)
$(LINK.c) -o $@ $(SUSPEND_OBJS) $(SUSPEND_LDLIBS)
$(POST_PROCESS)
install: all $(ROOTUSRSBINPMCFG) $(ROOTLIBPOWERDAEMON) $(ROOTUSRBINSUSPEND) \
$(ROOTETCFILES) $(ROOTUSRSBINSYSIDPM) $(ROOTETCDEFAULTFILES) \
$(ROOTMANIFEST) $(ROOTSVCMETHOD)
$(ROOTLIBPOWER):
$(INS.dir)
$(ROOTLIBPOWER)/%: %
$(INS.file)
$(ROOTLIBPOWERDAEMON): $(ROOTLIBPOWER)
$(OPOFILES):
@
$(POFILE): $(POFILES) $(OPOFILES)
$(RM) $@
cat $(POFILES) $(OPOFILES) > $@
check: $(CHKMANIFEST)
clean:
$(RM) $(OBJS) $(SYSIDPM) $(POWERCONF)
$(RM) $(POFILE) $(POFILES)
lint := LINTFLAGS=-auxn
lint:
$(LINT.c) $(DAEMON_SRCS)
$(LINT.c) $(PMCFG_SRCS)
$(LINT.c) $(SUSPEND_SRCS)
cstyle:
$(CSTYLE) $(SRCS)
%: %.$(MACH)
$(RM) $@
cat $< > $@
include ../Makefile.targ